
/* 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 */

Image * CropImageToTiles(Image *image,char *crop_geometry,ExceptionInfo *exception)

{
  bool bVar1;
  int iVar2;
  uint uVar3;
  int iVar4;
  ssize_t sVar5;
  undefined4 uVar6;
  undefined4 uVar7;
  size_t sVar8;
  size_t sVar9;
  int extraout_v1;
  int extraout_v1_00;
  int extraout_v1_01;
  int extraout_v1_02;
  int extraout_v1_03;
  int extraout_v1_04;
  int extraout_v1_05;
  int extraout_v1_06;
  int extraout_v1_07;
  int extraout_v1_08;
  int extraout_v1_09;
  int extraout_v1_10;
  int iVar10;
  Image *pIVar11;
  Image *pIVar12;
  int iVar13;
  RectangleInfo *pRVar14;
  Image *pIVar15;
  ExceptionInfo *pEVar16;
  Image *unaff_s0;
  Image *unaff_s1;
  ExceptionInfo *unaff_s2;
  RectangleInfo *unaff_s3;
  int *piVar17;
  int *piVar18;
  size_t unaff_s4;
  int *piVar19;
  undefined *unaff_s5;
  Image *unaff_s6;
  ssize_t sVar20;
  Image *unaff_s7;
  undefined *puVar21;
  code *pcVar22;
  undefined *puVar23;
  Image **unaff_s8;
  size_t sVar24;
  code *pcVar25;
  code *pcVar26;
  double dVar27;
  double dVar28;
  double dVar29;
  double dVar30;
  double dVar31;
  double dVar32;
  double dVar33;
  double dVar34;
  double dVar35;
  double dVar36;
  double dVar37;
  undefined8 uVar38;
  undefined4 uStack_270;
  undefined4 uStack_26c;
  int iStack_268;
  int iStack_264;
  undefined4 uStack_260;
  undefined4 uStack_25c;
  Image *pIStack_258;
  undefined4 *puStack_254;
  int iStack_250;
  int iStack_24c;
  Image *pIStack_248;
  Image *pIStack_244;
  ExceptionInfo *pEStack_240;
  int *piStack_23c;
  int *piStack_238;
  undefined *puStack_234;
  Image *pIStack_230;
  Image *pIStack_22c;
  Image **ppIStack_228;
  code *pcStack_224;
  Image *pIStack_210;
  char *pcStack_20c;
  code *pcStack_208;
  ssize_t sStack_1fc;
  undefined4 uStack_1f8;
  undefined4 uStack_1f4;
  Image *pIStack_1f0;
  Image *pIStack_1ec;
  undefined *puStack_1e8;
  int *piStack_1e4;
  Image *pIStack_1e0;
  undefined4 *puStack_1dc;
  Image *pIStack_1d8;
  int iStack_1d4;
  Image *pIStack_1d0;
  Image *pIStack_1cc;
  ExceptionInfo *pEStack_1c8;
  RectangleInfo *pRStack_1c4;
  int *piStack_1c0;
  undefined *puStack_1bc;
  Image *pIStack_1b8;
  Image *pIStack_1b4;
  Image **ppIStack_1b0;
  code *pcStack_1ac;
  ExceptionInfo *pEStack_198;
  char *pcStack_194;
  ExceptionInfo *pEStack_190;
  code *pcStack_188;
  Image *pIStack_17c;
  Image *pIStack_178;
  ExceptionInfo *pEStack_174;
  RectangleInfo *pRStack_170;
  code *pcStack_16c;
  ExceptionInfo *pEStack_158;
  char *pcStack_154;
  undefined *puStack_150;
  undefined4 uStack_148;
  undefined4 uStack_144;
  Image *pIStack_13c;
  RectangleInfo *pRStack_138;
  ExceptionInfo *pEStack_134;
  Image *pIStack_130;
  undefined *puStack_12c;
  Image *pIStack_128;
  ExceptionInfo *pEStack_124;
  undefined4 *puStack_120;
  int iStack_11c;
  Image *pIStack_118;
  Image *pIStack_114;
  ExceptionInfo *pEStack_110;
  RectangleInfo *pRStack_10c;
  uint uStack_108;
  undefined *puStack_104;
  Image *pIStack_100;
  code *pcStack_fc;
  ExceptionInfo *local_e8;
  char *local_e4;
  double local_c8;
  double local_a0;
  Image *crop_image;
  RectangleInfo geometry;
  RectangleInfo crop;
  
  puVar21 = PTR___stack_chk_guard_003a9230;
  iVar2 = *(int *)PTR___stack_chk_guard_003a9230;
  if (image == (Image *)0x0) {
LAB_001c8ef8:
    image = unaff_s1;
    (*(code *)PTR___assert_fail_003a9608)
              (PTR_LAB_003a88e0 + 0xdd0,PTR_s_courses_003a88ec + -0x288c,0x322,
               PTR_s_courses_003a88ec + -0x2688);
  }
  else if (image->signature == 0xabacadab) {
    if (image->debug != MagickFalse) {
      local_e4 = image->filename;
      local_e8 = (ExceptionInfo *)(PTR_s_t_to_left_003a88e4 + -0x62ac);
      (*(code *)PTR_LogMagickEvent_003a91e0)
                (0x8000,PTR_s_courses_003a88ec + -0x288c,PTR_s_courses_003a88ec + -0x269c,0x325);
    }
    unaff_s6 = (Image *)(*(code *)PTR_NewImageList_003a8e84)();
    crop_image = unaff_s6;
    uVar3 = (*(code *)PTR_ParseGravityGeometry_003a97fc)(image,crop_geometry,&geometry,exception);
    unaff_s4 = geometry.height;
    unaff_s0 = (Image *)geometry.width;
    unaff_s3 = (RectangleInfo *)PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;
    if ((int)(uVar3 << 0xe) < 0) {
      sVar9 = image->rows;
      if (geometry.width == 0) {
        geometry.width = 1;
        dVar37 = *(double *)(PTR_LAB_003a88e0 + 0x1438);
      }
      else {
        dVar37 = (double)(int)geometry.width;
        if ((int)geometry.width < 0) {
          dVar37 = dVar37 + *(double *)(PTR_LAB_003a88e0 + 0x1418);
        }
      }
      if (geometry.height == 0) {
        dVar32 = *(double *)(PTR_LAB_003a88e0 + 0x1438);
        geometry.height = 1;
        if ((uVar3 & 0x2000) != 0) goto LAB_001c8e14;
LAB_001c8484:
        iVar10 = geometry.x;
        if (geometry.x < 0) {
          iVar10 = -geometry.x;
        }
        iVar10 = image->columns - iVar10;
        iVar4 = geometry.y;
        if (geometry.y < 0) {
          iVar4 = -geometry.y;
        }
        iVar4 = sVar9 - iVar4;
      }
      else {
        dVar32 = (double)(int)geometry.height;
        if ((int)geometry.height < 0) {
          dVar32 = dVar32 + *(double *)(PTR_LAB_003a88e0 + 0x1418);
        }
        if ((uVar3 & 0x2000) == 0) goto LAB_001c8484;
LAB_001c8e14:
        iVar10 = geometry.x;
        if (geometry.x < 0) {
          iVar10 = -geometry.x;
        }
        iVar10 = iVar10 + image->columns;
        if (geometry.y < 0) {
          iVar4 = sVar9 - geometry.y;
        }
        else {
          iVar4 = geometry.y + sVar9;
        }
      }
      unaff_s4 = uVar3 & 0x2000;
      dVar36 = (double)iVar10;
      if (iVar10 < 0) {
        dVar36 = dVar36 + *(double *)(PTR_LAB_003a88e0 + 0x1418);
      }
      dVar37 = dVar36 / dVar37;
      local_c8 = (double)iVar4;
      if (iVar4 < 0) {
        local_c8 = local_c8 + *(double *)(PTR_LAB_003a88e0 + 0x1418);
      }
      dVar27 = *(double *)(PTR_LAB_003a88e0 + 0x1438);
      local_a0 = dVar27;
      if (dVar37 < dVar27) {
        local_a0 = *(double *)(PTR_LAB_003a88e0 + 0x1438);
        dVar37 = dVar27;
      }
      if (local_a0 <= local_c8 / dVar32) {
        local_a0 = local_c8 / dVar32;
      }
      dVar32 = 0.0;
      unaff_s7 = (Image *)geometry.y;
      if (0.0 < local_c8) {
        dVar27 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4780);
        dVar33 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4788);
        if (unaff_s4 != 0) goto LAB_001c8b70;
LAB_001c854c:
        unaff_s7 = (Image *)geometry.y;
        dVar34 = dVar32;
        if (geometry.y < 1) {
          dVar34 = dVar32 - (double)geometry.y;
        }
        dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar34);
        dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar34);
        if (dVar34 - dVar28 < dVar29 - dVar34) {
          dVar28 = *(double *)((int)unaff_s3 + 0x4788);
          pcVar25 = (code *)PTR_floor_003a9670;
          if (dVar34 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d7c;
        }
        else {
          if (dVar34 < *(double *)((int)unaff_s3 + 0x4780)) {
LAB_001c8d7c:
            iVar10 = -0x7ffffdff;
            goto joined_r0x001c8cbc;
          }
          dVar28 = *(double *)((int)unaff_s3 + 0x4788);
          pcVar25 = (code *)PTR_ceil_003a8c20;
        }
        if (dVar28 < dVar34) {
          iVar10 = 0x7ffffdff;
        }
        else {
          dVar34 = (double)(*pcVar25)(dVar34);
          iVar10 = (int)dVar34;
        }
joined_r0x001c8cbc:
        dVar32 = dVar32 + local_a0;
        if ((int)unaff_s7 < 0) {
          dVar34 = 0.0;
        }
        else {
          dVar34 = (double)(int)unaff_s7;
        }
        dVar34 = dVar32 + dVar34;
        dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar34);
        dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar34);
        if (dVar34 - dVar28 < dVar29 - dVar34) {
          if (*(double *)((int)unaff_s3 + 0x4780) <= dVar34) {
            if (dVar34 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8630;
            goto LAB_001c8cec;
          }
        }
        else if (*(double *)((int)unaff_s3 + 0x4780) <= dVar34) {
          if (*(double *)((int)unaff_s3 + 0x4788) < dVar34) goto LAB_001c8cec;
          goto LAB_001c8d18;
        }
LAB_001c8c88:
        iVar4 = -0x7ffffdff;
LAB_001c8644:
        do {
          unaff_s8 = (Image **)(iVar4 - iVar10);
          crop_geometry = (char *)((image->page).y + iVar10);
          dVar34 = 0.0;
          crop.height = (size_t)unaff_s8;
          crop.y = (ssize_t)crop_geometry;
          if (0.0 < dVar36) {
            dVar28 = *(double *)((int)unaff_s3 + 0x4788);
            unaff_s6 = (Image *)&crop;
            dVar29 = *(double *)((int)unaff_s3 + 0x4780);
            do {
              unaff_s7 = (Image *)geometry.x;
              if (unaff_s4 == 0) {
                dVar35 = dVar34;
                if (geometry.x < 1) {
                  dVar35 = dVar34 - (double)geometry.x;
                }
                dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);
                dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);
                if (dVar35 - dVar30 < dVar31 - dVar35) {
                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar35) {
                    pcVar25 = (code *)PTR_floor_003a9670;
                    if (dVar35 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;
LAB_001c8c78:
                    iVar10 = 0x7ffffdff;
                    goto LAB_001c8700;
                  }
LAB_001c8b04:
                  dVar34 = dVar34 + dVar37;
                  iVar10 = -0x7ffffdff;
                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;
LAB_001c8708:
                  dVar35 = (double)(int)unaff_s7;
                }
                else {
                  if (dVar35 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;
                  pcVar25 = (code *)PTR_ceil_003a8c20;
                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar35) goto LAB_001c8c78;
LAB_001c86e8:
                  dVar35 = (double)(*pcVar25)(dVar35);
                  iVar10 = (int)dVar35;
LAB_001c8700:
                  dVar34 = dVar34 + dVar37;
                  if (-1 < (int)unaff_s7) goto LAB_001c8708;
LAB_001c8b14:
                  dVar35 = 0.0;
                }
                dVar35 = dVar34 + dVar35;
                dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);
                dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);
                if (dVar35 - dVar30 < dVar31 - dVar35) {
                  if (dVar35 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;
                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar35) goto LAB_001c88b8;
LAB_001c8768:
                  dVar35 = (double)(*(code *)PTR_floor_003a9670)(dVar35);
                  iVar4 = (int)dVar35;
                }
                else {
                  if (dVar35 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;
                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar35) goto LAB_001c88b8;
LAB_001c8abc:
                  dVar35 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);
                  iVar4 = (int)dVar35;
                }
              }
              else {
                dVar35 = dVar34;
                if (0 < geometry.x) {
                  dVar35 = dVar34 - (double)geometry.x;
                }
                dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);
                dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);
                if (dVar35 - dVar30 < dVar31 - dVar35) {
                  if (dVar29 <= dVar35) {
                    pcVar25 = (code *)PTR_floor_003a9670;
                    if (dVar35 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;
LAB_001c8c68:
                    iVar10 = 0x7ffffdff;
                    goto LAB_001c8850;
                  }
LAB_001c8b24:
                  dVar34 = dVar34 + dVar37;
                  iVar10 = -0x7ffffdff;
                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;
LAB_001c8858:
                  dVar35 = 0.0;
                }
                else {
                  if (dVar35 < dVar29) goto LAB_001c8b24;
                  pcVar25 = (code *)PTR_ceil_003a8c20;
                  if (dVar28 < dVar35) goto LAB_001c8c68;
LAB_001c8838:
                  dVar35 = (double)(*pcVar25)(dVar35);
                  iVar10 = (int)dVar35;
LAB_001c8850:
                  dVar34 = dVar34 + dVar37;
                  if (-1 < (int)unaff_s7) goto LAB_001c8858;
LAB_001c8b34:
                  dVar35 = (double)(int)unaff_s7;
                }
                dVar35 = dVar34 + dVar35;
                dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);
                dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);
                if (dVar35 - dVar30 < dVar31 - dVar35) {
                  if (dVar35 < dVar27) goto LAB_001c8a44;
                  if (dVar35 <= dVar28) goto LAB_001c8768;
LAB_001c88b8:
                  iVar4 = 0x7ffffdff;
                }
                else if (dVar27 <= dVar35) {
                  if (dVar35 <= dVar33) goto LAB_001c8abc;
                  iVar4 = 0x7ffffdff;
                }
                else {
LAB_001c8a44:
                  iVar4 = -0x7ffffdff;
                }
              }
              unaff_s8 = (Image **)(iVar4 - iVar10);
              crop_geometry = (char *)((image->page).x + iVar10);
              crop.width = (size_t)unaff_s8;
              crop.x = (ssize_t)crop_geometry;
              iVar10 = (*(code *)PTR_CropImage_003a90b8)(image,unaff_s6,exception);
              if (iVar10 != 0) {
                (*(code *)PTR_AppendImageToList_003a9880)(&crop_image,iVar10);
              }
            } while (dVar34 < dVar36);
          }
          unaff_s5 = (undefined *)unaff_s3;
          if (local_c8 <= dVar32) break;
          if (unaff_s4 == 0) goto LAB_001c854c;
LAB_001c8b70:
          unaff_s7 = (Image *)geometry.y;
          dVar34 = dVar32;
          if (0 < geometry.y) {
            dVar34 = dVar32 - (double)geometry.y;
          }
          dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar34);
          dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar34);
          if (dVar34 - dVar28 < dVar29 - dVar34) {
            if (dVar34 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d8c;
            pcVar25 = (code *)PTR_floor_003a9670;
            if (*(double *)((int)unaff_s3 + 0x4788) < dVar34) goto LAB_001c8d50;
LAB_001c8bd8:
            dVar34 = (double)(*pcVar25)(dVar34);
            iVar10 = (int)dVar34;
LAB_001c8bf0:
            dVar32 = dVar32 + local_a0;
            if (-2 < (int)unaff_s7) goto LAB_001c8c00;
LAB_001c8d6c:
            dVar34 = (double)(int)unaff_s7;
          }
          else {
            if (dVar34 < *(double *)((int)unaff_s3 + 0x4780)) {
LAB_001c8d8c:
              iVar10 = -0x7ffffdff;
              goto LAB_001c8bf0;
            }
            pcVar25 = (code *)PTR_ceil_003a8c20;
            if (dVar34 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8bd8;
LAB_001c8d50:
            iVar10 = 0x7ffffdff;
            dVar32 = dVar32 + local_a0;
            if ((int)unaff_s7 < -1) goto LAB_001c8d6c;
LAB_001c8c00:
            dVar34 = 0.0;
          }
          dVar34 = dVar32 + dVar34;
          dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar34);
          dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar34);
          if (dVar34 - dVar28 < dVar29 - dVar34) {
            if (*(double *)((int)unaff_s3 + 0x4780) <= dVar34) {
              if (*(double *)((int)unaff_s3 + 0x4788) < dVar34) {
LAB_001c8cec:
                iVar4 = 0x7ffffdff;
              }
              else {
LAB_001c8630:
                dVar34 = (double)(*(code *)PTR_floor_003a9670)(dVar34);
                iVar4 = (int)dVar34;
              }
              goto LAB_001c8644;
            }
            goto LAB_001c8c88;
          }
          if (dVar34 < dVar27) goto LAB_001c8c88;
          if (*(double *)((int)unaff_s3 + 0x4788) < dVar34) goto LAB_001c8cec;
LAB_001c8d18:
          dVar34 = (double)(*(code *)PTR_ceil_003a8c20)(dVar34);
          iVar4 = (int)dVar34;
        } while( true );
      }
      (*(code *)PTR_ClearMagickException_003a90f8)(exception);
      pIVar11 = crop_image;
      unaff_s0 = (Image *)crop_geometry;
    }
    else {
      unaff_s3 = &geometry;
      if (((geometry.width == 0) && (geometry.height == 0)) || ((uVar3 & 3) != 0)) {
        crop_image = (Image *)(*(code *)PTR_CropImage_003a90b8)(image,&geometry,exception);
        pIVar11 = crop_image;
        unaff_s4 = uVar3;
        if ((crop_image != (Image *)0x0) && (unaff_s4 = uVar3 & 0x2000, unaff_s4 != 0)) {
          (crop_image->page).x = (crop_image->page).x - geometry.x;
          (crop_image->page).y = (crop_image->page).y - geometry.y;
          (crop_image->page).width = geometry.width;
          (crop_image->page).height = geometry.height;
        }
      }
      else {
        unaff_s7 = (Image *)image->columns;
        if ((geometry.width < unaff_s7) || (geometry.height < image->rows)) {
          pIVar11 = (Image *)(image->page).width;
          uVar3 = (image->page).height;
          if (pIVar11 != (Image *)0x0) {
            unaff_s7 = pIVar11;
          }
          if (uVar3 == 0) {
            uVar3 = image->rows;
          }
          if (geometry.width == 0) {
            unaff_s0 = unaff_s7;
          }
          if (geometry.height == 0) {
            unaff_s4 = uVar3;
          }
          pIVar11 = crop_image;
          if (0 < (int)uVar3) {
            unaff_s3 = (RectangleInfo *)0x0;
            unaff_s8 = &crop_image;
            do {
              unaff_s5 = (undefined *)0x0;
              if ((int)unaff_s7 < 1) {
                pIVar11 = crop_image;
                if (unaff_s6 == (Image *)0x0) break;
              }
              else {
                do {
                  geometry.width = (size_t)unaff_s0;
                  geometry.height = unaff_s4;
                  geometry.x = (ssize_t)unaff_s5;
                  geometry.y = (ssize_t)unaff_s3;
                  unaff_s6 = (Image *)(*(code *)PTR_CropImage_003a90b8)(image,&geometry,exception);
                  pIVar11 = crop_image;
                  if (unaff_s6 == (Image *)0x0) goto LAB_001c8908;
                  unaff_s5 = unaff_s5 + (int)unaff_s0;
                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);
                } while ((int)unaff_s5 < (int)unaff_s7);
              }
              unaff_s3 = (RectangleInfo *)((int)&unaff_s3->width + unaff_s4);
              pIVar11 = crop_image;
            } while ((int)unaff_s3 < (int)uVar3);
          }
        }
        else {
          local_e8 = exception;
          pIVar11 = (Image *)(*(code *)PTR_CloneImage_003a9830)(image,0,0,1);
        }
      }
    }
LAB_001c8908:
    if (iVar2 == *(int *)puVar21) {
      return pIVar11;
    }
    (*(code *)PTR___stack_chk_fail_003a9064)();
    unaff_s1 = image;
    unaff_s2 = exception;
    goto LAB_001c8ef8;
  }
  pEVar16 = (ExceptionInfo *)0x323;
  pRVar14 = (RectangleInfo *)(PTR_s_courses_003a88ec + -0x288c);
  pcVar25 = ExcerptImage;
  pIVar11 = (Image *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3784);
  puVar21 = PTR___assert_fail_003a9608;
  (*(code *)PTR___assert_fail_003a9608)();
  puVar23 = puVar21 + 0x1e7970;
  piVar19 = *(int **)(puVar21 + 0x1e02f0);
  iStack_11c = *piVar19;
  puStack_150 = puVar23;
  pIStack_118 = unaff_s0;
  pIStack_114 = image;
  pEStack_110 = unaff_s2;
  pRStack_10c = unaff_s3;
  uStack_108 = unaff_s4;
  puStack_104 = unaff_s5;
  pIStack_100 = unaff_s6;
  pcStack_fc = pcVar25;
  if (pIVar11 == (Image *)0x0) {
    iVar2 = *(int *)(puVar21 + 0x1df9ac) + -0x26ac;
    (**(code **)(puVar21 + 0x1e06c8))
              (*(int *)(puVar21 + 0x1df9a8) + -0x37b0,*(int *)(puVar21 + 0x1df9ac) + -0x288c,0x3f4,
               iVar2);
LAB_001c92d4:
    iVar2 = iVar2 + -0x26ac;
    (**(code **)(puVar23 + -0x72a8))
              (*(int *)(puVar23 + -0x7fd0) + 0x294c,*(int *)(puVar23 + -0x7fc4) + -0x288c,0x3fa,
               iVar2);
    pEVar16 = unaff_s2;
LAB_001c92f4:
    iVar2 = iVar2 + -0x26ac;
    (**(code **)(puVar23 + -0x72a8))
              (*(int *)(puVar23 + -0x7fd0) + 0x1cac,*(int *)(puVar23 + -0x7fc4) + -0x288c,0x3f9,
               iVar2);
LAB_001c9314:
    (**(code **)(puVar23 + -0x784c))();
    pIVar11 = unaff_s0;
LAB_001c9320:
    (**(code **)(puVar23 + -0x72a8))
              (*(int *)(puVar23 + -0x7fc4) + -0x2850,*(int *)(puVar23 + -0x7fc4) + -0x288c,0x3f8,
               iVar2 + -0x26ac);
    unaff_s2 = pEVar16;
  }
  else if (pIVar11->signature == 0xabacadab) {
    if (pIVar11->debug != MagickFalse) {
      pcStack_154 = pIVar11->filename;
      pEStack_158 = (ExceptionInfo *)(*(int *)(puVar21 + 0x1df9a4) - 0x62ac);
      (**(code **)(puVar21 + 0x1e02a0))
                (0x8000,*(int *)(puVar21 + 0x1df9ac) + -0x288c,
                 *(int *)(puVar21 + 0x1df9ac) + -0x26bc,0x3f7);
    }
    iVar2 = *(int *)(puStack_150 + -0x7fc4);
    unaff_s3 = pRVar14;
    puVar23 = puStack_150;
    if (pRVar14 != (RectangleInfo *)0x0) {
      unaff_s0 = pIVar11;
      if (pEVar16 == (ExceptionInfo *)0x0) goto LAB_001c92f4;
      unaff_s2 = pEVar16;
      if (pEVar16->signature != 0xabacadab) goto LAB_001c92d4;
      iVar2 = 1;
      pEStack_158 = pEVar16;
      image = (Image *)(**(code **)(puStack_150 + -0x7080))
                                 (pIVar11,pRVar14->width,pRVar14->height,1);
      if (image != (Image *)0x0) {
        uStack_144 = 0;
        uStack_148 = 0;
        unaff_s5 = (undefined *)(**(code **)(puStack_150 + -0x715c))(pIVar11,pEVar16);
        unaff_s6 = (Image *)(**(code **)(puStack_150 + -0x79dc))(image,pEVar16);
        iVar2 = (**(code **)(puStack_150 + -0x73fc))(pIVar11);
        if (((iVar2 == 4) || (iVar2 = (**(code **)(puStack_150 + -0x73fc))(pIVar11), iVar2 == 3)) &&
           ((iVar2 = (**(code **)(puStack_150 + -0x73fc))(image), iVar2 == 4 ||
            (iVar2 = (**(code **)(puStack_150 + -0x73fc))(image), iVar2 == 3)))) {
          (**(code **)(puStack_150 + -0x7774))(7);
          sVar9 = image->rows;
          if ((int)sVar9 < 0) {
            pcVar25 = *(code **)(puStack_150 + -0x7774);
            if (extraout_v1 < (int)(sVar9 + 0x3f) >> 6) goto LAB_001c9298;
LAB_001c91a4:
            bVar1 = (int)sVar9 < 0x80;
          }
          else {
            pcVar25 = *(code **)(puStack_150 + -0x7774);
            if ((int)sVar9 >> 6 <= extraout_v1) goto LAB_001c91a4;
LAB_001c9298:
            (*pcVar25)(7);
            bVar1 = extraout_v1_02 < 2;
          }
          iVar10 = 1;
          if ((bool)(bVar1 ^ 1)) {
            (**(code **)(puStack_150 + -0x7774))(7);
            sVar9 = image->rows;
            if ((int)sVar9 < 0) {
              sVar9 = sVar9 + 0x3f;
            }
            iVar10 = (int)sVar9 >> 6;
            pcVar25 = *(code **)(puStack_150 + -0x7774);
            if (extraout_v1_01 < iVar10) {
LAB_001c9234:
              (*pcVar25)(7);
              iVar10 = extraout_v1_00;
            }
            goto LAB_001c9088;
          }
          iVar4 = *(int *)(puStack_150 + -0x7f10);
        }
        else {
          uVar38 = (**(code **)(puStack_150 + -0x7774))(7);
          if ((int)((ulonglong)uVar38 >> 0x20) == 0) {
            pcVar25 = *(code **)(puStack_150 + -0x7774);
            if (1 < (uint)uVar38) goto LAB_001c9074;
            uVar38 = (*pcVar25)(7);
            if ((int)((ulonglong)uVar38 >> 0x20) != 0) goto LAB_001c9070;
            pcVar25 = *(code **)(puStack_150 + -0x7774);
            if (1 < (uint)uVar38) goto LAB_001c9074;
            iVar10 = 1;
          }
          else {
LAB_001c9070:
            pcVar25 = *(code **)(puStack_150 + -0x7774);
LAB_001c9074:
            uVar38 = (*pcVar25)(7);
            if (((int)((ulonglong)uVar38 >> 0x20) == 0) &&
               (pcVar25 = *(code **)(puStack_150 + -0x7774), (uint)uVar38 < 2)) goto LAB_001c9234;
            iVar10 = 2;
          }
LAB_001c9088:
          iVar4 = *(int *)(puStack_150 + -0x7f10);
        }
        iVar2 = 0;
        pEStack_124 = (ExceptionInfo *)0x1;
        puStack_120 = &uStack_148;
        pIStack_13c = pIVar11;
        pRStack_138 = pRVar14;
        pEStack_134 = pEVar16;
        pIStack_130 = unaff_s6;
        puStack_12c = unaff_s5;
        pIStack_128 = image;
        (**(code **)(puStack_150 + -0x7718))(iVar4 + 0x5428,&pIStack_13c,iVar10,0);
        pEVar16 = pEStack_124;
        (**(code **)(puStack_150 + -0x79bc))(unaff_s6);
        (**(code **)(puStack_150 + -0x79bc))(unaff_s5);
        image->type = pIVar11->type;
        if (pEVar16 == (ExceptionInfo *)0x0) {
          image = (Image *)(**(code **)(puStack_150 + -0x7964))(image);
        }
      }
      puVar23 = puStack_150;
      if (iStack_11c == *piVar19) {
        return image;
      }
      goto LAB_001c9314;
    }
    goto LAB_001c9320;
  }
  pEVar16 = (ExceptionInfo *)0x3f5;
  pcVar22 = *(code **)(puVar23 + -0x72a8);
  pIVar15 = (Image *)(*(int *)(puVar23 + -0x7fc4) + -0x288c);
  pcVar26 = ExtentImage;
  pIVar12 = (Image *)(*(int *)(puVar23 + -0x7fc8) + -0x3784);
  (*pcVar22)();
  pcVar25 = pcVar22 + 0x1e754c;
  pcStack_188 = pcVar25;
  pIStack_17c = pIVar11;
  pIStack_178 = image;
  pEStack_174 = unaff_s2;
  pRStack_170 = unaff_s3;
  pcStack_16c = pcVar26;
  if (pIVar12 == (Image *)0x0) {
    iVar2 = *(int *)(pcVar22 + 0x1df588) + -0x26c8;
    (**(code **)(pcVar22 + 0x1e02a4))
              (*(int *)(pcVar22 + 0x1df584) + -0x37b0,*(int *)(pcVar22 + 0x1df588) + -0x288c,0x474,
               iVar2);
LAB_001c94fc:
    iVar2 = iVar2 + -0x26c8;
    (**(code **)(pcVar25 + -0x72a8))
              (*(int *)(pcVar25 + -0x7fc4) + -0x2850,*(int *)(pcVar25 + -0x7fc4) + -0x288c,0x478,
               iVar2);
LAB_001c951c:
    iVar2 = iVar2 + -0x26c8;
    (**(code **)(pcVar25 + -0x72a8))
              (*(int *)(pcVar25 + -0x7fd0) + 0x294c,*(int *)(pcVar25 + -0x7fc4) + -0x288c,0x47a,
               iVar2);
    pIVar12 = pIVar11;
LAB_001c953c:
    (**(code **)(pcVar25 + -0x72a8))
              (*(int *)(pcVar25 + -0x7fd0) + 0x1cac,*(int *)(pcVar25 + -0x7fc4) + -0x288c,0x479,
               iVar2 + -0x26c8);
  }
  else if (pIVar12->signature == 0xabacadab) {
    if (pIVar12->debug != MagickFalse) {
      pcStack_194 = pIVar12->filename;
      pEStack_198 = (ExceptionInfo *)(*(int *)(pcVar22 + 0x1df580) + -0x62ac);
      (**(code **)(pcVar22 + 0x1dfe7c))
                (0x8000,*(int *)(pcVar22 + 0x1df588) + -0x288c,
                 *(int *)(pcVar22 + 0x1df588) + -0x26d4,0x477);
    }
    iVar2 = *(int *)(pcStack_188 + -0x7fc4);
    pIVar11 = pIVar12;
    image = pIVar15;
    unaff_s2 = pEVar16;
    pcVar25 = pcStack_188;
    if (pIVar15 == (Image *)0x0) goto LAB_001c94fc;
    if (pEVar16 != (ExceptionInfo *)0x0) {
      if (pEVar16->signature == 0xabacadab) {
        pEStack_198 = pEVar16;
        pIVar11 = (Image *)(**(code **)(pcStack_188 + -0x7080))
                                     (pIVar12,pIVar15->storage_class,pIVar15->colorspace,1);
        if (pIVar11 != (Image *)0x0) {
          iVar2 = (**(code **)(pcStack_188 + -0x7a20))(pIVar11,pEVar16);
          if (iVar2 == 0) {
            (**(code **)(pcStack_188 + -0x7964))(pIVar11);
            pIVar11 = (Image *)0x0;
          }
          else {
            pcStack_194 = (char *)-pIVar15->quality;
            pEStack_198 = (ExceptionInfo *)-pIVar15->compression;
            pEStack_190 = pEVar16;
            iVar2 = (**(code **)(pcStack_188 + -0x7bec))(pIVar11,pIVar12,pIVar12->compose,1);
            if (iVar2 != 0) {
              (**(code **)(pcStack_188 + -0x7d18))(pIVar11,pIVar12->columns,pIVar12->rows,pIVar15);
            }
          }
        }
        return pIVar11;
      }
      goto LAB_001c951c;
    }
    goto LAB_001c953c;
  }
  pcVar22 = *(code **)(pcVar25 + -0x72a8);
  pIVar11 = (Image *)(*(int *)(pcVar25 + -0x7fc4) + -0x288c);
  pcVar26 = FlipImage;
  pIVar15 = (Image *)(*(int *)(pcVar25 + -0x7fc8) + -0x3784);
  (*pcVar22)(pIVar15,pIVar11,0x475,*(int *)(pcVar25 + -0x7fc4) + -0x26c8);
  pcVar25 = pcVar22 + 0x1e7330;
  piVar17 = *(int **)(pcVar22 + 0x1dfcb0);
  iStack_1d4 = *piVar17;
  pcStack_208 = pcVar25;
  pIStack_1d0 = pIVar12;
  pIStack_1cc = image;
  pEStack_1c8 = unaff_s2;
  pRStack_1c4 = unaff_s3;
  piStack_1c0 = piVar19;
  puStack_1bc = unaff_s5;
  pIStack_1b8 = unaff_s6;
  pIStack_1b4 = unaff_s7;
  ppIStack_1b0 = unaff_s8;
  pcStack_1ac = pcVar26;
  if (pIVar15 == (Image *)0x0) {
    (**(code **)(pcVar22 + 0x1e0088))
              (*(int *)(pcVar22 + 0x1df368) + -0x37b0,*(int *)(pcVar22 + 0x1df36c) + -0x288c,0x4bc,
               *(int *)(pcVar22 + 0x1df36c) + -0x26e0);
    pIVar11 = image;
LAB_001c9944:
    (**(code **)(pcVar25 + -0x72a8))
              (*(int *)(pcVar25 + -0x7fd0) + 0x1cac,*(int *)(pcVar25 + -0x7fc4) + -0x288c,0x4c0,
               *(int *)(pcVar25 + -0x7fc4) + -0x26e0);
LAB_001c9968:
    (**(code **)(pcVar25 + -0x784c))();
    pIVar15 = unaff_s7;
LAB_001c9974:
    (**(code **)(pcVar25 + -0x72a8))
              (*(int *)(pcVar25 + -0x7fd0) + 0x294c,*(int *)(pcVar25 + -0x7fc4) + -0x288c,0x4c1,
               *(int *)(pcVar25 + -0x7fc4) + -0x26e0);
    pIStack_244 = pIVar11;
  }
  else {
    pIStack_244 = image;
    if (pIVar15->signature == 0xabacadab) {
      if (pIVar15->debug != MagickFalse) {
        pcStack_20c = pIVar15->filename;
        pIStack_210 = (Image *)(*(int *)(pcVar22 + 0x1df364) + -0x62ac);
        (**(code **)(pcVar22 + 0x1dfc60))
                  (0x8000,*(int *)(pcVar22 + 0x1df36c) + -0x288c,
                   *(int *)(pcVar22 + 0x1df36c) + -0x26ec,0x4bf);
      }
      unaff_s7 = pIVar15;
      pcVar25 = pcStack_208;
      if (pIVar11 == (Image *)0x0) goto LAB_001c9944;
      if (pIVar11->rows == 0xabacadab) {
        pIStack_210 = pIVar11;
        pIVar12 = (Image *)(**(code **)(pcStack_208 + -0x7080))(pIVar15,0,0,1);
        if (pIVar12 != (Image *)0x0) {
          sStack_1fc = (pIVar15->page).x;
          unaff_s8 = (Image **)(pIVar15->page).width;
          unaff_s2 = (ExceptionInfo *)(pIVar15->page).height;
          unaff_s6 = (Image *)(pIVar15->page).y;
          uStack_1f4 = 0;
          uStack_1f8 = 0;
          piVar19 = (int *)(**(code **)(pcStack_208 + -0x715c))(pIVar15,pIVar11);
          unaff_s5 = (undefined *)(**(code **)(pcStack_208 + -0x79dc))(pIVar12,pIVar11);
          iVar2 = (**(code **)(pcStack_208 + -0x73fc))(pIVar15);
          if (((iVar2 == 4) || (iVar2 = (**(code **)(pcStack_208 + -0x73fc))(pIVar15), iVar2 == 3))
             && ((iVar2 = (**(code **)(pcStack_208 + -0x73fc))(pIVar12), iVar2 == 4 ||
                 (iVar2 = (**(code **)(pcStack_208 + -0x73fc))(pIVar12), iVar2 == 3)))) {
            (**(code **)(pcStack_208 + -0x7774))(7);
            sVar9 = pIVar12->rows;
            if ((int)sVar9 < 0) {
              pcVar25 = *(code **)(pcStack_208 + -0x7774);
              if (extraout_v1_03 < (int)(sVar9 + 0x3f) >> 6) goto LAB_001c98d4;
LAB_001c981c:
              bVar1 = (int)sVar9 < 0x80;
            }
            else {
              pcVar25 = *(code **)(pcStack_208 + -0x7774);
              if ((int)sVar9 >> 6 <= extraout_v1_03) goto LAB_001c981c;
LAB_001c98d4:
              (*pcVar25)(7);
              bVar1 = extraout_v1_05 < 2;
            }
            iVar2 = 1;
            if ((bool)(bVar1 ^ 1)) {
              (**(code **)(pcStack_208 + -0x7774))(7);
              sVar9 = pIVar12->rows;
              if ((int)sVar9 < 0) {
                sVar9 = sVar9 + 0x3f;
              }
              iVar2 = (int)sVar9 >> 6;
              pcVar25 = *(code **)(pcStack_208 + -0x7774);
              if (extraout_v1_06 < iVar2) {
LAB_001c98ac:
                (*pcVar25)(7);
                iVar2 = extraout_v1_04;
              }
              goto LAB_001c96d8;
            }
            iVar10 = *(int *)(pcStack_208 + -0x7f10);
          }
          else {
            uVar38 = (**(code **)(pcStack_208 + -0x7774))(7);
            if ((int)((ulonglong)uVar38 >> 0x20) == 0) {
              pcVar25 = *(code **)(pcStack_208 + -0x7774);
              if (1 < (uint)uVar38) goto LAB_001c96c4;
              uVar38 = (*pcVar25)(7);
              if ((int)((ulonglong)uVar38 >> 0x20) != 0) goto LAB_001c96c0;
              pcVar25 = *(code **)(pcStack_208 + -0x7774);
              if (1 < (uint)uVar38) goto LAB_001c96c4;
              iVar2 = 1;
            }
            else {
LAB_001c96c0:
              pcVar25 = *(code **)(pcStack_208 + -0x7774);
LAB_001c96c4:
              uVar38 = (*pcVar25)(7);
              if (((int)((ulonglong)uVar38 >> 0x20) == 0) &&
                 (pcVar25 = *(code **)(pcStack_208 + -0x7774), (uint)uVar38 < 2)) goto LAB_001c98ac;
              iVar2 = 2;
            }
LAB_001c96d8:
            iVar10 = *(int *)(pcStack_208 + -0x7f10);
          }
          puStack_1dc = &uStack_1f8;
          pIStack_1d8 = (Image *)0x1;
          pIStack_1f0 = pIVar15;
          pIStack_1ec = pIVar11;
          puStack_1e8 = unaff_s5;
          piStack_1e4 = piVar19;
          pIStack_1e0 = pIVar12;
          (**(code **)(pcStack_208 + -0x7718))(iVar10 + 0x56bc,&pIStack_1f0,iVar2,0);
          pIVar11 = pIStack_1d8;
          (**(code **)(pcStack_208 + -0x79bc))(unaff_s5);
          (**(code **)(pcStack_208 + -0x79bc))(piVar19);
          pIVar12->type = pIVar15->type;
          if (unaff_s2 != (ExceptionInfo *)0x0) {
            unaff_s6 = (Image *)((int)unaff_s2 + (-(int)unaff_s6 - pIVar12->rows));
          }
          (pIVar12->page).width = (size_t)unaff_s8;
          (pIVar12->page).height = (size_t)unaff_s2;
          (pIVar12->page).x = sStack_1fc;
          (pIVar12->page).y = (ssize_t)unaff_s6;
          if (pIVar11 == (Image *)0x0) {
            pIVar12 = (Image *)(**(code **)(pcStack_208 + -0x7964))(pIVar12);
          }
        }
        pcVar25 = pcStack_208;
        if (iStack_1d4 == *piVar17) {
          return pIVar12;
        }
        goto LAB_001c9968;
      }
      goto LAB_001c9974;
    }
  }
  pcVar22 = *(code **)(pcVar25 + -0x72a8);
  iVar10 = *(int *)(pcVar25 + -0x7fc4) + -0x288c;
  pcVar26 = FlopImage;
  iVar2 = *(int *)(pcVar25 + -0x7fc8) + -0x3784;
  (*pcVar22)(iVar2,iVar10,0x4bd,*(int *)(pcVar25 + -0x7fc4) + -0x26e0);
  piVar18 = *(int **)(pcVar22 + 0x1df874);
  iStack_24c = *piVar18;
  pIStack_248 = pIVar12;
  pEStack_240 = unaff_s2;
  piStack_23c = piVar17;
  piStack_238 = piVar19;
  puStack_234 = unaff_s5;
  pIStack_230 = unaff_s6;
  pIStack_22c = pIVar15;
  ppIStack_228 = unaff_s8;
  pcStack_224 = pcVar26;
  if (iVar2 == 0) {
    pIVar11 = (Image *)(**(code **)(pcVar22 + 0x1dfc4c))
                                 (*(int *)(pcVar22 + 0x1def2c) + -0x37b0,
                                  *(int *)(pcVar22 + 0x1def30) + -0x288c,0x543,
                                  *(int *)(pcVar22 + 0x1def30) + -0x26f8);
    return pIVar11;
  }
  if (*(int *)(iVar2 + 0x336c) != -0x54535255) {
    pIVar11 = (Image *)(**(code **)(pcVar22 + 0x1dfc4c))
                                 (*(int *)(pcVar22 + 0x1def2c) + -0x3784,
                                  *(int *)(pcVar22 + 0x1def30) + -0x288c,0x544,
                                  *(int *)(pcVar22 + 0x1def30) + -0x26f8);
    return pIVar11;
  }
  if (*(int *)(iVar2 + 0x3350) != 0) {
    (**(code **)(pcVar22 + 0x1df824))
              (0x8000,*(int *)(pcVar22 + 0x1def30) + -0x288c,*(int *)(pcVar22 + 0x1def30) + -0x2704,
               0x546,*(int *)(pcVar22 + 0x1def28) + -0x62ac,iVar2 + 0x340);
  }
  if (iVar10 == 0) {
    pIVar11 = (Image *)(**(code **)(pcVar22 + 0x1dfc4c))
                                 (*(int *)(pcVar22 + 0x1def24) + 0x1cac,
                                  *(int *)(pcVar22 + 0x1def30) + -0x288c,0x547,
                                  *(int *)(pcVar22 + 0x1def30) + -0x26f8);
    return pIVar11;
  }
  if (*(int *)(iVar10 + 0x1c) != -0x54535255) goto LAB_001c9db0;
  pIVar11 = (Image *)(**(code **)(pcVar22 + 0x1dfe74))(iVar2,0,0,1,iVar10);
  if (pIVar11 != (Image *)0x0) {
    sVar5 = *(ssize_t *)(iVar2 + 0x234);
    sVar9 = *(size_t *)(iVar2 + 0x228);
    sVar24 = *(size_t *)(iVar2 + 0x22c);
    sVar20 = *(int *)(iVar2 + 0x230);
    uStack_26c = 0;
    uStack_270 = 0;
    uVar6 = (**(code **)(pcVar22 + 0x1dfd98))(iVar2,iVar10);
    uVar7 = (**(code **)(pcVar22 + 0x1df518))(pIVar11,iVar10);
    iVar4 = (**(code **)(pcVar22 + 0x1dfaf8))(iVar2);
    if (((iVar4 == 4) || (iVar4 = (**(code **)(pcVar22 + 0x1dfaf8))(iVar2), iVar4 == 3)) &&
       ((iVar4 = (**(code **)(pcVar22 + 0x1dfaf8))(pIVar11), iVar4 == 4 ||
        (iVar4 = (**(code **)(pcVar22 + 0x1dfaf8))(pIVar11), iVar4 == 3)))) {
      (**(code **)(pcVar22 + 0x1df780))(7);
      sVar8 = pIVar11->rows;
      if ((int)sVar8 < 0) {
        pcVar25 = *(code **)(pcVar22 + 0x1df780);
        if (extraout_v1_07 < (int)(sVar8 + 0x3f) >> 6) goto LAB_001c9d10;
LAB_001c9c58:
        bVar1 = (int)sVar8 < 0x80;
      }
      else {
        pcVar25 = *(code **)(pcVar22 + 0x1df780);
        if ((int)sVar8 >> 6 <= extraout_v1_07) goto LAB_001c9c58;
LAB_001c9d10:
        (*pcVar25)(7);
        bVar1 = extraout_v1_09 < 2;
      }
      iVar4 = 1;
      if ((bool)(bVar1 ^ 1)) {
        (**(code **)(pcVar22 + 0x1df780))(7);
        sVar8 = pIVar11->rows;
        if ((int)sVar8 < 0) {
          sVar8 = sVar8 + 0x3f;
        }
        iVar4 = (int)sVar8 >> 6;
        pcVar25 = *(code **)(pcVar22 + 0x1df780);
        if (extraout_v1_10 < iVar4) {
LAB_001c9ce8:
          (*pcVar25)(7);
          iVar4 = extraout_v1_08;
        }
        goto LAB_001c9b14;
      }
      iVar13 = *(int *)(pcVar22 + 0x1defe4);
    }
    else {
      uVar38 = (**(code **)(pcVar22 + 0x1df780))(7);
      if ((int)((ulonglong)uVar38 >> 0x20) == 0) {
        pcVar25 = *(code **)(pcVar22 + 0x1df780);
        if (1 < (uint)uVar38) goto LAB_001c9b00;
        uVar38 = (*pcVar25)(7);
        if ((int)((ulonglong)uVar38 >> 0x20) != 0) goto LAB_001c9afc;
        pcVar25 = *(code **)(pcVar22 + 0x1df780);
        if (1 < (uint)uVar38) goto LAB_001c9b00;
        iVar4 = 1;
      }
      else {
LAB_001c9afc:
        pcVar25 = *(code **)(pcVar22 + 0x1df780);
LAB_001c9b00:
        uVar38 = (*pcVar25)(7);
        if (((int)((ulonglong)uVar38 >> 0x20) == 0) &&
           (pcVar25 = *(code **)(pcVar22 + 0x1df780), (uint)uVar38 < 2)) goto LAB_001c9ce8;
        iVar4 = 2;
      }
LAB_001c9b14:
      iVar13 = *(int *)(pcVar22 + 0x1defe4);
    }
    puStack_254 = &uStack_270;
    iStack_250 = 1;
    iStack_268 = iVar2;
    iStack_264 = iVar10;
    uStack_260 = uVar7;
    uStack_25c = uVar6;
    pIStack_258 = pIVar11;
    (**(code **)(pcVar22 + 0x1df7dc))(iVar13 + 0x594c,&iStack_268,iVar4,0);
    iVar10 = iStack_250;
    (**(code **)(pcVar22 + 0x1df538))(uVar7);
    (**(code **)(pcVar22 + 0x1df538))(uVar6);
    pIVar11->type = *(ImageType *)(iVar2 + 0x2a0);
    if (sVar9 != 0) {
      sVar20 = (sVar9 - pIVar11->columns) - sVar20;
    }
    (pIVar11->page).width = sVar9;
    (pIVar11->page).height = sVar24;
    (pIVar11->page).x = sVar20;
    (pIVar11->page).y = sVar5;
    if (iVar10 == 0) {
      pIVar11 = (Image *)(**(code **)(pcVar22 + 0x1df590))(pIVar11);
    }
  }
  if (iStack_24c == *piVar18) {
    return pIVar11;
  }
  (**(code **)(pcVar22 + 0x1df6a8))();
LAB_001c9db0:
  pIVar11 = (Image *)(**(code **)(pcVar22 + 0x1dfc4c))
                               (*(int *)(pcVar22 + 0x1def24) + 0x294c,
                                *(int *)(pcVar22 + 0x1def30) + -0x288c,0x548,
                                *(int *)(pcVar22 + 0x1def30) + -0x26f8);
  return pIVar11;
}



/* WARNING: Type propagation algorithm not settling */

undefined4 *******
CropImageToTiles(undefined4 *******param_1,undefined4 *******param_2,undefined4 ******param_3)

{
  bool bVar1;
  undefined4 ******ppppppuVar2;
  undefined *puVar3;
  undefined4 uVar4;
  undefined4 uVar5;
  undefined4 ******ppppppuVar6;
  undefined4 ******ppppppuVar7;
  int extraout_v1;
  int extraout_v1_00;
  int extraout_v1_01;
  int extraout_v1_02;
  int extraout_v1_03;
  int extraout_v1_04;
  int extraout_v1_05;
  int extraout_v1_06;
  int extraout_v1_07;
  int extraout_v1_08;
  int extraout_v1_09;
  int extraout_v1_10;
  undefined *puVar8;
  undefined4 *******pppppppuVar9;
  int iVar10;
  int iVar11;
  undefined4 *******pppppppuVar12;
  undefined4 *******pppppppuVar13;
  int iVar14;
  int iVar15;
  undefined4 *******unaff_s0;
  undefined4 *******unaff_s1;
  undefined4 ******unaff_s2;
  undefined4 *******unaff_s3;
  int *piVar16;
  int *piVar17;
  undefined4 ******unaff_s4;
  int *piVar18;
  undefined4 *******unaff_s5;
  undefined4 *******unaff_s6;
  undefined4 ******ppppppuVar19;
  undefined4 *******unaff_s7;
  undefined *puVar20;
  code *pcVar21;
  undefined4 *******unaff_s8;
  undefined4 ******ppppppuVar22;
  code *pcVar23;
  code *pcVar24;
  double dVar25;
  double dVar26;
  double dVar27;
  double dVar28;
  double dVar29;
  double dVar30;
  double dVar31;
  double dVar32;
  double dVar33;
  double dVar34;
  double dVar35;
  undefined8 uVar36;
  undefined4 uStack_270;
  undefined4 uStack_26c;
  int iStack_268;
  int iStack_264;
  undefined4 uStack_260;
  undefined4 uStack_25c;
  undefined4 *******pppppppuStack_258;
  undefined4 *puStack_254;
  int iStack_250;
  int iStack_24c;
  undefined4 *******pppppppuStack_248;
  undefined4 *******pppppppuStack_244;
  undefined4 ******ppppppuStack_240;
  int *piStack_23c;
  int *piStack_238;
  undefined4 *******pppppppuStack_234;
  undefined4 *******pppppppuStack_230;
  undefined4 *******pppppppuStack_22c;
  undefined4 *******pppppppuStack_228;
  code *pcStack_224;
  undefined4 *******pppppppuStack_210;
  undefined4 *******pppppppuStack_20c;
  code *pcStack_208;
  undefined4 ******ppppppuStack_1fc;
  undefined4 uStack_1f8;
  undefined4 uStack_1f4;
  undefined4 *******pppppppuStack_1f0;
  undefined4 *******pppppppuStack_1ec;
  undefined4 *******pppppppuStack_1e8;
  int *piStack_1e4;
  undefined4 *******pppppppuStack_1e0;
  undefined4 *puStack_1dc;
  undefined4 *******pppppppuStack_1d8;
  int iStack_1d4;
  undefined4 *******pppppppuStack_1d0;
  undefined4 *******pppppppuStack_1cc;
  undefined4 ******ppppppuStack_1c8;
  undefined4 *******pppppppuStack_1c4;
  int *piStack_1c0;
  undefined4 *******pppppppuStack_1bc;
  undefined4 *******pppppppuStack_1b8;
  undefined4 *******pppppppuStack_1b4;
  undefined4 *******pppppppuStack_1b0;
  code *pcStack_1ac;
  undefined4 ******ppppppuStack_198;
  undefined4 *******pppppppuStack_194;
  undefined4 ******ppppppuStack_190;
  code *pcStack_188;
  undefined4 *******pppppppuStack_17c;
  undefined4 *******pppppppuStack_178;
  undefined4 ******ppppppuStack_174;
  undefined4 *******pppppppuStack_170;
  code *pcStack_16c;
  undefined4 ******ppppppuStack_158;
  undefined4 *******pppppppuStack_154;
  undefined *puStack_150;
  undefined4 uStack_148;
  undefined4 uStack_144;
  undefined4 *******pppppppuStack_13c;
  undefined4 *******pppppppuStack_138;
  undefined4 ******ppppppuStack_134;
  undefined4 *******pppppppuStack_130;
  undefined4 *******pppppppuStack_12c;
  undefined4 *******pppppppuStack_128;
  undefined4 ******ppppppuStack_124;
  undefined4 *puStack_120;
  int iStack_11c;
  undefined4 *******pppppppuStack_118;
  undefined4 *******pppppppuStack_114;
  undefined4 ******ppppppuStack_110;
  undefined4 *******pppppppuStack_10c;
  undefined4 ******ppppppuStack_108;
  undefined4 *******pppppppuStack_104;
  undefined4 *******pppppppuStack_100;
  code *pcStack_fc;
  undefined4 ******local_e8;
  undefined4 *******local_e4;
  double local_c8;
  double local_a0;
  undefined4 *******local_80;
  undefined4 *******local_7c;
  undefined4 ******local_78;
  undefined4 *******local_74;
  undefined4 *******local_70;
  undefined4 *******local_6c;
  undefined4 *******local_68;
  undefined4 *******local_64;
  undefined4 *******local_60;
  int local_5c;
  
  puVar20 = PTR___stack_chk_guard_003a9230;
  local_5c = *(int *)PTR___stack_chk_guard_003a9230;
  if (param_1 == (undefined4 *******)0x0) {
LAB_001c8ef8:
    param_1 = unaff_s1;
    (*(code *)PTR___assert_fail_003a9608)
              (PTR_LAB_003a88e0 + 0xdd0,PTR_s_courses_003a88ec + -0x288c,0x322,
               PTR_s_courses_003a88ec + -0x2688);
  }
  else if (param_1[0xcdb] == (undefined4 ******)0xabacadab) {
    if (param_1[0xcd4] != (undefined4 ******)0x0) {
      local_e4 = param_1 + 0xd0;
      local_e8 = (undefined4 ******)(PTR_s_t_to_left_003a88e4 + -0x62ac);
      (*(code *)PTR_LogMagickEvent_003a91e0)
                (0x8000,PTR_s_courses_003a88ec + -0x288c,PTR_s_courses_003a88ec + -0x269c,0x325);
    }
    unaff_s6 = (undefined4 *******)(*(code *)PTR_NewImageList_003a8e84)();
    local_80 = unaff_s6;
    ppppppuVar2 = (undefined4 ******)
                  (*(code *)PTR_ParseGravityGeometry_003a97fc)(param_1,param_2,&local_7c,param_3);
    unaff_s4 = local_78;
    unaff_s0 = local_7c;
    unaff_s3 = (undefined4 *******)PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;
    if ((int)ppppppuVar2 << 0xe < 0) {
      ppppppuVar7 = param_1[7];
      if (local_7c == (undefined4 *******)0x0) {
        local_7c = (undefined4 *******)0x1;
        dVar35 = *(double *)(PTR_LAB_003a88e0 + 0x1438);
      }
      else {
        dVar35 = (double)(int)local_7c;
        if ((int)local_7c < 0) {
          dVar35 = dVar35 + *(double *)(PTR_LAB_003a88e0 + 0x1418);
        }
      }
      if (local_78 == (undefined4 ******)0x0) {
        dVar30 = *(double *)(PTR_LAB_003a88e0 + 0x1438);
        local_78 = (undefined4 ******)0x1;
        if (((uint)ppppppuVar2 & 0x2000) != 0) goto LAB_001c8e14;
LAB_001c8484:
        pppppppuVar9 = local_74;
        if ((int)local_74 < 0) {
          pppppppuVar9 = (undefined4 *******)-(int)local_74;
        }
        puVar8 = (undefined *)((int)param_1[6] - (int)pppppppuVar9);
        pppppppuVar9 = local_70;
        if ((int)local_70 < 0) {
          pppppppuVar9 = (undefined4 *******)-(int)local_70;
        }
        puVar3 = (undefined *)((int)ppppppuVar7 - (int)pppppppuVar9);
      }
      else {
        dVar30 = (double)(int)local_78;
        if ((int)local_78 < 0) {
          dVar30 = dVar30 + *(double *)(PTR_LAB_003a88e0 + 0x1418);
        }
        if (((uint)ppppppuVar2 & 0x2000) == 0) goto LAB_001c8484;
LAB_001c8e14:
        pppppppuVar9 = local_74;
        if ((int)local_74 < 0) {
          pppppppuVar9 = (undefined4 *******)-(int)local_74;
        }
        puVar8 = (undefined *)((int)pppppppuVar9 + (int)param_1[6]);
        if ((int)local_70 < 0) {
          puVar3 = (undefined *)((int)ppppppuVar7 - (int)local_70);
        }
        else {
          puVar3 = (undefined *)((int)local_70 + (int)ppppppuVar7);
        }
      }
      unaff_s4 = (undefined4 ******)((uint)ppppppuVar2 & 0x2000);
      dVar34 = (double)(int)puVar8;
      if ((int)puVar8 < 0) {
        dVar34 = dVar34 + *(double *)(PTR_LAB_003a88e0 + 0x1418);
      }
      dVar35 = dVar34 / dVar35;
      local_c8 = (double)(int)puVar3;
      if ((int)puVar3 < 0) {
        local_c8 = local_c8 + *(double *)(PTR_LAB_003a88e0 + 0x1418);
      }
      dVar25 = *(double *)(PTR_LAB_003a88e0 + 0x1438);
      local_a0 = dVar25;
      if (dVar35 < dVar25) {
        local_a0 = *(double *)(PTR_LAB_003a88e0 + 0x1438);
        dVar35 = dVar25;
      }
      if (local_a0 <= local_c8 / dVar30) {
        local_a0 = local_c8 / dVar30;
      }
      dVar30 = 0.0;
      unaff_s7 = local_70;
      if (0.0 < local_c8) {
        dVar25 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4780);
        dVar31 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4788);
        if (unaff_s4 != (undefined4 ******)0x0) goto LAB_001c8b70;
LAB_001c854c:
        unaff_s7 = local_70;
        dVar32 = dVar30;
        if ((int)local_70 < 1) {
          dVar32 = dVar30 - (double)(int)local_70;
        }
        dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);
        dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);
        if (dVar32 - dVar26 < dVar27 - dVar32) {
          dVar26 = *(double *)((int)unaff_s3 + 0x4788);
          pcVar23 = (code *)PTR_floor_003a9670;
          if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d7c;
        }
        else {
          if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {
LAB_001c8d7c:
            iVar15 = -0x7ffffdff;
            goto joined_r0x001c8cbc;
          }
          dVar26 = *(double *)((int)unaff_s3 + 0x4788);
          pcVar23 = (code *)PTR_ceil_003a8c20;
        }
        if (dVar26 < dVar32) {
          iVar15 = 0x7ffffdff;
        }
        else {
          dVar32 = (double)(*pcVar23)(dVar32);
          iVar15 = (int)dVar32;
        }
joined_r0x001c8cbc:
        dVar30 = dVar30 + local_a0;
        if ((int)unaff_s7 < 0) {
          dVar32 = 0.0;
        }
        else {
          dVar32 = (double)(int)unaff_s7;
        }
        dVar32 = dVar30 + dVar32;
        dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);
        dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);
        if (dVar32 - dVar26 < dVar27 - dVar32) {
          if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {
            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8630;
            goto LAB_001c8cec;
          }
        }
        else if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {
          if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;
          goto LAB_001c8d18;
        }
LAB_001c8c88:
        iVar14 = -0x7ffffdff;
LAB_001c8644:
        do {
          unaff_s8 = (undefined4 *******)(iVar14 - iVar15);
          param_2 = (undefined4 *******)((int)param_1[0x8d] + iVar15);
          dVar32 = 0.0;
          local_68 = unaff_s8;
          local_60 = param_2;
          if (0.0 < dVar34) {
            dVar26 = *(double *)((int)unaff_s3 + 0x4788);
            unaff_s6 = &local_6c;
            dVar27 = *(double *)((int)unaff_s3 + 0x4780);
            do {
              unaff_s7 = local_74;
              if (unaff_s4 == (undefined4 ******)0x0) {
                dVar33 = dVar32;
                if ((int)local_74 < 1) {
                  dVar33 = dVar32 - (double)(int)local_74;
                }
                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);
                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);
                if (dVar33 - dVar28 < dVar29 - dVar33) {
                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar33) {
                    pcVar23 = (code *)PTR_floor_003a9670;
                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;
LAB_001c8c78:
                    iVar15 = 0x7ffffdff;
                    goto LAB_001c8700;
                  }
LAB_001c8b04:
                  dVar32 = dVar32 + dVar35;
                  iVar15 = -0x7ffffdff;
                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;
LAB_001c8708:
                  dVar33 = (double)(int)unaff_s7;
                }
                else {
                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;
                  pcVar23 = (code *)PTR_ceil_003a8c20;
                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c8c78;
LAB_001c86e8:
                  dVar33 = (double)(*pcVar23)(dVar33);
                  iVar15 = (int)dVar33;
LAB_001c8700:
                  dVar32 = dVar32 + dVar35;
                  if (-1 < (int)unaff_s7) goto LAB_001c8708;
LAB_001c8b14:
                  dVar33 = 0.0;
                }
                dVar33 = dVar32 + dVar33;
                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);
                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);
                if (dVar33 - dVar28 < dVar29 - dVar33) {
                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;
                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;
LAB_001c8768:
                  dVar33 = (double)(*(code *)PTR_floor_003a9670)(dVar33);
                  iVar14 = (int)dVar33;
                }
                else {
                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;
                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;
LAB_001c8abc:
                  dVar33 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);
                  iVar14 = (int)dVar33;
                }
              }
              else {
                dVar33 = dVar32;
                if (0 < (int)local_74) {
                  dVar33 = dVar32 - (double)(int)local_74;
                }
                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);
                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);
                if (dVar33 - dVar28 < dVar29 - dVar33) {
                  if (dVar27 <= dVar33) {
                    pcVar23 = (code *)PTR_floor_003a9670;
                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;
LAB_001c8c68:
                    iVar15 = 0x7ffffdff;
                    goto LAB_001c8850;
                  }
LAB_001c8b24:
                  dVar32 = dVar32 + dVar35;
                  iVar15 = -0x7ffffdff;
                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;
LAB_001c8858:
                  dVar33 = 0.0;
                }
                else {
                  if (dVar33 < dVar27) goto LAB_001c8b24;
                  pcVar23 = (code *)PTR_ceil_003a8c20;
                  if (dVar26 < dVar33) goto LAB_001c8c68;
LAB_001c8838:
                  dVar33 = (double)(*pcVar23)(dVar33);
                  iVar15 = (int)dVar33;
LAB_001c8850:
                  dVar32 = dVar32 + dVar35;
                  if (-1 < (int)unaff_s7) goto LAB_001c8858;
LAB_001c8b34:
                  dVar33 = (double)(int)unaff_s7;
                }
                dVar33 = dVar32 + dVar33;
                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);
                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);
                if (dVar33 - dVar28 < dVar29 - dVar33) {
                  if (dVar33 < dVar25) goto LAB_001c8a44;
                  if (dVar33 <= dVar26) goto LAB_001c8768;
LAB_001c88b8:
                  iVar14 = 0x7ffffdff;
                }
                else if (dVar25 <= dVar33) {
                  if (dVar33 <= dVar31) goto LAB_001c8abc;
                  iVar14 = 0x7ffffdff;
                }
                else {
LAB_001c8a44:
                  iVar14 = -0x7ffffdff;
                }
              }
              unaff_s8 = (undefined4 *******)(iVar14 - iVar15);
              param_2 = (undefined4 *******)((int)param_1[0x8c] + iVar15);
              local_6c = unaff_s8;
              local_64 = param_2;
              iVar15 = (*(code *)PTR_CropImage_003a90b8)(param_1,unaff_s6,param_3);
              if (iVar15 != 0) {
                (*(code *)PTR_AppendImageToList_003a9880)(&local_80,iVar15);
              }
            } while (dVar32 < dVar34);
          }
          unaff_s5 = unaff_s3;
          if (local_c8 <= dVar30) break;
          if (unaff_s4 == (undefined4 ******)0x0) goto LAB_001c854c;
LAB_001c8b70:
          unaff_s7 = local_70;
          dVar32 = dVar30;
          if (0 < (int)local_70) {
            dVar32 = dVar30 - (double)(int)local_70;
          }
          dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);
          dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);
          if (dVar32 - dVar26 < dVar27 - dVar32) {
            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d8c;
            pcVar23 = (code *)PTR_floor_003a9670;
            if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8d50;
LAB_001c8bd8:
            dVar32 = (double)(*pcVar23)(dVar32);
            iVar15 = (int)dVar32;
LAB_001c8bf0:
            dVar30 = dVar30 + local_a0;
            if (-2 < (int)unaff_s7) goto LAB_001c8c00;
LAB_001c8d6c:
            dVar32 = (double)(int)unaff_s7;
          }
          else {
            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {
LAB_001c8d8c:
              iVar15 = -0x7ffffdff;
              goto LAB_001c8bf0;
            }
            pcVar23 = (code *)PTR_ceil_003a8c20;
            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8bd8;
LAB_001c8d50:
            iVar15 = 0x7ffffdff;
            dVar30 = dVar30 + local_a0;
            if ((int)unaff_s7 < -1) goto LAB_001c8d6c;
LAB_001c8c00:
            dVar32 = 0.0;
          }
          dVar32 = dVar30 + dVar32;
          dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);
          dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);
          if (dVar32 - dVar26 < dVar27 - dVar32) {
            if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {
              if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) {
LAB_001c8cec:
                iVar14 = 0x7ffffdff;
              }
              else {
LAB_001c8630:
                dVar32 = (double)(*(code *)PTR_floor_003a9670)(dVar32);
                iVar14 = (int)dVar32;
              }
              goto LAB_001c8644;
            }
            goto LAB_001c8c88;
          }
          if (dVar32 < dVar25) goto LAB_001c8c88;
          if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;
LAB_001c8d18:
          dVar32 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);
          iVar14 = (int)dVar32;
        } while( true );
      }
      (*(code *)PTR_ClearMagickException_003a90f8)(param_3);
      pppppppuVar9 = local_80;
      unaff_s0 = param_2;
    }
    else {
      unaff_s3 = &local_7c;
      if (((local_7c == (undefined4 *******)0x0) && (local_78 == (undefined4 ******)0x0)) ||
         (((uint)ppppppuVar2 & 3) != 0)) {
        local_80 = (undefined4 *******)(*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);
        pppppppuVar9 = local_80;
        unaff_s4 = ppppppuVar2;
        if ((local_80 != (undefined4 *******)0x0) &&
           (unaff_s4 = (undefined4 ******)((uint)ppppppuVar2 & 0x2000),
           unaff_s4 != (undefined4 ******)0x0)) {
          local_80[0x8c] = (undefined4 ******)((int)local_80[0x8c] - (int)local_74);
          local_80[0x8d] = (undefined4 ******)((int)local_80[0x8d] - (int)local_70);
          local_80[0x8a] = local_7c;
          local_80[0x8b] = local_78;
        }
      }
      else {
        unaff_s7 = (undefined4 *******)param_1[6];
        if ((local_7c < unaff_s7) || (local_78 < param_1[7])) {
          ppppppuVar2 = param_1[0x8b];
          if ((undefined4 *******)param_1[0x8a] != (undefined4 *******)0x0) {
            unaff_s7 = (undefined4 *******)param_1[0x8a];
          }
          if (ppppppuVar2 == (undefined4 ******)0x0) {
            ppppppuVar2 = param_1[7];
          }
          if (local_7c == (undefined4 *******)0x0) {
            unaff_s0 = unaff_s7;
          }
          if (local_78 == (undefined4 ******)0x0) {
            unaff_s4 = ppppppuVar2;
          }
          pppppppuVar9 = local_80;
          if (0 < (int)ppppppuVar2) {
            unaff_s3 = (undefined4 *******)0x0;
            unaff_s8 = &local_80;
            do {
              unaff_s5 = (undefined4 *******)0x0;
              if ((int)unaff_s7 < 1) {
                pppppppuVar9 = local_80;
                if (unaff_s6 == (undefined4 *******)0x0) break;
              }
              else {
                do {
                  local_7c = unaff_s0;
                  local_78 = unaff_s4;
                  local_74 = unaff_s5;
                  local_70 = unaff_s3;
                  unaff_s6 = (undefined4 *******)
                             (*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);
                  pppppppuVar9 = local_80;
                  if (unaff_s6 == (undefined4 *******)0x0) goto LAB_001c8908;
                  unaff_s5 = (undefined4 *******)((int)unaff_s5 + (int)unaff_s0);
                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);
                } while ((int)unaff_s5 < (int)unaff_s7);
              }
              unaff_s3 = (undefined4 *******)((int)unaff_s3 + (int)unaff_s4);
              pppppppuVar9 = local_80;
            } while ((int)unaff_s3 < (int)ppppppuVar2);
          }
        }
        else {
          local_e8 = param_3;
          pppppppuVar9 = (undefined4 *******)(*(code *)PTR_CloneImage_003a9830)(param_1,0,0,1);
        }
      }
    }
LAB_001c8908:
    if (local_5c == *(int *)puVar20) {
      return pppppppuVar9;
    }
    (*(code *)PTR___stack_chk_fail_003a9064)();
    unaff_s1 = param_1;
    unaff_s2 = param_3;
    goto LAB_001c8ef8;
  }
  ppppppuVar2 = (undefined4 ******)0x323;
  pppppppuVar12 = (undefined4 *******)(PTR_s_courses_003a88ec + -0x288c);
  pcVar23 = ExcerptImage;
  pppppppuVar9 = (undefined4 *******)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3784);
  puVar20 = PTR___assert_fail_003a9608;
  (*(code *)PTR___assert_fail_003a9608)();
  puVar8 = puVar20 + 0x1e7970;
  piVar18 = *(int **)(puVar20 + 0x1e02f0);
  iStack_11c = *piVar18;
  puStack_150 = puVar8;
  pppppppuStack_118 = unaff_s0;
  pppppppuStack_114 = param_1;
  ppppppuStack_110 = unaff_s2;
  pppppppuStack_10c = unaff_s3;
  ppppppuStack_108 = unaff_s4;
  pppppppuStack_104 = unaff_s5;
  pppppppuStack_100 = unaff_s6;
  pcStack_fc = pcVar23;
  if (pppppppuVar9 == (undefined4 *******)0x0) {
    iVar15 = *(int *)(puVar20 + 0x1df9ac) + -0x26ac;
    (**(code **)(puVar20 + 0x1e06c8))
              (*(int *)(puVar20 + 0x1df9a8) + -0x37b0,*(int *)(puVar20 + 0x1df9ac) + -0x288c,0x3f4,
               iVar15);
LAB_001c92d4:
    iVar15 = iVar15 + -0x26ac;
    (**(code **)(puVar8 + -0x72a8))
              (*(int *)(puVar8 + -0x7fd0) + 0x294c,*(int *)(puVar8 + -0x7fc4) + -0x288c,0x3fa,iVar15
              );
    ppppppuVar2 = unaff_s2;
LAB_001c92f4:
    iVar15 = iVar15 + -0x26ac;
    (**(code **)(puVar8 + -0x72a8))
              (*(int *)(puVar8 + -0x7fd0) + 0x1cac,*(int *)(puVar8 + -0x7fc4) + -0x288c,0x3f9,iVar15
              );
LAB_001c9314:
    (**(code **)(puVar8 + -0x784c))();
    pppppppuVar9 = unaff_s0;
LAB_001c9320:
    (**(code **)(puVar8 + -0x72a8))
              (*(int *)(puVar8 + -0x7fc4) + -0x2850,*(int *)(puVar8 + -0x7fc4) + -0x288c,0x3f8,
               iVar15 + -0x26ac);
    unaff_s2 = ppppppuVar2;
  }
  else if (pppppppuVar9[0xcdb] == (undefined4 ******)0xabacadab) {
    if (pppppppuVar9[0xcd4] != (undefined4 ******)0x0) {
      pppppppuStack_154 = pppppppuVar9 + 0xd0;
      ppppppuStack_158 = (undefined4 ******)(*(int *)(puVar20 + 0x1df9a4) + -0x62ac);
      (**(code **)(puVar20 + 0x1e02a0))
                (0x8000,*(int *)(puVar20 + 0x1df9ac) + -0x288c,
                 *(int *)(puVar20 + 0x1df9ac) + -0x26bc,0x3f7);
    }
    iVar15 = *(int *)(puStack_150 + -0x7fc4);
    unaff_s3 = pppppppuVar12;
    puVar8 = puStack_150;
    if (pppppppuVar12 != (undefined4 *******)0x0) {
      unaff_s0 = pppppppuVar9;
      if (ppppppuVar2 == (undefined4 ******)0x0) goto LAB_001c92f4;
      unaff_s2 = ppppppuVar2;
      if (ppppppuVar2[7] != (undefined4 *****)0xabacadab) goto LAB_001c92d4;
      iVar15 = 1;
      ppppppuStack_158 = ppppppuVar2;
      param_1 = (undefined4 *******)
                (**(code **)(puStack_150 + -0x7080))(pppppppuVar9,*pppppppuVar12,pppppppuVar12[1],1)
      ;
      if (param_1 != (undefined4 *******)0x0) {
        uStack_144 = 0;
        uStack_148 = 0;
        unaff_s5 = (undefined4 *******)
                   (**(code **)(puStack_150 + -0x715c))(pppppppuVar9,ppppppuVar2);
        unaff_s6 = (undefined4 *******)(**(code **)(puStack_150 + -0x79dc))(param_1,ppppppuVar2);
        iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9);
        if (((iVar15 == 4) ||
            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9), iVar15 == 3)) &&
           ((iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 4 ||
            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 3)))) {
          (**(code **)(puStack_150 + -0x7774))(7);
          ppppppuVar7 = param_1[7];
          if ((int)ppppppuVar7 < 0) {
            pcVar23 = *(code **)(puStack_150 + -0x7774);
            if (extraout_v1 < (int)ppppppuVar7 + 0x3f >> 6) goto LAB_001c9298;
LAB_001c91a4:
            bVar1 = (int)ppppppuVar7 < 0x80;
          }
          else {
            pcVar23 = *(code **)(puStack_150 + -0x7774);
            if ((int)ppppppuVar7 >> 6 <= extraout_v1) goto LAB_001c91a4;
LAB_001c9298:
            (*pcVar23)(7);
            bVar1 = extraout_v1_02 < 2;
          }
          iVar14 = 1;
          if ((bool)(bVar1 ^ 1)) {
            (**(code **)(puStack_150 + -0x7774))(7);
            ppppppuVar7 = param_1[7];
            if ((int)ppppppuVar7 < 0) {
              ppppppuVar7 = (undefined4 ******)((int)ppppppuVar7 + 0x3f);
            }
            iVar14 = (int)ppppppuVar7 >> 6;
            pcVar23 = *(code **)(puStack_150 + -0x7774);
            if (extraout_v1_01 < iVar14) {
LAB_001c9234:
              (*pcVar23)(7);
              iVar14 = extraout_v1_00;
            }
            goto LAB_001c9088;
          }
          iVar10 = *(int *)(puStack_150 + -0x7f10);
        }
        else {
          uVar36 = (**(code **)(puStack_150 + -0x7774))(7);
          if ((int)((ulonglong)uVar36 >> 0x20) == 0) {
            pcVar23 = *(code **)(puStack_150 + -0x7774);
            if (1 < (uint)uVar36) goto LAB_001c9074;
            uVar36 = (*pcVar23)(7);
            if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c9070;
            pcVar23 = *(code **)(puStack_150 + -0x7774);
            if (1 < (uint)uVar36) goto LAB_001c9074;
            iVar14 = 1;
          }
          else {
LAB_001c9070:
            pcVar23 = *(code **)(puStack_150 + -0x7774);
LAB_001c9074:
            uVar36 = (*pcVar23)(7);
            if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&
               (pcVar23 = *(code **)(puStack_150 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c9234;
            iVar14 = 2;
          }
LAB_001c9088:
          iVar10 = *(int *)(puStack_150 + -0x7f10);
        }
        iVar15 = 0;
        ppppppuStack_124 = (undefined4 ******)0x1;
        puStack_120 = &uStack_148;
        pppppppuStack_13c = pppppppuVar9;
        pppppppuStack_138 = pppppppuVar12;
        ppppppuStack_134 = ppppppuVar2;
        pppppppuStack_130 = unaff_s6;
        pppppppuStack_12c = unaff_s5;
        pppppppuStack_128 = param_1;
        (**(code **)(puStack_150 + -0x7718))(iVar10 + 0x5428,&pppppppuStack_13c,iVar14,0);
        ppppppuVar2 = ppppppuStack_124;
        (**(code **)(puStack_150 + -0x79bc))(unaff_s6);
        (**(code **)(puStack_150 + -0x79bc))(unaff_s5);
        param_1[0xa8] = pppppppuVar9[0xa8];
        if (ppppppuVar2 == (undefined4 ******)0x0) {
          param_1 = (undefined4 *******)(**(code **)(puStack_150 + -0x7964))(param_1);
        }
      }
      puVar8 = puStack_150;
      if (iStack_11c == *piVar18) {
        return param_1;
      }
      goto LAB_001c9314;
    }
    goto LAB_001c9320;
  }
  ppppppuVar2 = (undefined4 ******)0x3f5;
  pcVar21 = *(code **)(puVar8 + -0x72a8);
  pppppppuVar13 = (undefined4 *******)(*(int *)(puVar8 + -0x7fc4) + -0x288c);
  pcVar24 = ExtentImage;
  pppppppuVar12 = (undefined4 *******)(*(int *)(puVar8 + -0x7fc8) + -0x3784);
  (*pcVar21)();
  pcVar23 = pcVar21 + 0x1e754c;
  pcStack_188 = pcVar23;
  pppppppuStack_17c = pppppppuVar9;
  pppppppuStack_178 = param_1;
  ppppppuStack_174 = unaff_s2;
  pppppppuStack_170 = unaff_s3;
  pcStack_16c = pcVar24;
  if (pppppppuVar12 == (undefined4 *******)0x0) {
    iVar15 = *(int *)(pcVar21 + 0x1df588) + -0x26c8;
    (**(code **)(pcVar21 + 0x1e02a4))
              (*(int *)(pcVar21 + 0x1df584) + -0x37b0,*(int *)(pcVar21 + 0x1df588) + -0x288c,0x474,
               iVar15);
LAB_001c94fc:
    iVar15 = iVar15 + -0x26c8;
    (**(code **)(pcVar23 + -0x72a8))
              (*(int *)(pcVar23 + -0x7fc4) + -0x2850,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x478,
               iVar15);
LAB_001c951c:
    iVar15 = iVar15 + -0x26c8;
    (**(code **)(pcVar23 + -0x72a8))
              (*(int *)(pcVar23 + -0x7fd0) + 0x294c,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x47a,
               iVar15);
    pppppppuVar12 = pppppppuVar9;
LAB_001c953c:
    (**(code **)(pcVar23 + -0x72a8))
              (*(int *)(pcVar23 + -0x7fd0) + 0x1cac,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x479,
               iVar15 + -0x26c8);
  }
  else if (pppppppuVar12[0xcdb] == (undefined4 ******)0xabacadab) {
    if (pppppppuVar12[0xcd4] != (undefined4 ******)0x0) {
      pppppppuStack_194 = pppppppuVar12 + 0xd0;
      ppppppuStack_198 = (undefined4 ******)(*(int *)(pcVar21 + 0x1df580) + -0x62ac);
      (**(code **)(pcVar21 + 0x1dfe7c))
                (0x8000,*(int *)(pcVar21 + 0x1df588) + -0x288c,
                 *(int *)(pcVar21 + 0x1df588) + -0x26d4,0x477);
    }
    iVar15 = *(int *)(pcStack_188 + -0x7fc4);
    pppppppuVar9 = pppppppuVar12;
    param_1 = pppppppuVar13;
    unaff_s2 = ppppppuVar2;
    pcVar23 = pcStack_188;
    if (pppppppuVar13 == (undefined4 *******)0x0) goto LAB_001c94fc;
    if (ppppppuVar2 != (undefined4 ******)0x0) {
      if (ppppppuVar2[7] == (undefined4 *****)0xabacadab) {
        ppppppuStack_198 = ppppppuVar2;
        pppppppuVar9 = (undefined4 *******)
                       (**(code **)(pcStack_188 + -0x7080))
                                 (pppppppuVar12,*pppppppuVar13,pppppppuVar13[1],1);
        if (pppppppuVar9 != (undefined4 *******)0x0) {
          iVar15 = (**(code **)(pcStack_188 + -0x7a20))(pppppppuVar9,ppppppuVar2);
          if (iVar15 == 0) {
            (**(code **)(pcStack_188 + -0x7964))(pppppppuVar9);
            pppppppuVar9 = (undefined4 *******)0x0;
          }
          else {
            pppppppuStack_194 = (undefined4 *******)-(int)pppppppuVar13[3];
            ppppppuStack_198 = (undefined4 ******)-(int)pppppppuVar13[2];
            ppppppuStack_190 = ppppppuVar2;
            iVar15 = (**(code **)(pcStack_188 + -0x7bec))
                               (pppppppuVar9,pppppppuVar12,pppppppuVar12[0x99],1);
            if (iVar15 != 0) {
              (**(code **)(pcStack_188 + -0x7d18))
                        (pppppppuVar9,pppppppuVar12[6],pppppppuVar12[7],pppppppuVar13);
            }
          }
        }
        return pppppppuVar9;
      }
      goto LAB_001c951c;
    }
    goto LAB_001c953c;
  }
  pcVar21 = *(code **)(pcVar23 + -0x72a8);
  pppppppuVar9 = (undefined4 *******)(*(int *)(pcVar23 + -0x7fc4) + -0x288c);
  pcVar24 = FlipImage;
  pppppppuVar13 = (undefined4 *******)(*(int *)(pcVar23 + -0x7fc8) + -0x3784);
  (*pcVar21)(pppppppuVar13,pppppppuVar9,0x475,*(int *)(pcVar23 + -0x7fc4) + -0x26c8);
  pcVar23 = pcVar21 + 0x1e7330;
  piVar16 = *(int **)(pcVar21 + 0x1dfcb0);
  iStack_1d4 = *piVar16;
  pcStack_208 = pcVar23;
  pppppppuStack_1d0 = pppppppuVar12;
  pppppppuStack_1cc = param_1;
  ppppppuStack_1c8 = unaff_s2;
  pppppppuStack_1c4 = unaff_s3;
  piStack_1c0 = piVar18;
  pppppppuStack_1bc = unaff_s5;
  pppppppuStack_1b8 = unaff_s6;
  pppppppuStack_1b4 = unaff_s7;
  pppppppuStack_1b0 = unaff_s8;
  pcStack_1ac = pcVar24;
  if (pppppppuVar13 == (undefined4 *******)0x0) {
    (**(code **)(pcVar21 + 0x1e0088))
              (*(int *)(pcVar21 + 0x1df368) + -0x37b0,*(int *)(pcVar21 + 0x1df36c) + -0x288c,0x4bc,
               *(int *)(pcVar21 + 0x1df36c) + -0x26e0);
    pppppppuVar9 = param_1;
LAB_001c9944:
    (**(code **)(pcVar23 + -0x72a8))
              (*(int *)(pcVar23 + -0x7fd0) + 0x1cac,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x4c0,
               *(int *)(pcVar23 + -0x7fc4) + -0x26e0);
LAB_001c9968:
    (**(code **)(pcVar23 + -0x784c))();
    pppppppuVar13 = unaff_s7;
LAB_001c9974:
    (**(code **)(pcVar23 + -0x72a8))
              (*(int *)(pcVar23 + -0x7fd0) + 0x294c,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x4c1,
               *(int *)(pcVar23 + -0x7fc4) + -0x26e0);
    pppppppuStack_244 = pppppppuVar9;
  }
  else {
    pppppppuStack_244 = param_1;
    if (pppppppuVar13[0xcdb] == (undefined4 ******)0xabacadab) {
      if (pppppppuVar13[0xcd4] != (undefined4 ******)0x0) {
        pppppppuStack_20c = pppppppuVar13 + 0xd0;
        pppppppuStack_210 = (undefined4 *******)(*(int *)(pcVar21 + 0x1df364) + -0x62ac);
        (**(code **)(pcVar21 + 0x1dfc60))
                  (0x8000,*(int *)(pcVar21 + 0x1df36c) + -0x288c,
                   *(int *)(pcVar21 + 0x1df36c) + -0x26ec,0x4bf);
      }
      unaff_s7 = pppppppuVar13;
      pcVar23 = pcStack_208;
      if (pppppppuVar9 == (undefined4 *******)0x0) goto LAB_001c9944;
      if (pppppppuVar9[7] == (undefined4 ******)0xabacadab) {
        pppppppuStack_210 = pppppppuVar9;
        pppppppuVar12 =
             (undefined4 *******)(**(code **)(pcStack_208 + -0x7080))(pppppppuVar13,0,0,1);
        if (pppppppuVar12 != (undefined4 *******)0x0) {
          ppppppuStack_1fc = pppppppuVar13[0x8c];
          unaff_s8 = (undefined4 *******)pppppppuVar13[0x8a];
          unaff_s2 = pppppppuVar13[0x8b];
          unaff_s6 = (undefined4 *******)pppppppuVar13[0x8d];
          uStack_1f4 = 0;
          uStack_1f8 = 0;
          piVar18 = (int *)(**(code **)(pcStack_208 + -0x715c))(pppppppuVar13,pppppppuVar9);
          unaff_s5 = (undefined4 *******)
                     (**(code **)(pcStack_208 + -0x79dc))(pppppppuVar12,pppppppuVar9);
          iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13);
          if (((iVar15 == 4) ||
              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13), iVar15 == 3)) &&
             ((iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 4 ||
              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 3)))) {
            (**(code **)(pcStack_208 + -0x7774))(7);
            ppppppuVar2 = pppppppuVar12[7];
            if ((int)ppppppuVar2 < 0) {
              pcVar23 = *(code **)(pcStack_208 + -0x7774);
              if (extraout_v1_03 < (int)ppppppuVar2 + 0x3f >> 6) goto LAB_001c98d4;
LAB_001c981c:
              bVar1 = (int)ppppppuVar2 < 0x80;
            }
            else {
              pcVar23 = *(code **)(pcStack_208 + -0x7774);
              if ((int)ppppppuVar2 >> 6 <= extraout_v1_03) goto LAB_001c981c;
LAB_001c98d4:
              (*pcVar23)(7);
              bVar1 = extraout_v1_05 < 2;
            }
            iVar15 = 1;
            if ((bool)(bVar1 ^ 1)) {
              (**(code **)(pcStack_208 + -0x7774))(7);
              ppppppuVar2 = pppppppuVar12[7];
              if ((int)ppppppuVar2 < 0) {
                ppppppuVar2 = (undefined4 ******)((int)ppppppuVar2 + 0x3f);
              }
              iVar15 = (int)ppppppuVar2 >> 6;
              pcVar23 = *(code **)(pcStack_208 + -0x7774);
              if (extraout_v1_06 < iVar15) {
LAB_001c98ac:
                (*pcVar23)(7);
                iVar15 = extraout_v1_04;
              }
              goto LAB_001c96d8;
            }
            iVar14 = *(int *)(pcStack_208 + -0x7f10);
          }
          else {
            uVar36 = (**(code **)(pcStack_208 + -0x7774))(7);
            if ((int)((ulonglong)uVar36 >> 0x20) == 0) {
              pcVar23 = *(code **)(pcStack_208 + -0x7774);
              if (1 < (uint)uVar36) goto LAB_001c96c4;
              uVar36 = (*pcVar23)(7);
              if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c96c0;
              pcVar23 = *(code **)(pcStack_208 + -0x7774);
              if (1 < (uint)uVar36) goto LAB_001c96c4;
              iVar15 = 1;
            }
            else {
LAB_001c96c0:
              pcVar23 = *(code **)(pcStack_208 + -0x7774);
LAB_001c96c4:
              uVar36 = (*pcVar23)(7);
              if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&
                 (pcVar23 = *(code **)(pcStack_208 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c98ac;
              iVar15 = 2;
            }
LAB_001c96d8:
            iVar14 = *(int *)(pcStack_208 + -0x7f10);
          }
          puStack_1dc = &uStack_1f8;
          pppppppuStack_1d8 = (undefined4 *******)0x1;
          pppppppuStack_1f0 = pppppppuVar13;
          pppppppuStack_1ec = pppppppuVar9;
          pppppppuStack_1e8 = unaff_s5;
          piStack_1e4 = piVar18;
          pppppppuStack_1e0 = pppppppuVar12;
          (**(code **)(pcStack_208 + -0x7718))(iVar14 + 0x56bc,&pppppppuStack_1f0,iVar15,0);
          pppppppuVar9 = pppppppuStack_1d8;
          (**(code **)(pcStack_208 + -0x79bc))(unaff_s5);
          (**(code **)(pcStack_208 + -0x79bc))(piVar18);
          pppppppuVar12[0xa8] = pppppppuVar13[0xa8];
          if (unaff_s2 != (undefined4 ******)0x0) {
            unaff_s6 = (undefined4 *******)
                       ((int)unaff_s2 + (-(int)unaff_s6 - (int)pppppppuVar12[7]));
          }
          pppppppuVar12[0x8a] = unaff_s8;
          pppppppuVar12[0x8b] = unaff_s2;
          pppppppuVar12[0x8c] = ppppppuStack_1fc;
          pppppppuVar12[0x8d] = unaff_s6;
          if (pppppppuVar9 == (undefined4 *******)0x0) {
            pppppppuVar12 = (undefined4 *******)(**(code **)(pcStack_208 + -0x7964))(pppppppuVar12);
          }
        }
        pcVar23 = pcStack_208;
        if (iStack_1d4 == *piVar16) {
          return pppppppuVar12;
        }
        goto LAB_001c9968;
      }
      goto LAB_001c9974;
    }
  }
  pcVar21 = *(code **)(pcVar23 + -0x72a8);
  iVar14 = *(int *)(pcVar23 + -0x7fc4) + -0x288c;
  pcVar24 = FlopImage;
  iVar15 = *(int *)(pcVar23 + -0x7fc8) + -0x3784;
  (*pcVar21)(iVar15,iVar14,0x4bd,*(int *)(pcVar23 + -0x7fc4) + -0x26e0);
  piVar17 = *(int **)(pcVar21 + 0x1df874);
  iStack_24c = *piVar17;
  pppppppuStack_248 = pppppppuVar12;
  ppppppuStack_240 = unaff_s2;
  piStack_23c = piVar16;
  piStack_238 = piVar18;
  pppppppuStack_234 = unaff_s5;
  pppppppuStack_230 = unaff_s6;
  pppppppuStack_22c = pppppppuVar13;
  pppppppuStack_228 = unaff_s8;
  pcStack_224 = pcVar24;
  if (iVar15 == 0) {
    pppppppuVar9 = (undefined4 *******)
                   (**(code **)(pcVar21 + 0x1dfc4c))
                             (*(int *)(pcVar21 + 0x1def2c) + -0x37b0,
                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x543,
                              *(int *)(pcVar21 + 0x1def30) + -0x26f8);
    return pppppppuVar9;
  }
  if (*(int *)(iVar15 + 0x336c) != -0x54535255) {
    pppppppuVar9 = (undefined4 *******)
                   (**(code **)(pcVar21 + 0x1dfc4c))
                             (*(int *)(pcVar21 + 0x1def2c) + -0x3784,
                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x544,
                              *(int *)(pcVar21 + 0x1def30) + -0x26f8);
    return pppppppuVar9;
  }
  if (*(int *)(iVar15 + 0x3350) != 0) {
    (**(code **)(pcVar21 + 0x1df824))
              (0x8000,*(int *)(pcVar21 + 0x1def30) + -0x288c,*(int *)(pcVar21 + 0x1def30) + -0x2704,
               0x546,*(int *)(pcVar21 + 0x1def28) + -0x62ac,iVar15 + 0x340);
  }
  if (iVar14 == 0) {
    pppppppuVar9 = (undefined4 *******)
                   (**(code **)(pcVar21 + 0x1dfc4c))
                             (*(int *)(pcVar21 + 0x1def24) + 0x1cac,
                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x547,
                              *(int *)(pcVar21 + 0x1def30) + -0x26f8);
    return pppppppuVar9;
  }
  if (*(int *)(iVar14 + 0x1c) != -0x54535255) goto LAB_001c9db0;
  pppppppuVar9 = (undefined4 *******)(**(code **)(pcVar21 + 0x1dfe74))(iVar15,0,0,1,iVar14);
  if (pppppppuVar9 != (undefined4 *******)0x0) {
    ppppppuVar2 = *(undefined4 *******)(iVar15 + 0x234);
    ppppppuVar7 = *(undefined4 *******)(iVar15 + 0x228);
    ppppppuVar22 = *(undefined4 *******)(iVar15 + 0x22c);
    ppppppuVar19 = *(undefined4 *******)(iVar15 + 0x230);
    uStack_26c = 0;
    uStack_270 = 0;
    uVar4 = (**(code **)(pcVar21 + 0x1dfd98))(iVar15,iVar14);
    uVar5 = (**(code **)(pcVar21 + 0x1df518))(pppppppuVar9,iVar14);
    iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(iVar15);
    if (((iVar10 == 4) || (iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(iVar15), iVar10 == 3)) &&
       ((iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(pppppppuVar9), iVar10 == 4 ||
        (iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(pppppppuVar9), iVar10 == 3)))) {
      (**(code **)(pcVar21 + 0x1df780))(7);
      ppppppuVar6 = pppppppuVar9[7];
      if ((int)ppppppuVar6 < 0) {
        pcVar23 = *(code **)(pcVar21 + 0x1df780);
        if (extraout_v1_07 < (int)ppppppuVar6 + 0x3f >> 6) goto LAB_001c9d10;
LAB_001c9c58:
        bVar1 = (int)ppppppuVar6 < 0x80;
      }
      else {
        pcVar23 = *(code **)(pcVar21 + 0x1df780);
        if ((int)ppppppuVar6 >> 6 <= extraout_v1_07) goto LAB_001c9c58;
LAB_001c9d10:
        (*pcVar23)(7);
        bVar1 = extraout_v1_09 < 2;
      }
      iVar10 = 1;
      if ((bool)(bVar1 ^ 1)) {
        (**(code **)(pcVar21 + 0x1df780))(7);
        ppppppuVar6 = pppppppuVar9[7];
        if ((int)ppppppuVar6 < 0) {
          ppppppuVar6 = (undefined4 ******)((int)ppppppuVar6 + 0x3f);
        }
        iVar10 = (int)ppppppuVar6 >> 6;
        pcVar23 = *(code **)(pcVar21 + 0x1df780);
        if (extraout_v1_10 < iVar10) {
LAB_001c9ce8:
          (*pcVar23)(7);
          iVar10 = extraout_v1_08;
        }
        goto LAB_001c9b14;
      }
      iVar11 = *(int *)(pcVar21 + 0x1defe4);
    }
    else {
      uVar36 = (**(code **)(pcVar21 + 0x1df780))(7);
      if ((int)((ulonglong)uVar36 >> 0x20) == 0) {
        pcVar23 = *(code **)(pcVar21 + 0x1df780);
        if (1 < (uint)uVar36) goto LAB_001c9b00;
        uVar36 = (*pcVar23)(7);
        if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c9afc;
        pcVar23 = *(code **)(pcVar21 + 0x1df780);
        if (1 < (uint)uVar36) goto LAB_001c9b00;
        iVar10 = 1;
      }
      else {
LAB_001c9afc:
        pcVar23 = *(code **)(pcVar21 + 0x1df780);
LAB_001c9b00:
        uVar36 = (*pcVar23)(7);
        if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&
           (pcVar23 = *(code **)(pcVar21 + 0x1df780), (uint)uVar36 < 2)) goto LAB_001c9ce8;
        iVar10 = 2;
      }
LAB_001c9b14:
      iVar11 = *(int *)(pcVar21 + 0x1defe4);
    }
    puStack_254 = &uStack_270;
    iStack_250 = 1;
    iStack_268 = iVar15;
    iStack_264 = iVar14;
    uStack_260 = uVar5;
    uStack_25c = uVar4;
    pppppppuStack_258 = pppppppuVar9;
    (**(code **)(pcVar21 + 0x1df7dc))(iVar11 + 0x594c,&iStack_268,iVar10,0);
    iVar14 = iStack_250;
    (**(code **)(pcVar21 + 0x1df538))(uVar5);
    (**(code **)(pcVar21 + 0x1df538))(uVar4);
    pppppppuVar9[0xa8] = *(undefined4 *******)(iVar15 + 0x2a0);
    if (ppppppuVar7 != (undefined4 ******)0x0) {
      ppppppuVar19 = (undefined4 ******)
                     ((int)ppppppuVar7 + (-(int)ppppppuVar19 - (int)pppppppuVar9[6]));
    }
    pppppppuVar9[0x8a] = ppppppuVar7;
    pppppppuVar9[0x8b] = ppppppuVar22;
    pppppppuVar9[0x8c] = ppppppuVar19;
    pppppppuVar9[0x8d] = ppppppuVar2;
    if (iVar14 == 0) {
      pppppppuVar9 = (undefined4 *******)(**(code **)(pcVar21 + 0x1df590))(pppppppuVar9);
    }
  }
  if (iStack_24c == *piVar17) {
    return pppppppuVar9;
  }
  (**(code **)(pcVar21 + 0x1df6a8))();
LAB_001c9db0:
  pppppppuVar9 = (undefined4 *******)
                 (**(code **)(pcVar21 + 0x1dfc4c))
                           (*(int *)(pcVar21 + 0x1def24) + 0x294c,
                            *(int *)(pcVar21 + 0x1def30) + -0x288c,0x548,
                            *(int *)(pcVar21 + 0x1def30) + -0x26f8);
  return pppppppuVar9;
}


lui gp,0x1f
addiu gp,gp,-0x7ac4
addu gp,gp,t9
lw v0,-0x7680(gp)
addiu sp,sp,-0xf8
sdc1 f30,0xf0(sp)
sw v0,0x6c(sp)
sw gp,0x18(sp)
sw ra,0xc4(sp)
sw s8,0xc0(sp)
sw s7,0xbc(sp)
sw s6,0xb8(sp)
sw s5,0xb4(sp)
sw s4,0xb0(sp)
sw s3,0xac(sp)
sw s2,0xa8(sp)
sw s1,0xa4(sp)
sw s0,0xa0(sp)
lw v0,0x0(v0)
sdc1 f28,0xe8(sp)
sdc1 f26,0xe0(sp)
sw v0,0x9c(sp)
sdc1 f24,0xd8(sp)
sdc1 f22,0xd0(sp)
beq a0,zero,0x001c8ef8
_sdc1 f20,0xc8(sp)
lui v0,0xabac
lw v1,0x336c(a0)
ori v0,v0,0xadab
bne v1,v0,0x001c8f1c
_or s1,a0,zero
lw v0,0x3350(a0)
or s0,a1,zero
bne v0,zero,0x001c8dc0
_or s2,a2,zero
lw t9,-0x7a2c(gp)
addiu s3,sp,0x7c
jalr t9
_sw s3,0x20(sp)
or a3,s2,zero
lw gp,0x18(sp)
or a2,s3,zero
sw v0,0x78(sp)
or a1,s0,zero
or a0,s1,zero
lw t9,-0x70b4(gp)
jalr t9
_or s6,v0,zero
or s4,v0,zero
ext v0,v0,0x11,0x1
beq v0,zero,0x001c88c0
_lw gp,0x18(sp)
lw v0,0x7c(sp)
lw a0,0x18(s1)
bne v0,zero,0x001c8a20
_lw v1,0x1c(s1)
lw a1,-0x7fd0(gp)
li v0,0x1
sw v0,0x7c(sp)
ldc1 f26,0x1438(a1)
lw v0,0x80(sp)
beq v0,zero,0x001c8dfc
_mtc1 v0,f0
bltz v0,0x001c8e74
_cvt.d.W f2,f0
andi s4,s4,0x2000
bne s4,zero,0x001c8e14
_lw v0,0x84(sp)
bltz v0,0x001c8ea0
_nop
lw s7,0x88(sp)
subu a0,a0,v0
bltz s7,0x001c8e98
_or v0,s7,zero
subu v0,v1,v0
mtc1 a0,f0
bgez a0,0x001c84b8
_cvt.d.W f24,f0
lw v1,-0x7fd0(gp)
ldc1 f4,0x1418(v1)
add.D f24,f24,f4
mtc1 v0,f0
div.D f26,f24,f26
cvt.d.W f0,f0
bgez v0,0x001c84e0
_sdc1 f0,0x30(sp)
lw v0,-0x7fd0(gp)
ldc1 f4,0x30(sp)
ldc1 f0,0x1418(v0)
add.D f0,f4,f0
sdc1 f0,0x30(sp)
ldc1 f4,0x30(sp)
ldc1 f0,0x1438(a1)
div.D f2,f4,f2
c.lt.D f26,f0
bc1f 0x001c8500
_sdc1 f2,0x58(sp)
mov.D f26,f0
ldc1 f0,0x1438(a1)
ldc1 f2,0x58(sp)
c.lt.D f2,f0
bc1f 0x1,0x001c8514
_nop
sdc1 f0,0x58(sp)
mtc1 zero,f28
ldc1 f0,0x30(sp)
mthc1 zero,f28
c.lt.D f28,f0
bc1f 0x2,0x001c8da8
_lw s3,-0x7fc8(gp)
lw s5,-0x7fc8(gp)
ldc1 f0,0x4780(s3)
ldc1 f2,0x4788(s5)
sdc1 f0,0x70(sp)
sdc1 f2,0x60(sp)
sdc1 f0,0x40(sp)
bne s4,zero,0x001c8b70
_sdc1 f0,0x48(sp)
blez s7,0x001c8d98
_nop
mov.D f20,f28
lw t9,-0x7240(gp)
jalr t9
_mov.D f12,f20
mov.D f12,f20
lw gp,0x18(sp)
lw t9,-0x7c90(gp)
jalr t9
_mov.D f22,f0
sub.D D f0,f0,f20
lw gp,0x18(sp)
sub.D D f22,f20,f22
c.lt.D f22,f0
bc1f 0x3,0x001c8c90
_ldc1 f0,0x4780(s3)
c.lt.D f20,f0
bc1t 0x4,0x001c8d78
_ldc1 f0,0x4788(s5)
c.lt.D f0,f20
bc1t 0x5,0x001c8cac
_mov.D f12,f20
lw t9,-0x7240(gp)
jalr t9
_nop
trunc.w.D f0,f0
lw gp,0x18(sp)
mfc1 s0,f0
mfc1 s8,f0
ldc1 f0,0x58(sp)
bltz s7,0x001c8cc4
_add.D f28,f28,f0
mtc1 s7,f0
cvt.d.W f22,f0
lw t9,-0x7240(gp)
add.D f22,f28,f22
jalr t9
_mov.D f12,f22
mov.D f12,f22
lw gp,0x18(sp)
lw t9,-0x7c90(gp)
jalr t9
_mov.D f20,f0
sub.D D f0,f0,f22
lw gp,0x18(sp)
sub.D D f20,f22,f20
c.lt.D f20,f0
bc1f 0x001c8cd0
_ldc1 f0,0x4780(s3)
c.lt.D f22,f0
bc1t 0x1,0x001c8c84
_ldc1 f0,0x4788(s5)
c.lt.D f0,f22
bc1t 0x2,0x001c8cec
_mov.D f12,f22
lw t9,-0x7240(gp)
jalr t9
_nop
trunc.w.D f0,f0
lw gp,0x18(sp)
mfc1 v0,f0
lw v1,0x234(s1)
subu s8,v0,s8
mtc1 zero,f20
sw s8,0x90(sp)
addu s0,v1,s0
mthc1 zero,f20
c.lt.D f20,f24
bc1f 0x7,0x001c8b58
_sw s0,0x98(sp)
ldc1 f0,0x4788(s5)
addiu s6,sp,0x8c
ldc1 f2,0x4780(s3)
sdc1 f0,0x38(sp)
sdc1 f2,0x20(sp)
sdc1 f0,0x50(sp)
b 0x001c87cc
_sdc1 f2,0x28(sp)
blez s7,0x001c8b40
_nop
mov.D f22,f20
lw t9,-0x7240(gp)
jalr t9
_mov.D f12,f22
mov.D f12,f22
lw gp,0x18(sp)
lw t9,-0x7c90(gp)
jalr t9
_mov.D f30,f0
sub.D D f0,f0,f22
lw gp,0x18(sp)
sub.D D f30,f22,f30
c.lt.D f30,f0
bc1f 0x001c8a4c
_ldc1 f0,0x4780(s3)
c.lt.D f22,f0
bc1t 0x1,0x001c8b00
_ldc1 f0,0x4788(s5)
c.lt.D f0,f22
bc1t 0x2,0x001c8c74
_mov.D f12,f22
lw t9,-0x7240(gp)
jalr t9
_nop
trunc.w.D f0,f0
lw gp,0x18(sp)
mfc1 s0,f0
mfc1 s8,f0
bltz s7,0x001c8b14
_add.D f20,f20,f26
mtc1 s7,f0
cvt.d.W f22,f0
lw t9,-0x7240(gp)
add.D f22,f20,f22
jalr t9
_mov.D f12,f22
mov.D f12,f22
lw gp,0x18(sp)
lw t9,-0x7c90(gp)
jalr t9
_mov.D f30,f0
sub.D D f0,f0,f22
lw gp,0x18(sp)
sub.D D f30,f22,f30
c.lt.D f30,f0
bc1f 0x5,0x001c8aa0
_ldc1 f0,0x4780(s3)
c.lt.D f22,f0
bc1t 0x6,0x001c8a40
_ldc1 f0,0x4788(s5)
c.lt.D f0,f22
bc1t 0x7,0x001c88b8
_lui v0,0x7fff
lw t9,-0x7240(gp)
jalr t9
_mov.D f12,f22
trunc.w.D f0,f0
lw gp,0x18(sp)
mfc1 v0,f0
lw a0,0x230(s1)
subu s8,v0,s8
lw t9,-0x77f8(gp)
or a2,s2,zero
or a1,s6,zero
sw s8,0x8c(sp)
addu s0,a0,s0
or a0,s1,zero
jalr t9
_sw s0,0x94(sp)
beq v0,zero,0x001c87c0
_lw gp,0x18(sp)
lw t9,-0x7030(gp)
addiu a0,sp,0x78
jalr t9
_or a1,v0,zero
lw gp,0x18(sp)
c.lt.D f20,f24
bc1f 0x4,0x001c8b5c
_ldc1 f0,0x30(sp)
beq s4,zero,0x001c8688
_lw s7,0x84(sp)
blez s7,0x001c8b50
_mtc1 s7,f0
cvt.d.W f22,f0
sub.D D f22,f20,f22
lw t9,-0x7240(gp)
jalr t9
_mov.D f12,f22
mov.D f12,f22
lw gp,0x18(sp)
lw t9,-0x7c90(gp)
jalr t9
_mov.D f30,f0
sub.D D f0,f0,f22
sub.D D f30,f22,f30
c.lt.D f30,f0
bc1f 0x2,0x001c8a74
_lw gp,0x18(sp)
ldc1 f0,0x28(sp)
c.lt.D f22,f0
bc1t 0x3,0x001c8b20
_ldc1 f0,0x4788(s5)
c.lt.D f0,f22
bc1t 0x4,0x001c8c64
_mov.D f12,f22
lw t9,-0x7240(gp)
jalr t9
_nop
trunc.w.D f0,f0
lw gp,0x18(sp)
mfc1 s0,f0
mfc1 s8,f0
bltz s7,0x001c8b34
_add.D f20,f20,f26
mtc1 zero,f22
mthc1 zero,f22
lw t9,-0x7240(gp)
add.D f22,f20,f22
jalr t9
_mov.D f12,f22
mov.D f12,f22
lw gp,0x18(sp)
lw t9,-0x7c90(gp)
jalr t9
_mov.D f30,f0
sub.D D f0,f0,f22
sub.D D f30,f22,f30
c.lt.D f30,f0
bc1f 0x7,0x001c8ad4
_lw gp,0x18(sp)
ldc1 f0,0x48(sp)
c.lt.D f22,f0
bc1t 0x001c8a40
_ldc1 f0,0x38(sp)
c.lt.D f0,f22
bc1f 0x1,0x001c8768
_lw t9,-0x7240(gp)
lui v0,0x7fff
b 0x001c877c
_ori v0,v0,0xfdff
lw s0,0x7c(sp)
bne s0,zero,0x001c895c
_andi v0,s4,0x3
lw v0,0x80(sp)
bne v0,zero,0x001c895c
_andi v0,s4,0x3
lw t9,-0x77f8(gp)
or a2,s2,zero
lw a1,0x20(sp)
jalr t9
_or a0,s1,zero
lw gp,0x18(sp)
beq v0,zero,0x001c8904
_sw v0,0x78(sp)
andi s4,s4,0x2000
bne s4,zero,0x001c8e44
_lw a1,0x84(sp)
lw v1,0x6c(sp)
lw a0,0x9c(sp)
lw v1,0x0(v1)
bne a0,v1,0x001c8eec
_lw ra,0xc4(sp)
lw s8,0xc0(sp)
lw s7,0xbc(sp)
lw s6,0xb8(sp)
lw s5,0xb4(sp)
lw s4,0xb0(sp)
lw s3,0xac(sp)
lw s2,0xa8(sp)
lw s1,0xa4(sp)
lw s0,0xa0(sp)
ldc1 f30,0xf0(sp)
ldc1 f28,0xe8(sp)
ldc1 f26,0xe0(sp)
ldc1 f24,0xd8(sp)
ldc1 f22,0xd0(sp)
ldc1 f20,0xc8(sp)
jr ra
_addiu sp,sp,0xf8
bne v0,zero,0x001c88dc
_lw t9,-0x77f8(gp)
lw s7,0x18(s1)
sltu v0,s0,s7
bne v0,zero,0x001c8984
_lw s4,0x80(sp)
lw v0,0x1c(s1)
sltu v0,s4,v0
beq v0,zero,0x001c8ecc
_lw t9,-0x7080(gp)
lw v0,0x228(s1)
lw v1,0x22c(s1)
movn s7,v0,v0
bne v1,zero,0x001c89a0
_sw v1,0x28(sp)
lw v0,0x1c(s1)
sw v0,0x28(sp)
lw v0,0x28(sp)
movz s0,s7,s0
blez v0,0x001c8a18
_movz s4,v0,s4
or s3,zero,zero
addiu s8,sp,0x78
bgtz s7,0x001c89e8
_or s5,zero,zero
b 0x001c8ea8
_nop
lw t9,-0x7030(gp)
addu s5,s5,s0
or a1,v0,zero
jalr t9
_or a0,s8,zero
slt v0,s5,s7
beq v0,zero,0x001c8eb0
_lw gp,0x18(sp)
lw t9,-0x77f8(gp)
or a2,s2,zero
lw a1,0x20(sp)
or a0,s1,zero
sw s0,0x7c(sp)
sw s4,0x80(sp)
sw s5,0x84(sp)
jalr t9
_sw s3,0x88(sp)
lw gp,0x18(sp)
bne v0,zero,0x001c89c8
_or s6,v0,zero
b 0x001c8904
_lw v0,0x78(sp)
mtc1 v0,f0
lw a1,-0x7fd0(gp)
bgez v0,0x001c8464
_cvt.d.W f26,f0
lw v0,-0x7fd0(gp)
ldc1 f2,0x1418(v0)
b 0x001c8464
_add.D f26,f26,f2
lui v0,0x8000
b 0x001c877c
_addiu v0,v0,0x201
c.lt.D f22,f0
bc1t 0x3,0x001c8b04
_lui s8,0x8000
ldc1 f0,0x4788(s5)
c.lt.D f0,f22
bc1t 0x4,0x001c8c78
_lui s8,0x7fff
mov.D f12,f22
b 0x001c86e8
_lw t9,-0x7c90(gp)
ldc1 f0,0x20(sp)
c.lt.D f22,f0
bc1t 0x5,0x001c8b24
_lui s8,0x8000
ldc1 f0,0x50(sp)
c.lt.D f0,f22
bc1t 0x6,0x001c8c68
_lui s8,0x7fff
mov.D f12,f22
b 0x001c8838
_lw t9,-0x7c90(gp)
c.lt.D f22,f0
bc1t 0x001c8a44
_lui v0,0x8000
ldc1 f0,0x4788(s5)
c.lt.D f0,f22
bc1t 0x1,0x001c88b4
_lw t9,-0x7c90(gp)
jalr t9
_mov.D f12,f22
trunc.w.D f0,f0
lw gp,0x18(sp)
b 0x001c877c
_mfc1 v0,f0
ldc1 f0,0x40(sp)
c.lt.D f22,f0
bc1t 0x2,0x001c8a44
_lui v0,0x8000
ldc1 f0,0x60(sp)
c.lt.D f0,f22
bc1f 0x3,0x001c8abc
_lw t9,-0x7c90(gp)
lui v0,0x7fff
b 0x001c877c
_ori v0,v0,0xfdff
lui s8,0x8000
add.D f20,f20,f26
addiu s8,s8,0x201
bgez s7,0x001c8708
_or s0,s8,zero
mtc1 zero,f22
b 0x001c8710
_mthc1 zero,f22
lui s8,0x8000
add.D f20,f20,f26
addiu s8,s8,0x201
bgez s7,0x001c8858
_or s0,s8,zero
mtc1 s7,f0
b 0x001c8860
_cvt.d.W f22,f0
mtc1 s7,f0
cvt.d.W f22,f0
b 0x001c8694
_sub.D D f22,f20,f22
b 0x001c87e4
_mov.D f22,f20
ldc1 f0,0x30(sp)
c.lt.D f28,f0
bc1f 0x5,0x001c8dac
_lw t9,-0x77b8(gp)
beq s4,zero,0x001c854c
_lw s7,0x88(sp)
blez s7,0x001c8b84
_mov.D f20,f28
mtc1 s7,f0
cvt.d.W f20,f0
sub.D D f20,f28,f20
lw t9,-0x7240(gp)
jalr t9
_mov.D f12,f20
mov.D f12,f20
lw gp,0x18(sp)
lw t9,-0x7c90(gp)
jalr t9
_mov.D f22,f0
sub.D D f0,f0,f20
lw gp,0x18(sp)
sub.D D f22,f20,f22
c.lt.D f22,f0
bc1f 0x5,0x001c8d34
_ldc1 f0,0x4780(s3)
c.lt.D f20,f0
bc1t 0x6,0x001c8d88
_ldc1 f0,0x4788(s5)
c.lt.D f0,f20
bc1t 0x7,0x001c8d50
_mov.D f12,f20
lw t9,-0x7240(gp)
jalr t9
_nop
trunc.w.D f0,f0
lw gp,0x18(sp)
mfc1 s0,f0
mfc1 s8,f0
ldc1 f0,0x58(sp)
slti v0,s7,-0x1
bne v0,zero,0x001c8d6c
_add.D f28,f28,f0
mtc1 zero,f20
mthc1 zero,f20
lw t9,-0x7240(gp)
add.D f20,f28,f20
jalr t9
_mov.D f12,f20
mov.D f12,f20
lw gp,0x18(sp)
lw t9,-0x7c90(gp)
jalr t9
_mov.D f22,f0
sub.D D f0,f0,f20
sub.D D f22,f20,f22
c.lt.D f22,f0
bc1f 0x2,0x001c8cf8
_lw gp,0x18(sp)
ldc1 f0,0x4780(s3)
c.lt.D f20,f0
bc1t 0x3,0x001c8c84
_ldc1 f0,0x4788(s5)
c.lt.D f0,f20
bc1t 0x4,0x001c8cec
_mov.D f12,f20
b 0x001c8630
_lw t9,-0x7240(gp)
lui s8,0x7fff
ori s8,s8,0xfdff
b 0x001c8850
_or s0,s8,zero
lui s8,0x7fff
ori s8,s8,0xfdff
b 0x001c8700
_or s0,s8,zero
lui v0,0x8000
b 0x001c8644
_addiu v0,v0,0x201
c.lt.D f20,f0
bc1t 0x6,0x001c8d7c
_lui s8,0x8000
ldc1 f0,0x4788(s5)
c.lt.D f0,f20
bc1f 0x7,0x001c8e3c
_mov.D f12,f20
ldc1 f0,0x58(sp)
lui s8,0x7fff
ori s8,s8,0xfdff
or s0,s8,zero
bgez s7,0x001c85d0
_add.D f28,f28,f0
mtc1 zero,f22
b 0x001c85d8
_mthc1 zero,f22
c.lt.D f22,f0
bc1t 0x3,0x001c8c88
_lui v0,0x8000
ldc1 f0,0x4788(s5)
c.lt.D f0,f22
bc1f 0x4,0x001c8d18
_mov.D f12,f22
lui v0,0x7fff
b 0x001c8644
_ori v0,v0,0xfdff
ldc1 f0,0x70(sp)
c.lt.D f20,f0
bc1t 0x5,0x001c8c88
_lui v0,0x8000
ldc1 f0,0x4788(s5)
c.lt.D f0,f20
bc1t 0x6,0x001c8cec
_mov.D f12,f20
lw t9,-0x7c90(gp)
jalr t9
_nop
trunc.w.D f0,f0
lw gp,0x18(sp)
b 0x001c8644
_mfc1 v0,f0
c.lt.D f20,f0
bc1t 0x001c8d8c
_lui s8,0x8000
ldc1 f0,0x4788(s5)
c.lt.D f0,f20
bc1f 0x1,0x001c8e34
_mov.D f12,f20
ldc1 f0,0x58(sp)
lui s8,0x7fff
slti v0,s7,-0x1
ori s8,s8,0xfdff
or s0,s8,zero
beq v0,zero,0x001c8c00
_add.D f28,f28,f0
mtc1 s7,f0
b 0x001c8c08
_cvt.d.W f20,f0
lui s8,0x8000
addiu s8,s8,0x201
b 0x001c85c4
_or s0,s8,zero
lui s8,0x8000
addiu s8,s8,0x201
b 0x001c8bf0
_or s0,s8,zero
mtc1 s7,f0
cvt.d.W f20,f0
b 0x001c8558
_sub.D D f20,f28,f20
lw t9,-0x77b8(gp)
jalr t9
_or a0,s2,zero
lw gp,0x18(sp)
b 0x001c8904
_lw v0,0x78(sp)
addiu v0,a0,0x340
lw a2,-0x7fc4(gp)
lw a1,-0x7fc4(gp)
li a3,0x325
lw t9,-0x76d0(gp)
ori a0,zero,0x8000
sw v0,0x14(sp)
addiu a2,a2,-0x269c
lw v0,-0x7fcc(gp)
addiu a1,a1,-0x288c
addiu v0,v0,-0x62ac
jalr t9
_sw v0,0x10(sp)
b 0x001c8400
_lw gp,0x18(sp)
li v0,0x1
ldc1 f2,0x1438(a1)
andi s4,s4,0x2000
sw v0,0x80(sp)
beq s4,zero,0x001c8484
_lw v0,0x84(sp)
bltz v0,0x001c8e84
_nop
lw s7,0x88(sp)
addu a0,v0,a0
bltz s7,0x001c8e8c
_or v0,s7,zero
b 0x001c84a0
_addu v0,v0,v1
b 0x001c8bd8
_lw t9,-0x7c90(gp)
b 0x001c85ac
_lw t9,-0x7c90(gp)
lw a0,0x230(v0)
lw v1,0x234(v0)
subu a0,a0,a1
lw a1,0x88(sp)
sw a0,0x230(v0)
subu v1,v1,a1
lw a1,0x7c(sp)
sw v1,0x234(v0)
sw a1,0x228(v0)
lw a1,0x80(sp)
b 0x001c8904
_sw a1,0x22c(v0)
lw v0,-0x7fd0(gp)
ldc1 f4,0x1418(v0)
b 0x001c8478
_add.D f2,f2,f4
b 0x001c8e1c
_subu v0,zero,v0
subu v0,zero,s7
b 0x001c84a0
_addu v0,v0,v1
b 0x001c849c
_subu v0,zero,s7
b 0x001c848c
_subu v0,zero,v0
beq s6,zero,0x001c8904
_lw v0,0x78(sp)
lw v0,0x28(sp)
addu s3,s3,s4
slt v0,s3,v0
bne v0,zero,0x001c89b8
_lw v0,0x78(sp)
b 0x001c8908
_lw v1,0x6c(sp)
li a3,0x1
or a2,zero,zero
sw s2,0x10(sp)
or a1,zero,zero
jalr t9
_or a0,s1,zero
b 0x001c8904
_lw gp,0x18(sp)
lw t9,-0x784c(gp)
jalr t9
_nop
lw a3,-0x7fc4(gp)
li a2,0x322
lw a1,-0x7fc4(gp)
lw a0,-0x7fd0(gp)
lw t9,-0x72a8(gp)
addiu a3,a3,-0x2688
addiu a1,a1,-0x288c
jalr t9
_addiu a0,a0,0xdd0
lw a3,-0x7fc4(gp)
li a2,0x323
lw a1,-0x7fc4(gp)
lw a0,-0x7fc8(gp)
lw t9,-0x72a8(gp)
addiu a3,a3,-0x2688
addiu a1,a1,-0x288c
jalr t9
_addiu a0,a0,-0x3784
(translation_unit "/* WARNING: Type propagation algorithm not settling */\n\nundefined4 *******\nCropImageToTiles(undefined4 *******param_1,undefined4 *******param_2,undefined4 ******param_3)\n\n{\n  bool bVar1;\n  undefined4 ******ppppppuVar2;\n  undefined *puVar3;\n  undefined4 uVar4;\n  undefined4 uVar5;\n  undefined4 ******ppppppuVar6;\n  undefined4 ******ppppppuVar7;\n  int extraout_v1;\n  int extraout_v1_00;\n  int extraout_v1_01;\n  int extraout_v1_02;\n  int extraout_v1_03;\n  int extraout_v1_04;\n  int extraout_v1_05;\n  int extraout_v1_06;\n  int extraout_v1_07;\n  int extraout_v1_08;\n  int extraout_v1_09;\n  int extraout_v1_10;\n  undefined *puVar8;\n  undefined4 *******pppppppuVar9;\n  int iVar10;\n  int iVar11;\n  undefined4 *******pppppppuVar12;\n  undefined4 *******pppppppuVar13;\n  int iVar14;\n  int iVar15;\n  undefined4 *******unaff_s0;\n  undefined4 *******unaff_s1;\n  undefined4 ******unaff_s2;\n  undefined4 *******unaff_s3;\n  int *piVar16;\n  int *piVar17;\n  undefined4 ******unaff_s4;\n  int *piVar18;\n  undefined4 *******unaff_s5;\n  undefined4 *******unaff_s6;\n  undefined4 ******ppppppuVar19;\n  undefined4 *******unaff_s7;\n  undefined *puVar20;\n  code *pcVar21;\n  undefined4 *******unaff_s8;\n  undefined4 ******ppppppuVar22;\n  code *pcVar23;\n  code *pcVar24;\n  double dVar25;\n  double dVar26;\n  double dVar27;\n  double dVar28;\n  double dVar29;\n  double dVar30;\n  double dVar31;\n  double dVar32;\n  double dVar33;\n  double dVar34;\n  double dVar35;\n  undefined8 uVar36;\n  undefined4 uStack_270;\n  undefined4 uStack_26c;\n  int iStack_268;\n  int iStack_264;\n  undefined4 uStack_260;\n  undefined4 uStack_25c;\n  undefined4 *******pppppppuStack_258;\n  undefined4 *puStack_254;\n  int iStack_250;\n  int iStack_24c;\n  undefined4 *******pppppppuStack_248;\n  undefined4 *******pppppppuStack_244;\n  undefined4 ******ppppppuStack_240;\n  int *piStack_23c;\n  int *piStack_238;\n  undefined4 *******pppppppuStack_234;\n  undefined4 *******pppppppuStack_230;\n  undefined4 *******pppppppuStack_22c;\n  undefined4 *******pppppppuStack_228;\n  code *pcStack_224;\n  undefined4 *******pppppppuStack_210;\n  undefined4 *******pppppppuStack_20c;\n  code *pcStack_208;\n  undefined4 ******ppppppuStack_1fc;\n  undefined4 uStack_1f8;\n  undefined4 uStack_1f4;\n  undefined4 *******pppppppuStack_1f0;\n  undefined4 *******pppppppuStack_1ec;\n  undefined4 *******pppppppuStack_1e8;\n  int *piStack_1e4;\n  undefined4 *******pppppppuStack_1e0;\n  undefined4 *puStack_1dc;\n  undefined4 *******pppppppuStack_1d8;\n  int iStack_1d4;\n  undefined4 *******pppppppuStack_1d0;\n  undefined4 *******pppppppuStack_1cc;\n  undefined4 ******ppppppuStack_1c8;\n  undefined4 *******pppppppuStack_1c4;\n  int *piStack_1c0;\n  undefined4 *******pppppppuStack_1bc;\n  undefined4 *******pppppppuStack_1b8;\n  undefined4 *******pppppppuStack_1b4;\n  undefined4 *******pppppppuStack_1b0;\n  code *pcStack_1ac;\n  undefined4 ******ppppppuStack_198;\n  undefined4 *******pppppppuStack_194;\n  undefined4 ******ppppppuStack_190;\n  code *pcStack_188;\n  undefined4 *******pppppppuStack_17c;\n  undefined4 *******pppppppuStack_178;\n  undefined4 ******ppppppuStack_174;\n  undefined4 *******pppppppuStack_170;\n  code *pcStack_16c;\n  undefined4 ******ppppppuStack_158;\n  undefined4 *******pppppppuStack_154;\n  undefined *puStack_150;\n  undefined4 uStack_148;\n  undefined4 uStack_144;\n  undefined4 *******pppppppuStack_13c;\n  undefined4 *******pppppppuStack_138;\n  undefined4 ******ppppppuStack_134;\n  undefined4 *******pppppppuStack_130;\n  undefined4 *******pppppppuStack_12c;\n  undefined4 *******pppppppuStack_128;\n  undefined4 ******ppppppuStack_124;\n  undefined4 *puStack_120;\n  int iStack_11c;\n  undefined4 *******pppppppuStack_118;\n  undefined4 *******pppppppuStack_114;\n  undefined4 ******ppppppuStack_110;\n  undefined4 *******pppppppuStack_10c;\n  undefined4 ******ppppppuStack_108;\n  undefined4 *******pppppppuStack_104;\n  undefined4 *******pppppppuStack_100;\n  code *pcStack_fc;\n  undefined4 ******local_e8;\n  undefined4 *******local_e4;\n  double local_c8;\n  double local_a0;\n  undefined4 *******local_80;\n  undefined4 *******local_7c;\n  undefined4 ******local_78;\n  undefined4 *******local_74;\n  undefined4 *******local_70;\n  undefined4 *******local_6c;\n  undefined4 *******local_68;\n  undefined4 *******local_64;\n  undefined4 *******local_60;\n  int local_5c;\n  \n  puVar20 = PTR___stack_chk_guard_003a9230;\n  local_5c = *(int *)PTR___stack_chk_guard_003a9230;\n  if (param_1 == (undefined4 *******)0x0) {\nLAB_001c8ef8:\n    param_1 = unaff_s1;\n    (*(code *)PTR___assert_fail_003a9608)\n              (PTR_LAB_003a88e0 + 0xdd0,PTR_s_courses_003a88ec + -0x288c,0x322,\n               PTR_s_courses_003a88ec + -0x2688);\n  }\n  else if (param_1[0xcdb] == (undefined4 ******)0xabacadab) {\n    if (param_1[0xcd4] != (undefined4 ******)0x0) {\n      local_e4 = param_1 + 0xd0;\n      local_e8 = (undefined4 ******)(PTR_s_t_to_left_003a88e4 + -0x62ac);\n      (*(code *)PTR_LogMagickEvent_003a91e0)\n                (0x8000,PTR_s_courses_003a88ec + -0x288c,PTR_s_courses_003a88ec + -0x269c,0x325);\n    }\n    unaff_s6 = (undefined4 *******)(*(code *)PTR_NewImageList_003a8e84)();\n    local_80 = unaff_s6;\n    ppppppuVar2 = (undefined4 ******)\n                  (*(code *)PTR_ParseGravityGeometry_003a97fc)(param_1,param_2,&local_7c,param_3);\n    unaff_s4 = local_78;\n    unaff_s0 = local_7c;\n    unaff_s3 = (undefined4 *******)PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;\n    if ((int)ppppppuVar2 << 0xe < 0) {\n      ppppppuVar7 = param_1[7];\n      if (local_7c == (undefined4 *******)0x0) {\n        local_7c = (undefined4 *******)0x1;\n        dVar35 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n      }\n      else {\n        dVar35 = (double)(int)local_7c;\n        if ((int)local_7c < 0) {\n          dVar35 = dVar35 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n      }\n      if (local_78 == (undefined4 ******)0x0) {\n        dVar30 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n        local_78 = (undefined4 ******)0x1;\n        if (((uint)ppppppuVar2 & 0x2000) != 0) goto LAB_001c8e14;\nLAB_001c8484:\n        pppppppuVar9 = local_74;\n        if ((int)local_74 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_74;\n        }\n        puVar8 = (undefined *)((int)param_1[6] - (int)pppppppuVar9);\n        pppppppuVar9 = local_70;\n        if ((int)local_70 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_70;\n        }\n        puVar3 = (undefined *)((int)ppppppuVar7 - (int)pppppppuVar9);\n      }\n      else {\n        dVar30 = (double)(int)local_78;\n        if ((int)local_78 < 0) {\n          dVar30 = dVar30 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n        if (((uint)ppppppuVar2 & 0x2000) == 0) goto LAB_001c8484;\nLAB_001c8e14:\n        pppppppuVar9 = local_74;\n        if ((int)local_74 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_74;\n        }\n        puVar8 = (undefined *)((int)pppppppuVar9 + (int)param_1[6]);\n        if ((int)local_70 < 0) {\n          puVar3 = (undefined *)((int)ppppppuVar7 - (int)local_70);\n        }\n        else {\n          puVar3 = (undefined *)((int)local_70 + (int)ppppppuVar7);\n        }\n      }\n      unaff_s4 = (undefined4 ******)((uint)ppppppuVar2 & 0x2000);\n      dVar34 = (double)(int)puVar8;\n      if ((int)puVar8 < 0) {\n        dVar34 = dVar34 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n      }\n      dVar35 = dVar34 / dVar35;\n      local_c8 = (double)(int)puVar3;\n      if ((int)puVar3 < 0) {\n        local_c8 = local_c8 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n      }\n      dVar25 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n      local_a0 = dVar25;\n      if (dVar35 < dVar25) {\n        local_a0 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n        dVar35 = dVar25;\n      }\n      if (local_a0 <= local_c8 / dVar30) {\n        local_a0 = local_c8 / dVar30;\n      }\n      dVar30 = 0.0;\n      unaff_s7 = local_70;\n      if (0.0 < local_c8) {\n        dVar25 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4780);\n        dVar31 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4788);\n        if (unaff_s4 != (undefined4 ******)0x0) goto LAB_001c8b70;\nLAB_001c854c:\n        unaff_s7 = local_70;\n        dVar32 = dVar30;\n        if ((int)local_70 < 1) {\n          dVar32 = dVar30 - (double)(int)local_70;\n        }\n        dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n        dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n        if (dVar32 - dVar26 < dVar27 - dVar32) {\n          dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar23 = (code *)PTR_floor_003a9670;\n          if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d7c;\n        }\n        else {\n          if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d7c:\n            iVar15 = -0x7ffffdff;\n            goto joined_r0x001c8cbc;\n          }\n          dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar23 = (code *)PTR_ceil_003a8c20;\n        }\n        if (dVar26 < dVar32) {\n          iVar15 = 0x7ffffdff;\n        }\n        else {\n          dVar32 = (double)(*pcVar23)(dVar32);\n          iVar15 = (int)dVar32;\n        }\njoined_r0x001c8cbc:\n        dVar30 = dVar30 + local_a0;\n        if ((int)unaff_s7 < 0) {\n          dVar32 = 0.0;\n        }\n        else {\n          dVar32 = (double)(int)unaff_s7;\n        }\n        dVar32 = dVar30 + dVar32;\n        dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n        dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n        if (dVar32 - dVar26 < dVar27 - dVar32) {\n          if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8630;\n            goto LAB_001c8cec;\n          }\n        }\n        else if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;\n          goto LAB_001c8d18;\n        }\nLAB_001c8c88:\n        iVar14 = -0x7ffffdff;\nLAB_001c8644:\n        do {\n          unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n          param_2 = (undefined4 *******)((int)param_1[0x8d] + iVar15);\n          dVar32 = 0.0;\n          local_68 = unaff_s8;\n          local_60 = param_2;\n          if (0.0 < dVar34) {\n            dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n            unaff_s6 = &local_6c;\n            dVar27 = *(double *)((int)unaff_s3 + 0x4780);\n            do {\n              unaff_s7 = local_74;\n              if (unaff_s4 == (undefined4 ******)0x0) {\n                dVar33 = dVar32;\n                if ((int)local_74 < 1) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }\nLAB_001c8b04:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;\nLAB_001c8708:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8700:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar33 = 0.0;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8768:\n                  dVar33 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar33 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n              }\n              else {\n                dVar33 = dVar32;\n                if (0 < (int)local_74) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar27 <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar33 = 0.0;\n                }\n                else {\n                  if (dVar33 < dVar27) goto LAB_001c8b24;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (dVar26 < dVar33) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8850:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < dVar25) goto LAB_001c8a44;\n                  if (dVar33 <= dVar26) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar14 = 0x7ffffdff;\n                }\n                else if (dVar25 <= dVar33) {\n                  if (dVar33 <= dVar31) goto LAB_001c8abc;\n                  iVar14 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar14 = -0x7ffffdff;\n                }\n              }\n              unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n              param_2 = (undefined4 *******)((int)param_1[0x8c] + iVar15);\n              local_6c = unaff_s8;\n              local_64 = param_2;\n              iVar15 = (*(code *)PTR_CropImage_003a90b8)(param_1,unaff_s6,param_3);\n              if (iVar15 != 0) {\n                (*(code *)PTR_AppendImageToList_003a9880)(&local_80,iVar15);\n              }\n            } while (dVar32 < dVar34);\n          }\n          unaff_s5 = unaff_s3;\n          if (local_c8 <= dVar30) break;\n          if (unaff_s4 == (undefined4 ******)0x0) goto LAB_001c854c;\nLAB_001c8b70:\n          unaff_s7 = local_70;\n          dVar32 = dVar30;\n          if (0 < (int)local_70) {\n            dVar32 = dVar30 - (double)(int)local_70;\n          }\n          dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n          dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          if (dVar32 - dVar26 < dVar27 - dVar32) {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d8c;\n            pcVar23 = (code *)PTR_floor_003a9670;\n            if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8d50;\nLAB_001c8bd8:\n            dVar32 = (double)(*pcVar23)(dVar32);\n            iVar15 = (int)dVar32;\nLAB_001c8bf0:\n            dVar30 = dVar30 + local_a0;\n            if (-2 < (int)unaff_s7) goto LAB_001c8c00;\nLAB_001c8d6c:\n            dVar32 = (double)(int)unaff_s7;\n          }\n          else {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d8c:\n              iVar15 = -0x7ffffdff;\n              goto LAB_001c8bf0;\n            }\n            pcVar23 = (code *)PTR_ceil_003a8c20;\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8bd8;\nLAB_001c8d50:\n            iVar15 = 0x7ffffdff;\n            dVar30 = dVar30 + local_a0;\n            if ((int)unaff_s7 < -1) goto LAB_001c8d6c;\nLAB_001c8c00:\n            dVar32 = 0.0;\n          }\n          dVar32 = dVar30 + dVar32;\n          dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n          dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          if (dVar32 - dVar26 < dVar27 - dVar32) {\n            if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n              if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) {\nLAB_001c8cec:\n                iVar14 = 0x7ffffdff;\n              }\n              else {\nLAB_001c8630:\n                dVar32 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n                iVar14 = (int)dVar32;\n              }\n              goto LAB_001c8644;\n            }\n            goto LAB_001c8c88;\n          }\n          if (dVar32 < dVar25) goto LAB_001c8c88;\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;\nLAB_001c8d18:\n          dVar32 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          iVar14 = (int)dVar32;\n        } while( true );\n      }\n      (*(code *)PTR_ClearMagickException_003a90f8)(param_3);\n      pppppppuVar9 = local_80;\n      unaff_s0 = param_2;\n    }\n    else {\n      unaff_s3 = &local_7c;\n      if (((local_7c == (undefined4 *******)0x0) && (local_78 == (undefined4 ******)0x0)) ||\n         (((uint)ppppppuVar2 & 3) != 0)) {\n        local_80 = (undefined4 *******)(*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n        pppppppuVar9 = local_80;\n        unaff_s4 = ppppppuVar2;\n        if ((local_80 != (undefined4 *******)0x0) &&\n           (unaff_s4 = (undefined4 ******)((uint)ppppppuVar2 & 0x2000),\n           unaff_s4 != (undefined4 ******)0x0)) {\n          local_80[0x8c] = (undefined4 ******)((int)local_80[0x8c] - (int)local_74);\n          local_80[0x8d] = (undefined4 ******)((int)local_80[0x8d] - (int)local_70);\n          local_80[0x8a] = local_7c;\n          local_80[0x8b] = local_78;\n        }\n      }\n      else {\n        unaff_s7 = (undefined4 *******)param_1[6];\n        if ((local_7c < unaff_s7) || (local_78 < param_1[7])) {\n          ppppppuVar2 = param_1[0x8b];\n          if ((undefined4 *******)param_1[0x8a] != (undefined4 *******)0x0) {\n            unaff_s7 = (undefined4 *******)param_1[0x8a];\n          }\n          if (ppppppuVar2 == (undefined4 ******)0x0) {\n            ppppppuVar2 = param_1[7];\n          }\n          if (local_7c == (undefined4 *******)0x0) {\n            unaff_s0 = unaff_s7;\n          }\n          if (local_78 == (undefined4 ******)0x0) {\n            unaff_s4 = ppppppuVar2;\n          }\n          pppppppuVar9 = local_80;\n          if (0 < (int)ppppppuVar2) {\n            unaff_s3 = (undefined4 *******)0x0;\n            unaff_s8 = &local_80;\n            do {\n              unaff_s5 = (undefined4 *******)0x0;\n              if ((int)unaff_s7 < 1) {\n                pppppppuVar9 = local_80;\n                if (unaff_s6 == (undefined4 *******)0x0) break;\n              }\n              else {\n                do {\n                  local_7c = unaff_s0;\n                  local_78 = unaff_s4;\n                  local_74 = unaff_s5;\n                  local_70 = unaff_s3;\n                  unaff_s6 = (undefined4 *******)\n                             (*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n                  pppppppuVar9 = local_80;\n                  if (unaff_s6 == (undefined4 *******)0x0) goto LAB_001c8908;\n                  unaff_s5 = (undefined4 *******)((int)unaff_s5 + (int)unaff_s0);\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);\n              }\n              unaff_s3 = (undefined4 *******)((int)unaff_s3 + (int)unaff_s4);\n              pppppppuVar9 = local_80;\n            } while ((int)unaff_s3 < (int)ppppppuVar2);\n          }\n        }\n        else {\n          local_e8 = param_3;\n          pppppppuVar9 = (undefined4 *******)(*(code *)PTR_CloneImage_003a9830)(param_1,0,0,1);\n        }\n      }\n    }\nLAB_001c8908:\n    if (local_5c == *(int *)puVar20) {\n      return pppppppuVar9;\n    }\n    (*(code *)PTR___stack_chk_fail_003a9064)();\n    unaff_s1 = param_1;\n    unaff_s2 = param_3;\n    goto LAB_001c8ef8;\n  }\n  ppppppuVar2 = (undefined4 ******)0x323;\n  pppppppuVar12 = (undefined4 *******)(PTR_s_courses_003a88ec + -0x288c);\n  pcVar23 = ExcerptImage;\n  pppppppuVar9 = (undefined4 *******)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3784);\n  puVar20 = PTR___assert_fail_003a9608;\n  (*(code *)PTR___assert_fail_003a9608)();\n  puVar8 = puVar20 + 0x1e7970;\n  piVar18 = *(int **)(puVar20 + 0x1e02f0);\n  iStack_11c = *piVar18;\n  puStack_150 = puVar8;\n  pppppppuStack_118 = unaff_s0;\n  pppppppuStack_114 = param_1;\n  ppppppuStack_110 = unaff_s2;\n  pppppppuStack_10c = unaff_s3;\n  ppppppuStack_108 = unaff_s4;\n  pppppppuStack_104 = unaff_s5;\n  pppppppuStack_100 = unaff_s6;\n  pcStack_fc = pcVar23;\n  if (pppppppuVar9 == (undefined4 *******)0x0) {\n    iVar15 = *(int *)(puVar20 + 0x1df9ac) + -0x26ac;\n    (**(code **)(puVar20 + 0x1e06c8))\n              (*(int *)(puVar20 + 0x1df9a8) + -0x37b0,*(int *)(puVar20 + 0x1df9ac) + -0x288c,0x3f4,\n               iVar15);\nLAB_001c92d4:\n    iVar15 = iVar15 + -0x26ac;\n    (**(code **)(puVar8 + -0x72a8))\n              (*(int *)(puVar8 + -0x7fd0) + 0x294c,*(int *)(puVar8 + -0x7fc4) + -0x288c,0x3fa,iVar15\n              );\n    ppppppuVar2 = unaff_s2;\nLAB_001c92f4:\n    iVar15 = iVar15 + -0x26ac;\n    (**(code **)(puVar8 + -0x72a8))\n              (*(int *)(puVar8 + -0x7fd0) + 0x1cac,*(int *)(puVar8 + -0x7fc4) + -0x288c,0x3f9,iVar15\n              );\nLAB_001c9314:\n    (**(code **)(puVar8 + -0x784c))();\n    pppppppuVar9 = unaff_s0;\nLAB_001c9320:\n    (**(code **)(puVar8 + -0x72a8))\n              (*(int *)(puVar8 + -0x7fc4) + -0x2850,*(int *)(puVar8 + -0x7fc4) + -0x288c,0x3f8,\n               iVar15 + -0x26ac);\n    unaff_s2 = ppppppuVar2;\n  }\n  else if (pppppppuVar9[0xcdb] == (undefined4 ******)0xabacadab) {\n    if (pppppppuVar9[0xcd4] != (undefined4 ******)0x0) {\n      pppppppuStack_154 = pppppppuVar9 + 0xd0;\n      ppppppuStack_158 = (undefined4 ******)(*(int *)(puVar20 + 0x1df9a4) + -0x62ac);\n      (**(code **)(puVar20 + 0x1e02a0))\n                (0x8000,*(int *)(puVar20 + 0x1df9ac) + -0x288c,\n                 *(int *)(puVar20 + 0x1df9ac) + -0x26bc,0x3f7);\n    }\n    iVar15 = *(int *)(puStack_150 + -0x7fc4);\n    unaff_s3 = pppppppuVar12;\n    puVar8 = puStack_150;\n    if (pppppppuVar12 != (undefined4 *******)0x0) {\n      unaff_s0 = pppppppuVar9;\n      if (ppppppuVar2 == (undefined4 ******)0x0) goto LAB_001c92f4;\n      unaff_s2 = ppppppuVar2;\n      if (ppppppuVar2[7] != (undefined4 *****)0xabacadab) goto LAB_001c92d4;\n      iVar15 = 1;\n      ppppppuStack_158 = ppppppuVar2;\n      param_1 = (undefined4 *******)\n                (**(code **)(puStack_150 + -0x7080))(pppppppuVar9,*pppppppuVar12,pppppppuVar12[1],1)\n      ;\n      if (param_1 != (undefined4 *******)0x0) {\n        uStack_144 = 0;\n        uStack_148 = 0;\n        unaff_s5 = (undefined4 *******)\n                   (**(code **)(puStack_150 + -0x715c))(pppppppuVar9,ppppppuVar2);\n        unaff_s6 = (undefined4 *******)(**(code **)(puStack_150 + -0x79dc))(param_1,ppppppuVar2);\n        iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9);\n        if (((iVar15 == 4) ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9), iVar15 == 3)) &&\n           ((iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 4 ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 3)))) {\n          (**(code **)(puStack_150 + -0x7774))(7);\n          ppppppuVar7 = param_1[7];\n          if ((int)ppppppuVar7 < 0) {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1 < (int)ppppppuVar7 + 0x3f >> 6) goto LAB_001c9298;\nLAB_001c91a4:\n            bVar1 = (int)ppppppuVar7 < 0x80;\n          }\n          else {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if ((int)ppppppuVar7 >> 6 <= extraout_v1) goto LAB_001c91a4;\nLAB_001c9298:\n            (*pcVar23)(7);\n            bVar1 = extraout_v1_02 < 2;\n          }\n          iVar14 = 1;\n          if ((bool)(bVar1 ^ 1)) {\n            (**(code **)(puStack_150 + -0x7774))(7);\n            ppppppuVar7 = param_1[7];\n            if ((int)ppppppuVar7 < 0) {\n              ppppppuVar7 = (undefined4 ******)((int)ppppppuVar7 + 0x3f);\n            }\n            iVar14 = (int)ppppppuVar7 >> 6;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1_01 < iVar14) {\nLAB_001c9234:\n              (*pcVar23)(7);\n              iVar14 = extraout_v1_00;\n            }\n            goto LAB_001c9088;\n          }\n          iVar10 = *(int *)(puStack_150 + -0x7f10);\n        }\n        else {\n          uVar36 = (**(code **)(puStack_150 + -0x7774))(7);\n          if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            uVar36 = (*pcVar23)(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c9070;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            iVar14 = 1;\n          }\n          else {\nLAB_001c9070:\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\nLAB_001c9074:\n            uVar36 = (*pcVar23)(7);\n            if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n               (pcVar23 = *(code **)(puStack_150 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c9234;\n            iVar14 = 2;\n          }\nLAB_001c9088:\n          iVar10 = *(int *)(puStack_150 + -0x7f10);\n        }\n        iVar15 = 0;\n        ppppppuStack_124 = (undefined4 ******)0x1;\n        puStack_120 = &uStack_148;\n        pppppppuStack_13c = pppppppuVar9;\n        pppppppuStack_138 = pppppppuVar12;\n        ppppppuStack_134 = ppppppuVar2;\n        pppppppuStack_130 = unaff_s6;\n        pppppppuStack_12c = unaff_s5;\n        pppppppuStack_128 = param_1;\n        (**(code **)(puStack_150 + -0x7718))(iVar10 + 0x5428,&pppppppuStack_13c,iVar14,0);\n        ppppppuVar2 = ppppppuStack_124;\n        (**(code **)(puStack_150 + -0x79bc))(unaff_s6);\n        (**(code **)(puStack_150 + -0x79bc))(unaff_s5);\n        param_1[0xa8] = pppppppuVar9[0xa8];\n        if (ppppppuVar2 == (undefined4 ******)0x0) {\n          param_1 = (undefined4 *******)(**(code **)(puStack_150 + -0x7964))(param_1);\n        }\n      }\n      puVar8 = puStack_150;\n      if (iStack_11c == *piVar18) {\n        return param_1;\n      }\n      goto LAB_001c9314;\n    }\n    goto LAB_001c9320;\n  }\n  ppppppuVar2 = (undefined4 ******)0x3f5;\n  pcVar21 = *(code **)(puVar8 + -0x72a8);\n  pppppppuVar13 = (undefined4 *******)(*(int *)(puVar8 + -0x7fc4) + -0x288c);\n  pcVar24 = ExtentImage;\n  pppppppuVar12 = (undefined4 *******)(*(int *)(puVar8 + -0x7fc8) + -0x3784);\n  (*pcVar21)();\n  pcVar23 = pcVar21 + 0x1e754c;\n  pcStack_188 = pcVar23;\n  pppppppuStack_17c = pppppppuVar9;\n  pppppppuStack_178 = param_1;\n  ppppppuStack_174 = unaff_s2;\n  pppppppuStack_170 = unaff_s3;\n  pcStack_16c = pcVar24;\n  if (pppppppuVar12 == (undefined4 *******)0x0) {\n    iVar15 = *(int *)(pcVar21 + 0x1df588) + -0x26c8;\n    (**(code **)(pcVar21 + 0x1e02a4))\n              (*(int *)(pcVar21 + 0x1df584) + -0x37b0,*(int *)(pcVar21 + 0x1df588) + -0x288c,0x474,\n               iVar15);\nLAB_001c94fc:\n    iVar15 = iVar15 + -0x26c8;\n    (**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fc4) + -0x2850,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x478,\n               iVar15);\nLAB_001c951c:\n    iVar15 = iVar15 + -0x26c8;\n    (**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fd0) + 0x294c,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x47a,\n               iVar15);\n    pppppppuVar12 = pppppppuVar9;\nLAB_001c953c:\n    (**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fd0) + 0x1cac,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x479,\n               iVar15 + -0x26c8);\n  }\n  else if (pppppppuVar12[0xcdb] == (undefined4 ******)0xabacadab) {\n    if (pppppppuVar12[0xcd4] != (undefined4 ******)0x0) {\n      pppppppuStack_194 = pppppppuVar12 + 0xd0;\n      ppppppuStack_198 = (undefined4 ******)(*(int *)(pcVar21 + 0x1df580) + -0x62ac);\n      (**(code **)(pcVar21 + 0x1dfe7c))\n                (0x8000,*(int *)(pcVar21 + 0x1df588) + -0x288c,\n                 *(int *)(pcVar21 + 0x1df588) + -0x26d4,0x477);\n    }\n    iVar15 = *(int *)(pcStack_188 + -0x7fc4);\n    pppppppuVar9 = pppppppuVar12;\n    param_1 = pppppppuVar13;\n    unaff_s2 = ppppppuVar2;\n    pcVar23 = pcStack_188;\n    if (pppppppuVar13 == (undefined4 *******)0x0) goto LAB_001c94fc;\n    if (ppppppuVar2 != (undefined4 ******)0x0) {\n      if (ppppppuVar2[7] == (undefined4 *****)0xabacadab) {\n        ppppppuStack_198 = ppppppuVar2;\n        pppppppuVar9 = (undefined4 *******)\n                       (**(code **)(pcStack_188 + -0x7080))\n                                 (pppppppuVar12,*pppppppuVar13,pppppppuVar13[1],1);\n        if (pppppppuVar9 != (undefined4 *******)0x0) {\n          iVar15 = (**(code **)(pcStack_188 + -0x7a20))(pppppppuVar9,ppppppuVar2);\n          if (iVar15 == 0) {\n            (**(code **)(pcStack_188 + -0x7964))(pppppppuVar9);\n            pppppppuVar9 = (undefined4 *******)0x0;\n          }\n          else {\n            pppppppuStack_194 = (undefined4 *******)-(int)pppppppuVar13[3];\n            ppppppuStack_198 = (undefined4 ******)-(int)pppppppuVar13[2];\n            ppppppuStack_190 = ppppppuVar2;\n            iVar15 = (**(code **)(pcStack_188 + -0x7bec))\n                               (pppppppuVar9,pppppppuVar12,pppppppuVar12[0x99],1);\n            if (iVar15 != 0) {\n              (**(code **)(pcStack_188 + -0x7d18))\n                        (pppppppuVar9,pppppppuVar12[6],pppppppuVar12[7],pppppppuVar13);\n            }\n          }\n        }\n        return pppppppuVar9;\n      }\n      goto LAB_001c951c;\n    }\n    goto LAB_001c953c;\n  }\n  pcVar21 = *(code **)(pcVar23 + -0x72a8);\n  pppppppuVar9 = (undefined4 *******)(*(int *)(pcVar23 + -0x7fc4) + -0x288c);\n  pcVar24 = FlipImage;\n  pppppppuVar13 = (undefined4 *******)(*(int *)(pcVar23 + -0x7fc8) + -0x3784);\n  (*pcVar21)(pppppppuVar13,pppppppuVar9,0x475,*(int *)(pcVar23 + -0x7fc4) + -0x26c8);\n  pcVar23 = pcVar21 + 0x1e7330;\n  piVar16 = *(int **)(pcVar21 + 0x1dfcb0);\n  iStack_1d4 = *piVar16;\n  pcStack_208 = pcVar23;\n  pppppppuStack_1d0 = pppppppuVar12;\n  pppppppuStack_1cc = param_1;\n  ppppppuStack_1c8 = unaff_s2;\n  pppppppuStack_1c4 = unaff_s3;\n  piStack_1c0 = piVar18;\n  pppppppuStack_1bc = unaff_s5;\n  pppppppuStack_1b8 = unaff_s6;\n  pppppppuStack_1b4 = unaff_s7;\n  pppppppuStack_1b0 = unaff_s8;\n  pcStack_1ac = pcVar24;\n  if (pppppppuVar13 == (undefined4 *******)0x0) {\n    (**(code **)(pcVar21 + 0x1e0088))\n              (*(int *)(pcVar21 + 0x1df368) + -0x37b0,*(int *)(pcVar21 + 0x1df36c) + -0x288c,0x4bc,\n               *(int *)(pcVar21 + 0x1df36c) + -0x26e0);\n    pppppppuVar9 = param_1;\nLAB_001c9944:\n    (**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fd0) + 0x1cac,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x4c0,\n               *(int *)(pcVar23 + -0x7fc4) + -0x26e0);\nLAB_001c9968:\n    (**(code **)(pcVar23 + -0x784c))();\n    pppppppuVar13 = unaff_s7;\nLAB_001c9974:\n    (**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fd0) + 0x294c,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x4c1,\n               *(int *)(pcVar23 + -0x7fc4) + -0x26e0);\n    pppppppuStack_244 = pppppppuVar9;\n  }\n  else {\n    pppppppuStack_244 = param_1;\n    if (pppppppuVar13[0xcdb] == (undefined4 ******)0xabacadab) {\n      if (pppppppuVar13[0xcd4] != (undefined4 ******)0x0) {\n        pppppppuStack_20c = pppppppuVar13 + 0xd0;\n        pppppppuStack_210 = (undefined4 *******)(*(int *)(pcVar21 + 0x1df364) + -0x62ac);\n        (**(code **)(pcVar21 + 0x1dfc60))\n                  (0x8000,*(int *)(pcVar21 + 0x1df36c) + -0x288c,\n                   *(int *)(pcVar21 + 0x1df36c) + -0x26ec,0x4bf);\n      }\n      unaff_s7 = pppppppuVar13;\n      pcVar23 = pcStack_208;\n      if (pppppppuVar9 == (undefined4 *******)0x0) goto LAB_001c9944;\n      if (pppppppuVar9[7] == (undefined4 ******)0xabacadab) {\n        pppppppuStack_210 = pppppppuVar9;\n        pppppppuVar12 =\n             (undefined4 *******)(**(code **)(pcStack_208 + -0x7080))(pppppppuVar13,0,0,1);\n        if (pppppppuVar12 != (undefined4 *******)0x0) {\n          ppppppuStack_1fc = pppppppuVar13[0x8c];\n          unaff_s8 = (undefined4 *******)pppppppuVar13[0x8a];\n          unaff_s2 = pppppppuVar13[0x8b];\n          unaff_s6 = (undefined4 *******)pppppppuVar13[0x8d];\n          uStack_1f4 = 0;\n          uStack_1f8 = 0;\n          piVar18 = (int *)(**(code **)(pcStack_208 + -0x715c))(pppppppuVar13,pppppppuVar9);\n          unaff_s5 = (undefined4 *******)\n                     (**(code **)(pcStack_208 + -0x79dc))(pppppppuVar12,pppppppuVar9);\n          iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13);\n          if (((iVar15 == 4) ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13), iVar15 == 3)) &&\n             ((iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 4 ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 3)))) {\n            (**(code **)(pcStack_208 + -0x7774))(7);\n            ppppppuVar2 = pppppppuVar12[7];\n            if ((int)ppppppuVar2 < 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_03 < (int)ppppppuVar2 + 0x3f >> 6) goto LAB_001c98d4;\nLAB_001c981c:\n              bVar1 = (int)ppppppuVar2 < 0x80;\n            }\n            else {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if ((int)ppppppuVar2 >> 6 <= extraout_v1_03) goto LAB_001c981c;\nLAB_001c98d4:\n              (*pcVar23)(7);\n              bVar1 = extraout_v1_05 < 2;\n            }\n            iVar15 = 1;\n            if ((bool)(bVar1 ^ 1)) {\n              (**(code **)(pcStack_208 + -0x7774))(7);\n              ppppppuVar2 = pppppppuVar12[7];\n              if ((int)ppppppuVar2 < 0) {\n                ppppppuVar2 = (undefined4 ******)((int)ppppppuVar2 + 0x3f);\n              }\n              iVar15 = (int)ppppppuVar2 >> 6;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_06 < iVar15) {\nLAB_001c98ac:\n                (*pcVar23)(7);\n                iVar15 = extraout_v1_04;\n              }\n              goto LAB_001c96d8;\n            }\n            iVar14 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          else {\n            uVar36 = (**(code **)(pcStack_208 + -0x7774))(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              uVar36 = (*pcVar23)(7);\n              if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c96c0;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              iVar15 = 1;\n            }\n            else {\nLAB_001c96c0:\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\nLAB_001c96c4:\n              uVar36 = (*pcVar23)(7);\n              if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n                 (pcVar23 = *(code **)(pcStack_208 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c98ac;\n              iVar15 = 2;\n            }\nLAB_001c96d8:\n            iVar14 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          puStack_1dc = &uStack_1f8;\n          pppppppuStack_1d8 = (undefined4 *******)0x1;\n          pppppppuStack_1f0 = pppppppuVar13;\n          pppppppuStack_1ec = pppppppuVar9;\n          pppppppuStack_1e8 = unaff_s5;\n          piStack_1e4 = piVar18;\n          pppppppuStack_1e0 = pppppppuVar12;\n          (**(code **)(pcStack_208 + -0x7718))(iVar14 + 0x56bc,&pppppppuStack_1f0,iVar15,0);\n          pppppppuVar9 = pppppppuStack_1d8;\n          (**(code **)(pcStack_208 + -0x79bc))(unaff_s5);\n          (**(code **)(pcStack_208 + -0x79bc))(piVar18);\n          pppppppuVar12[0xa8] = pppppppuVar13[0xa8];\n          if (unaff_s2 != (undefined4 ******)0x0) {\n            unaff_s6 = (undefined4 *******)\n                       ((int)unaff_s2 + (-(int)unaff_s6 - (int)pppppppuVar12[7]));\n          }\n          pppppppuVar12[0x8a] = unaff_s8;\n          pppppppuVar12[0x8b] = unaff_s2;\n          pppppppuVar12[0x8c] = ppppppuStack_1fc;\n          pppppppuVar12[0x8d] = unaff_s6;\n          if (pppppppuVar9 == (undefined4 *******)0x0) {\n            pppppppuVar12 = (undefined4 *******)(**(code **)(pcStack_208 + -0x7964))(pppppppuVar12);\n          }\n        }\n        pcVar23 = pcStack_208;\n        if (iStack_1d4 == *piVar16) {\n          return pppppppuVar12;\n        }\n        goto LAB_001c9968;\n      }\n      goto LAB_001c9974;\n    }\n  }\n  pcVar21 = *(code **)(pcVar23 + -0x72a8);\n  iVar14 = *(int *)(pcVar23 + -0x7fc4) + -0x288c;\n  pcVar24 = FlopImage;\n  iVar15 = *(int *)(pcVar23 + -0x7fc8) + -0x3784;\n  (*pcVar21)(iVar15,iVar14,0x4bd,*(int *)(pcVar23 + -0x7fc4) + -0x26e0);\n  piVar17 = *(int **)(pcVar21 + 0x1df874);\n  iStack_24c = *piVar17;\n  pppppppuStack_248 = pppppppuVar12;\n  ppppppuStack_240 = unaff_s2;\n  piStack_23c = piVar16;\n  piStack_238 = piVar18;\n  pppppppuStack_234 = unaff_s5;\n  pppppppuStack_230 = unaff_s6;\n  pppppppuStack_22c = pppppppuVar13;\n  pppppppuStack_228 = unaff_s8;\n  pcStack_224 = pcVar24;\n  if (iVar15 == 0) {\n    pppppppuVar9 = (undefined4 *******)\n                   (**(code **)(pcVar21 + 0x1dfc4c))\n                             (*(int *)(pcVar21 + 0x1def2c) + -0x37b0,\n                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x543,\n                              *(int *)(pcVar21 + 0x1def30) + -0x26f8);\n    return pppppppuVar9;\n  }\n  if (*(int *)(iVar15 + 0x336c) != -0x54535255) {\n    pppppppuVar9 = (undefined4 *******)\n                   (**(code **)(pcVar21 + 0x1dfc4c))\n                             (*(int *)(pcVar21 + 0x1def2c) + -0x3784,\n                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x544,\n                              *(int *)(pcVar21 + 0x1def30) + -0x26f8);\n    return pppppppuVar9;\n  }\n  if (*(int *)(iVar15 + 0x3350) != 0) {\n    (**(code **)(pcVar21 + 0x1df824))\n              (0x8000,*(int *)(pcVar21 + 0x1def30) + -0x288c,*(int *)(pcVar21 + 0x1def30) + -0x2704,\n               0x546,*(int *)(pcVar21 + 0x1def28) + -0x62ac,iVar15 + 0x340);\n  }\n  if (iVar14 == 0) {\n    pppppppuVar9 = (undefined4 *******)\n                   (**(code **)(pcVar21 + 0x1dfc4c))\n                             (*(int *)(pcVar21 + 0x1def24) + 0x1cac,\n                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x547,\n                              *(int *)(pcVar21 + 0x1def30) + -0x26f8);\n    return pppppppuVar9;\n  }\n  if (*(int *)(iVar14 + 0x1c) != -0x54535255) goto LAB_001c9db0;\n  pppppppuVar9 = (undefined4 *******)(**(code **)(pcVar21 + 0x1dfe74))(iVar15,0,0,1,iVar14);\n  if (pppppppuVar9 != (undefined4 *******)0x0) {\n    ppppppuVar2 = *(undefined4 *******)(iVar15 + 0x234);\n    ppppppuVar7 = *(undefined4 *******)(iVar15 + 0x228);\n    ppppppuVar22 = *(undefined4 *******)(iVar15 + 0x22c);\n    ppppppuVar19 = *(undefined4 *******)(iVar15 + 0x230);\n    uStack_26c = 0;\n    uStack_270 = 0;\n    uVar4 = (**(code **)(pcVar21 + 0x1dfd98))(iVar15,iVar14);\n    uVar5 = (**(code **)(pcVar21 + 0x1df518))(pppppppuVar9,iVar14);\n    iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(iVar15);\n    if (((iVar10 == 4) || (iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(iVar15), iVar10 == 3)) &&\n       ((iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(pppppppuVar9), iVar10 == 4 ||\n        (iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(pppppppuVar9), iVar10 == 3)))) {\n      (**(code **)(pcVar21 + 0x1df780))(7);\n      ppppppuVar6 = pppppppuVar9[7];\n      if ((int)ppppppuVar6 < 0) {\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (extraout_v1_07 < (int)ppppppuVar6 + 0x3f >> 6) goto LAB_001c9d10;\nLAB_001c9c58:\n        bVar1 = (int)ppppppuVar6 < 0x80;\n      }\n      else {\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if ((int)ppppppuVar6 >> 6 <= extraout_v1_07) goto LAB_001c9c58;\nLAB_001c9d10:\n        (*pcVar23)(7);\n        bVar1 = extraout_v1_09 < 2;\n      }\n      iVar10 = 1;\n      if ((bool)(bVar1 ^ 1)) {\n        (**(code **)(pcVar21 + 0x1df780))(7);\n        ppppppuVar6 = pppppppuVar9[7];\n        if ((int)ppppppuVar6 < 0) {\n          ppppppuVar6 = (undefined4 ******)((int)ppppppuVar6 + 0x3f);\n        }\n        iVar10 = (int)ppppppuVar6 >> 6;\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (extraout_v1_10 < iVar10) {\nLAB_001c9ce8:\n          (*pcVar23)(7);\n          iVar10 = extraout_v1_08;\n        }\n        goto LAB_001c9b14;\n      }\n      iVar11 = *(int *)(pcVar21 + 0x1defe4);\n    }\n    else {\n      uVar36 = (**(code **)(pcVar21 + 0x1df780))(7);\n      if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (1 < (uint)uVar36) goto LAB_001c9b00;\n        uVar36 = (*pcVar23)(7);\n        if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c9afc;\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (1 < (uint)uVar36) goto LAB_001c9b00;\n        iVar10 = 1;\n      }\n      else {\nLAB_001c9afc:\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\nLAB_001c9b00:\n        uVar36 = (*pcVar23)(7);\n        if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n           (pcVar23 = *(code **)(pcVar21 + 0x1df780), (uint)uVar36 < 2)) goto LAB_001c9ce8;\n        iVar10 = 2;\n      }\nLAB_001c9b14:\n      iVar11 = *(int *)(pcVar21 + 0x1defe4);\n    }\n    puStack_254 = &uStack_270;\n    iStack_250 = 1;\n    iStack_268 = iVar15;\n    iStack_264 = iVar14;\n    uStack_260 = uVar5;\n    uStack_25c = uVar4;\n    pppppppuStack_258 = pppppppuVar9;\n    (**(code **)(pcVar21 + 0x1df7dc))(iVar11 + 0x594c,&iStack_268,iVar10,0);\n    iVar14 = iStack_250;\n    (**(code **)(pcVar21 + 0x1df538))(uVar5);\n    (**(code **)(pcVar21 + 0x1df538))(uVar4);\n    pppppppuVar9[0xa8] = *(undefined4 *******)(iVar15 + 0x2a0);\n    if (ppppppuVar7 != (undefined4 ******)0x0) {\n      ppppppuVar19 = (undefined4 ******)\n                     ((int)ppppppuVar7 + (-(int)ppppppuVar19 - (int)pppppppuVar9[6]));\n    }\n    pppppppuVar9[0x8a] = ppppppuVar7;\n    pppppppuVar9[0x8b] = ppppppuVar22;\n    pppppppuVar9[0x8c] = ppppppuVar19;\n    pppppppuVar9[0x8d] = ppppppuVar2;\n    if (iVar14 == 0) {\n      pppppppuVar9 = (undefined4 *******)(**(code **)(pcVar21 + 0x1df590))(pppppppuVar9);\n    }\n  }\n  if (iStack_24c == *piVar17) {\n    return pppppppuVar9;\n  }\n  (**(code **)(pcVar21 + 0x1df6a8))();\nLAB_001c9db0:\n  pppppppuVar9 = (undefined4 *******)\n                 (**(code **)(pcVar21 + 0x1dfc4c))\n                           (*(int *)(pcVar21 + 0x1def24) + 0x294c,\n                            *(int *)(pcVar21 + 0x1def30) + -0x288c,0x548,\n                            *(int *)(pcVar21 + 0x1def30) + -0x26f8);\n  return pppppppuVar9;\n}\n\n" comment (function_definition "undefined4 *******\nCropImageToTiles(undefined4 *******param_1,undefined4 *******param_2,undefined4 ******param_3)\n\n{\n  bool bVar1;\n  undefined4 ******ppppppuVar2;\n  undefined *puVar3;\n  undefined4 uVar4;\n  undefined4 uVar5;\n  undefined4 ******ppppppuVar6;\n  undefined4 ******ppppppuVar7;\n  int extraout_v1;\n  int extraout_v1_00;\n  int extraout_v1_01;\n  int extraout_v1_02;\n  int extraout_v1_03;\n  int extraout_v1_04;\n  int extraout_v1_05;\n  int extraout_v1_06;\n  int extraout_v1_07;\n  int extraout_v1_08;\n  int extraout_v1_09;\n  int extraout_v1_10;\n  undefined *puVar8;\n  undefined4 *******pppppppuVar9;\n  int iVar10;\n  int iVar11;\n  undefined4 *******pppppppuVar12;\n  undefined4 *******pppppppuVar13;\n  int iVar14;\n  int iVar15;\n  undefined4 *******unaff_s0;\n  undefined4 *******unaff_s1;\n  undefined4 ******unaff_s2;\n  undefined4 *******unaff_s3;\n  int *piVar16;\n  int *piVar17;\n  undefined4 ******unaff_s4;\n  int *piVar18;\n  undefined4 *******unaff_s5;\n  undefined4 *******unaff_s6;\n  undefined4 ******ppppppuVar19;\n  undefined4 *******unaff_s7;\n  undefined *puVar20;\n  code *pcVar21;\n  undefined4 *******unaff_s8;\n  undefined4 ******ppppppuVar22;\n  code *pcVar23;\n  code *pcVar24;\n  double dVar25;\n  double dVar26;\n  double dVar27;\n  double dVar28;\n  double dVar29;\n  double dVar30;\n  double dVar31;\n  double dVar32;\n  double dVar33;\n  double dVar34;\n  double dVar35;\n  undefined8 uVar36;\n  undefined4 uStack_270;\n  undefined4 uStack_26c;\n  int iStack_268;\n  int iStack_264;\n  undefined4 uStack_260;\n  undefined4 uStack_25c;\n  undefined4 *******pppppppuStack_258;\n  undefined4 *puStack_254;\n  int iStack_250;\n  int iStack_24c;\n  undefined4 *******pppppppuStack_248;\n  undefined4 *******pppppppuStack_244;\n  undefined4 ******ppppppuStack_240;\n  int *piStack_23c;\n  int *piStack_238;\n  undefined4 *******pppppppuStack_234;\n  undefined4 *******pppppppuStack_230;\n  undefined4 *******pppppppuStack_22c;\n  undefined4 *******pppppppuStack_228;\n  code *pcStack_224;\n  undefined4 *******pppppppuStack_210;\n  undefined4 *******pppppppuStack_20c;\n  code *pcStack_208;\n  undefined4 ******ppppppuStack_1fc;\n  undefined4 uStack_1f8;\n  undefined4 uStack_1f4;\n  undefined4 *******pppppppuStack_1f0;\n  undefined4 *******pppppppuStack_1ec;\n  undefined4 *******pppppppuStack_1e8;\n  int *piStack_1e4;\n  undefined4 *******pppppppuStack_1e0;\n  undefined4 *puStack_1dc;\n  undefined4 *******pppppppuStack_1d8;\n  int iStack_1d4;\n  undefined4 *******pppppppuStack_1d0;\n  undefined4 *******pppppppuStack_1cc;\n  undefined4 ******ppppppuStack_1c8;\n  undefined4 *******pppppppuStack_1c4;\n  int *piStack_1c0;\n  undefined4 *******pppppppuStack_1bc;\n  undefined4 *******pppppppuStack_1b8;\n  undefined4 *******pppppppuStack_1b4;\n  undefined4 *******pppppppuStack_1b0;\n  code *pcStack_1ac;\n  undefined4 ******ppppppuStack_198;\n  undefined4 *******pppppppuStack_194;\n  undefined4 ******ppppppuStack_190;\n  code *pcStack_188;\n  undefined4 *******pppppppuStack_17c;\n  undefined4 *******pppppppuStack_178;\n  undefined4 ******ppppppuStack_174;\n  undefined4 *******pppppppuStack_170;\n  code *pcStack_16c;\n  undefined4 ******ppppppuStack_158;\n  undefined4 *******pppppppuStack_154;\n  undefined *puStack_150;\n  undefined4 uStack_148;\n  undefined4 uStack_144;\n  undefined4 *******pppppppuStack_13c;\n  undefined4 *******pppppppuStack_138;\n  undefined4 ******ppppppuStack_134;\n  undefined4 *******pppppppuStack_130;\n  undefined4 *******pppppppuStack_12c;\n  undefined4 *******pppppppuStack_128;\n  undefined4 ******ppppppuStack_124;\n  undefined4 *puStack_120;\n  int iStack_11c;\n  undefined4 *******pppppppuStack_118;\n  undefined4 *******pppppppuStack_114;\n  undefined4 ******ppppppuStack_110;\n  undefined4 *******pppppppuStack_10c;\n  undefined4 ******ppppppuStack_108;\n  undefined4 *******pppppppuStack_104;\n  undefined4 *******pppppppuStack_100;\n  code *pcStack_fc;\n  undefined4 ******local_e8;\n  undefined4 *******local_e4;\n  double local_c8;\n  double local_a0;\n  undefined4 *******local_80;\n  undefined4 *******local_7c;\n  undefined4 ******local_78;\n  undefined4 *******local_74;\n  undefined4 *******local_70;\n  undefined4 *******local_6c;\n  undefined4 *******local_68;\n  undefined4 *******local_64;\n  undefined4 *******local_60;\n  int local_5c;\n  \n  puVar20 = PTR___stack_chk_guard_003a9230;\n  local_5c = *(int *)PTR___stack_chk_guard_003a9230;\n  if (param_1 == (undefined4 *******)0x0) {\nLAB_001c8ef8:\n    param_1 = unaff_s1;\n    (*(code *)PTR___assert_fail_003a9608)\n              (PTR_LAB_003a88e0 + 0xdd0,PTR_s_courses_003a88ec + -0x288c,0x322,\n               PTR_s_courses_003a88ec + -0x2688);\n  }\n  else if (param_1[0xcdb] == (undefined4 ******)0xabacadab) {\n    if (param_1[0xcd4] != (undefined4 ******)0x0) {\n      local_e4 = param_1 + 0xd0;\n      local_e8 = (undefined4 ******)(PTR_s_t_to_left_003a88e4 + -0x62ac);\n      (*(code *)PTR_LogMagickEvent_003a91e0)\n                (0x8000,PTR_s_courses_003a88ec + -0x288c,PTR_s_courses_003a88ec + -0x269c,0x325);\n    }\n    unaff_s6 = (undefined4 *******)(*(code *)PTR_NewImageList_003a8e84)();\n    local_80 = unaff_s6;\n    ppppppuVar2 = (undefined4 ******)\n                  (*(code *)PTR_ParseGravityGeometry_003a97fc)(param_1,param_2,&local_7c,param_3);\n    unaff_s4 = local_78;\n    unaff_s0 = local_7c;\n    unaff_s3 = (undefined4 *******)PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;\n    if ((int)ppppppuVar2 << 0xe < 0) {\n      ppppppuVar7 = param_1[7];\n      if (local_7c == (undefined4 *******)0x0) {\n        local_7c = (undefined4 *******)0x1;\n        dVar35 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n      }\n      else {\n        dVar35 = (double)(int)local_7c;\n        if ((int)local_7c < 0) {\n          dVar35 = dVar35 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n      }\n      if (local_78 == (undefined4 ******)0x0) {\n        dVar30 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n        local_78 = (undefined4 ******)0x1;\n        if (((uint)ppppppuVar2 & 0x2000) != 0) goto LAB_001c8e14;\nLAB_001c8484:\n        pppppppuVar9 = local_74;\n        if ((int)local_74 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_74;\n        }\n        puVar8 = (undefined *)((int)param_1[6] - (int)pppppppuVar9);\n        pppppppuVar9 = local_70;\n        if ((int)local_70 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_70;\n        }\n        puVar3 = (undefined *)((int)ppppppuVar7 - (int)pppppppuVar9);\n      }\n      else {\n        dVar30 = (double)(int)local_78;\n        if ((int)local_78 < 0) {\n          dVar30 = dVar30 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n        if (((uint)ppppppuVar2 & 0x2000) == 0) goto LAB_001c8484;\nLAB_001c8e14:\n        pppppppuVar9 = local_74;\n        if ((int)local_74 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_74;\n        }\n        puVar8 = (undefined *)((int)pppppppuVar9 + (int)param_1[6]);\n        if ((int)local_70 < 0) {\n          puVar3 = (undefined *)((int)ppppppuVar7 - (int)local_70);\n        }\n        else {\n          puVar3 = (undefined *)((int)local_70 + (int)ppppppuVar7);\n        }\n      }\n      unaff_s4 = (undefined4 ******)((uint)ppppppuVar2 & 0x2000);\n      dVar34 = (double)(int)puVar8;\n      if ((int)puVar8 < 0) {\n        dVar34 = dVar34 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n      }\n      dVar35 = dVar34 / dVar35;\n      local_c8 = (double)(int)puVar3;\n      if ((int)puVar3 < 0) {\n        local_c8 = local_c8 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n      }\n      dVar25 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n      local_a0 = dVar25;\n      if (dVar35 < dVar25) {\n        local_a0 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n        dVar35 = dVar25;\n      }\n      if (local_a0 <= local_c8 / dVar30) {\n        local_a0 = local_c8 / dVar30;\n      }\n      dVar30 = 0.0;\n      unaff_s7 = local_70;\n      if (0.0 < local_c8) {\n        dVar25 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4780);\n        dVar31 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4788);\n        if (unaff_s4 != (undefined4 ******)0x0) goto LAB_001c8b70;\nLAB_001c854c:\n        unaff_s7 = local_70;\n        dVar32 = dVar30;\n        if ((int)local_70 < 1) {\n          dVar32 = dVar30 - (double)(int)local_70;\n        }\n        dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n        dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n        if (dVar32 - dVar26 < dVar27 - dVar32) {\n          dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar23 = (code *)PTR_floor_003a9670;\n          if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d7c;\n        }\n        else {\n          if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d7c:\n            iVar15 = -0x7ffffdff;\n            goto joined_r0x001c8cbc;\n          }\n          dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar23 = (code *)PTR_ceil_003a8c20;\n        }\n        if (dVar26 < dVar32) {\n          iVar15 = 0x7ffffdff;\n        }\n        else {\n          dVar32 = (double)(*pcVar23)(dVar32);\n          iVar15 = (int)dVar32;\n        }\njoined_r0x001c8cbc:\n        dVar30 = dVar30 + local_a0;\n        if ((int)unaff_s7 < 0) {\n          dVar32 = 0.0;\n        }\n        else {\n          dVar32 = (double)(int)unaff_s7;\n        }\n        dVar32 = dVar30 + dVar32;\n        dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n        dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n        if (dVar32 - dVar26 < dVar27 - dVar32) {\n          if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8630;\n            goto LAB_001c8cec;\n          }\n        }\n        else if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;\n          goto LAB_001c8d18;\n        }\nLAB_001c8c88:\n        iVar14 = -0x7ffffdff;\nLAB_001c8644:\n        do {\n          unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n          param_2 = (undefined4 *******)((int)param_1[0x8d] + iVar15);\n          dVar32 = 0.0;\n          local_68 = unaff_s8;\n          local_60 = param_2;\n          if (0.0 < dVar34) {\n            dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n            unaff_s6 = &local_6c;\n            dVar27 = *(double *)((int)unaff_s3 + 0x4780);\n            do {\n              unaff_s7 = local_74;\n              if (unaff_s4 == (undefined4 ******)0x0) {\n                dVar33 = dVar32;\n                if ((int)local_74 < 1) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }\nLAB_001c8b04:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;\nLAB_001c8708:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8700:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar33 = 0.0;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8768:\n                  dVar33 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar33 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n              }\n              else {\n                dVar33 = dVar32;\n                if (0 < (int)local_74) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar27 <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar33 = 0.0;\n                }\n                else {\n                  if (dVar33 < dVar27) goto LAB_001c8b24;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (dVar26 < dVar33) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8850:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < dVar25) goto LAB_001c8a44;\n                  if (dVar33 <= dVar26) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar14 = 0x7ffffdff;\n                }\n                else if (dVar25 <= dVar33) {\n                  if (dVar33 <= dVar31) goto LAB_001c8abc;\n                  iVar14 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar14 = -0x7ffffdff;\n                }\n              }\n              unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n              param_2 = (undefined4 *******)((int)param_1[0x8c] + iVar15);\n              local_6c = unaff_s8;\n              local_64 = param_2;\n              iVar15 = (*(code *)PTR_CropImage_003a90b8)(param_1,unaff_s6,param_3);\n              if (iVar15 != 0) {\n                (*(code *)PTR_AppendImageToList_003a9880)(&local_80,iVar15);\n              }\n            } while (dVar32 < dVar34);\n          }\n          unaff_s5 = unaff_s3;\n          if (local_c8 <= dVar30) break;\n          if (unaff_s4 == (undefined4 ******)0x0) goto LAB_001c854c;\nLAB_001c8b70:\n          unaff_s7 = local_70;\n          dVar32 = dVar30;\n          if (0 < (int)local_70) {\n            dVar32 = dVar30 - (double)(int)local_70;\n          }\n          dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n          dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          if (dVar32 - dVar26 < dVar27 - dVar32) {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d8c;\n            pcVar23 = (code *)PTR_floor_003a9670;\n            if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8d50;\nLAB_001c8bd8:\n            dVar32 = (double)(*pcVar23)(dVar32);\n            iVar15 = (int)dVar32;\nLAB_001c8bf0:\n            dVar30 = dVar30 + local_a0;\n            if (-2 < (int)unaff_s7) goto LAB_001c8c00;\nLAB_001c8d6c:\n            dVar32 = (double)(int)unaff_s7;\n          }\n          else {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d8c:\n              iVar15 = -0x7ffffdff;\n              goto LAB_001c8bf0;\n            }\n            pcVar23 = (code *)PTR_ceil_003a8c20;\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8bd8;\nLAB_001c8d50:\n            iVar15 = 0x7ffffdff;\n            dVar30 = dVar30 + local_a0;\n            if ((int)unaff_s7 < -1) goto LAB_001c8d6c;\nLAB_001c8c00:\n            dVar32 = 0.0;\n          }\n          dVar32 = dVar30 + dVar32;\n          dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n          dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          if (dVar32 - dVar26 < dVar27 - dVar32) {\n            if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n              if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) {\nLAB_001c8cec:\n                iVar14 = 0x7ffffdff;\n              }\n              else {\nLAB_001c8630:\n                dVar32 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n                iVar14 = (int)dVar32;\n              }\n              goto LAB_001c8644;\n            }\n            goto LAB_001c8c88;\n          }\n          if (dVar32 < dVar25) goto LAB_001c8c88;\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;\nLAB_001c8d18:\n          dVar32 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          iVar14 = (int)dVar32;\n        } while( true );\n      }\n      (*(code *)PTR_ClearMagickException_003a90f8)(param_3);\n      pppppppuVar9 = local_80;\n      unaff_s0 = param_2;\n    }\n    else {\n      unaff_s3 = &local_7c;\n      if (((local_7c == (undefined4 *******)0x0) && (local_78 == (undefined4 ******)0x0)) ||\n         (((uint)ppppppuVar2 & 3) != 0)) {\n        local_80 = (undefined4 *******)(*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n        pppppppuVar9 = local_80;\n        unaff_s4 = ppppppuVar2;\n        if ((local_80 != (undefined4 *******)0x0) &&\n           (unaff_s4 = (undefined4 ******)((uint)ppppppuVar2 & 0x2000),\n           unaff_s4 != (undefined4 ******)0x0)) {\n          local_80[0x8c] = (undefined4 ******)((int)local_80[0x8c] - (int)local_74);\n          local_80[0x8d] = (undefined4 ******)((int)local_80[0x8d] - (int)local_70);\n          local_80[0x8a] = local_7c;\n          local_80[0x8b] = local_78;\n        }\n      }\n      else {\n        unaff_s7 = (undefined4 *******)param_1[6];\n        if ((local_7c < unaff_s7) || (local_78 < param_1[7])) {\n          ppppppuVar2 = param_1[0x8b];\n          if ((undefined4 *******)param_1[0x8a] != (undefined4 *******)0x0) {\n            unaff_s7 = (undefined4 *******)param_1[0x8a];\n          }\n          if (ppppppuVar2 == (undefined4 ******)0x0) {\n            ppppppuVar2 = param_1[7];\n          }\n          if (local_7c == (undefined4 *******)0x0) {\n            unaff_s0 = unaff_s7;\n          }\n          if (local_78 == (undefined4 ******)0x0) {\n            unaff_s4 = ppppppuVar2;\n          }\n          pppppppuVar9 = local_80;\n          if (0 < (int)ppppppuVar2) {\n            unaff_s3 = (undefined4 *******)0x0;\n            unaff_s8 = &local_80;\n            do {\n              unaff_s5 = (undefined4 *******)0x0;\n              if ((int)unaff_s7 < 1) {\n                pppppppuVar9 = local_80;\n                if (unaff_s6 == (undefined4 *******)0x0) break;\n              }\n              else {\n                do {\n                  local_7c = unaff_s0;\n                  local_78 = unaff_s4;\n                  local_74 = unaff_s5;\n                  local_70 = unaff_s3;\n                  unaff_s6 = (undefined4 *******)\n                             (*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n                  pppppppuVar9 = local_80;\n                  if (unaff_s6 == (undefined4 *******)0x0) goto LAB_001c8908;\n                  unaff_s5 = (undefined4 *******)((int)unaff_s5 + (int)unaff_s0);\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);\n              }\n              unaff_s3 = (undefined4 *******)((int)unaff_s3 + (int)unaff_s4);\n              pppppppuVar9 = local_80;\n            } while ((int)unaff_s3 < (int)ppppppuVar2);\n          }\n        }\n        else {\n          local_e8 = param_3;\n          pppppppuVar9 = (undefined4 *******)(*(code *)PTR_CloneImage_003a9830)(param_1,0,0,1);\n        }\n      }\n    }\nLAB_001c8908:\n    if (local_5c == *(int *)puVar20) {\n      return pppppppuVar9;\n    }\n    (*(code *)PTR___stack_chk_fail_003a9064)();\n    unaff_s1 = param_1;\n    unaff_s2 = param_3;\n    goto LAB_001c8ef8;\n  }\n  ppppppuVar2 = (undefined4 ******)0x323;\n  pppppppuVar12 = (undefined4 *******)(PTR_s_courses_003a88ec + -0x288c);\n  pcVar23 = ExcerptImage;\n  pppppppuVar9 = (undefined4 *******)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3784);\n  puVar20 = PTR___assert_fail_003a9608;\n  (*(code *)PTR___assert_fail_003a9608)();\n  puVar8 = puVar20 + 0x1e7970;\n  piVar18 = *(int **)(puVar20 + 0x1e02f0);\n  iStack_11c = *piVar18;\n  puStack_150 = puVar8;\n  pppppppuStack_118 = unaff_s0;\n  pppppppuStack_114 = param_1;\n  ppppppuStack_110 = unaff_s2;\n  pppppppuStack_10c = unaff_s3;\n  ppppppuStack_108 = unaff_s4;\n  pppppppuStack_104 = unaff_s5;\n  pppppppuStack_100 = unaff_s6;\n  pcStack_fc = pcVar23;\n  if (pppppppuVar9 == (undefined4 *******)0x0) {\n    iVar15 = *(int *)(puVar20 + 0x1df9ac) + -0x26ac;\n    (**(code **)(puVar20 + 0x1e06c8))\n              (*(int *)(puVar20 + 0x1df9a8) + -0x37b0,*(int *)(puVar20 + 0x1df9ac) + -0x288c,0x3f4,\n               iVar15);\nLAB_001c92d4:\n    iVar15 = iVar15 + -0x26ac;\n    (**(code **)(puVar8 + -0x72a8))\n              (*(int *)(puVar8 + -0x7fd0) + 0x294c,*(int *)(puVar8 + -0x7fc4) + -0x288c,0x3fa,iVar15\n              );\n    ppppppuVar2 = unaff_s2;\nLAB_001c92f4:\n    iVar15 = iVar15 + -0x26ac;\n    (**(code **)(puVar8 + -0x72a8))\n              (*(int *)(puVar8 + -0x7fd0) + 0x1cac,*(int *)(puVar8 + -0x7fc4) + -0x288c,0x3f9,iVar15\n              );\nLAB_001c9314:\n    (**(code **)(puVar8 + -0x784c))();\n    pppppppuVar9 = unaff_s0;\nLAB_001c9320:\n    (**(code **)(puVar8 + -0x72a8))\n              (*(int *)(puVar8 + -0x7fc4) + -0x2850,*(int *)(puVar8 + -0x7fc4) + -0x288c,0x3f8,\n               iVar15 + -0x26ac);\n    unaff_s2 = ppppppuVar2;\n  }\n  else if (pppppppuVar9[0xcdb] == (undefined4 ******)0xabacadab) {\n    if (pppppppuVar9[0xcd4] != (undefined4 ******)0x0) {\n      pppppppuStack_154 = pppppppuVar9 + 0xd0;\n      ppppppuStack_158 = (undefined4 ******)(*(int *)(puVar20 + 0x1df9a4) + -0x62ac);\n      (**(code **)(puVar20 + 0x1e02a0))\n                (0x8000,*(int *)(puVar20 + 0x1df9ac) + -0x288c,\n                 *(int *)(puVar20 + 0x1df9ac) + -0x26bc,0x3f7);\n    }\n    iVar15 = *(int *)(puStack_150 + -0x7fc4);\n    unaff_s3 = pppppppuVar12;\n    puVar8 = puStack_150;\n    if (pppppppuVar12 != (undefined4 *******)0x0) {\n      unaff_s0 = pppppppuVar9;\n      if (ppppppuVar2 == (undefined4 ******)0x0) goto LAB_001c92f4;\n      unaff_s2 = ppppppuVar2;\n      if (ppppppuVar2[7] != (undefined4 *****)0xabacadab) goto LAB_001c92d4;\n      iVar15 = 1;\n      ppppppuStack_158 = ppppppuVar2;\n      param_1 = (undefined4 *******)\n                (**(code **)(puStack_150 + -0x7080))(pppppppuVar9,*pppppppuVar12,pppppppuVar12[1],1)\n      ;\n      if (param_1 != (undefined4 *******)0x0) {\n        uStack_144 = 0;\n        uStack_148 = 0;\n        unaff_s5 = (undefined4 *******)\n                   (**(code **)(puStack_150 + -0x715c))(pppppppuVar9,ppppppuVar2);\n        unaff_s6 = (undefined4 *******)(**(code **)(puStack_150 + -0x79dc))(param_1,ppppppuVar2);\n        iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9);\n        if (((iVar15 == 4) ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9), iVar15 == 3)) &&\n           ((iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 4 ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 3)))) {\n          (**(code **)(puStack_150 + -0x7774))(7);\n          ppppppuVar7 = param_1[7];\n          if ((int)ppppppuVar7 < 0) {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1 < (int)ppppppuVar7 + 0x3f >> 6) goto LAB_001c9298;\nLAB_001c91a4:\n            bVar1 = (int)ppppppuVar7 < 0x80;\n          }\n          else {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if ((int)ppppppuVar7 >> 6 <= extraout_v1) goto LAB_001c91a4;\nLAB_001c9298:\n            (*pcVar23)(7);\n            bVar1 = extraout_v1_02 < 2;\n          }\n          iVar14 = 1;\n          if ((bool)(bVar1 ^ 1)) {\n            (**(code **)(puStack_150 + -0x7774))(7);\n            ppppppuVar7 = param_1[7];\n            if ((int)ppppppuVar7 < 0) {\n              ppppppuVar7 = (undefined4 ******)((int)ppppppuVar7 + 0x3f);\n            }\n            iVar14 = (int)ppppppuVar7 >> 6;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1_01 < iVar14) {\nLAB_001c9234:\n              (*pcVar23)(7);\n              iVar14 = extraout_v1_00;\n            }\n            goto LAB_001c9088;\n          }\n          iVar10 = *(int *)(puStack_150 + -0x7f10);\n        }\n        else {\n          uVar36 = (**(code **)(puStack_150 + -0x7774))(7);\n          if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            uVar36 = (*pcVar23)(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c9070;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            iVar14 = 1;\n          }\n          else {\nLAB_001c9070:\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\nLAB_001c9074:\n            uVar36 = (*pcVar23)(7);\n            if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n               (pcVar23 = *(code **)(puStack_150 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c9234;\n            iVar14 = 2;\n          }\nLAB_001c9088:\n          iVar10 = *(int *)(puStack_150 + -0x7f10);\n        }\n        iVar15 = 0;\n        ppppppuStack_124 = (undefined4 ******)0x1;\n        puStack_120 = &uStack_148;\n        pppppppuStack_13c = pppppppuVar9;\n        pppppppuStack_138 = pppppppuVar12;\n        ppppppuStack_134 = ppppppuVar2;\n        pppppppuStack_130 = unaff_s6;\n        pppppppuStack_12c = unaff_s5;\n        pppppppuStack_128 = param_1;\n        (**(code **)(puStack_150 + -0x7718))(iVar10 + 0x5428,&pppppppuStack_13c,iVar14,0);\n        ppppppuVar2 = ppppppuStack_124;\n        (**(code **)(puStack_150 + -0x79bc))(unaff_s6);\n        (**(code **)(puStack_150 + -0x79bc))(unaff_s5);\n        param_1[0xa8] = pppppppuVar9[0xa8];\n        if (ppppppuVar2 == (undefined4 ******)0x0) {\n          param_1 = (undefined4 *******)(**(code **)(puStack_150 + -0x7964))(param_1);\n        }\n      }\n      puVar8 = puStack_150;\n      if (iStack_11c == *piVar18) {\n        return param_1;\n      }\n      goto LAB_001c9314;\n    }\n    goto LAB_001c9320;\n  }\n  ppppppuVar2 = (undefined4 ******)0x3f5;\n  pcVar21 = *(code **)(puVar8 + -0x72a8);\n  pppppppuVar13 = (undefined4 *******)(*(int *)(puVar8 + -0x7fc4) + -0x288c);\n  pcVar24 = ExtentImage;\n  pppppppuVar12 = (undefined4 *******)(*(int *)(puVar8 + -0x7fc8) + -0x3784);\n  (*pcVar21)();\n  pcVar23 = pcVar21 + 0x1e754c;\n  pcStack_188 = pcVar23;\n  pppppppuStack_17c = pppppppuVar9;\n  pppppppuStack_178 = param_1;\n  ppppppuStack_174 = unaff_s2;\n  pppppppuStack_170 = unaff_s3;\n  pcStack_16c = pcVar24;\n  if (pppppppuVar12 == (undefined4 *******)0x0) {\n    iVar15 = *(int *)(pcVar21 + 0x1df588) + -0x26c8;\n    (**(code **)(pcVar21 + 0x1e02a4))\n              (*(int *)(pcVar21 + 0x1df584) + -0x37b0,*(int *)(pcVar21 + 0x1df588) + -0x288c,0x474,\n               iVar15);\nLAB_001c94fc:\n    iVar15 = iVar15 + -0x26c8;\n    (**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fc4) + -0x2850,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x478,\n               iVar15);\nLAB_001c951c:\n    iVar15 = iVar15 + -0x26c8;\n    (**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fd0) + 0x294c,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x47a,\n               iVar15);\n    pppppppuVar12 = pppppppuVar9;\nLAB_001c953c:\n    (**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fd0) + 0x1cac,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x479,\n               iVar15 + -0x26c8);\n  }\n  else if (pppppppuVar12[0xcdb] == (undefined4 ******)0xabacadab) {\n    if (pppppppuVar12[0xcd4] != (undefined4 ******)0x0) {\n      pppppppuStack_194 = pppppppuVar12 + 0xd0;\n      ppppppuStack_198 = (undefined4 ******)(*(int *)(pcVar21 + 0x1df580) + -0x62ac);\n      (**(code **)(pcVar21 + 0x1dfe7c))\n                (0x8000,*(int *)(pcVar21 + 0x1df588) + -0x288c,\n                 *(int *)(pcVar21 + 0x1df588) + -0x26d4,0x477);\n    }\n    iVar15 = *(int *)(pcStack_188 + -0x7fc4);\n    pppppppuVar9 = pppppppuVar12;\n    param_1 = pppppppuVar13;\n    unaff_s2 = ppppppuVar2;\n    pcVar23 = pcStack_188;\n    if (pppppppuVar13 == (undefined4 *******)0x0) goto LAB_001c94fc;\n    if (ppppppuVar2 != (undefined4 ******)0x0) {\n      if (ppppppuVar2[7] == (undefined4 *****)0xabacadab) {\n        ppppppuStack_198 = ppppppuVar2;\n        pppppppuVar9 = (undefined4 *******)\n                       (**(code **)(pcStack_188 + -0x7080))\n                                 (pppppppuVar12,*pppppppuVar13,pppppppuVar13[1],1);\n        if (pppppppuVar9 != (undefined4 *******)0x0) {\n          iVar15 = (**(code **)(pcStack_188 + -0x7a20))(pppppppuVar9,ppppppuVar2);\n          if (iVar15 == 0) {\n            (**(code **)(pcStack_188 + -0x7964))(pppppppuVar9);\n            pppppppuVar9 = (undefined4 *******)0x0;\n          }\n          else {\n            pppppppuStack_194 = (undefined4 *******)-(int)pppppppuVar13[3];\n            ppppppuStack_198 = (undefined4 ******)-(int)pppppppuVar13[2];\n            ppppppuStack_190 = ppppppuVar2;\n            iVar15 = (**(code **)(pcStack_188 + -0x7bec))\n                               (pppppppuVar9,pppppppuVar12,pppppppuVar12[0x99],1);\n            if (iVar15 != 0) {\n              (**(code **)(pcStack_188 + -0x7d18))\n                        (pppppppuVar9,pppppppuVar12[6],pppppppuVar12[7],pppppppuVar13);\n            }\n          }\n        }\n        return pppppppuVar9;\n      }\n      goto LAB_001c951c;\n    }\n    goto LAB_001c953c;\n  }\n  pcVar21 = *(code **)(pcVar23 + -0x72a8);\n  pppppppuVar9 = (undefined4 *******)(*(int *)(pcVar23 + -0x7fc4) + -0x288c);\n  pcVar24 = FlipImage;\n  pppppppuVar13 = (undefined4 *******)(*(int *)(pcVar23 + -0x7fc8) + -0x3784);\n  (*pcVar21)(pppppppuVar13,pppppppuVar9,0x475,*(int *)(pcVar23 + -0x7fc4) + -0x26c8);\n  pcVar23 = pcVar21 + 0x1e7330;\n  piVar16 = *(int **)(pcVar21 + 0x1dfcb0);\n  iStack_1d4 = *piVar16;\n  pcStack_208 = pcVar23;\n  pppppppuStack_1d0 = pppppppuVar12;\n  pppppppuStack_1cc = param_1;\n  ppppppuStack_1c8 = unaff_s2;\n  pppppppuStack_1c4 = unaff_s3;\n  piStack_1c0 = piVar18;\n  pppppppuStack_1bc = unaff_s5;\n  pppppppuStack_1b8 = unaff_s6;\n  pppppppuStack_1b4 = unaff_s7;\n  pppppppuStack_1b0 = unaff_s8;\n  pcStack_1ac = pcVar24;\n  if (pppppppuVar13 == (undefined4 *******)0x0) {\n    (**(code **)(pcVar21 + 0x1e0088))\n              (*(int *)(pcVar21 + 0x1df368) + -0x37b0,*(int *)(pcVar21 + 0x1df36c) + -0x288c,0x4bc,\n               *(int *)(pcVar21 + 0x1df36c) + -0x26e0);\n    pppppppuVar9 = param_1;\nLAB_001c9944:\n    (**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fd0) + 0x1cac,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x4c0,\n               *(int *)(pcVar23 + -0x7fc4) + -0x26e0);\nLAB_001c9968:\n    (**(code **)(pcVar23 + -0x784c))();\n    pppppppuVar13 = unaff_s7;\nLAB_001c9974:\n    (**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fd0) + 0x294c,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x4c1,\n               *(int *)(pcVar23 + -0x7fc4) + -0x26e0);\n    pppppppuStack_244 = pppppppuVar9;\n  }\n  else {\n    pppppppuStack_244 = param_1;\n    if (pppppppuVar13[0xcdb] == (undefined4 ******)0xabacadab) {\n      if (pppppppuVar13[0xcd4] != (undefined4 ******)0x0) {\n        pppppppuStack_20c = pppppppuVar13 + 0xd0;\n        pppppppuStack_210 = (undefined4 *******)(*(int *)(pcVar21 + 0x1df364) + -0x62ac);\n        (**(code **)(pcVar21 + 0x1dfc60))\n                  (0x8000,*(int *)(pcVar21 + 0x1df36c) + -0x288c,\n                   *(int *)(pcVar21 + 0x1df36c) + -0x26ec,0x4bf);\n      }\n      unaff_s7 = pppppppuVar13;\n      pcVar23 = pcStack_208;\n      if (pppppppuVar9 == (undefined4 *******)0x0) goto LAB_001c9944;\n      if (pppppppuVar9[7] == (undefined4 ******)0xabacadab) {\n        pppppppuStack_210 = pppppppuVar9;\n        pppppppuVar12 =\n             (undefined4 *******)(**(code **)(pcStack_208 + -0x7080))(pppppppuVar13,0,0,1);\n        if (pppppppuVar12 != (undefined4 *******)0x0) {\n          ppppppuStack_1fc = pppppppuVar13[0x8c];\n          unaff_s8 = (undefined4 *******)pppppppuVar13[0x8a];\n          unaff_s2 = pppppppuVar13[0x8b];\n          unaff_s6 = (undefined4 *******)pppppppuVar13[0x8d];\n          uStack_1f4 = 0;\n          uStack_1f8 = 0;\n          piVar18 = (int *)(**(code **)(pcStack_208 + -0x715c))(pppppppuVar13,pppppppuVar9);\n          unaff_s5 = (undefined4 *******)\n                     (**(code **)(pcStack_208 + -0x79dc))(pppppppuVar12,pppppppuVar9);\n          iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13);\n          if (((iVar15 == 4) ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13), iVar15 == 3)) &&\n             ((iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 4 ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 3)))) {\n            (**(code **)(pcStack_208 + -0x7774))(7);\n            ppppppuVar2 = pppppppuVar12[7];\n            if ((int)ppppppuVar2 < 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_03 < (int)ppppppuVar2 + 0x3f >> 6) goto LAB_001c98d4;\nLAB_001c981c:\n              bVar1 = (int)ppppppuVar2 < 0x80;\n            }\n            else {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if ((int)ppppppuVar2 >> 6 <= extraout_v1_03) goto LAB_001c981c;\nLAB_001c98d4:\n              (*pcVar23)(7);\n              bVar1 = extraout_v1_05 < 2;\n            }\n            iVar15 = 1;\n            if ((bool)(bVar1 ^ 1)) {\n              (**(code **)(pcStack_208 + -0x7774))(7);\n              ppppppuVar2 = pppppppuVar12[7];\n              if ((int)ppppppuVar2 < 0) {\n                ppppppuVar2 = (undefined4 ******)((int)ppppppuVar2 + 0x3f);\n              }\n              iVar15 = (int)ppppppuVar2 >> 6;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_06 < iVar15) {\nLAB_001c98ac:\n                (*pcVar23)(7);\n                iVar15 = extraout_v1_04;\n              }\n              goto LAB_001c96d8;\n            }\n            iVar14 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          else {\n            uVar36 = (**(code **)(pcStack_208 + -0x7774))(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              uVar36 = (*pcVar23)(7);\n              if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c96c0;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              iVar15 = 1;\n            }\n            else {\nLAB_001c96c0:\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\nLAB_001c96c4:\n              uVar36 = (*pcVar23)(7);\n              if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n                 (pcVar23 = *(code **)(pcStack_208 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c98ac;\n              iVar15 = 2;\n            }\nLAB_001c96d8:\n            iVar14 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          puStack_1dc = &uStack_1f8;\n          pppppppuStack_1d8 = (undefined4 *******)0x1;\n          pppppppuStack_1f0 = pppppppuVar13;\n          pppppppuStack_1ec = pppppppuVar9;\n          pppppppuStack_1e8 = unaff_s5;\n          piStack_1e4 = piVar18;\n          pppppppuStack_1e0 = pppppppuVar12;\n          (**(code **)(pcStack_208 + -0x7718))(iVar14 + 0x56bc,&pppppppuStack_1f0,iVar15,0);\n          pppppppuVar9 = pppppppuStack_1d8;\n          (**(code **)(pcStack_208 + -0x79bc))(unaff_s5);\n          (**(code **)(pcStack_208 + -0x79bc))(piVar18);\n          pppppppuVar12[0xa8] = pppppppuVar13[0xa8];\n          if (unaff_s2 != (undefined4 ******)0x0) {\n            unaff_s6 = (undefined4 *******)\n                       ((int)unaff_s2 + (-(int)unaff_s6 - (int)pppppppuVar12[7]));\n          }\n          pppppppuVar12[0x8a] = unaff_s8;\n          pppppppuVar12[0x8b] = unaff_s2;\n          pppppppuVar12[0x8c] = ppppppuStack_1fc;\n          pppppppuVar12[0x8d] = unaff_s6;\n          if (pppppppuVar9 == (undefined4 *******)0x0) {\n            pppppppuVar12 = (undefined4 *******)(**(code **)(pcStack_208 + -0x7964))(pppppppuVar12);\n          }\n        }\n        pcVar23 = pcStack_208;\n        if (iStack_1d4 == *piVar16) {\n          return pppppppuVar12;\n        }\n        goto LAB_001c9968;\n      }\n      goto LAB_001c9974;\n    }\n  }\n  pcVar21 = *(code **)(pcVar23 + -0x72a8);\n  iVar14 = *(int *)(pcVar23 + -0x7fc4) + -0x288c;\n  pcVar24 = FlopImage;\n  iVar15 = *(int *)(pcVar23 + -0x7fc8) + -0x3784;\n  (*pcVar21)(iVar15,iVar14,0x4bd,*(int *)(pcVar23 + -0x7fc4) + -0x26e0);\n  piVar17 = *(int **)(pcVar21 + 0x1df874);\n  iStack_24c = *piVar17;\n  pppppppuStack_248 = pppppppuVar12;\n  ppppppuStack_240 = unaff_s2;\n  piStack_23c = piVar16;\n  piStack_238 = piVar18;\n  pppppppuStack_234 = unaff_s5;\n  pppppppuStack_230 = unaff_s6;\n  pppppppuStack_22c = pppppppuVar13;\n  pppppppuStack_228 = unaff_s8;\n  pcStack_224 = pcVar24;\n  if (iVar15 == 0) {\n    pppppppuVar9 = (undefined4 *******)\n                   (**(code **)(pcVar21 + 0x1dfc4c))\n                             (*(int *)(pcVar21 + 0x1def2c) + -0x37b0,\n                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x543,\n                              *(int *)(pcVar21 + 0x1def30) + -0x26f8);\n    return pppppppuVar9;\n  }\n  if (*(int *)(iVar15 + 0x336c) != -0x54535255) {\n    pppppppuVar9 = (undefined4 *******)\n                   (**(code **)(pcVar21 + 0x1dfc4c))\n                             (*(int *)(pcVar21 + 0x1def2c) + -0x3784,\n                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x544,\n                              *(int *)(pcVar21 + 0x1def30) + -0x26f8);\n    return pppppppuVar9;\n  }\n  if (*(int *)(iVar15 + 0x3350) != 0) {\n    (**(code **)(pcVar21 + 0x1df824))\n              (0x8000,*(int *)(pcVar21 + 0x1def30) + -0x288c,*(int *)(pcVar21 + 0x1def30) + -0x2704,\n               0x546,*(int *)(pcVar21 + 0x1def28) + -0x62ac,iVar15 + 0x340);\n  }\n  if (iVar14 == 0) {\n    pppppppuVar9 = (undefined4 *******)\n                   (**(code **)(pcVar21 + 0x1dfc4c))\n                             (*(int *)(pcVar21 + 0x1def24) + 0x1cac,\n                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x547,\n                              *(int *)(pcVar21 + 0x1def30) + -0x26f8);\n    return pppppppuVar9;\n  }\n  if (*(int *)(iVar14 + 0x1c) != -0x54535255) goto LAB_001c9db0;\n  pppppppuVar9 = (undefined4 *******)(**(code **)(pcVar21 + 0x1dfe74))(iVar15,0,0,1,iVar14);\n  if (pppppppuVar9 != (undefined4 *******)0x0) {\n    ppppppuVar2 = *(undefined4 *******)(iVar15 + 0x234);\n    ppppppuVar7 = *(undefined4 *******)(iVar15 + 0x228);\n    ppppppuVar22 = *(undefined4 *******)(iVar15 + 0x22c);\n    ppppppuVar19 = *(undefined4 *******)(iVar15 + 0x230);\n    uStack_26c = 0;\n    uStack_270 = 0;\n    uVar4 = (**(code **)(pcVar21 + 0x1dfd98))(iVar15,iVar14);\n    uVar5 = (**(code **)(pcVar21 + 0x1df518))(pppppppuVar9,iVar14);\n    iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(iVar15);\n    if (((iVar10 == 4) || (iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(iVar15), iVar10 == 3)) &&\n       ((iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(pppppppuVar9), iVar10 == 4 ||\n        (iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(pppppppuVar9), iVar10 == 3)))) {\n      (**(code **)(pcVar21 + 0x1df780))(7);\n      ppppppuVar6 = pppppppuVar9[7];\n      if ((int)ppppppuVar6 < 0) {\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (extraout_v1_07 < (int)ppppppuVar6 + 0x3f >> 6) goto LAB_001c9d10;\nLAB_001c9c58:\n        bVar1 = (int)ppppppuVar6 < 0x80;\n      }\n      else {\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if ((int)ppppppuVar6 >> 6 <= extraout_v1_07) goto LAB_001c9c58;\nLAB_001c9d10:\n        (*pcVar23)(7);\n        bVar1 = extraout_v1_09 < 2;\n      }\n      iVar10 = 1;\n      if ((bool)(bVar1 ^ 1)) {\n        (**(code **)(pcVar21 + 0x1df780))(7);\n        ppppppuVar6 = pppppppuVar9[7];\n        if ((int)ppppppuVar6 < 0) {\n          ppppppuVar6 = (undefined4 ******)((int)ppppppuVar6 + 0x3f);\n        }\n        iVar10 = (int)ppppppuVar6 >> 6;\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (extraout_v1_10 < iVar10) {\nLAB_001c9ce8:\n          (*pcVar23)(7);\n          iVar10 = extraout_v1_08;\n        }\n        goto LAB_001c9b14;\n      }\n      iVar11 = *(int *)(pcVar21 + 0x1defe4);\n    }\n    else {\n      uVar36 = (**(code **)(pcVar21 + 0x1df780))(7);\n      if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (1 < (uint)uVar36) goto LAB_001c9b00;\n        uVar36 = (*pcVar23)(7);\n        if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c9afc;\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (1 < (uint)uVar36) goto LAB_001c9b00;\n        iVar10 = 1;\n      }\n      else {\nLAB_001c9afc:\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\nLAB_001c9b00:\n        uVar36 = (*pcVar23)(7);\n        if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n           (pcVar23 = *(code **)(pcVar21 + 0x1df780), (uint)uVar36 < 2)) goto LAB_001c9ce8;\n        iVar10 = 2;\n      }\nLAB_001c9b14:\n      iVar11 = *(int *)(pcVar21 + 0x1defe4);\n    }\n    puStack_254 = &uStack_270;\n    iStack_250 = 1;\n    iStack_268 = iVar15;\n    iStack_264 = iVar14;\n    uStack_260 = uVar5;\n    uStack_25c = uVar4;\n    pppppppuStack_258 = pppppppuVar9;\n    (**(code **)(pcVar21 + 0x1df7dc))(iVar11 + 0x594c,&iStack_268,iVar10,0);\n    iVar14 = iStack_250;\n    (**(code **)(pcVar21 + 0x1df538))(uVar5);\n    (**(code **)(pcVar21 + 0x1df538))(uVar4);\n    pppppppuVar9[0xa8] = *(undefined4 *******)(iVar15 + 0x2a0);\n    if (ppppppuVar7 != (undefined4 ******)0x0) {\n      ppppppuVar19 = (undefined4 ******)\n                     ((int)ppppppuVar7 + (-(int)ppppppuVar19 - (int)pppppppuVar9[6]));\n    }\n    pppppppuVar9[0x8a] = ppppppuVar7;\n    pppppppuVar9[0x8b] = ppppppuVar22;\n    pppppppuVar9[0x8c] = ppppppuVar19;\n    pppppppuVar9[0x8d] = ppppppuVar2;\n    if (iVar14 == 0) {\n      pppppppuVar9 = (undefined4 *******)(**(code **)(pcVar21 + 0x1df590))(pppppppuVar9);\n    }\n  }\n  if (iStack_24c == *piVar17) {\n    return pppppppuVar9;\n  }\n  (**(code **)(pcVar21 + 0x1df6a8))();\nLAB_001c9db0:\n  pppppppuVar9 = (undefined4 *******)\n                 (**(code **)(pcVar21 + 0x1dfc4c))\n                           (*(int *)(pcVar21 + 0x1def24) + 0x294c,\n                            *(int *)(pcVar21 + 0x1def30) + -0x288c,0x548,\n                            *(int *)(pcVar21 + 0x1def30) + -0x26f8);\n  return pppppppuVar9;\n}" type_identifier (pointer_declarator "*******\nCropImageToTiles(undefined4 *******param_1,undefined4 *******param_2,undefined4 ******param_3)" * (pointer_declarator "******\nCropImageToTiles(undefined4 *******param_1,undefined4 *******param_2,undefined4 ******param_3)" * (pointer_declarator "*****\nCropImageToTiles(undefined4 *******param_1,undefined4 *******param_2,undefined4 ******param_3)" * (pointer_declarator "****\nCropImageToTiles(undefined4 *******param_1,undefined4 *******param_2,undefined4 ******param_3)" * (pointer_declarator "***\nCropImageToTiles(undefined4 *******param_1,undefined4 *******param_2,undefined4 ******param_3)" * (pointer_declarator "**\nCropImageToTiles(undefined4 *******param_1,undefined4 *******param_2,undefined4 ******param_3)" * (pointer_declarator "*\nCropImageToTiles(undefined4 *******param_1,undefined4 *******param_2,undefined4 ******param_3)" * (function_declarator "CropImageToTiles(undefined4 *******param_1,undefined4 *******param_2,undefined4 ******param_3)" identifier (parameter_list "(undefined4 *******param_1,undefined4 *******param_2,undefined4 ******param_3)" ( (parameter_declaration "undefined4 *******param_1" type_identifier (pointer_declarator "*******param_1" * (pointer_declarator "******param_1" * (pointer_declarator "*****param_1" * (pointer_declarator "****param_1" * (pointer_declarator "***param_1" * (pointer_declarator "**param_1" * (pointer_declarator "*param_1" * identifier)))))))) , (parameter_declaration "undefined4 *******param_2" type_identifier (pointer_declarator "*******param_2" * (pointer_declarator "******param_2" * (pointer_declarator "*****param_2" * (pointer_declarator "****param_2" * (pointer_declarator "***param_2" * (pointer_declarator "**param_2" * (pointer_declarator "*param_2" * identifier)))))))) , (parameter_declaration "undefined4 ******param_3" type_identifier (pointer_declarator "******param_3" * (pointer_declarator "*****param_3" * (pointer_declarator "****param_3" * (pointer_declarator "***param_3" * (pointer_declarator "**param_3" * (pointer_declarator "*param_3" * identifier))))))) )))))))))) (compound_statement "{\n  bool bVar1;\n  undefined4 ******ppppppuVar2;\n  undefined *puVar3;\n  undefined4 uVar4;\n  undefined4 uVar5;\n  undefined4 ******ppppppuVar6;\n  undefined4 ******ppppppuVar7;\n  int extraout_v1;\n  int extraout_v1_00;\n  int extraout_v1_01;\n  int extraout_v1_02;\n  int extraout_v1_03;\n  int extraout_v1_04;\n  int extraout_v1_05;\n  int extraout_v1_06;\n  int extraout_v1_07;\n  int extraout_v1_08;\n  int extraout_v1_09;\n  int extraout_v1_10;\n  undefined *puVar8;\n  undefined4 *******pppppppuVar9;\n  int iVar10;\n  int iVar11;\n  undefined4 *******pppppppuVar12;\n  undefined4 *******pppppppuVar13;\n  int iVar14;\n  int iVar15;\n  undefined4 *******unaff_s0;\n  undefined4 *******unaff_s1;\n  undefined4 ******unaff_s2;\n  undefined4 *******unaff_s3;\n  int *piVar16;\n  int *piVar17;\n  undefined4 ******unaff_s4;\n  int *piVar18;\n  undefined4 *******unaff_s5;\n  undefined4 *******unaff_s6;\n  undefined4 ******ppppppuVar19;\n  undefined4 *******unaff_s7;\n  undefined *puVar20;\n  code *pcVar21;\n  undefined4 *******unaff_s8;\n  undefined4 ******ppppppuVar22;\n  code *pcVar23;\n  code *pcVar24;\n  double dVar25;\n  double dVar26;\n  double dVar27;\n  double dVar28;\n  double dVar29;\n  double dVar30;\n  double dVar31;\n  double dVar32;\n  double dVar33;\n  double dVar34;\n  double dVar35;\n  undefined8 uVar36;\n  undefined4 uStack_270;\n  undefined4 uStack_26c;\n  int iStack_268;\n  int iStack_264;\n  undefined4 uStack_260;\n  undefined4 uStack_25c;\n  undefined4 *******pppppppuStack_258;\n  undefined4 *puStack_254;\n  int iStack_250;\n  int iStack_24c;\n  undefined4 *******pppppppuStack_248;\n  undefined4 *******pppppppuStack_244;\n  undefined4 ******ppppppuStack_240;\n  int *piStack_23c;\n  int *piStack_238;\n  undefined4 *******pppppppuStack_234;\n  undefined4 *******pppppppuStack_230;\n  undefined4 *******pppppppuStack_22c;\n  undefined4 *******pppppppuStack_228;\n  code *pcStack_224;\n  undefined4 *******pppppppuStack_210;\n  undefined4 *******pppppppuStack_20c;\n  code *pcStack_208;\n  undefined4 ******ppppppuStack_1fc;\n  undefined4 uStack_1f8;\n  undefined4 uStack_1f4;\n  undefined4 *******pppppppuStack_1f0;\n  undefined4 *******pppppppuStack_1ec;\n  undefined4 *******pppppppuStack_1e8;\n  int *piStack_1e4;\n  undefined4 *******pppppppuStack_1e0;\n  undefined4 *puStack_1dc;\n  undefined4 *******pppppppuStack_1d8;\n  int iStack_1d4;\n  undefined4 *******pppppppuStack_1d0;\n  undefined4 *******pppppppuStack_1cc;\n  undefined4 ******ppppppuStack_1c8;\n  undefined4 *******pppppppuStack_1c4;\n  int *piStack_1c0;\n  undefined4 *******pppppppuStack_1bc;\n  undefined4 *******pppppppuStack_1b8;\n  undefined4 *******pppppppuStack_1b4;\n  undefined4 *******pppppppuStack_1b0;\n  code *pcStack_1ac;\n  undefined4 ******ppppppuStack_198;\n  undefined4 *******pppppppuStack_194;\n  undefined4 ******ppppppuStack_190;\n  code *pcStack_188;\n  undefined4 *******pppppppuStack_17c;\n  undefined4 *******pppppppuStack_178;\n  undefined4 ******ppppppuStack_174;\n  undefined4 *******pppppppuStack_170;\n  code *pcStack_16c;\n  undefined4 ******ppppppuStack_158;\n  undefined4 *******pppppppuStack_154;\n  undefined *puStack_150;\n  undefined4 uStack_148;\n  undefined4 uStack_144;\n  undefined4 *******pppppppuStack_13c;\n  undefined4 *******pppppppuStack_138;\n  undefined4 ******ppppppuStack_134;\n  undefined4 *******pppppppuStack_130;\n  undefined4 *******pppppppuStack_12c;\n  undefined4 *******pppppppuStack_128;\n  undefined4 ******ppppppuStack_124;\n  undefined4 *puStack_120;\n  int iStack_11c;\n  undefined4 *******pppppppuStack_118;\n  undefined4 *******pppppppuStack_114;\n  undefined4 ******ppppppuStack_110;\n  undefined4 *******pppppppuStack_10c;\n  undefined4 ******ppppppuStack_108;\n  undefined4 *******pppppppuStack_104;\n  undefined4 *******pppppppuStack_100;\n  code *pcStack_fc;\n  undefined4 ******local_e8;\n  undefined4 *******local_e4;\n  double local_c8;\n  double local_a0;\n  undefined4 *******local_80;\n  undefined4 *******local_7c;\n  undefined4 ******local_78;\n  undefined4 *******local_74;\n  undefined4 *******local_70;\n  undefined4 *******local_6c;\n  undefined4 *******local_68;\n  undefined4 *******local_64;\n  undefined4 *******local_60;\n  int local_5c;\n  \n  puVar20 = PTR___stack_chk_guard_003a9230;\n  local_5c = *(int *)PTR___stack_chk_guard_003a9230;\n  if (param_1 == (undefined4 *******)0x0) {\nLAB_001c8ef8:\n    param_1 = unaff_s1;\n    (*(code *)PTR___assert_fail_003a9608)\n              (PTR_LAB_003a88e0 + 0xdd0,PTR_s_courses_003a88ec + -0x288c,0x322,\n               PTR_s_courses_003a88ec + -0x2688);\n  }\n  else if (param_1[0xcdb] == (undefined4 ******)0xabacadab) {\n    if (param_1[0xcd4] != (undefined4 ******)0x0) {\n      local_e4 = param_1 + 0xd0;\n      local_e8 = (undefined4 ******)(PTR_s_t_to_left_003a88e4 + -0x62ac);\n      (*(code *)PTR_LogMagickEvent_003a91e0)\n                (0x8000,PTR_s_courses_003a88ec + -0x288c,PTR_s_courses_003a88ec + -0x269c,0x325);\n    }\n    unaff_s6 = (undefined4 *******)(*(code *)PTR_NewImageList_003a8e84)();\n    local_80 = unaff_s6;\n    ppppppuVar2 = (undefined4 ******)\n                  (*(code *)PTR_ParseGravityGeometry_003a97fc)(param_1,param_2,&local_7c,param_3);\n    unaff_s4 = local_78;\n    unaff_s0 = local_7c;\n    unaff_s3 = (undefined4 *******)PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;\n    if ((int)ppppppuVar2 << 0xe < 0) {\n      ppppppuVar7 = param_1[7];\n      if (local_7c == (undefined4 *******)0x0) {\n        local_7c = (undefined4 *******)0x1;\n        dVar35 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n      }\n      else {\n        dVar35 = (double)(int)local_7c;\n        if ((int)local_7c < 0) {\n          dVar35 = dVar35 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n      }\n      if (local_78 == (undefined4 ******)0x0) {\n        dVar30 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n        local_78 = (undefined4 ******)0x1;\n        if (((uint)ppppppuVar2 & 0x2000) != 0) goto LAB_001c8e14;\nLAB_001c8484:\n        pppppppuVar9 = local_74;\n        if ((int)local_74 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_74;\n        }\n        puVar8 = (undefined *)((int)param_1[6] - (int)pppppppuVar9);\n        pppppppuVar9 = local_70;\n        if ((int)local_70 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_70;\n        }\n        puVar3 = (undefined *)((int)ppppppuVar7 - (int)pppppppuVar9);\n      }\n      else {\n        dVar30 = (double)(int)local_78;\n        if ((int)local_78 < 0) {\n          dVar30 = dVar30 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n        if (((uint)ppppppuVar2 & 0x2000) == 0) goto LAB_001c8484;\nLAB_001c8e14:\n        pppppppuVar9 = local_74;\n        if ((int)local_74 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_74;\n        }\n        puVar8 = (undefined *)((int)pppppppuVar9 + (int)param_1[6]);\n        if ((int)local_70 < 0) {\n          puVar3 = (undefined *)((int)ppppppuVar7 - (int)local_70);\n        }\n        else {\n          puVar3 = (undefined *)((int)local_70 + (int)ppppppuVar7);\n        }\n      }\n      unaff_s4 = (undefined4 ******)((uint)ppppppuVar2 & 0x2000);\n      dVar34 = (double)(int)puVar8;\n      if ((int)puVar8 < 0) {\n        dVar34 = dVar34 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n      }\n      dVar35 = dVar34 / dVar35;\n      local_c8 = (double)(int)puVar3;\n      if ((int)puVar3 < 0) {\n        local_c8 = local_c8 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n      }\n      dVar25 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n      local_a0 = dVar25;\n      if (dVar35 < dVar25) {\n        local_a0 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n        dVar35 = dVar25;\n      }\n      if (local_a0 <= local_c8 / dVar30) {\n        local_a0 = local_c8 / dVar30;\n      }\n      dVar30 = 0.0;\n      unaff_s7 = local_70;\n      if (0.0 < local_c8) {\n        dVar25 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4780);\n        dVar31 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4788);\n        if (unaff_s4 != (undefined4 ******)0x0) goto LAB_001c8b70;\nLAB_001c854c:\n        unaff_s7 = local_70;\n        dVar32 = dVar30;\n        if ((int)local_70 < 1) {\n          dVar32 = dVar30 - (double)(int)local_70;\n        }\n        dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n        dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n        if (dVar32 - dVar26 < dVar27 - dVar32) {\n          dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar23 = (code *)PTR_floor_003a9670;\n          if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d7c;\n        }\n        else {\n          if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d7c:\n            iVar15 = -0x7ffffdff;\n            goto joined_r0x001c8cbc;\n          }\n          dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar23 = (code *)PTR_ceil_003a8c20;\n        }\n        if (dVar26 < dVar32) {\n          iVar15 = 0x7ffffdff;\n        }\n        else {\n          dVar32 = (double)(*pcVar23)(dVar32);\n          iVar15 = (int)dVar32;\n        }\njoined_r0x001c8cbc:\n        dVar30 = dVar30 + local_a0;\n        if ((int)unaff_s7 < 0) {\n          dVar32 = 0.0;\n        }\n        else {\n          dVar32 = (double)(int)unaff_s7;\n        }\n        dVar32 = dVar30 + dVar32;\n        dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n        dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n        if (dVar32 - dVar26 < dVar27 - dVar32) {\n          if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8630;\n            goto LAB_001c8cec;\n          }\n        }\n        else if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;\n          goto LAB_001c8d18;\n        }\nLAB_001c8c88:\n        iVar14 = -0x7ffffdff;\nLAB_001c8644:\n        do {\n          unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n          param_2 = (undefined4 *******)((int)param_1[0x8d] + iVar15);\n          dVar32 = 0.0;\n          local_68 = unaff_s8;\n          local_60 = param_2;\n          if (0.0 < dVar34) {\n            dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n            unaff_s6 = &local_6c;\n            dVar27 = *(double *)((int)unaff_s3 + 0x4780);\n            do {\n              unaff_s7 = local_74;\n              if (unaff_s4 == (undefined4 ******)0x0) {\n                dVar33 = dVar32;\n                if ((int)local_74 < 1) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }\nLAB_001c8b04:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;\nLAB_001c8708:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8700:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar33 = 0.0;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8768:\n                  dVar33 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar33 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n              }\n              else {\n                dVar33 = dVar32;\n                if (0 < (int)local_74) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar27 <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar33 = 0.0;\n                }\n                else {\n                  if (dVar33 < dVar27) goto LAB_001c8b24;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (dVar26 < dVar33) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8850:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < dVar25) goto LAB_001c8a44;\n                  if (dVar33 <= dVar26) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar14 = 0x7ffffdff;\n                }\n                else if (dVar25 <= dVar33) {\n                  if (dVar33 <= dVar31) goto LAB_001c8abc;\n                  iVar14 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar14 = -0x7ffffdff;\n                }\n              }\n              unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n              param_2 = (undefined4 *******)((int)param_1[0x8c] + iVar15);\n              local_6c = unaff_s8;\n              local_64 = param_2;\n              iVar15 = (*(code *)PTR_CropImage_003a90b8)(param_1,unaff_s6,param_3);\n              if (iVar15 != 0) {\n                (*(code *)PTR_AppendImageToList_003a9880)(&local_80,iVar15);\n              }\n            } while (dVar32 < dVar34);\n          }\n          unaff_s5 = unaff_s3;\n          if (local_c8 <= dVar30) break;\n          if (unaff_s4 == (undefined4 ******)0x0) goto LAB_001c854c;\nLAB_001c8b70:\n          unaff_s7 = local_70;\n          dVar32 = dVar30;\n          if (0 < (int)local_70) {\n            dVar32 = dVar30 - (double)(int)local_70;\n          }\n          dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n          dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          if (dVar32 - dVar26 < dVar27 - dVar32) {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d8c;\n            pcVar23 = (code *)PTR_floor_003a9670;\n            if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8d50;\nLAB_001c8bd8:\n            dVar32 = (double)(*pcVar23)(dVar32);\n            iVar15 = (int)dVar32;\nLAB_001c8bf0:\n            dVar30 = dVar30 + local_a0;\n            if (-2 < (int)unaff_s7) goto LAB_001c8c00;\nLAB_001c8d6c:\n            dVar32 = (double)(int)unaff_s7;\n          }\n          else {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d8c:\n              iVar15 = -0x7ffffdff;\n              goto LAB_001c8bf0;\n            }\n            pcVar23 = (code *)PTR_ceil_003a8c20;\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8bd8;\nLAB_001c8d50:\n            iVar15 = 0x7ffffdff;\n            dVar30 = dVar30 + local_a0;\n            if ((int)unaff_s7 < -1) goto LAB_001c8d6c;\nLAB_001c8c00:\n            dVar32 = 0.0;\n          }\n          dVar32 = dVar30 + dVar32;\n          dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n          dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          if (dVar32 - dVar26 < dVar27 - dVar32) {\n            if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n              if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) {\nLAB_001c8cec:\n                iVar14 = 0x7ffffdff;\n              }\n              else {\nLAB_001c8630:\n                dVar32 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n                iVar14 = (int)dVar32;\n              }\n              goto LAB_001c8644;\n            }\n            goto LAB_001c8c88;\n          }\n          if (dVar32 < dVar25) goto LAB_001c8c88;\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;\nLAB_001c8d18:\n          dVar32 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          iVar14 = (int)dVar32;\n        } while( true );\n      }\n      (*(code *)PTR_ClearMagickException_003a90f8)(param_3);\n      pppppppuVar9 = local_80;\n      unaff_s0 = param_2;\n    }\n    else {\n      unaff_s3 = &local_7c;\n      if (((local_7c == (undefined4 *******)0x0) && (local_78 == (undefined4 ******)0x0)) ||\n         (((uint)ppppppuVar2 & 3) != 0)) {\n        local_80 = (undefined4 *******)(*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n        pppppppuVar9 = local_80;\n        unaff_s4 = ppppppuVar2;\n        if ((local_80 != (undefined4 *******)0x0) &&\n           (unaff_s4 = (undefined4 ******)((uint)ppppppuVar2 & 0x2000),\n           unaff_s4 != (undefined4 ******)0x0)) {\n          local_80[0x8c] = (undefined4 ******)((int)local_80[0x8c] - (int)local_74);\n          local_80[0x8d] = (undefined4 ******)((int)local_80[0x8d] - (int)local_70);\n          local_80[0x8a] = local_7c;\n          local_80[0x8b] = local_78;\n        }\n      }\n      else {\n        unaff_s7 = (undefined4 *******)param_1[6];\n        if ((local_7c < unaff_s7) || (local_78 < param_1[7])) {\n          ppppppuVar2 = param_1[0x8b];\n          if ((undefined4 *******)param_1[0x8a] != (undefined4 *******)0x0) {\n            unaff_s7 = (undefined4 *******)param_1[0x8a];\n          }\n          if (ppppppuVar2 == (undefined4 ******)0x0) {\n            ppppppuVar2 = param_1[7];\n          }\n          if (local_7c == (undefined4 *******)0x0) {\n            unaff_s0 = unaff_s7;\n          }\n          if (local_78 == (undefined4 ******)0x0) {\n            unaff_s4 = ppppppuVar2;\n          }\n          pppppppuVar9 = local_80;\n          if (0 < (int)ppppppuVar2) {\n            unaff_s3 = (undefined4 *******)0x0;\n            unaff_s8 = &local_80;\n            do {\n              unaff_s5 = (undefined4 *******)0x0;\n              if ((int)unaff_s7 < 1) {\n                pppppppuVar9 = local_80;\n                if (unaff_s6 == (undefined4 *******)0x0) break;\n              }\n              else {\n                do {\n                  local_7c = unaff_s0;\n                  local_78 = unaff_s4;\n                  local_74 = unaff_s5;\n                  local_70 = unaff_s3;\n                  unaff_s6 = (undefined4 *******)\n                             (*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n                  pppppppuVar9 = local_80;\n                  if (unaff_s6 == (undefined4 *******)0x0) goto LAB_001c8908;\n                  unaff_s5 = (undefined4 *******)((int)unaff_s5 + (int)unaff_s0);\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);\n              }\n              unaff_s3 = (undefined4 *******)((int)unaff_s3 + (int)unaff_s4);\n              pppppppuVar9 = local_80;\n            } while ((int)unaff_s3 < (int)ppppppuVar2);\n          }\n        }\n        else {\n          local_e8 = param_3;\n          pppppppuVar9 = (undefined4 *******)(*(code *)PTR_CloneImage_003a9830)(param_1,0,0,1);\n        }\n      }\n    }\nLAB_001c8908:\n    if (local_5c == *(int *)puVar20) {\n      return pppppppuVar9;\n    }\n    (*(code *)PTR___stack_chk_fail_003a9064)();\n    unaff_s1 = param_1;\n    unaff_s2 = param_3;\n    goto LAB_001c8ef8;\n  }\n  ppppppuVar2 = (undefined4 ******)0x323;\n  pppppppuVar12 = (undefined4 *******)(PTR_s_courses_003a88ec + -0x288c);\n  pcVar23 = ExcerptImage;\n  pppppppuVar9 = (undefined4 *******)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3784);\n  puVar20 = PTR___assert_fail_003a9608;\n  (*(code *)PTR___assert_fail_003a9608)();\n  puVar8 = puVar20 + 0x1e7970;\n  piVar18 = *(int **)(puVar20 + 0x1e02f0);\n  iStack_11c = *piVar18;\n  puStack_150 = puVar8;\n  pppppppuStack_118 = unaff_s0;\n  pppppppuStack_114 = param_1;\n  ppppppuStack_110 = unaff_s2;\n  pppppppuStack_10c = unaff_s3;\n  ppppppuStack_108 = unaff_s4;\n  pppppppuStack_104 = unaff_s5;\n  pppppppuStack_100 = unaff_s6;\n  pcStack_fc = pcVar23;\n  if (pppppppuVar9 == (undefined4 *******)0x0) {\n    iVar15 = *(int *)(puVar20 + 0x1df9ac) + -0x26ac;\n    (**(code **)(puVar20 + 0x1e06c8))\n              (*(int *)(puVar20 + 0x1df9a8) + -0x37b0,*(int *)(puVar20 + 0x1df9ac) + -0x288c,0x3f4,\n               iVar15);\nLAB_001c92d4:\n    iVar15 = iVar15 + -0x26ac;\n    (**(code **)(puVar8 + -0x72a8))\n              (*(int *)(puVar8 + -0x7fd0) + 0x294c,*(int *)(puVar8 + -0x7fc4) + -0x288c,0x3fa,iVar15\n              );\n    ppppppuVar2 = unaff_s2;\nLAB_001c92f4:\n    iVar15 = iVar15 + -0x26ac;\n    (**(code **)(puVar8 + -0x72a8))\n              (*(int *)(puVar8 + -0x7fd0) + 0x1cac,*(int *)(puVar8 + -0x7fc4) + -0x288c,0x3f9,iVar15\n              );\nLAB_001c9314:\n    (**(code **)(puVar8 + -0x784c))();\n    pppppppuVar9 = unaff_s0;\nLAB_001c9320:\n    (**(code **)(puVar8 + -0x72a8))\n              (*(int *)(puVar8 + -0x7fc4) + -0x2850,*(int *)(puVar8 + -0x7fc4) + -0x288c,0x3f8,\n               iVar15 + -0x26ac);\n    unaff_s2 = ppppppuVar2;\n  }\n  else if (pppppppuVar9[0xcdb] == (undefined4 ******)0xabacadab) {\n    if (pppppppuVar9[0xcd4] != (undefined4 ******)0x0) {\n      pppppppuStack_154 = pppppppuVar9 + 0xd0;\n      ppppppuStack_158 = (undefined4 ******)(*(int *)(puVar20 + 0x1df9a4) + -0x62ac);\n      (**(code **)(puVar20 + 0x1e02a0))\n                (0x8000,*(int *)(puVar20 + 0x1df9ac) + -0x288c,\n                 *(int *)(puVar20 + 0x1df9ac) + -0x26bc,0x3f7);\n    }\n    iVar15 = *(int *)(puStack_150 + -0x7fc4);\n    unaff_s3 = pppppppuVar12;\n    puVar8 = puStack_150;\n    if (pppppppuVar12 != (undefined4 *******)0x0) {\n      unaff_s0 = pppppppuVar9;\n      if (ppppppuVar2 == (undefined4 ******)0x0) goto LAB_001c92f4;\n      unaff_s2 = ppppppuVar2;\n      if (ppppppuVar2[7] != (undefined4 *****)0xabacadab) goto LAB_001c92d4;\n      iVar15 = 1;\n      ppppppuStack_158 = ppppppuVar2;\n      param_1 = (undefined4 *******)\n                (**(code **)(puStack_150 + -0x7080))(pppppppuVar9,*pppppppuVar12,pppppppuVar12[1],1)\n      ;\n      if (param_1 != (undefined4 *******)0x0) {\n        uStack_144 = 0;\n        uStack_148 = 0;\n        unaff_s5 = (undefined4 *******)\n                   (**(code **)(puStack_150 + -0x715c))(pppppppuVar9,ppppppuVar2);\n        unaff_s6 = (undefined4 *******)(**(code **)(puStack_150 + -0x79dc))(param_1,ppppppuVar2);\n        iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9);\n        if (((iVar15 == 4) ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9), iVar15 == 3)) &&\n           ((iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 4 ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 3)))) {\n          (**(code **)(puStack_150 + -0x7774))(7);\n          ppppppuVar7 = param_1[7];\n          if ((int)ppppppuVar7 < 0) {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1 < (int)ppppppuVar7 + 0x3f >> 6) goto LAB_001c9298;\nLAB_001c91a4:\n            bVar1 = (int)ppppppuVar7 < 0x80;\n          }\n          else {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if ((int)ppppppuVar7 >> 6 <= extraout_v1) goto LAB_001c91a4;\nLAB_001c9298:\n            (*pcVar23)(7);\n            bVar1 = extraout_v1_02 < 2;\n          }\n          iVar14 = 1;\n          if ((bool)(bVar1 ^ 1)) {\n            (**(code **)(puStack_150 + -0x7774))(7);\n            ppppppuVar7 = param_1[7];\n            if ((int)ppppppuVar7 < 0) {\n              ppppppuVar7 = (undefined4 ******)((int)ppppppuVar7 + 0x3f);\n            }\n            iVar14 = (int)ppppppuVar7 >> 6;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1_01 < iVar14) {\nLAB_001c9234:\n              (*pcVar23)(7);\n              iVar14 = extraout_v1_00;\n            }\n            goto LAB_001c9088;\n          }\n          iVar10 = *(int *)(puStack_150 + -0x7f10);\n        }\n        else {\n          uVar36 = (**(code **)(puStack_150 + -0x7774))(7);\n          if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            uVar36 = (*pcVar23)(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c9070;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            iVar14 = 1;\n          }\n          else {\nLAB_001c9070:\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\nLAB_001c9074:\n            uVar36 = (*pcVar23)(7);\n            if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n               (pcVar23 = *(code **)(puStack_150 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c9234;\n            iVar14 = 2;\n          }\nLAB_001c9088:\n          iVar10 = *(int *)(puStack_150 + -0x7f10);\n        }\n        iVar15 = 0;\n        ppppppuStack_124 = (undefined4 ******)0x1;\n        puStack_120 = &uStack_148;\n        pppppppuStack_13c = pppppppuVar9;\n        pppppppuStack_138 = pppppppuVar12;\n        ppppppuStack_134 = ppppppuVar2;\n        pppppppuStack_130 = unaff_s6;\n        pppppppuStack_12c = unaff_s5;\n        pppppppuStack_128 = param_1;\n        (**(code **)(puStack_150 + -0x7718))(iVar10 + 0x5428,&pppppppuStack_13c,iVar14,0);\n        ppppppuVar2 = ppppppuStack_124;\n        (**(code **)(puStack_150 + -0x79bc))(unaff_s6);\n        (**(code **)(puStack_150 + -0x79bc))(unaff_s5);\n        param_1[0xa8] = pppppppuVar9[0xa8];\n        if (ppppppuVar2 == (undefined4 ******)0x0) {\n          param_1 = (undefined4 *******)(**(code **)(puStack_150 + -0x7964))(param_1);\n        }\n      }\n      puVar8 = puStack_150;\n      if (iStack_11c == *piVar18) {\n        return param_1;\n      }\n      goto LAB_001c9314;\n    }\n    goto LAB_001c9320;\n  }\n  ppppppuVar2 = (undefined4 ******)0x3f5;\n  pcVar21 = *(code **)(puVar8 + -0x72a8);\n  pppppppuVar13 = (undefined4 *******)(*(int *)(puVar8 + -0x7fc4) + -0x288c);\n  pcVar24 = ExtentImage;\n  pppppppuVar12 = (undefined4 *******)(*(int *)(puVar8 + -0x7fc8) + -0x3784);\n  (*pcVar21)();\n  pcVar23 = pcVar21 + 0x1e754c;\n  pcStack_188 = pcVar23;\n  pppppppuStack_17c = pppppppuVar9;\n  pppppppuStack_178 = param_1;\n  ppppppuStack_174 = unaff_s2;\n  pppppppuStack_170 = unaff_s3;\n  pcStack_16c = pcVar24;\n  if (pppppppuVar12 == (undefined4 *******)0x0) {\n    iVar15 = *(int *)(pcVar21 + 0x1df588) + -0x26c8;\n    (**(code **)(pcVar21 + 0x1e02a4))\n              (*(int *)(pcVar21 + 0x1df584) + -0x37b0,*(int *)(pcVar21 + 0x1df588) + -0x288c,0x474,\n               iVar15);\nLAB_001c94fc:\n    iVar15 = iVar15 + -0x26c8;\n    (**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fc4) + -0x2850,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x478,\n               iVar15);\nLAB_001c951c:\n    iVar15 = iVar15 + -0x26c8;\n    (**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fd0) + 0x294c,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x47a,\n               iVar15);\n    pppppppuVar12 = pppppppuVar9;\nLAB_001c953c:\n    (**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fd0) + 0x1cac,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x479,\n               iVar15 + -0x26c8);\n  }\n  else if (pppppppuVar12[0xcdb] == (undefined4 ******)0xabacadab) {\n    if (pppppppuVar12[0xcd4] != (undefined4 ******)0x0) {\n      pppppppuStack_194 = pppppppuVar12 + 0xd0;\n      ppppppuStack_198 = (undefined4 ******)(*(int *)(pcVar21 + 0x1df580) + -0x62ac);\n      (**(code **)(pcVar21 + 0x1dfe7c))\n                (0x8000,*(int *)(pcVar21 + 0x1df588) + -0x288c,\n                 *(int *)(pcVar21 + 0x1df588) + -0x26d4,0x477);\n    }\n    iVar15 = *(int *)(pcStack_188 + -0x7fc4);\n    pppppppuVar9 = pppppppuVar12;\n    param_1 = pppppppuVar13;\n    unaff_s2 = ppppppuVar2;\n    pcVar23 = pcStack_188;\n    if (pppppppuVar13 == (undefined4 *******)0x0) goto LAB_001c94fc;\n    if (ppppppuVar2 != (undefined4 ******)0x0) {\n      if (ppppppuVar2[7] == (undefined4 *****)0xabacadab) {\n        ppppppuStack_198 = ppppppuVar2;\n        pppppppuVar9 = (undefined4 *******)\n                       (**(code **)(pcStack_188 + -0x7080))\n                                 (pppppppuVar12,*pppppppuVar13,pppppppuVar13[1],1);\n        if (pppppppuVar9 != (undefined4 *******)0x0) {\n          iVar15 = (**(code **)(pcStack_188 + -0x7a20))(pppppppuVar9,ppppppuVar2);\n          if (iVar15 == 0) {\n            (**(code **)(pcStack_188 + -0x7964))(pppppppuVar9);\n            pppppppuVar9 = (undefined4 *******)0x0;\n          }\n          else {\n            pppppppuStack_194 = (undefined4 *******)-(int)pppppppuVar13[3];\n            ppppppuStack_198 = (undefined4 ******)-(int)pppppppuVar13[2];\n            ppppppuStack_190 = ppppppuVar2;\n            iVar15 = (**(code **)(pcStack_188 + -0x7bec))\n                               (pppppppuVar9,pppppppuVar12,pppppppuVar12[0x99],1);\n            if (iVar15 != 0) {\n              (**(code **)(pcStack_188 + -0x7d18))\n                        (pppppppuVar9,pppppppuVar12[6],pppppppuVar12[7],pppppppuVar13);\n            }\n          }\n        }\n        return pppppppuVar9;\n      }\n      goto LAB_001c951c;\n    }\n    goto LAB_001c953c;\n  }\n  pcVar21 = *(code **)(pcVar23 + -0x72a8);\n  pppppppuVar9 = (undefined4 *******)(*(int *)(pcVar23 + -0x7fc4) + -0x288c);\n  pcVar24 = FlipImage;\n  pppppppuVar13 = (undefined4 *******)(*(int *)(pcVar23 + -0x7fc8) + -0x3784);\n  (*pcVar21)(pppppppuVar13,pppppppuVar9,0x475,*(int *)(pcVar23 + -0x7fc4) + -0x26c8);\n  pcVar23 = pcVar21 + 0x1e7330;\n  piVar16 = *(int **)(pcVar21 + 0x1dfcb0);\n  iStack_1d4 = *piVar16;\n  pcStack_208 = pcVar23;\n  pppppppuStack_1d0 = pppppppuVar12;\n  pppppppuStack_1cc = param_1;\n  ppppppuStack_1c8 = unaff_s2;\n  pppppppuStack_1c4 = unaff_s3;\n  piStack_1c0 = piVar18;\n  pppppppuStack_1bc = unaff_s5;\n  pppppppuStack_1b8 = unaff_s6;\n  pppppppuStack_1b4 = unaff_s7;\n  pppppppuStack_1b0 = unaff_s8;\n  pcStack_1ac = pcVar24;\n  if (pppppppuVar13 == (undefined4 *******)0x0) {\n    (**(code **)(pcVar21 + 0x1e0088))\n              (*(int *)(pcVar21 + 0x1df368) + -0x37b0,*(int *)(pcVar21 + 0x1df36c) + -0x288c,0x4bc,\n               *(int *)(pcVar21 + 0x1df36c) + -0x26e0);\n    pppppppuVar9 = param_1;\nLAB_001c9944:\n    (**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fd0) + 0x1cac,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x4c0,\n               *(int *)(pcVar23 + -0x7fc4) + -0x26e0);\nLAB_001c9968:\n    (**(code **)(pcVar23 + -0x784c))();\n    pppppppuVar13 = unaff_s7;\nLAB_001c9974:\n    (**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fd0) + 0x294c,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x4c1,\n               *(int *)(pcVar23 + -0x7fc4) + -0x26e0);\n    pppppppuStack_244 = pppppppuVar9;\n  }\n  else {\n    pppppppuStack_244 = param_1;\n    if (pppppppuVar13[0xcdb] == (undefined4 ******)0xabacadab) {\n      if (pppppppuVar13[0xcd4] != (undefined4 ******)0x0) {\n        pppppppuStack_20c = pppppppuVar13 + 0xd0;\n        pppppppuStack_210 = (undefined4 *******)(*(int *)(pcVar21 + 0x1df364) + -0x62ac);\n        (**(code **)(pcVar21 + 0x1dfc60))\n                  (0x8000,*(int *)(pcVar21 + 0x1df36c) + -0x288c,\n                   *(int *)(pcVar21 + 0x1df36c) + -0x26ec,0x4bf);\n      }\n      unaff_s7 = pppppppuVar13;\n      pcVar23 = pcStack_208;\n      if (pppppppuVar9 == (undefined4 *******)0x0) goto LAB_001c9944;\n      if (pppppppuVar9[7] == (undefined4 ******)0xabacadab) {\n        pppppppuStack_210 = pppppppuVar9;\n        pppppppuVar12 =\n             (undefined4 *******)(**(code **)(pcStack_208 + -0x7080))(pppppppuVar13,0,0,1);\n        if (pppppppuVar12 != (undefined4 *******)0x0) {\n          ppppppuStack_1fc = pppppppuVar13[0x8c];\n          unaff_s8 = (undefined4 *******)pppppppuVar13[0x8a];\n          unaff_s2 = pppppppuVar13[0x8b];\n          unaff_s6 = (undefined4 *******)pppppppuVar13[0x8d];\n          uStack_1f4 = 0;\n          uStack_1f8 = 0;\n          piVar18 = (int *)(**(code **)(pcStack_208 + -0x715c))(pppppppuVar13,pppppppuVar9);\n          unaff_s5 = (undefined4 *******)\n                     (**(code **)(pcStack_208 + -0x79dc))(pppppppuVar12,pppppppuVar9);\n          iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13);\n          if (((iVar15 == 4) ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13), iVar15 == 3)) &&\n             ((iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 4 ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 3)))) {\n            (**(code **)(pcStack_208 + -0x7774))(7);\n            ppppppuVar2 = pppppppuVar12[7];\n            if ((int)ppppppuVar2 < 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_03 < (int)ppppppuVar2 + 0x3f >> 6) goto LAB_001c98d4;\nLAB_001c981c:\n              bVar1 = (int)ppppppuVar2 < 0x80;\n            }\n            else {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if ((int)ppppppuVar2 >> 6 <= extraout_v1_03) goto LAB_001c981c;\nLAB_001c98d4:\n              (*pcVar23)(7);\n              bVar1 = extraout_v1_05 < 2;\n            }\n            iVar15 = 1;\n            if ((bool)(bVar1 ^ 1)) {\n              (**(code **)(pcStack_208 + -0x7774))(7);\n              ppppppuVar2 = pppppppuVar12[7];\n              if ((int)ppppppuVar2 < 0) {\n                ppppppuVar2 = (undefined4 ******)((int)ppppppuVar2 + 0x3f);\n              }\n              iVar15 = (int)ppppppuVar2 >> 6;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_06 < iVar15) {\nLAB_001c98ac:\n                (*pcVar23)(7);\n                iVar15 = extraout_v1_04;\n              }\n              goto LAB_001c96d8;\n            }\n            iVar14 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          else {\n            uVar36 = (**(code **)(pcStack_208 + -0x7774))(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              uVar36 = (*pcVar23)(7);\n              if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c96c0;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              iVar15 = 1;\n            }\n            else {\nLAB_001c96c0:\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\nLAB_001c96c4:\n              uVar36 = (*pcVar23)(7);\n              if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n                 (pcVar23 = *(code **)(pcStack_208 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c98ac;\n              iVar15 = 2;\n            }\nLAB_001c96d8:\n            iVar14 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          puStack_1dc = &uStack_1f8;\n          pppppppuStack_1d8 = (undefined4 *******)0x1;\n          pppppppuStack_1f0 = pppppppuVar13;\n          pppppppuStack_1ec = pppppppuVar9;\n          pppppppuStack_1e8 = unaff_s5;\n          piStack_1e4 = piVar18;\n          pppppppuStack_1e0 = pppppppuVar12;\n          (**(code **)(pcStack_208 + -0x7718))(iVar14 + 0x56bc,&pppppppuStack_1f0,iVar15,0);\n          pppppppuVar9 = pppppppuStack_1d8;\n          (**(code **)(pcStack_208 + -0x79bc))(unaff_s5);\n          (**(code **)(pcStack_208 + -0x79bc))(piVar18);\n          pppppppuVar12[0xa8] = pppppppuVar13[0xa8];\n          if (unaff_s2 != (undefined4 ******)0x0) {\n            unaff_s6 = (undefined4 *******)\n                       ((int)unaff_s2 + (-(int)unaff_s6 - (int)pppppppuVar12[7]));\n          }\n          pppppppuVar12[0x8a] = unaff_s8;\n          pppppppuVar12[0x8b] = unaff_s2;\n          pppppppuVar12[0x8c] = ppppppuStack_1fc;\n          pppppppuVar12[0x8d] = unaff_s6;\n          if (pppppppuVar9 == (undefined4 *******)0x0) {\n            pppppppuVar12 = (undefined4 *******)(**(code **)(pcStack_208 + -0x7964))(pppppppuVar12);\n          }\n        }\n        pcVar23 = pcStack_208;\n        if (iStack_1d4 == *piVar16) {\n          return pppppppuVar12;\n        }\n        goto LAB_001c9968;\n      }\n      goto LAB_001c9974;\n    }\n  }\n  pcVar21 = *(code **)(pcVar23 + -0x72a8);\n  iVar14 = *(int *)(pcVar23 + -0x7fc4) + -0x288c;\n  pcVar24 = FlopImage;\n  iVar15 = *(int *)(pcVar23 + -0x7fc8) + -0x3784;\n  (*pcVar21)(iVar15,iVar14,0x4bd,*(int *)(pcVar23 + -0x7fc4) + -0x26e0);\n  piVar17 = *(int **)(pcVar21 + 0x1df874);\n  iStack_24c = *piVar17;\n  pppppppuStack_248 = pppppppuVar12;\n  ppppppuStack_240 = unaff_s2;\n  piStack_23c = piVar16;\n  piStack_238 = piVar18;\n  pppppppuStack_234 = unaff_s5;\n  pppppppuStack_230 = unaff_s6;\n  pppppppuStack_22c = pppppppuVar13;\n  pppppppuStack_228 = unaff_s8;\n  pcStack_224 = pcVar24;\n  if (iVar15 == 0) {\n    pppppppuVar9 = (undefined4 *******)\n                   (**(code **)(pcVar21 + 0x1dfc4c))\n                             (*(int *)(pcVar21 + 0x1def2c) + -0x37b0,\n                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x543,\n                              *(int *)(pcVar21 + 0x1def30) + -0x26f8);\n    return pppppppuVar9;\n  }\n  if (*(int *)(iVar15 + 0x336c) != -0x54535255) {\n    pppppppuVar9 = (undefined4 *******)\n                   (**(code **)(pcVar21 + 0x1dfc4c))\n                             (*(int *)(pcVar21 + 0x1def2c) + -0x3784,\n                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x544,\n                              *(int *)(pcVar21 + 0x1def30) + -0x26f8);\n    return pppppppuVar9;\n  }\n  if (*(int *)(iVar15 + 0x3350) != 0) {\n    (**(code **)(pcVar21 + 0x1df824))\n              (0x8000,*(int *)(pcVar21 + 0x1def30) + -0x288c,*(int *)(pcVar21 + 0x1def30) + -0x2704,\n               0x546,*(int *)(pcVar21 + 0x1def28) + -0x62ac,iVar15 + 0x340);\n  }\n  if (iVar14 == 0) {\n    pppppppuVar9 = (undefined4 *******)\n                   (**(code **)(pcVar21 + 0x1dfc4c))\n                             (*(int *)(pcVar21 + 0x1def24) + 0x1cac,\n                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x547,\n                              *(int *)(pcVar21 + 0x1def30) + -0x26f8);\n    return pppppppuVar9;\n  }\n  if (*(int *)(iVar14 + 0x1c) != -0x54535255) goto LAB_001c9db0;\n  pppppppuVar9 = (undefined4 *******)(**(code **)(pcVar21 + 0x1dfe74))(iVar15,0,0,1,iVar14);\n  if (pppppppuVar9 != (undefined4 *******)0x0) {\n    ppppppuVar2 = *(undefined4 *******)(iVar15 + 0x234);\n    ppppppuVar7 = *(undefined4 *******)(iVar15 + 0x228);\n    ppppppuVar22 = *(undefined4 *******)(iVar15 + 0x22c);\n    ppppppuVar19 = *(undefined4 *******)(iVar15 + 0x230);\n    uStack_26c = 0;\n    uStack_270 = 0;\n    uVar4 = (**(code **)(pcVar21 + 0x1dfd98))(iVar15,iVar14);\n    uVar5 = (**(code **)(pcVar21 + 0x1df518))(pppppppuVar9,iVar14);\n    iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(iVar15);\n    if (((iVar10 == 4) || (iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(iVar15), iVar10 == 3)) &&\n       ((iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(pppppppuVar9), iVar10 == 4 ||\n        (iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(pppppppuVar9), iVar10 == 3)))) {\n      (**(code **)(pcVar21 + 0x1df780))(7);\n      ppppppuVar6 = pppppppuVar9[7];\n      if ((int)ppppppuVar6 < 0) {\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (extraout_v1_07 < (int)ppppppuVar6 + 0x3f >> 6) goto LAB_001c9d10;\nLAB_001c9c58:\n        bVar1 = (int)ppppppuVar6 < 0x80;\n      }\n      else {\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if ((int)ppppppuVar6 >> 6 <= extraout_v1_07) goto LAB_001c9c58;\nLAB_001c9d10:\n        (*pcVar23)(7);\n        bVar1 = extraout_v1_09 < 2;\n      }\n      iVar10 = 1;\n      if ((bool)(bVar1 ^ 1)) {\n        (**(code **)(pcVar21 + 0x1df780))(7);\n        ppppppuVar6 = pppppppuVar9[7];\n        if ((int)ppppppuVar6 < 0) {\n          ppppppuVar6 = (undefined4 ******)((int)ppppppuVar6 + 0x3f);\n        }\n        iVar10 = (int)ppppppuVar6 >> 6;\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (extraout_v1_10 < iVar10) {\nLAB_001c9ce8:\n          (*pcVar23)(7);\n          iVar10 = extraout_v1_08;\n        }\n        goto LAB_001c9b14;\n      }\n      iVar11 = *(int *)(pcVar21 + 0x1defe4);\n    }\n    else {\n      uVar36 = (**(code **)(pcVar21 + 0x1df780))(7);\n      if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (1 < (uint)uVar36) goto LAB_001c9b00;\n        uVar36 = (*pcVar23)(7);\n        if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c9afc;\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (1 < (uint)uVar36) goto LAB_001c9b00;\n        iVar10 = 1;\n      }\n      else {\nLAB_001c9afc:\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\nLAB_001c9b00:\n        uVar36 = (*pcVar23)(7);\n        if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n           (pcVar23 = *(code **)(pcVar21 + 0x1df780), (uint)uVar36 < 2)) goto LAB_001c9ce8;\n        iVar10 = 2;\n      }\nLAB_001c9b14:\n      iVar11 = *(int *)(pcVar21 + 0x1defe4);\n    }\n    puStack_254 = &uStack_270;\n    iStack_250 = 1;\n    iStack_268 = iVar15;\n    iStack_264 = iVar14;\n    uStack_260 = uVar5;\n    uStack_25c = uVar4;\n    pppppppuStack_258 = pppppppuVar9;\n    (**(code **)(pcVar21 + 0x1df7dc))(iVar11 + 0x594c,&iStack_268,iVar10,0);\n    iVar14 = iStack_250;\n    (**(code **)(pcVar21 + 0x1df538))(uVar5);\n    (**(code **)(pcVar21 + 0x1df538))(uVar4);\n    pppppppuVar9[0xa8] = *(undefined4 *******)(iVar15 + 0x2a0);\n    if (ppppppuVar7 != (undefined4 ******)0x0) {\n      ppppppuVar19 = (undefined4 ******)\n                     ((int)ppppppuVar7 + (-(int)ppppppuVar19 - (int)pppppppuVar9[6]));\n    }\n    pppppppuVar9[0x8a] = ppppppuVar7;\n    pppppppuVar9[0x8b] = ppppppuVar22;\n    pppppppuVar9[0x8c] = ppppppuVar19;\n    pppppppuVar9[0x8d] = ppppppuVar2;\n    if (iVar14 == 0) {\n      pppppppuVar9 = (undefined4 *******)(**(code **)(pcVar21 + 0x1df590))(pppppppuVar9);\n    }\n  }\n  if (iStack_24c == *piVar17) {\n    return pppppppuVar9;\n  }\n  (**(code **)(pcVar21 + 0x1df6a8))();\nLAB_001c9db0:\n  pppppppuVar9 = (undefined4 *******)\n                 (**(code **)(pcVar21 + 0x1dfc4c))\n                           (*(int *)(pcVar21 + 0x1def24) + 0x294c,\n                            *(int *)(pcVar21 + 0x1def30) + -0x288c,0x548,\n                            *(int *)(pcVar21 + 0x1def30) + -0x26f8);\n  return pppppppuVar9;\n}" { (declaration "bool bVar1;" primitive_type identifier ;) (declaration "undefined4 ******ppppppuVar2;" type_identifier (pointer_declarator "******ppppppuVar2" * (pointer_declarator "*****ppppppuVar2" * (pointer_declarator "****ppppppuVar2" * (pointer_declarator "***ppppppuVar2" * (pointer_declarator "**ppppppuVar2" * (pointer_declarator "*ppppppuVar2" * identifier)))))) ;) (declaration "undefined *puVar3;" type_identifier (pointer_declarator "*puVar3" * identifier) ;) (declaration "undefined4 uVar4;" type_identifier identifier ;) (declaration "undefined4 uVar5;" type_identifier identifier ;) (declaration "undefined4 ******ppppppuVar6;" type_identifier (pointer_declarator "******ppppppuVar6" * (pointer_declarator "*****ppppppuVar6" * (pointer_declarator "****ppppppuVar6" * (pointer_declarator "***ppppppuVar6" * (pointer_declarator "**ppppppuVar6" * (pointer_declarator "*ppppppuVar6" * identifier)))))) ;) (declaration "undefined4 ******ppppppuVar7;" type_identifier (pointer_declarator "******ppppppuVar7" * (pointer_declarator "*****ppppppuVar7" * (pointer_declarator "****ppppppuVar7" * (pointer_declarator "***ppppppuVar7" * (pointer_declarator "**ppppppuVar7" * (pointer_declarator "*ppppppuVar7" * identifier)))))) ;) (declaration "int extraout_v1;" primitive_type identifier ;) (declaration "int extraout_v1_00;" primitive_type identifier ;) (declaration "int extraout_v1_01;" primitive_type identifier ;) (declaration "int extraout_v1_02;" primitive_type identifier ;) (declaration "int extraout_v1_03;" primitive_type identifier ;) (declaration "int extraout_v1_04;" primitive_type identifier ;) (declaration "int extraout_v1_05;" primitive_type identifier ;) (declaration "int extraout_v1_06;" primitive_type identifier ;) (declaration "int extraout_v1_07;" primitive_type identifier ;) (declaration "int extraout_v1_08;" primitive_type identifier ;) (declaration "int extraout_v1_09;" primitive_type identifier ;) (declaration "int extraout_v1_10;" primitive_type identifier ;) (declaration "undefined *puVar8;" type_identifier (pointer_declarator "*puVar8" * identifier) ;) (declaration "undefined4 *******pppppppuVar9;" type_identifier (pointer_declarator "*******pppppppuVar9" * (pointer_declarator "******pppppppuVar9" * (pointer_declarator "*****pppppppuVar9" * (pointer_declarator "****pppppppuVar9" * (pointer_declarator "***pppppppuVar9" * (pointer_declarator "**pppppppuVar9" * (pointer_declarator "*pppppppuVar9" * identifier))))))) ;) (declaration "int iVar10;" primitive_type identifier ;) (declaration "int iVar11;" primitive_type identifier ;) (declaration "undefined4 *******pppppppuVar12;" type_identifier (pointer_declarator "*******pppppppuVar12" * (pointer_declarator "******pppppppuVar12" * (pointer_declarator "*****pppppppuVar12" * (pointer_declarator "****pppppppuVar12" * (pointer_declarator "***pppppppuVar12" * (pointer_declarator "**pppppppuVar12" * (pointer_declarator "*pppppppuVar12" * identifier))))))) ;) (declaration "undefined4 *******pppppppuVar13;" type_identifier (pointer_declarator "*******pppppppuVar13" * (pointer_declarator "******pppppppuVar13" * (pointer_declarator "*****pppppppuVar13" * (pointer_declarator "****pppppppuVar13" * (pointer_declarator "***pppppppuVar13" * (pointer_declarator "**pppppppuVar13" * (pointer_declarator "*pppppppuVar13" * identifier))))))) ;) (declaration "int iVar14;" primitive_type identifier ;) (declaration "int iVar15;" primitive_type identifier ;) (declaration "undefined4 *******unaff_s0;" type_identifier (pointer_declarator "*******unaff_s0" * (pointer_declarator "******unaff_s0" * (pointer_declarator "*****unaff_s0" * (pointer_declarator "****unaff_s0" * (pointer_declarator "***unaff_s0" * (pointer_declarator "**unaff_s0" * (pointer_declarator "*unaff_s0" * identifier))))))) ;) (declaration "undefined4 *******unaff_s1;" type_identifier (pointer_declarator "*******unaff_s1" * (pointer_declarator "******unaff_s1" * (pointer_declarator "*****unaff_s1" * (pointer_declarator "****unaff_s1" * (pointer_declarator "***unaff_s1" * (pointer_declarator "**unaff_s1" * (pointer_declarator "*unaff_s1" * identifier))))))) ;) (declaration "undefined4 ******unaff_s2;" type_identifier (pointer_declarator "******unaff_s2" * (pointer_declarator "*****unaff_s2" * (pointer_declarator "****unaff_s2" * (pointer_declarator "***unaff_s2" * (pointer_declarator "**unaff_s2" * (pointer_declarator "*unaff_s2" * identifier)))))) ;) (declaration "undefined4 *******unaff_s3;" type_identifier (pointer_declarator "*******unaff_s3" * (pointer_declarator "******unaff_s3" * (pointer_declarator "*****unaff_s3" * (pointer_declarator "****unaff_s3" * (pointer_declarator "***unaff_s3" * (pointer_declarator "**unaff_s3" * (pointer_declarator "*unaff_s3" * identifier))))))) ;) (declaration "int *piVar16;" primitive_type (pointer_declarator "*piVar16" * identifier) ;) (declaration "int *piVar17;" primitive_type (pointer_declarator "*piVar17" * identifier) ;) (declaration "undefined4 ******unaff_s4;" type_identifier (pointer_declarator "******unaff_s4" * (pointer_declarator "*****unaff_s4" * (pointer_declarator "****unaff_s4" * (pointer_declarator "***unaff_s4" * (pointer_declarator "**unaff_s4" * (pointer_declarator "*unaff_s4" * identifier)))))) ;) (declaration "int *piVar18;" primitive_type (pointer_declarator "*piVar18" * identifier) ;) (declaration "undefined4 *******unaff_s5;" type_identifier (pointer_declarator "*******unaff_s5" * (pointer_declarator "******unaff_s5" * (pointer_declarator "*****unaff_s5" * (pointer_declarator "****unaff_s5" * (pointer_declarator "***unaff_s5" * (pointer_declarator "**unaff_s5" * (pointer_declarator "*unaff_s5" * identifier))))))) ;) (declaration "undefined4 *******unaff_s6;" type_identifier (pointer_declarator "*******unaff_s6" * (pointer_declarator "******unaff_s6" * (pointer_declarator "*****unaff_s6" * (pointer_declarator "****unaff_s6" * (pointer_declarator "***unaff_s6" * (pointer_declarator "**unaff_s6" * (pointer_declarator "*unaff_s6" * identifier))))))) ;) (declaration "undefined4 ******ppppppuVar19;" type_identifier (pointer_declarator "******ppppppuVar19" * (pointer_declarator "*****ppppppuVar19" * (pointer_declarator "****ppppppuVar19" * (pointer_declarator "***ppppppuVar19" * (pointer_declarator "**ppppppuVar19" * (pointer_declarator "*ppppppuVar19" * identifier)))))) ;) (declaration "undefined4 *******unaff_s7;" type_identifier (pointer_declarator "*******unaff_s7" * (pointer_declarator "******unaff_s7" * (pointer_declarator "*****unaff_s7" * (pointer_declarator "****unaff_s7" * (pointer_declarator "***unaff_s7" * (pointer_declarator "**unaff_s7" * (pointer_declarator "*unaff_s7" * identifier))))))) ;) (declaration "undefined *puVar20;" type_identifier (pointer_declarator "*puVar20" * identifier) ;) (declaration "code *pcVar21;" type_identifier (pointer_declarator "*pcVar21" * identifier) ;) (declaration "undefined4 *******unaff_s8;" type_identifier (pointer_declarator "*******unaff_s8" * (pointer_declarator "******unaff_s8" * (pointer_declarator "*****unaff_s8" * (pointer_declarator "****unaff_s8" * (pointer_declarator "***unaff_s8" * (pointer_declarator "**unaff_s8" * (pointer_declarator "*unaff_s8" * identifier))))))) ;) (declaration "undefined4 ******ppppppuVar22;" type_identifier (pointer_declarator "******ppppppuVar22" * (pointer_declarator "*****ppppppuVar22" * (pointer_declarator "****ppppppuVar22" * (pointer_declarator "***ppppppuVar22" * (pointer_declarator "**ppppppuVar22" * (pointer_declarator "*ppppppuVar22" * identifier)))))) ;) (declaration "code *pcVar23;" type_identifier (pointer_declarator "*pcVar23" * identifier) ;) (declaration "code *pcVar24;" type_identifier (pointer_declarator "*pcVar24" * identifier) ;) (declaration "double dVar25;" primitive_type identifier ;) (declaration "double dVar26;" primitive_type identifier ;) (declaration "double dVar27;" primitive_type identifier ;) (declaration "double dVar28;" primitive_type identifier ;) (declaration "double dVar29;" primitive_type identifier ;) (declaration "double dVar30;" primitive_type identifier ;) (declaration "double dVar31;" primitive_type identifier ;) (declaration "double dVar32;" primitive_type identifier ;) (declaration "double dVar33;" primitive_type identifier ;) (declaration "double dVar34;" primitive_type identifier ;) (declaration "double dVar35;" primitive_type identifier ;) (declaration "undefined8 uVar36;" type_identifier identifier ;) (declaration "undefined4 uStack_270;" type_identifier identifier ;) (declaration "undefined4 uStack_26c;" type_identifier identifier ;) (declaration "int iStack_268;" primitive_type identifier ;) (declaration "int iStack_264;" primitive_type identifier ;) (declaration "undefined4 uStack_260;" type_identifier identifier ;) (declaration "undefined4 uStack_25c;" type_identifier identifier ;) (declaration "undefined4 *******pppppppuStack_258;" type_identifier (pointer_declarator "*******pppppppuStack_258" * (pointer_declarator "******pppppppuStack_258" * (pointer_declarator "*****pppppppuStack_258" * (pointer_declarator "****pppppppuStack_258" * (pointer_declarator "***pppppppuStack_258" * (pointer_declarator "**pppppppuStack_258" * (pointer_declarator "*pppppppuStack_258" * identifier))))))) ;) (declaration "undefined4 *puStack_254;" type_identifier (pointer_declarator "*puStack_254" * identifier) ;) (declaration "int iStack_250;" primitive_type identifier ;) (declaration "int iStack_24c;" primitive_type identifier ;) (declaration "undefined4 *******pppppppuStack_248;" type_identifier (pointer_declarator "*******pppppppuStack_248" * (pointer_declarator "******pppppppuStack_248" * (pointer_declarator "*****pppppppuStack_248" * (pointer_declarator "****pppppppuStack_248" * (pointer_declarator "***pppppppuStack_248" * (pointer_declarator "**pppppppuStack_248" * (pointer_declarator "*pppppppuStack_248" * identifier))))))) ;) (declaration "undefined4 *******pppppppuStack_244;" type_identifier (pointer_declarator "*******pppppppuStack_244" * (pointer_declarator "******pppppppuStack_244" * (pointer_declarator "*****pppppppuStack_244" * (pointer_declarator "****pppppppuStack_244" * (pointer_declarator "***pppppppuStack_244" * (pointer_declarator "**pppppppuStack_244" * (pointer_declarator "*pppppppuStack_244" * identifier))))))) ;) (declaration "undefined4 ******ppppppuStack_240;" type_identifier (pointer_declarator "******ppppppuStack_240" * (pointer_declarator "*****ppppppuStack_240" * (pointer_declarator "****ppppppuStack_240" * (pointer_declarator "***ppppppuStack_240" * (pointer_declarator "**ppppppuStack_240" * (pointer_declarator "*ppppppuStack_240" * identifier)))))) ;) (declaration "int *piStack_23c;" primitive_type (pointer_declarator "*piStack_23c" * identifier) ;) (declaration "int *piStack_238;" primitive_type (pointer_declarator "*piStack_238" * identifier) ;) (declaration "undefined4 *******pppppppuStack_234;" type_identifier (pointer_declarator "*******pppppppuStack_234" * (pointer_declarator "******pppppppuStack_234" * (pointer_declarator "*****pppppppuStack_234" * (pointer_declarator "****pppppppuStack_234" * (pointer_declarator "***pppppppuStack_234" * (pointer_declarator "**pppppppuStack_234" * (pointer_declarator "*pppppppuStack_234" * identifier))))))) ;) (declaration "undefined4 *******pppppppuStack_230;" type_identifier (pointer_declarator "*******pppppppuStack_230" * (pointer_declarator "******pppppppuStack_230" * (pointer_declarator "*****pppppppuStack_230" * (pointer_declarator "****pppppppuStack_230" * (pointer_declarator "***pppppppuStack_230" * (pointer_declarator "**pppppppuStack_230" * (pointer_declarator "*pppppppuStack_230" * identifier))))))) ;) (declaration "undefined4 *******pppppppuStack_22c;" type_identifier (pointer_declarator "*******pppppppuStack_22c" * (pointer_declarator "******pppppppuStack_22c" * (pointer_declarator "*****pppppppuStack_22c" * (pointer_declarator "****pppppppuStack_22c" * (pointer_declarator "***pppppppuStack_22c" * (pointer_declarator "**pppppppuStack_22c" * (pointer_declarator "*pppppppuStack_22c" * identifier))))))) ;) (declaration "undefined4 *******pppppppuStack_228;" type_identifier (pointer_declarator "*******pppppppuStack_228" * (pointer_declarator "******pppppppuStack_228" * (pointer_declarator "*****pppppppuStack_228" * (pointer_declarator "****pppppppuStack_228" * (pointer_declarator "***pppppppuStack_228" * (pointer_declarator "**pppppppuStack_228" * (pointer_declarator "*pppppppuStack_228" * identifier))))))) ;) (declaration "code *pcStack_224;" type_identifier (pointer_declarator "*pcStack_224" * identifier) ;) (declaration "undefined4 *******pppppppuStack_210;" type_identifier (pointer_declarator "*******pppppppuStack_210" * (pointer_declarator "******pppppppuStack_210" * (pointer_declarator "*****pppppppuStack_210" * (pointer_declarator "****pppppppuStack_210" * (pointer_declarator "***pppppppuStack_210" * (pointer_declarator "**pppppppuStack_210" * (pointer_declarator "*pppppppuStack_210" * identifier))))))) ;) (declaration "undefined4 *******pppppppuStack_20c;" type_identifier (pointer_declarator "*******pppppppuStack_20c" * (pointer_declarator "******pppppppuStack_20c" * (pointer_declarator "*****pppppppuStack_20c" * (pointer_declarator "****pppppppuStack_20c" * (pointer_declarator "***pppppppuStack_20c" * (pointer_declarator "**pppppppuStack_20c" * (pointer_declarator "*pppppppuStack_20c" * identifier))))))) ;) (declaration "code *pcStack_208;" type_identifier (pointer_declarator "*pcStack_208" * identifier) ;) (declaration "undefined4 ******ppppppuStack_1fc;" type_identifier (pointer_declarator "******ppppppuStack_1fc" * (pointer_declarator "*****ppppppuStack_1fc" * (pointer_declarator "****ppppppuStack_1fc" * (pointer_declarator "***ppppppuStack_1fc" * (pointer_declarator "**ppppppuStack_1fc" * (pointer_declarator "*ppppppuStack_1fc" * identifier)))))) ;) (declaration "undefined4 uStack_1f8;" type_identifier identifier ;) (declaration "undefined4 uStack_1f4;" type_identifier identifier ;) (declaration "undefined4 *******pppppppuStack_1f0;" type_identifier (pointer_declarator "*******pppppppuStack_1f0" * (pointer_declarator "******pppppppuStack_1f0" * (pointer_declarator "*****pppppppuStack_1f0" * (pointer_declarator "****pppppppuStack_1f0" * (pointer_declarator "***pppppppuStack_1f0" * (pointer_declarator "**pppppppuStack_1f0" * (pointer_declarator "*pppppppuStack_1f0" * identifier))))))) ;) (declaration "undefined4 *******pppppppuStack_1ec;" type_identifier (pointer_declarator "*******pppppppuStack_1ec" * (pointer_declarator "******pppppppuStack_1ec" * (pointer_declarator "*****pppppppuStack_1ec" * (pointer_declarator "****pppppppuStack_1ec" * (pointer_declarator "***pppppppuStack_1ec" * (pointer_declarator "**pppppppuStack_1ec" * (pointer_declarator "*pppppppuStack_1ec" * identifier))))))) ;) (declaration "undefined4 *******pppppppuStack_1e8;" type_identifier (pointer_declarator "*******pppppppuStack_1e8" * (pointer_declarator "******pppppppuStack_1e8" * (pointer_declarator "*****pppppppuStack_1e8" * (pointer_declarator "****pppppppuStack_1e8" * (pointer_declarator "***pppppppuStack_1e8" * (pointer_declarator "**pppppppuStack_1e8" * (pointer_declarator "*pppppppuStack_1e8" * identifier))))))) ;) (declaration "int *piStack_1e4;" primitive_type (pointer_declarator "*piStack_1e4" * identifier) ;) (declaration "undefined4 *******pppppppuStack_1e0;" type_identifier (pointer_declarator "*******pppppppuStack_1e0" * (pointer_declarator "******pppppppuStack_1e0" * (pointer_declarator "*****pppppppuStack_1e0" * (pointer_declarator "****pppppppuStack_1e0" * (pointer_declarator "***pppppppuStack_1e0" * (pointer_declarator "**pppppppuStack_1e0" * (pointer_declarator "*pppppppuStack_1e0" * identifier))))))) ;) (declaration "undefined4 *puStack_1dc;" type_identifier (pointer_declarator "*puStack_1dc" * identifier) ;) (declaration "undefined4 *******pppppppuStack_1d8;" type_identifier (pointer_declarator "*******pppppppuStack_1d8" * (pointer_declarator "******pppppppuStack_1d8" * (pointer_declarator "*****pppppppuStack_1d8" * (pointer_declarator "****pppppppuStack_1d8" * (pointer_declarator "***pppppppuStack_1d8" * (pointer_declarator "**pppppppuStack_1d8" * (pointer_declarator "*pppppppuStack_1d8" * identifier))))))) ;) (declaration "int iStack_1d4;" primitive_type identifier ;) (declaration "undefined4 *******pppppppuStack_1d0;" type_identifier (pointer_declarator "*******pppppppuStack_1d0" * (pointer_declarator "******pppppppuStack_1d0" * (pointer_declarator "*****pppppppuStack_1d0" * (pointer_declarator "****pppppppuStack_1d0" * (pointer_declarator "***pppppppuStack_1d0" * (pointer_declarator "**pppppppuStack_1d0" * (pointer_declarator "*pppppppuStack_1d0" * identifier))))))) ;) (declaration "undefined4 *******pppppppuStack_1cc;" type_identifier (pointer_declarator "*******pppppppuStack_1cc" * (pointer_declarator "******pppppppuStack_1cc" * (pointer_declarator "*****pppppppuStack_1cc" * (pointer_declarator "****pppppppuStack_1cc" * (pointer_declarator "***pppppppuStack_1cc" * (pointer_declarator "**pppppppuStack_1cc" * (pointer_declarator "*pppppppuStack_1cc" * identifier))))))) ;) (declaration "undefined4 ******ppppppuStack_1c8;" type_identifier (pointer_declarator "******ppppppuStack_1c8" * (pointer_declarator "*****ppppppuStack_1c8" * (pointer_declarator "****ppppppuStack_1c8" * (pointer_declarator "***ppppppuStack_1c8" * (pointer_declarator "**ppppppuStack_1c8" * (pointer_declarator "*ppppppuStack_1c8" * identifier)))))) ;) (declaration "undefined4 *******pppppppuStack_1c4;" type_identifier (pointer_declarator "*******pppppppuStack_1c4" * (pointer_declarator "******pppppppuStack_1c4" * (pointer_declarator "*****pppppppuStack_1c4" * (pointer_declarator "****pppppppuStack_1c4" * (pointer_declarator "***pppppppuStack_1c4" * (pointer_declarator "**pppppppuStack_1c4" * (pointer_declarator "*pppppppuStack_1c4" * identifier))))))) ;) (declaration "int *piStack_1c0;" primitive_type (pointer_declarator "*piStack_1c0" * identifier) ;) (declaration "undefined4 *******pppppppuStack_1bc;" type_identifier (pointer_declarator "*******pppppppuStack_1bc" * (pointer_declarator "******pppppppuStack_1bc" * (pointer_declarator "*****pppppppuStack_1bc" * (pointer_declarator "****pppppppuStack_1bc" * (pointer_declarator "***pppppppuStack_1bc" * (pointer_declarator "**pppppppuStack_1bc" * (pointer_declarator "*pppppppuStack_1bc" * identifier))))))) ;) (declaration "undefined4 *******pppppppuStack_1b8;" type_identifier (pointer_declarator "*******pppppppuStack_1b8" * (pointer_declarator "******pppppppuStack_1b8" * (pointer_declarator "*****pppppppuStack_1b8" * (pointer_declarator "****pppppppuStack_1b8" * (pointer_declarator "***pppppppuStack_1b8" * (pointer_declarator "**pppppppuStack_1b8" * (pointer_declarator "*pppppppuStack_1b8" * identifier))))))) ;) (declaration "undefined4 *******pppppppuStack_1b4;" type_identifier (pointer_declarator "*******pppppppuStack_1b4" * (pointer_declarator "******pppppppuStack_1b4" * (pointer_declarator "*****pppppppuStack_1b4" * (pointer_declarator "****pppppppuStack_1b4" * (pointer_declarator "***pppppppuStack_1b4" * (pointer_declarator "**pppppppuStack_1b4" * (pointer_declarator "*pppppppuStack_1b4" * identifier))))))) ;) (declaration "undefined4 *******pppppppuStack_1b0;" type_identifier (pointer_declarator "*******pppppppuStack_1b0" * (pointer_declarator "******pppppppuStack_1b0" * (pointer_declarator "*****pppppppuStack_1b0" * (pointer_declarator "****pppppppuStack_1b0" * (pointer_declarator "***pppppppuStack_1b0" * (pointer_declarator "**pppppppuStack_1b0" * (pointer_declarator "*pppppppuStack_1b0" * identifier))))))) ;) (declaration "code *pcStack_1ac;" type_identifier (pointer_declarator "*pcStack_1ac" * identifier) ;) (declaration "undefined4 ******ppppppuStack_198;" type_identifier (pointer_declarator "******ppppppuStack_198" * (pointer_declarator "*****ppppppuStack_198" * (pointer_declarator "****ppppppuStack_198" * (pointer_declarator "***ppppppuStack_198" * (pointer_declarator "**ppppppuStack_198" * (pointer_declarator "*ppppppuStack_198" * identifier)))))) ;) (declaration "undefined4 *******pppppppuStack_194;" type_identifier (pointer_declarator "*******pppppppuStack_194" * (pointer_declarator "******pppppppuStack_194" * (pointer_declarator "*****pppppppuStack_194" * (pointer_declarator "****pppppppuStack_194" * (pointer_declarator "***pppppppuStack_194" * (pointer_declarator "**pppppppuStack_194" * (pointer_declarator "*pppppppuStack_194" * identifier))))))) ;) (declaration "undefined4 ******ppppppuStack_190;" type_identifier (pointer_declarator "******ppppppuStack_190" * (pointer_declarator "*****ppppppuStack_190" * (pointer_declarator "****ppppppuStack_190" * (pointer_declarator "***ppppppuStack_190" * (pointer_declarator "**ppppppuStack_190" * (pointer_declarator "*ppppppuStack_190" * identifier)))))) ;) (declaration "code *pcStack_188;" type_identifier (pointer_declarator "*pcStack_188" * identifier) ;) (declaration "undefined4 *******pppppppuStack_17c;" type_identifier (pointer_declarator "*******pppppppuStack_17c" * (pointer_declarator "******pppppppuStack_17c" * (pointer_declarator "*****pppppppuStack_17c" * (pointer_declarator "****pppppppuStack_17c" * (pointer_declarator "***pppppppuStack_17c" * (pointer_declarator "**pppppppuStack_17c" * (pointer_declarator "*pppppppuStack_17c" * identifier))))))) ;) (declaration "undefined4 *******pppppppuStack_178;" type_identifier (pointer_declarator "*******pppppppuStack_178" * (pointer_declarator "******pppppppuStack_178" * (pointer_declarator "*****pppppppuStack_178" * (pointer_declarator "****pppppppuStack_178" * (pointer_declarator "***pppppppuStack_178" * (pointer_declarator "**pppppppuStack_178" * (pointer_declarator "*pppppppuStack_178" * identifier))))))) ;) (declaration "undefined4 ******ppppppuStack_174;" type_identifier (pointer_declarator "******ppppppuStack_174" * (pointer_declarator "*****ppppppuStack_174" * (pointer_declarator "****ppppppuStack_174" * (pointer_declarator "***ppppppuStack_174" * (pointer_declarator "**ppppppuStack_174" * (pointer_declarator "*ppppppuStack_174" * identifier)))))) ;) (declaration "undefined4 *******pppppppuStack_170;" type_identifier (pointer_declarator "*******pppppppuStack_170" * (pointer_declarator "******pppppppuStack_170" * (pointer_declarator "*****pppppppuStack_170" * (pointer_declarator "****pppppppuStack_170" * (pointer_declarator "***pppppppuStack_170" * (pointer_declarator "**pppppppuStack_170" * (pointer_declarator "*pppppppuStack_170" * identifier))))))) ;) (declaration "code *pcStack_16c;" type_identifier (pointer_declarator "*pcStack_16c" * identifier) ;) (declaration "undefined4 ******ppppppuStack_158;" type_identifier (pointer_declarator "******ppppppuStack_158" * (pointer_declarator "*****ppppppuStack_158" * (pointer_declarator "****ppppppuStack_158" * (pointer_declarator "***ppppppuStack_158" * (pointer_declarator "**ppppppuStack_158" * (pointer_declarator "*ppppppuStack_158" * identifier)))))) ;) (declaration "undefined4 *******pppppppuStack_154;" type_identifier (pointer_declarator "*******pppppppuStack_154" * (pointer_declarator "******pppppppuStack_154" * (pointer_declarator "*****pppppppuStack_154" * (pointer_declarator "****pppppppuStack_154" * (pointer_declarator "***pppppppuStack_154" * (pointer_declarator "**pppppppuStack_154" * (pointer_declarator "*pppppppuStack_154" * identifier))))))) ;) (declaration "undefined *puStack_150;" type_identifier (pointer_declarator "*puStack_150" * identifier) ;) (declaration "undefined4 uStack_148;" type_identifier identifier ;) (declaration "undefined4 uStack_144;" type_identifier identifier ;) (declaration "undefined4 *******pppppppuStack_13c;" type_identifier (pointer_declarator "*******pppppppuStack_13c" * (pointer_declarator "******pppppppuStack_13c" * (pointer_declarator "*****pppppppuStack_13c" * (pointer_declarator "****pppppppuStack_13c" * (pointer_declarator "***pppppppuStack_13c" * (pointer_declarator "**pppppppuStack_13c" * (pointer_declarator "*pppppppuStack_13c" * identifier))))))) ;) (declaration "undefined4 *******pppppppuStack_138;" type_identifier (pointer_declarator "*******pppppppuStack_138" * (pointer_declarator "******pppppppuStack_138" * (pointer_declarator "*****pppppppuStack_138" * (pointer_declarator "****pppppppuStack_138" * (pointer_declarator "***pppppppuStack_138" * (pointer_declarator "**pppppppuStack_138" * (pointer_declarator "*pppppppuStack_138" * identifier))))))) ;) (declaration "undefined4 ******ppppppuStack_134;" type_identifier (pointer_declarator "******ppppppuStack_134" * (pointer_declarator "*****ppppppuStack_134" * (pointer_declarator "****ppppppuStack_134" * (pointer_declarator "***ppppppuStack_134" * (pointer_declarator "**ppppppuStack_134" * (pointer_declarator "*ppppppuStack_134" * identifier)))))) ;) (declaration "undefined4 *******pppppppuStack_130;" type_identifier (pointer_declarator "*******pppppppuStack_130" * (pointer_declarator "******pppppppuStack_130" * (pointer_declarator "*****pppppppuStack_130" * (pointer_declarator "****pppppppuStack_130" * (pointer_declarator "***pppppppuStack_130" * (pointer_declarator "**pppppppuStack_130" * (pointer_declarator "*pppppppuStack_130" * identifier))))))) ;) (declaration "undefined4 *******pppppppuStack_12c;" type_identifier (pointer_declarator "*******pppppppuStack_12c" * (pointer_declarator "******pppppppuStack_12c" * (pointer_declarator "*****pppppppuStack_12c" * (pointer_declarator "****pppppppuStack_12c" * (pointer_declarator "***pppppppuStack_12c" * (pointer_declarator "**pppppppuStack_12c" * (pointer_declarator "*pppppppuStack_12c" * identifier))))))) ;) (declaration "undefined4 *******pppppppuStack_128;" type_identifier (pointer_declarator "*******pppppppuStack_128" * (pointer_declarator "******pppppppuStack_128" * (pointer_declarator "*****pppppppuStack_128" * (pointer_declarator "****pppppppuStack_128" * (pointer_declarator "***pppppppuStack_128" * (pointer_declarator "**pppppppuStack_128" * (pointer_declarator "*pppppppuStack_128" * identifier))))))) ;) (declaration "undefined4 ******ppppppuStack_124;" type_identifier (pointer_declarator "******ppppppuStack_124" * (pointer_declarator "*****ppppppuStack_124" * (pointer_declarator "****ppppppuStack_124" * (pointer_declarator "***ppppppuStack_124" * (pointer_declarator "**ppppppuStack_124" * (pointer_declarator "*ppppppuStack_124" * identifier)))))) ;) (declaration "undefined4 *puStack_120;" type_identifier (pointer_declarator "*puStack_120" * identifier) ;) (declaration "int iStack_11c;" primitive_type identifier ;) (declaration "undefined4 *******pppppppuStack_118;" type_identifier (pointer_declarator "*******pppppppuStack_118" * (pointer_declarator "******pppppppuStack_118" * (pointer_declarator "*****pppppppuStack_118" * (pointer_declarator "****pppppppuStack_118" * (pointer_declarator "***pppppppuStack_118" * (pointer_declarator "**pppppppuStack_118" * (pointer_declarator "*pppppppuStack_118" * identifier))))))) ;) (declaration "undefined4 *******pppppppuStack_114;" type_identifier (pointer_declarator "*******pppppppuStack_114" * (pointer_declarator "******pppppppuStack_114" * (pointer_declarator "*****pppppppuStack_114" * (pointer_declarator "****pppppppuStack_114" * (pointer_declarator "***pppppppuStack_114" * (pointer_declarator "**pppppppuStack_114" * (pointer_declarator "*pppppppuStack_114" * identifier))))))) ;) (declaration "undefined4 ******ppppppuStack_110;" type_identifier (pointer_declarator "******ppppppuStack_110" * (pointer_declarator "*****ppppppuStack_110" * (pointer_declarator "****ppppppuStack_110" * (pointer_declarator "***ppppppuStack_110" * (pointer_declarator "**ppppppuStack_110" * (pointer_declarator "*ppppppuStack_110" * identifier)))))) ;) (declaration "undefined4 *******pppppppuStack_10c;" type_identifier (pointer_declarator "*******pppppppuStack_10c" * (pointer_declarator "******pppppppuStack_10c" * (pointer_declarator "*****pppppppuStack_10c" * (pointer_declarator "****pppppppuStack_10c" * (pointer_declarator "***pppppppuStack_10c" * (pointer_declarator "**pppppppuStack_10c" * (pointer_declarator "*pppppppuStack_10c" * identifier))))))) ;) (declaration "undefined4 ******ppppppuStack_108;" type_identifier (pointer_declarator "******ppppppuStack_108" * (pointer_declarator "*****ppppppuStack_108" * (pointer_declarator "****ppppppuStack_108" * (pointer_declarator "***ppppppuStack_108" * (pointer_declarator "**ppppppuStack_108" * (pointer_declarator "*ppppppuStack_108" * identifier)))))) ;) (declaration "undefined4 *******pppppppuStack_104;" type_identifier (pointer_declarator "*******pppppppuStack_104" * (pointer_declarator "******pppppppuStack_104" * (pointer_declarator "*****pppppppuStack_104" * (pointer_declarator "****pppppppuStack_104" * (pointer_declarator "***pppppppuStack_104" * (pointer_declarator "**pppppppuStack_104" * (pointer_declarator "*pppppppuStack_104" * identifier))))))) ;) (declaration "undefined4 *******pppppppuStack_100;" type_identifier (pointer_declarator "*******pppppppuStack_100" * (pointer_declarator "******pppppppuStack_100" * (pointer_declarator "*****pppppppuStack_100" * (pointer_declarator "****pppppppuStack_100" * (pointer_declarator "***pppppppuStack_100" * (pointer_declarator "**pppppppuStack_100" * (pointer_declarator "*pppppppuStack_100" * identifier))))))) ;) (declaration "code *pcStack_fc;" type_identifier (pointer_declarator "*pcStack_fc" * identifier) ;) (declaration "undefined4 ******local_e8;" type_identifier (pointer_declarator "******local_e8" * (pointer_declarator "*****local_e8" * (pointer_declarator "****local_e8" * (pointer_declarator "***local_e8" * (pointer_declarator "**local_e8" * (pointer_declarator "*local_e8" * identifier)))))) ;) (declaration "undefined4 *******local_e4;" type_identifier (pointer_declarator "*******local_e4" * (pointer_declarator "******local_e4" * (pointer_declarator "*****local_e4" * (pointer_declarator "****local_e4" * (pointer_declarator "***local_e4" * (pointer_declarator "**local_e4" * (pointer_declarator "*local_e4" * identifier))))))) ;) (declaration "double local_c8;" primitive_type identifier ;) (declaration "double local_a0;" primitive_type identifier ;) (declaration "undefined4 *******local_80;" type_identifier (pointer_declarator "*******local_80" * (pointer_declarator "******local_80" * (pointer_declarator "*****local_80" * (pointer_declarator "****local_80" * (pointer_declarator "***local_80" * (pointer_declarator "**local_80" * (pointer_declarator "*local_80" * identifier))))))) ;) (declaration "undefined4 *******local_7c;" type_identifier (pointer_declarator "*******local_7c" * (pointer_declarator "******local_7c" * (pointer_declarator "*****local_7c" * (pointer_declarator "****local_7c" * (pointer_declarator "***local_7c" * (pointer_declarator "**local_7c" * (pointer_declarator "*local_7c" * identifier))))))) ;) (declaration "undefined4 ******local_78;" type_identifier (pointer_declarator "******local_78" * (pointer_declarator "*****local_78" * (pointer_declarator "****local_78" * (pointer_declarator "***local_78" * (pointer_declarator "**local_78" * (pointer_declarator "*local_78" * identifier)))))) ;) (declaration "undefined4 *******local_74;" type_identifier (pointer_declarator "*******local_74" * (pointer_declarator "******local_74" * (pointer_declarator "*****local_74" * (pointer_declarator "****local_74" * (pointer_declarator "***local_74" * (pointer_declarator "**local_74" * (pointer_declarator "*local_74" * identifier))))))) ;) (declaration "undefined4 *******local_70;" type_identifier (pointer_declarator "*******local_70" * (pointer_declarator "******local_70" * (pointer_declarator "*****local_70" * (pointer_declarator "****local_70" * (pointer_declarator "***local_70" * (pointer_declarator "**local_70" * (pointer_declarator "*local_70" * identifier))))))) ;) (declaration "undefined4 *******local_6c;" type_identifier (pointer_declarator "*******local_6c" * (pointer_declarator "******local_6c" * (pointer_declarator "*****local_6c" * (pointer_declarator "****local_6c" * (pointer_declarator "***local_6c" * (pointer_declarator "**local_6c" * (pointer_declarator "*local_6c" * identifier))))))) ;) (declaration "undefined4 *******local_68;" type_identifier (pointer_declarator "*******local_68" * (pointer_declarator "******local_68" * (pointer_declarator "*****local_68" * (pointer_declarator "****local_68" * (pointer_declarator "***local_68" * (pointer_declarator "**local_68" * (pointer_declarator "*local_68" * identifier))))))) ;) (declaration "undefined4 *******local_64;" type_identifier (pointer_declarator "*******local_64" * (pointer_declarator "******local_64" * (pointer_declarator "*****local_64" * (pointer_declarator "****local_64" * (pointer_declarator "***local_64" * (pointer_declarator "**local_64" * (pointer_declarator "*local_64" * identifier))))))) ;) (declaration "undefined4 *******local_60;" type_identifier (pointer_declarator "*******local_60" * (pointer_declarator "******local_60" * (pointer_declarator "*****local_60" * (pointer_declarator "****local_60" * (pointer_declarator "***local_60" * (pointer_declarator "**local_60" * (pointer_declarator "*local_60" * identifier))))))) ;) (declaration "int local_5c;" primitive_type identifier ;) (expression_statement "puVar20 = PTR___stack_chk_guard_003a9230;" (assignment_expression "puVar20 = PTR___stack_chk_guard_003a9230" identifier = identifier) ;) (expression_statement "local_5c = *(int *)PTR___stack_chk_guard_003a9230;" (assignment_expression "local_5c = *(int *)PTR___stack_chk_guard_003a9230" identifier = (pointer_expression "*(int *)PTR___stack_chk_guard_003a9230" * (cast_expression "(int *)PTR___stack_chk_guard_003a9230" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;) (if_statement "if (param_1 == (undefined4 *******)0x0) {\nLAB_001c8ef8:\n    param_1 = unaff_s1;\n    (*(code *)PTR___assert_fail_003a9608)\n              (PTR_LAB_003a88e0 + 0xdd0,PTR_s_courses_003a88ec + -0x288c,0x322,\n               PTR_s_courses_003a88ec + -0x2688);\n  }\n  else if (param_1[0xcdb] == (undefined4 ******)0xabacadab) {\n    if (param_1[0xcd4] != (undefined4 ******)0x0) {\n      local_e4 = param_1 + 0xd0;\n      local_e8 = (undefined4 ******)(PTR_s_t_to_left_003a88e4 + -0x62ac);\n      (*(code *)PTR_LogMagickEvent_003a91e0)\n                (0x8000,PTR_s_courses_003a88ec + -0x288c,PTR_s_courses_003a88ec + -0x269c,0x325);\n    }\n    unaff_s6 = (undefined4 *******)(*(code *)PTR_NewImageList_003a8e84)();\n    local_80 = unaff_s6;\n    ppppppuVar2 = (undefined4 ******)\n                  (*(code *)PTR_ParseGravityGeometry_003a97fc)(param_1,param_2,&local_7c,param_3);\n    unaff_s4 = local_78;\n    unaff_s0 = local_7c;\n    unaff_s3 = (undefined4 *******)PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;\n    if ((int)ppppppuVar2 << 0xe < 0) {\n      ppppppuVar7 = param_1[7];\n      if (local_7c == (undefined4 *******)0x0) {\n        local_7c = (undefined4 *******)0x1;\n        dVar35 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n      }\n      else {\n        dVar35 = (double)(int)local_7c;\n        if ((int)local_7c < 0) {\n          dVar35 = dVar35 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n      }\n      if (local_78 == (undefined4 ******)0x0) {\n        dVar30 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n        local_78 = (undefined4 ******)0x1;\n        if (((uint)ppppppuVar2 & 0x2000) != 0) goto LAB_001c8e14;\nLAB_001c8484:\n        pppppppuVar9 = local_74;\n        if ((int)local_74 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_74;\n        }\n        puVar8 = (undefined *)((int)param_1[6] - (int)pppppppuVar9);\n        pppppppuVar9 = local_70;\n        if ((int)local_70 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_70;\n        }\n        puVar3 = (undefined *)((int)ppppppuVar7 - (int)pppppppuVar9);\n      }\n      else {\n        dVar30 = (double)(int)local_78;\n        if ((int)local_78 < 0) {\n          dVar30 = dVar30 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n        if (((uint)ppppppuVar2 & 0x2000) == 0) goto LAB_001c8484;\nLAB_001c8e14:\n        pppppppuVar9 = local_74;\n        if ((int)local_74 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_74;\n        }\n        puVar8 = (undefined *)((int)pppppppuVar9 + (int)param_1[6]);\n        if ((int)local_70 < 0) {\n          puVar3 = (undefined *)((int)ppppppuVar7 - (int)local_70);\n        }\n        else {\n          puVar3 = (undefined *)((int)local_70 + (int)ppppppuVar7);\n        }\n      }\n      unaff_s4 = (undefined4 ******)((uint)ppppppuVar2 & 0x2000);\n      dVar34 = (double)(int)puVar8;\n      if ((int)puVar8 < 0) {\n        dVar34 = dVar34 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n      }\n      dVar35 = dVar34 / dVar35;\n      local_c8 = (double)(int)puVar3;\n      if ((int)puVar3 < 0) {\n        local_c8 = local_c8 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n      }\n      dVar25 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n      local_a0 = dVar25;\n      if (dVar35 < dVar25) {\n        local_a0 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n        dVar35 = dVar25;\n      }\n      if (local_a0 <= local_c8 / dVar30) {\n        local_a0 = local_c8 / dVar30;\n      }\n      dVar30 = 0.0;\n      unaff_s7 = local_70;\n      if (0.0 < local_c8) {\n        dVar25 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4780);\n        dVar31 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4788);\n        if (unaff_s4 != (undefined4 ******)0x0) goto LAB_001c8b70;\nLAB_001c854c:\n        unaff_s7 = local_70;\n        dVar32 = dVar30;\n        if ((int)local_70 < 1) {\n          dVar32 = dVar30 - (double)(int)local_70;\n        }\n        dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n        dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n        if (dVar32 - dVar26 < dVar27 - dVar32) {\n          dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar23 = (code *)PTR_floor_003a9670;\n          if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d7c;\n        }\n        else {\n          if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d7c:\n            iVar15 = -0x7ffffdff;\n            goto joined_r0x001c8cbc;\n          }\n          dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar23 = (code *)PTR_ceil_003a8c20;\n        }\n        if (dVar26 < dVar32) {\n          iVar15 = 0x7ffffdff;\n        }\n        else {\n          dVar32 = (double)(*pcVar23)(dVar32);\n          iVar15 = (int)dVar32;\n        }\njoined_r0x001c8cbc:\n        dVar30 = dVar30 + local_a0;\n        if ((int)unaff_s7 < 0) {\n          dVar32 = 0.0;\n        }\n        else {\n          dVar32 = (double)(int)unaff_s7;\n        }\n        dVar32 = dVar30 + dVar32;\n        dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n        dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n        if (dVar32 - dVar26 < dVar27 - dVar32) {\n          if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8630;\n            goto LAB_001c8cec;\n          }\n        }\n        else if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;\n          goto LAB_001c8d18;\n        }\nLAB_001c8c88:\n        iVar14 = -0x7ffffdff;\nLAB_001c8644:\n        do {\n          unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n          param_2 = (undefined4 *******)((int)param_1[0x8d] + iVar15);\n          dVar32 = 0.0;\n          local_68 = unaff_s8;\n          local_60 = param_2;\n          if (0.0 < dVar34) {\n            dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n            unaff_s6 = &local_6c;\n            dVar27 = *(double *)((int)unaff_s3 + 0x4780);\n            do {\n              unaff_s7 = local_74;\n              if (unaff_s4 == (undefined4 ******)0x0) {\n                dVar33 = dVar32;\n                if ((int)local_74 < 1) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }\nLAB_001c8b04:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;\nLAB_001c8708:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8700:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar33 = 0.0;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8768:\n                  dVar33 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar33 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n              }\n              else {\n                dVar33 = dVar32;\n                if (0 < (int)local_74) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar27 <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar33 = 0.0;\n                }\n                else {\n                  if (dVar33 < dVar27) goto LAB_001c8b24;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (dVar26 < dVar33) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8850:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < dVar25) goto LAB_001c8a44;\n                  if (dVar33 <= dVar26) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar14 = 0x7ffffdff;\n                }\n                else if (dVar25 <= dVar33) {\n                  if (dVar33 <= dVar31) goto LAB_001c8abc;\n                  iVar14 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar14 = -0x7ffffdff;\n                }\n              }\n              unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n              param_2 = (undefined4 *******)((int)param_1[0x8c] + iVar15);\n              local_6c = unaff_s8;\n              local_64 = param_2;\n              iVar15 = (*(code *)PTR_CropImage_003a90b8)(param_1,unaff_s6,param_3);\n              if (iVar15 != 0) {\n                (*(code *)PTR_AppendImageToList_003a9880)(&local_80,iVar15);\n              }\n            } while (dVar32 < dVar34);\n          }\n          unaff_s5 = unaff_s3;\n          if (local_c8 <= dVar30) break;\n          if (unaff_s4 == (undefined4 ******)0x0) goto LAB_001c854c;\nLAB_001c8b70:\n          unaff_s7 = local_70;\n          dVar32 = dVar30;\n          if (0 < (int)local_70) {\n            dVar32 = dVar30 - (double)(int)local_70;\n          }\n          dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n          dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          if (dVar32 - dVar26 < dVar27 - dVar32) {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d8c;\n            pcVar23 = (code *)PTR_floor_003a9670;\n            if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8d50;\nLAB_001c8bd8:\n            dVar32 = (double)(*pcVar23)(dVar32);\n            iVar15 = (int)dVar32;\nLAB_001c8bf0:\n            dVar30 = dVar30 + local_a0;\n            if (-2 < (int)unaff_s7) goto LAB_001c8c00;\nLAB_001c8d6c:\n            dVar32 = (double)(int)unaff_s7;\n          }\n          else {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d8c:\n              iVar15 = -0x7ffffdff;\n              goto LAB_001c8bf0;\n            }\n            pcVar23 = (code *)PTR_ceil_003a8c20;\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8bd8;\nLAB_001c8d50:\n            iVar15 = 0x7ffffdff;\n            dVar30 = dVar30 + local_a0;\n            if ((int)unaff_s7 < -1) goto LAB_001c8d6c;\nLAB_001c8c00:\n            dVar32 = 0.0;\n          }\n          dVar32 = dVar30 + dVar32;\n          dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n          dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          if (dVar32 - dVar26 < dVar27 - dVar32) {\n            if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n              if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) {\nLAB_001c8cec:\n                iVar14 = 0x7ffffdff;\n              }\n              else {\nLAB_001c8630:\n                dVar32 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n                iVar14 = (int)dVar32;\n              }\n              goto LAB_001c8644;\n            }\n            goto LAB_001c8c88;\n          }\n          if (dVar32 < dVar25) goto LAB_001c8c88;\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;\nLAB_001c8d18:\n          dVar32 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          iVar14 = (int)dVar32;\n        } while( true );\n      }\n      (*(code *)PTR_ClearMagickException_003a90f8)(param_3);\n      pppppppuVar9 = local_80;\n      unaff_s0 = param_2;\n    }\n    else {\n      unaff_s3 = &local_7c;\n      if (((local_7c == (undefined4 *******)0x0) && (local_78 == (undefined4 ******)0x0)) ||\n         (((uint)ppppppuVar2 & 3) != 0)) {\n        local_80 = (undefined4 *******)(*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n        pppppppuVar9 = local_80;\n        unaff_s4 = ppppppuVar2;\n        if ((local_80 != (undefined4 *******)0x0) &&\n           (unaff_s4 = (undefined4 ******)((uint)ppppppuVar2 & 0x2000),\n           unaff_s4 != (undefined4 ******)0x0)) {\n          local_80[0x8c] = (undefined4 ******)((int)local_80[0x8c] - (int)local_74);\n          local_80[0x8d] = (undefined4 ******)((int)local_80[0x8d] - (int)local_70);\n          local_80[0x8a] = local_7c;\n          local_80[0x8b] = local_78;\n        }\n      }\n      else {\n        unaff_s7 = (undefined4 *******)param_1[6];\n        if ((local_7c < unaff_s7) || (local_78 < param_1[7])) {\n          ppppppuVar2 = param_1[0x8b];\n          if ((undefined4 *******)param_1[0x8a] != (undefined4 *******)0x0) {\n            unaff_s7 = (undefined4 *******)param_1[0x8a];\n          }\n          if (ppppppuVar2 == (undefined4 ******)0x0) {\n            ppppppuVar2 = param_1[7];\n          }\n          if (local_7c == (undefined4 *******)0x0) {\n            unaff_s0 = unaff_s7;\n          }\n          if (local_78 == (undefined4 ******)0x0) {\n            unaff_s4 = ppppppuVar2;\n          }\n          pppppppuVar9 = local_80;\n          if (0 < (int)ppppppuVar2) {\n            unaff_s3 = (undefined4 *******)0x0;\n            unaff_s8 = &local_80;\n            do {\n              unaff_s5 = (undefined4 *******)0x0;\n              if ((int)unaff_s7 < 1) {\n                pppppppuVar9 = local_80;\n                if (unaff_s6 == (undefined4 *******)0x0) break;\n              }\n              else {\n                do {\n                  local_7c = unaff_s0;\n                  local_78 = unaff_s4;\n                  local_74 = unaff_s5;\n                  local_70 = unaff_s3;\n                  unaff_s6 = (undefined4 *******)\n                             (*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n                  pppppppuVar9 = local_80;\n                  if (unaff_s6 == (undefined4 *******)0x0) goto LAB_001c8908;\n                  unaff_s5 = (undefined4 *******)((int)unaff_s5 + (int)unaff_s0);\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);\n              }\n              unaff_s3 = (undefined4 *******)((int)unaff_s3 + (int)unaff_s4);\n              pppppppuVar9 = local_80;\n            } while ((int)unaff_s3 < (int)ppppppuVar2);\n          }\n        }\n        else {\n          local_e8 = param_3;\n          pppppppuVar9 = (undefined4 *******)(*(code *)PTR_CloneImage_003a9830)(param_1,0,0,1);\n        }\n      }\n    }\nLAB_001c8908:\n    if (local_5c == *(int *)puVar20) {\n      return pppppppuVar9;\n    }\n    (*(code *)PTR___stack_chk_fail_003a9064)();\n    unaff_s1 = param_1;\n    unaff_s2 = param_3;\n    goto LAB_001c8ef8;\n  }" if (parenthesized_expression "(param_1 == (undefined4 *******)0x0)" ( (binary_expression "param_1 == (undefined4 *******)0x0" identifier == (cast_expression "(undefined4 *******)0x0" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\nLAB_001c8ef8:\n    param_1 = unaff_s1;\n    (*(code *)PTR___assert_fail_003a9608)\n              (PTR_LAB_003a88e0 + 0xdd0,PTR_s_courses_003a88ec + -0x288c,0x322,\n               PTR_s_courses_003a88ec + -0x2688);\n  }" { (labeled_statement "LAB_001c8ef8:\n    param_1 = unaff_s1;" statement_identifier : (expression_statement "param_1 = unaff_s1;" (assignment_expression "param_1 = unaff_s1" identifier = identifier) ;)) (expression_statement "(*(code *)PTR___assert_fail_003a9608)\n              (PTR_LAB_003a88e0 + 0xdd0,PTR_s_courses_003a88ec + -0x288c,0x322,\n               PTR_s_courses_003a88ec + -0x2688);" (call_expression "(*(code *)PTR___assert_fail_003a9608)\n              (PTR_LAB_003a88e0 + 0xdd0,PTR_s_courses_003a88ec + -0x288c,0x322,\n               PTR_s_courses_003a88ec + -0x2688)" (parenthesized_expression "(*(code *)PTR___assert_fail_003a9608)" ( (pointer_expression "*(code *)PTR___assert_fail_003a9608" * (cast_expression "(code *)PTR___assert_fail_003a9608" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(PTR_LAB_003a88e0 + 0xdd0,PTR_s_courses_003a88ec + -0x288c,0x322,\n               PTR_s_courses_003a88ec + -0x2688)" ( (binary_expression "PTR_LAB_003a88e0 + 0xdd0" identifier + number_literal) , (binary_expression "PTR_s_courses_003a88ec + -0x288c" identifier + number_literal) , number_literal , (binary_expression "PTR_s_courses_003a88ec + -0x2688" identifier + number_literal) ))) ;) }) (else_clause "else if (param_1[0xcdb] == (undefined4 ******)0xabacadab) {\n    if (param_1[0xcd4] != (undefined4 ******)0x0) {\n      local_e4 = param_1 + 0xd0;\n      local_e8 = (undefined4 ******)(PTR_s_t_to_left_003a88e4 + -0x62ac);\n      (*(code *)PTR_LogMagickEvent_003a91e0)\n                (0x8000,PTR_s_courses_003a88ec + -0x288c,PTR_s_courses_003a88ec + -0x269c,0x325);\n    }\n    unaff_s6 = (undefined4 *******)(*(code *)PTR_NewImageList_003a8e84)();\n    local_80 = unaff_s6;\n    ppppppuVar2 = (undefined4 ******)\n                  (*(code *)PTR_ParseGravityGeometry_003a97fc)(param_1,param_2,&local_7c,param_3);\n    unaff_s4 = local_78;\n    unaff_s0 = local_7c;\n    unaff_s3 = (undefined4 *******)PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;\n    if ((int)ppppppuVar2 << 0xe < 0) {\n      ppppppuVar7 = param_1[7];\n      if (local_7c == (undefined4 *******)0x0) {\n        local_7c = (undefined4 *******)0x1;\n        dVar35 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n      }\n      else {\n        dVar35 = (double)(int)local_7c;\n        if ((int)local_7c < 0) {\n          dVar35 = dVar35 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n      }\n      if (local_78 == (undefined4 ******)0x0) {\n        dVar30 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n        local_78 = (undefined4 ******)0x1;\n        if (((uint)ppppppuVar2 & 0x2000) != 0) goto LAB_001c8e14;\nLAB_001c8484:\n        pppppppuVar9 = local_74;\n        if ((int)local_74 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_74;\n        }\n        puVar8 = (undefined *)((int)param_1[6] - (int)pppppppuVar9);\n        pppppppuVar9 = local_70;\n        if ((int)local_70 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_70;\n        }\n        puVar3 = (undefined *)((int)ppppppuVar7 - (int)pppppppuVar9);\n      }\n      else {\n        dVar30 = (double)(int)local_78;\n        if ((int)local_78 < 0) {\n          dVar30 = dVar30 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n        if (((uint)ppppppuVar2 & 0x2000) == 0) goto LAB_001c8484;\nLAB_001c8e14:\n        pppppppuVar9 = local_74;\n        if ((int)local_74 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_74;\n        }\n        puVar8 = (undefined *)((int)pppppppuVar9 + (int)param_1[6]);\n        if ((int)local_70 < 0) {\n          puVar3 = (undefined *)((int)ppppppuVar7 - (int)local_70);\n        }\n        else {\n          puVar3 = (undefined *)((int)local_70 + (int)ppppppuVar7);\n        }\n      }\n      unaff_s4 = (undefined4 ******)((uint)ppppppuVar2 & 0x2000);\n      dVar34 = (double)(int)puVar8;\n      if ((int)puVar8 < 0) {\n        dVar34 = dVar34 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n      }\n      dVar35 = dVar34 / dVar35;\n      local_c8 = (double)(int)puVar3;\n      if ((int)puVar3 < 0) {\n        local_c8 = local_c8 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n      }\n      dVar25 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n      local_a0 = dVar25;\n      if (dVar35 < dVar25) {\n        local_a0 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n        dVar35 = dVar25;\n      }\n      if (local_a0 <= local_c8 / dVar30) {\n        local_a0 = local_c8 / dVar30;\n      }\n      dVar30 = 0.0;\n      unaff_s7 = local_70;\n      if (0.0 < local_c8) {\n        dVar25 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4780);\n        dVar31 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4788);\n        if (unaff_s4 != (undefined4 ******)0x0) goto LAB_001c8b70;\nLAB_001c854c:\n        unaff_s7 = local_70;\n        dVar32 = dVar30;\n        if ((int)local_70 < 1) {\n          dVar32 = dVar30 - (double)(int)local_70;\n        }\n        dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n        dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n        if (dVar32 - dVar26 < dVar27 - dVar32) {\n          dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar23 = (code *)PTR_floor_003a9670;\n          if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d7c;\n        }\n        else {\n          if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d7c:\n            iVar15 = -0x7ffffdff;\n            goto joined_r0x001c8cbc;\n          }\n          dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar23 = (code *)PTR_ceil_003a8c20;\n        }\n        if (dVar26 < dVar32) {\n          iVar15 = 0x7ffffdff;\n        }\n        else {\n          dVar32 = (double)(*pcVar23)(dVar32);\n          iVar15 = (int)dVar32;\n        }\njoined_r0x001c8cbc:\n        dVar30 = dVar30 + local_a0;\n        if ((int)unaff_s7 < 0) {\n          dVar32 = 0.0;\n        }\n        else {\n          dVar32 = (double)(int)unaff_s7;\n        }\n        dVar32 = dVar30 + dVar32;\n        dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n        dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n        if (dVar32 - dVar26 < dVar27 - dVar32) {\n          if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8630;\n            goto LAB_001c8cec;\n          }\n        }\n        else if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;\n          goto LAB_001c8d18;\n        }\nLAB_001c8c88:\n        iVar14 = -0x7ffffdff;\nLAB_001c8644:\n        do {\n          unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n          param_2 = (undefined4 *******)((int)param_1[0x8d] + iVar15);\n          dVar32 = 0.0;\n          local_68 = unaff_s8;\n          local_60 = param_2;\n          if (0.0 < dVar34) {\n            dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n            unaff_s6 = &local_6c;\n            dVar27 = *(double *)((int)unaff_s3 + 0x4780);\n            do {\n              unaff_s7 = local_74;\n              if (unaff_s4 == (undefined4 ******)0x0) {\n                dVar33 = dVar32;\n                if ((int)local_74 < 1) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }\nLAB_001c8b04:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;\nLAB_001c8708:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8700:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar33 = 0.0;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8768:\n                  dVar33 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar33 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n              }\n              else {\n                dVar33 = dVar32;\n                if (0 < (int)local_74) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar27 <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar33 = 0.0;\n                }\n                else {\n                  if (dVar33 < dVar27) goto LAB_001c8b24;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (dVar26 < dVar33) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8850:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < dVar25) goto LAB_001c8a44;\n                  if (dVar33 <= dVar26) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar14 = 0x7ffffdff;\n                }\n                else if (dVar25 <= dVar33) {\n                  if (dVar33 <= dVar31) goto LAB_001c8abc;\n                  iVar14 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar14 = -0x7ffffdff;\n                }\n              }\n              unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n              param_2 = (undefined4 *******)((int)param_1[0x8c] + iVar15);\n              local_6c = unaff_s8;\n              local_64 = param_2;\n              iVar15 = (*(code *)PTR_CropImage_003a90b8)(param_1,unaff_s6,param_3);\n              if (iVar15 != 0) {\n                (*(code *)PTR_AppendImageToList_003a9880)(&local_80,iVar15);\n              }\n            } while (dVar32 < dVar34);\n          }\n          unaff_s5 = unaff_s3;\n          if (local_c8 <= dVar30) break;\n          if (unaff_s4 == (undefined4 ******)0x0) goto LAB_001c854c;\nLAB_001c8b70:\n          unaff_s7 = local_70;\n          dVar32 = dVar30;\n          if (0 < (int)local_70) {\n            dVar32 = dVar30 - (double)(int)local_70;\n          }\n          dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n          dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          if (dVar32 - dVar26 < dVar27 - dVar32) {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d8c;\n            pcVar23 = (code *)PTR_floor_003a9670;\n            if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8d50;\nLAB_001c8bd8:\n            dVar32 = (double)(*pcVar23)(dVar32);\n            iVar15 = (int)dVar32;\nLAB_001c8bf0:\n            dVar30 = dVar30 + local_a0;\n            if (-2 < (int)unaff_s7) goto LAB_001c8c00;\nLAB_001c8d6c:\n            dVar32 = (double)(int)unaff_s7;\n          }\n          else {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d8c:\n              iVar15 = -0x7ffffdff;\n              goto LAB_001c8bf0;\n            }\n            pcVar23 = (code *)PTR_ceil_003a8c20;\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8bd8;\nLAB_001c8d50:\n            iVar15 = 0x7ffffdff;\n            dVar30 = dVar30 + local_a0;\n            if ((int)unaff_s7 < -1) goto LAB_001c8d6c;\nLAB_001c8c00:\n            dVar32 = 0.0;\n          }\n          dVar32 = dVar30 + dVar32;\n          dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n          dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          if (dVar32 - dVar26 < dVar27 - dVar32) {\n            if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n              if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) {\nLAB_001c8cec:\n                iVar14 = 0x7ffffdff;\n              }\n              else {\nLAB_001c8630:\n                dVar32 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n                iVar14 = (int)dVar32;\n              }\n              goto LAB_001c8644;\n            }\n            goto LAB_001c8c88;\n          }\n          if (dVar32 < dVar25) goto LAB_001c8c88;\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;\nLAB_001c8d18:\n          dVar32 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          iVar14 = (int)dVar32;\n        } while( true );\n      }\n      (*(code *)PTR_ClearMagickException_003a90f8)(param_3);\n      pppppppuVar9 = local_80;\n      unaff_s0 = param_2;\n    }\n    else {\n      unaff_s3 = &local_7c;\n      if (((local_7c == (undefined4 *******)0x0) && (local_78 == (undefined4 ******)0x0)) ||\n         (((uint)ppppppuVar2 & 3) != 0)) {\n        local_80 = (undefined4 *******)(*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n        pppppppuVar9 = local_80;\n        unaff_s4 = ppppppuVar2;\n        if ((local_80 != (undefined4 *******)0x0) &&\n           (unaff_s4 = (undefined4 ******)((uint)ppppppuVar2 & 0x2000),\n           unaff_s4 != (undefined4 ******)0x0)) {\n          local_80[0x8c] = (undefined4 ******)((int)local_80[0x8c] - (int)local_74);\n          local_80[0x8d] = (undefined4 ******)((int)local_80[0x8d] - (int)local_70);\n          local_80[0x8a] = local_7c;\n          local_80[0x8b] = local_78;\n        }\n      }\n      else {\n        unaff_s7 = (undefined4 *******)param_1[6];\n        if ((local_7c < unaff_s7) || (local_78 < param_1[7])) {\n          ppppppuVar2 = param_1[0x8b];\n          if ((undefined4 *******)param_1[0x8a] != (undefined4 *******)0x0) {\n            unaff_s7 = (undefined4 *******)param_1[0x8a];\n          }\n          if (ppppppuVar2 == (undefined4 ******)0x0) {\n            ppppppuVar2 = param_1[7];\n          }\n          if (local_7c == (undefined4 *******)0x0) {\n            unaff_s0 = unaff_s7;\n          }\n          if (local_78 == (undefined4 ******)0x0) {\n            unaff_s4 = ppppppuVar2;\n          }\n          pppppppuVar9 = local_80;\n          if (0 < (int)ppppppuVar2) {\n            unaff_s3 = (undefined4 *******)0x0;\n            unaff_s8 = &local_80;\n            do {\n              unaff_s5 = (undefined4 *******)0x0;\n              if ((int)unaff_s7 < 1) {\n                pppppppuVar9 = local_80;\n                if (unaff_s6 == (undefined4 *******)0x0) break;\n              }\n              else {\n                do {\n                  local_7c = unaff_s0;\n                  local_78 = unaff_s4;\n                  local_74 = unaff_s5;\n                  local_70 = unaff_s3;\n                  unaff_s6 = (undefined4 *******)\n                             (*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n                  pppppppuVar9 = local_80;\n                  if (unaff_s6 == (undefined4 *******)0x0) goto LAB_001c8908;\n                  unaff_s5 = (undefined4 *******)((int)unaff_s5 + (int)unaff_s0);\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);\n              }\n              unaff_s3 = (undefined4 *******)((int)unaff_s3 + (int)unaff_s4);\n              pppppppuVar9 = local_80;\n            } while ((int)unaff_s3 < (int)ppppppuVar2);\n          }\n        }\n        else {\n          local_e8 = param_3;\n          pppppppuVar9 = (undefined4 *******)(*(code *)PTR_CloneImage_003a9830)(param_1,0,0,1);\n        }\n      }\n    }\nLAB_001c8908:\n    if (local_5c == *(int *)puVar20) {\n      return pppppppuVar9;\n    }\n    (*(code *)PTR___stack_chk_fail_003a9064)();\n    unaff_s1 = param_1;\n    unaff_s2 = param_3;\n    goto LAB_001c8ef8;\n  }" else (if_statement "if (param_1[0xcdb] == (undefined4 ******)0xabacadab) {\n    if (param_1[0xcd4] != (undefined4 ******)0x0) {\n      local_e4 = param_1 + 0xd0;\n      local_e8 = (undefined4 ******)(PTR_s_t_to_left_003a88e4 + -0x62ac);\n      (*(code *)PTR_LogMagickEvent_003a91e0)\n                (0x8000,PTR_s_courses_003a88ec + -0x288c,PTR_s_courses_003a88ec + -0x269c,0x325);\n    }\n    unaff_s6 = (undefined4 *******)(*(code *)PTR_NewImageList_003a8e84)();\n    local_80 = unaff_s6;\n    ppppppuVar2 = (undefined4 ******)\n                  (*(code *)PTR_ParseGravityGeometry_003a97fc)(param_1,param_2,&local_7c,param_3);\n    unaff_s4 = local_78;\n    unaff_s0 = local_7c;\n    unaff_s3 = (undefined4 *******)PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;\n    if ((int)ppppppuVar2 << 0xe < 0) {\n      ppppppuVar7 = param_1[7];\n      if (local_7c == (undefined4 *******)0x0) {\n        local_7c = (undefined4 *******)0x1;\n        dVar35 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n      }\n      else {\n        dVar35 = (double)(int)local_7c;\n        if ((int)local_7c < 0) {\n          dVar35 = dVar35 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n      }\n      if (local_78 == (undefined4 ******)0x0) {\n        dVar30 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n        local_78 = (undefined4 ******)0x1;\n        if (((uint)ppppppuVar2 & 0x2000) != 0) goto LAB_001c8e14;\nLAB_001c8484:\n        pppppppuVar9 = local_74;\n        if ((int)local_74 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_74;\n        }\n        puVar8 = (undefined *)((int)param_1[6] - (int)pppppppuVar9);\n        pppppppuVar9 = local_70;\n        if ((int)local_70 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_70;\n        }\n        puVar3 = (undefined *)((int)ppppppuVar7 - (int)pppppppuVar9);\n      }\n      else {\n        dVar30 = (double)(int)local_78;\n        if ((int)local_78 < 0) {\n          dVar30 = dVar30 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n        if (((uint)ppppppuVar2 & 0x2000) == 0) goto LAB_001c8484;\nLAB_001c8e14:\n        pppppppuVar9 = local_74;\n        if ((int)local_74 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_74;\n        }\n        puVar8 = (undefined *)((int)pppppppuVar9 + (int)param_1[6]);\n        if ((int)local_70 < 0) {\n          puVar3 = (undefined *)((int)ppppppuVar7 - (int)local_70);\n        }\n        else {\n          puVar3 = (undefined *)((int)local_70 + (int)ppppppuVar7);\n        }\n      }\n      unaff_s4 = (undefined4 ******)((uint)ppppppuVar2 & 0x2000);\n      dVar34 = (double)(int)puVar8;\n      if ((int)puVar8 < 0) {\n        dVar34 = dVar34 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n      }\n      dVar35 = dVar34 / dVar35;\n      local_c8 = (double)(int)puVar3;\n      if ((int)puVar3 < 0) {\n        local_c8 = local_c8 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n      }\n      dVar25 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n      local_a0 = dVar25;\n      if (dVar35 < dVar25) {\n        local_a0 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n        dVar35 = dVar25;\n      }\n      if (local_a0 <= local_c8 / dVar30) {\n        local_a0 = local_c8 / dVar30;\n      }\n      dVar30 = 0.0;\n      unaff_s7 = local_70;\n      if (0.0 < local_c8) {\n        dVar25 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4780);\n        dVar31 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4788);\n        if (unaff_s4 != (undefined4 ******)0x0) goto LAB_001c8b70;\nLAB_001c854c:\n        unaff_s7 = local_70;\n        dVar32 = dVar30;\n        if ((int)local_70 < 1) {\n          dVar32 = dVar30 - (double)(int)local_70;\n        }\n        dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n        dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n        if (dVar32 - dVar26 < dVar27 - dVar32) {\n          dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar23 = (code *)PTR_floor_003a9670;\n          if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d7c;\n        }\n        else {\n          if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d7c:\n            iVar15 = -0x7ffffdff;\n            goto joined_r0x001c8cbc;\n          }\n          dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar23 = (code *)PTR_ceil_003a8c20;\n        }\n        if (dVar26 < dVar32) {\n          iVar15 = 0x7ffffdff;\n        }\n        else {\n          dVar32 = (double)(*pcVar23)(dVar32);\n          iVar15 = (int)dVar32;\n        }\njoined_r0x001c8cbc:\n        dVar30 = dVar30 + local_a0;\n        if ((int)unaff_s7 < 0) {\n          dVar32 = 0.0;\n        }\n        else {\n          dVar32 = (double)(int)unaff_s7;\n        }\n        dVar32 = dVar30 + dVar32;\n        dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n        dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n        if (dVar32 - dVar26 < dVar27 - dVar32) {\n          if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8630;\n            goto LAB_001c8cec;\n          }\n        }\n        else if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;\n          goto LAB_001c8d18;\n        }\nLAB_001c8c88:\n        iVar14 = -0x7ffffdff;\nLAB_001c8644:\n        do {\n          unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n          param_2 = (undefined4 *******)((int)param_1[0x8d] + iVar15);\n          dVar32 = 0.0;\n          local_68 = unaff_s8;\n          local_60 = param_2;\n          if (0.0 < dVar34) {\n            dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n            unaff_s6 = &local_6c;\n            dVar27 = *(double *)((int)unaff_s3 + 0x4780);\n            do {\n              unaff_s7 = local_74;\n              if (unaff_s4 == (undefined4 ******)0x0) {\n                dVar33 = dVar32;\n                if ((int)local_74 < 1) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }\nLAB_001c8b04:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;\nLAB_001c8708:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8700:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar33 = 0.0;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8768:\n                  dVar33 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar33 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n              }\n              else {\n                dVar33 = dVar32;\n                if (0 < (int)local_74) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar27 <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar33 = 0.0;\n                }\n                else {\n                  if (dVar33 < dVar27) goto LAB_001c8b24;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (dVar26 < dVar33) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8850:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < dVar25) goto LAB_001c8a44;\n                  if (dVar33 <= dVar26) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar14 = 0x7ffffdff;\n                }\n                else if (dVar25 <= dVar33) {\n                  if (dVar33 <= dVar31) goto LAB_001c8abc;\n                  iVar14 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar14 = -0x7ffffdff;\n                }\n              }\n              unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n              param_2 = (undefined4 *******)((int)param_1[0x8c] + iVar15);\n              local_6c = unaff_s8;\n              local_64 = param_2;\n              iVar15 = (*(code *)PTR_CropImage_003a90b8)(param_1,unaff_s6,param_3);\n              if (iVar15 != 0) {\n                (*(code *)PTR_AppendImageToList_003a9880)(&local_80,iVar15);\n              }\n            } while (dVar32 < dVar34);\n          }\n          unaff_s5 = unaff_s3;\n          if (local_c8 <= dVar30) break;\n          if (unaff_s4 == (undefined4 ******)0x0) goto LAB_001c854c;\nLAB_001c8b70:\n          unaff_s7 = local_70;\n          dVar32 = dVar30;\n          if (0 < (int)local_70) {\n            dVar32 = dVar30 - (double)(int)local_70;\n          }\n          dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n          dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          if (dVar32 - dVar26 < dVar27 - dVar32) {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d8c;\n            pcVar23 = (code *)PTR_floor_003a9670;\n            if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8d50;\nLAB_001c8bd8:\n            dVar32 = (double)(*pcVar23)(dVar32);\n            iVar15 = (int)dVar32;\nLAB_001c8bf0:\n            dVar30 = dVar30 + local_a0;\n            if (-2 < (int)unaff_s7) goto LAB_001c8c00;\nLAB_001c8d6c:\n            dVar32 = (double)(int)unaff_s7;\n          }\n          else {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d8c:\n              iVar15 = -0x7ffffdff;\n              goto LAB_001c8bf0;\n            }\n            pcVar23 = (code *)PTR_ceil_003a8c20;\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8bd8;\nLAB_001c8d50:\n            iVar15 = 0x7ffffdff;\n            dVar30 = dVar30 + local_a0;\n            if ((int)unaff_s7 < -1) goto LAB_001c8d6c;\nLAB_001c8c00:\n            dVar32 = 0.0;\n          }\n          dVar32 = dVar30 + dVar32;\n          dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n          dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          if (dVar32 - dVar26 < dVar27 - dVar32) {\n            if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n              if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) {\nLAB_001c8cec:\n                iVar14 = 0x7ffffdff;\n              }\n              else {\nLAB_001c8630:\n                dVar32 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n                iVar14 = (int)dVar32;\n              }\n              goto LAB_001c8644;\n            }\n            goto LAB_001c8c88;\n          }\n          if (dVar32 < dVar25) goto LAB_001c8c88;\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;\nLAB_001c8d18:\n          dVar32 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          iVar14 = (int)dVar32;\n        } while( true );\n      }\n      (*(code *)PTR_ClearMagickException_003a90f8)(param_3);\n      pppppppuVar9 = local_80;\n      unaff_s0 = param_2;\n    }\n    else {\n      unaff_s3 = &local_7c;\n      if (((local_7c == (undefined4 *******)0x0) && (local_78 == (undefined4 ******)0x0)) ||\n         (((uint)ppppppuVar2 & 3) != 0)) {\n        local_80 = (undefined4 *******)(*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n        pppppppuVar9 = local_80;\n        unaff_s4 = ppppppuVar2;\n        if ((local_80 != (undefined4 *******)0x0) &&\n           (unaff_s4 = (undefined4 ******)((uint)ppppppuVar2 & 0x2000),\n           unaff_s4 != (undefined4 ******)0x0)) {\n          local_80[0x8c] = (undefined4 ******)((int)local_80[0x8c] - (int)local_74);\n          local_80[0x8d] = (undefined4 ******)((int)local_80[0x8d] - (int)local_70);\n          local_80[0x8a] = local_7c;\n          local_80[0x8b] = local_78;\n        }\n      }\n      else {\n        unaff_s7 = (undefined4 *******)param_1[6];\n        if ((local_7c < unaff_s7) || (local_78 < param_1[7])) {\n          ppppppuVar2 = param_1[0x8b];\n          if ((undefined4 *******)param_1[0x8a] != (undefined4 *******)0x0) {\n            unaff_s7 = (undefined4 *******)param_1[0x8a];\n          }\n          if (ppppppuVar2 == (undefined4 ******)0x0) {\n            ppppppuVar2 = param_1[7];\n          }\n          if (local_7c == (undefined4 *******)0x0) {\n            unaff_s0 = unaff_s7;\n          }\n          if (local_78 == (undefined4 ******)0x0) {\n            unaff_s4 = ppppppuVar2;\n          }\n          pppppppuVar9 = local_80;\n          if (0 < (int)ppppppuVar2) {\n            unaff_s3 = (undefined4 *******)0x0;\n            unaff_s8 = &local_80;\n            do {\n              unaff_s5 = (undefined4 *******)0x0;\n              if ((int)unaff_s7 < 1) {\n                pppppppuVar9 = local_80;\n                if (unaff_s6 == (undefined4 *******)0x0) break;\n              }\n              else {\n                do {\n                  local_7c = unaff_s0;\n                  local_78 = unaff_s4;\n                  local_74 = unaff_s5;\n                  local_70 = unaff_s3;\n                  unaff_s6 = (undefined4 *******)\n                             (*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n                  pppppppuVar9 = local_80;\n                  if (unaff_s6 == (undefined4 *******)0x0) goto LAB_001c8908;\n                  unaff_s5 = (undefined4 *******)((int)unaff_s5 + (int)unaff_s0);\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);\n              }\n              unaff_s3 = (undefined4 *******)((int)unaff_s3 + (int)unaff_s4);\n              pppppppuVar9 = local_80;\n            } while ((int)unaff_s3 < (int)ppppppuVar2);\n          }\n        }\n        else {\n          local_e8 = param_3;\n          pppppppuVar9 = (undefined4 *******)(*(code *)PTR_CloneImage_003a9830)(param_1,0,0,1);\n        }\n      }\n    }\nLAB_001c8908:\n    if (local_5c == *(int *)puVar20) {\n      return pppppppuVar9;\n    }\n    (*(code *)PTR___stack_chk_fail_003a9064)();\n    unaff_s1 = param_1;\n    unaff_s2 = param_3;\n    goto LAB_001c8ef8;\n  }" if (parenthesized_expression "(param_1[0xcdb] == (undefined4 ******)0xabacadab)" ( (binary_expression "param_1[0xcdb] == (undefined4 ******)0xabacadab" (subscript_expression "param_1[0xcdb]" identifier [ number_literal ]) == (cast_expression "(undefined4 ******)0xabacadab" ( (type_descriptor "undefined4 ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n    if (param_1[0xcd4] != (undefined4 ******)0x0) {\n      local_e4 = param_1 + 0xd0;\n      local_e8 = (undefined4 ******)(PTR_s_t_to_left_003a88e4 + -0x62ac);\n      (*(code *)PTR_LogMagickEvent_003a91e0)\n                (0x8000,PTR_s_courses_003a88ec + -0x288c,PTR_s_courses_003a88ec + -0x269c,0x325);\n    }\n    unaff_s6 = (undefined4 *******)(*(code *)PTR_NewImageList_003a8e84)();\n    local_80 = unaff_s6;\n    ppppppuVar2 = (undefined4 ******)\n                  (*(code *)PTR_ParseGravityGeometry_003a97fc)(param_1,param_2,&local_7c,param_3);\n    unaff_s4 = local_78;\n    unaff_s0 = local_7c;\n    unaff_s3 = (undefined4 *******)PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;\n    if ((int)ppppppuVar2 << 0xe < 0) {\n      ppppppuVar7 = param_1[7];\n      if (local_7c == (undefined4 *******)0x0) {\n        local_7c = (undefined4 *******)0x1;\n        dVar35 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n      }\n      else {\n        dVar35 = (double)(int)local_7c;\n        if ((int)local_7c < 0) {\n          dVar35 = dVar35 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n      }\n      if (local_78 == (undefined4 ******)0x0) {\n        dVar30 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n        local_78 = (undefined4 ******)0x1;\n        if (((uint)ppppppuVar2 & 0x2000) != 0) goto LAB_001c8e14;\nLAB_001c8484:\n        pppppppuVar9 = local_74;\n        if ((int)local_74 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_74;\n        }\n        puVar8 = (undefined *)((int)param_1[6] - (int)pppppppuVar9);\n        pppppppuVar9 = local_70;\n        if ((int)local_70 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_70;\n        }\n        puVar3 = (undefined *)((int)ppppppuVar7 - (int)pppppppuVar9);\n      }\n      else {\n        dVar30 = (double)(int)local_78;\n        if ((int)local_78 < 0) {\n          dVar30 = dVar30 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n        if (((uint)ppppppuVar2 & 0x2000) == 0) goto LAB_001c8484;\nLAB_001c8e14:\n        pppppppuVar9 = local_74;\n        if ((int)local_74 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_74;\n        }\n        puVar8 = (undefined *)((int)pppppppuVar9 + (int)param_1[6]);\n        if ((int)local_70 < 0) {\n          puVar3 = (undefined *)((int)ppppppuVar7 - (int)local_70);\n        }\n        else {\n          puVar3 = (undefined *)((int)local_70 + (int)ppppppuVar7);\n        }\n      }\n      unaff_s4 = (undefined4 ******)((uint)ppppppuVar2 & 0x2000);\n      dVar34 = (double)(int)puVar8;\n      if ((int)puVar8 < 0) {\n        dVar34 = dVar34 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n      }\n      dVar35 = dVar34 / dVar35;\n      local_c8 = (double)(int)puVar3;\n      if ((int)puVar3 < 0) {\n        local_c8 = local_c8 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n      }\n      dVar25 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n      local_a0 = dVar25;\n      if (dVar35 < dVar25) {\n        local_a0 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n        dVar35 = dVar25;\n      }\n      if (local_a0 <= local_c8 / dVar30) {\n        local_a0 = local_c8 / dVar30;\n      }\n      dVar30 = 0.0;\n      unaff_s7 = local_70;\n      if (0.0 < local_c8) {\n        dVar25 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4780);\n        dVar31 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4788);\n        if (unaff_s4 != (undefined4 ******)0x0) goto LAB_001c8b70;\nLAB_001c854c:\n        unaff_s7 = local_70;\n        dVar32 = dVar30;\n        if ((int)local_70 < 1) {\n          dVar32 = dVar30 - (double)(int)local_70;\n        }\n        dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n        dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n        if (dVar32 - dVar26 < dVar27 - dVar32) {\n          dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar23 = (code *)PTR_floor_003a9670;\n          if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d7c;\n        }\n        else {\n          if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d7c:\n            iVar15 = -0x7ffffdff;\n            goto joined_r0x001c8cbc;\n          }\n          dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar23 = (code *)PTR_ceil_003a8c20;\n        }\n        if (dVar26 < dVar32) {\n          iVar15 = 0x7ffffdff;\n        }\n        else {\n          dVar32 = (double)(*pcVar23)(dVar32);\n          iVar15 = (int)dVar32;\n        }\njoined_r0x001c8cbc:\n        dVar30 = dVar30 + local_a0;\n        if ((int)unaff_s7 < 0) {\n          dVar32 = 0.0;\n        }\n        else {\n          dVar32 = (double)(int)unaff_s7;\n        }\n        dVar32 = dVar30 + dVar32;\n        dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n        dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n        if (dVar32 - dVar26 < dVar27 - dVar32) {\n          if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8630;\n            goto LAB_001c8cec;\n          }\n        }\n        else if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;\n          goto LAB_001c8d18;\n        }\nLAB_001c8c88:\n        iVar14 = -0x7ffffdff;\nLAB_001c8644:\n        do {\n          unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n          param_2 = (undefined4 *******)((int)param_1[0x8d] + iVar15);\n          dVar32 = 0.0;\n          local_68 = unaff_s8;\n          local_60 = param_2;\n          if (0.0 < dVar34) {\n            dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n            unaff_s6 = &local_6c;\n            dVar27 = *(double *)((int)unaff_s3 + 0x4780);\n            do {\n              unaff_s7 = local_74;\n              if (unaff_s4 == (undefined4 ******)0x0) {\n                dVar33 = dVar32;\n                if ((int)local_74 < 1) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }\nLAB_001c8b04:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;\nLAB_001c8708:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8700:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar33 = 0.0;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8768:\n                  dVar33 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar33 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n              }\n              else {\n                dVar33 = dVar32;\n                if (0 < (int)local_74) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar27 <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar33 = 0.0;\n                }\n                else {\n                  if (dVar33 < dVar27) goto LAB_001c8b24;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (dVar26 < dVar33) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8850:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < dVar25) goto LAB_001c8a44;\n                  if (dVar33 <= dVar26) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar14 = 0x7ffffdff;\n                }\n                else if (dVar25 <= dVar33) {\n                  if (dVar33 <= dVar31) goto LAB_001c8abc;\n                  iVar14 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar14 = -0x7ffffdff;\n                }\n              }\n              unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n              param_2 = (undefined4 *******)((int)param_1[0x8c] + iVar15);\n              local_6c = unaff_s8;\n              local_64 = param_2;\n              iVar15 = (*(code *)PTR_CropImage_003a90b8)(param_1,unaff_s6,param_3);\n              if (iVar15 != 0) {\n                (*(code *)PTR_AppendImageToList_003a9880)(&local_80,iVar15);\n              }\n            } while (dVar32 < dVar34);\n          }\n          unaff_s5 = unaff_s3;\n          if (local_c8 <= dVar30) break;\n          if (unaff_s4 == (undefined4 ******)0x0) goto LAB_001c854c;\nLAB_001c8b70:\n          unaff_s7 = local_70;\n          dVar32 = dVar30;\n          if (0 < (int)local_70) {\n            dVar32 = dVar30 - (double)(int)local_70;\n          }\n          dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n          dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          if (dVar32 - dVar26 < dVar27 - dVar32) {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d8c;\n            pcVar23 = (code *)PTR_floor_003a9670;\n            if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8d50;\nLAB_001c8bd8:\n            dVar32 = (double)(*pcVar23)(dVar32);\n            iVar15 = (int)dVar32;\nLAB_001c8bf0:\n            dVar30 = dVar30 + local_a0;\n            if (-2 < (int)unaff_s7) goto LAB_001c8c00;\nLAB_001c8d6c:\n            dVar32 = (double)(int)unaff_s7;\n          }\n          else {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d8c:\n              iVar15 = -0x7ffffdff;\n              goto LAB_001c8bf0;\n            }\n            pcVar23 = (code *)PTR_ceil_003a8c20;\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8bd8;\nLAB_001c8d50:\n            iVar15 = 0x7ffffdff;\n            dVar30 = dVar30 + local_a0;\n            if ((int)unaff_s7 < -1) goto LAB_001c8d6c;\nLAB_001c8c00:\n            dVar32 = 0.0;\n          }\n          dVar32 = dVar30 + dVar32;\n          dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n          dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          if (dVar32 - dVar26 < dVar27 - dVar32) {\n            if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n              if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) {\nLAB_001c8cec:\n                iVar14 = 0x7ffffdff;\n              }\n              else {\nLAB_001c8630:\n                dVar32 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n                iVar14 = (int)dVar32;\n              }\n              goto LAB_001c8644;\n            }\n            goto LAB_001c8c88;\n          }\n          if (dVar32 < dVar25) goto LAB_001c8c88;\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;\nLAB_001c8d18:\n          dVar32 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          iVar14 = (int)dVar32;\n        } while( true );\n      }\n      (*(code *)PTR_ClearMagickException_003a90f8)(param_3);\n      pppppppuVar9 = local_80;\n      unaff_s0 = param_2;\n    }\n    else {\n      unaff_s3 = &local_7c;\n      if (((local_7c == (undefined4 *******)0x0) && (local_78 == (undefined4 ******)0x0)) ||\n         (((uint)ppppppuVar2 & 3) != 0)) {\n        local_80 = (undefined4 *******)(*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n        pppppppuVar9 = local_80;\n        unaff_s4 = ppppppuVar2;\n        if ((local_80 != (undefined4 *******)0x0) &&\n           (unaff_s4 = (undefined4 ******)((uint)ppppppuVar2 & 0x2000),\n           unaff_s4 != (undefined4 ******)0x0)) {\n          local_80[0x8c] = (undefined4 ******)((int)local_80[0x8c] - (int)local_74);\n          local_80[0x8d] = (undefined4 ******)((int)local_80[0x8d] - (int)local_70);\n          local_80[0x8a] = local_7c;\n          local_80[0x8b] = local_78;\n        }\n      }\n      else {\n        unaff_s7 = (undefined4 *******)param_1[6];\n        if ((local_7c < unaff_s7) || (local_78 < param_1[7])) {\n          ppppppuVar2 = param_1[0x8b];\n          if ((undefined4 *******)param_1[0x8a] != (undefined4 *******)0x0) {\n            unaff_s7 = (undefined4 *******)param_1[0x8a];\n          }\n          if (ppppppuVar2 == (undefined4 ******)0x0) {\n            ppppppuVar2 = param_1[7];\n          }\n          if (local_7c == (undefined4 *******)0x0) {\n            unaff_s0 = unaff_s7;\n          }\n          if (local_78 == (undefined4 ******)0x0) {\n            unaff_s4 = ppppppuVar2;\n          }\n          pppppppuVar9 = local_80;\n          if (0 < (int)ppppppuVar2) {\n            unaff_s3 = (undefined4 *******)0x0;\n            unaff_s8 = &local_80;\n            do {\n              unaff_s5 = (undefined4 *******)0x0;\n              if ((int)unaff_s7 < 1) {\n                pppppppuVar9 = local_80;\n                if (unaff_s6 == (undefined4 *******)0x0) break;\n              }\n              else {\n                do {\n                  local_7c = unaff_s0;\n                  local_78 = unaff_s4;\n                  local_74 = unaff_s5;\n                  local_70 = unaff_s3;\n                  unaff_s6 = (undefined4 *******)\n                             (*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n                  pppppppuVar9 = local_80;\n                  if (unaff_s6 == (undefined4 *******)0x0) goto LAB_001c8908;\n                  unaff_s5 = (undefined4 *******)((int)unaff_s5 + (int)unaff_s0);\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);\n              }\n              unaff_s3 = (undefined4 *******)((int)unaff_s3 + (int)unaff_s4);\n              pppppppuVar9 = local_80;\n            } while ((int)unaff_s3 < (int)ppppppuVar2);\n          }\n        }\n        else {\n          local_e8 = param_3;\n          pppppppuVar9 = (undefined4 *******)(*(code *)PTR_CloneImage_003a9830)(param_1,0,0,1);\n        }\n      }\n    }\nLAB_001c8908:\n    if (local_5c == *(int *)puVar20) {\n      return pppppppuVar9;\n    }\n    (*(code *)PTR___stack_chk_fail_003a9064)();\n    unaff_s1 = param_1;\n    unaff_s2 = param_3;\n    goto LAB_001c8ef8;\n  }" { (if_statement "if (param_1[0xcd4] != (undefined4 ******)0x0) {\n      local_e4 = param_1 + 0xd0;\n      local_e8 = (undefined4 ******)(PTR_s_t_to_left_003a88e4 + -0x62ac);\n      (*(code *)PTR_LogMagickEvent_003a91e0)\n                (0x8000,PTR_s_courses_003a88ec + -0x288c,PTR_s_courses_003a88ec + -0x269c,0x325);\n    }" if (parenthesized_expression "(param_1[0xcd4] != (undefined4 ******)0x0)" ( (binary_expression "param_1[0xcd4] != (undefined4 ******)0x0" (subscript_expression "param_1[0xcd4]" identifier [ number_literal ]) != (cast_expression "(undefined4 ******)0x0" ( (type_descriptor "undefined4 ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n      local_e4 = param_1 + 0xd0;\n      local_e8 = (undefined4 ******)(PTR_s_t_to_left_003a88e4 + -0x62ac);\n      (*(code *)PTR_LogMagickEvent_003a91e0)\n                (0x8000,PTR_s_courses_003a88ec + -0x288c,PTR_s_courses_003a88ec + -0x269c,0x325);\n    }" { (expression_statement "local_e4 = param_1 + 0xd0;" (assignment_expression "local_e4 = param_1 + 0xd0" identifier = (binary_expression "param_1 + 0xd0" identifier + number_literal)) ;) (expression_statement "local_e8 = (undefined4 ******)(PTR_s_t_to_left_003a88e4 + -0x62ac);" (assignment_expression "local_e8 = (undefined4 ******)(PTR_s_t_to_left_003a88e4 + -0x62ac)" identifier = (cast_expression "(undefined4 ******)(PTR_s_t_to_left_003a88e4 + -0x62ac)" ( (type_descriptor "undefined4 ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (parenthesized_expression "(PTR_s_t_to_left_003a88e4 + -0x62ac)" ( (binary_expression "PTR_s_t_to_left_003a88e4 + -0x62ac" identifier + number_literal) )))) ;) (expression_statement "(*(code *)PTR_LogMagickEvent_003a91e0)\n                (0x8000,PTR_s_courses_003a88ec + -0x288c,PTR_s_courses_003a88ec + -0x269c,0x325);" (call_expression "(*(code *)PTR_LogMagickEvent_003a91e0)\n                (0x8000,PTR_s_courses_003a88ec + -0x288c,PTR_s_courses_003a88ec + -0x269c,0x325)" (parenthesized_expression "(*(code *)PTR_LogMagickEvent_003a91e0)" ( (pointer_expression "*(code *)PTR_LogMagickEvent_003a91e0" * (cast_expression "(code *)PTR_LogMagickEvent_003a91e0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(0x8000,PTR_s_courses_003a88ec + -0x288c,PTR_s_courses_003a88ec + -0x269c,0x325)" ( number_literal , (binary_expression "PTR_s_courses_003a88ec + -0x288c" identifier + number_literal) , (binary_expression "PTR_s_courses_003a88ec + -0x269c" identifier + number_literal) , number_literal ))) ;) })) (expression_statement "unaff_s6 = (undefined4 *******)(*(code *)PTR_NewImageList_003a8e84)();" (assignment_expression "unaff_s6 = (undefined4 *******)(*(code *)PTR_NewImageList_003a8e84)()" identifier = (cast_expression "(undefined4 *******)(*(code *)PTR_NewImageList_003a8e84)()" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(*(code *)PTR_NewImageList_003a8e84)()" (parenthesized_expression "(*(code *)PTR_NewImageList_003a8e84)" ( (pointer_expression "*(code *)PTR_NewImageList_003a8e84" * (cast_expression "(code *)PTR_NewImageList_003a8e84" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))))) ;) (expression_statement "local_80 = unaff_s6;" (assignment_expression "local_80 = unaff_s6" identifier = identifier) ;) (expression_statement "ppppppuVar2 = (undefined4 ******)\n                  (*(code *)PTR_ParseGravityGeometry_003a97fc)(param_1,param_2,&local_7c,param_3);" (assignment_expression "ppppppuVar2 = (undefined4 ******)\n                  (*(code *)PTR_ParseGravityGeometry_003a97fc)(param_1,param_2,&local_7c,param_3)" identifier = (cast_expression "(undefined4 ******)\n                  (*(code *)PTR_ParseGravityGeometry_003a97fc)(param_1,param_2,&local_7c,param_3)" ( (type_descriptor "undefined4 ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (call_expression "(*(code *)PTR_ParseGravityGeometry_003a97fc)(param_1,param_2,&local_7c,param_3)" (parenthesized_expression "(*(code *)PTR_ParseGravityGeometry_003a97fc)" ( (pointer_expression "*(code *)PTR_ParseGravityGeometry_003a97fc" * (cast_expression "(code *)PTR_ParseGravityGeometry_003a97fc" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_1,param_2,&local_7c,param_3)" ( identifier , identifier , (pointer_expression "&local_7c" & identifier) , identifier ))))) ;) (expression_statement "unaff_s4 = local_78;" (assignment_expression "unaff_s4 = local_78" identifier = identifier) ;) (expression_statement "unaff_s0 = local_7c;" (assignment_expression "unaff_s0 = local_7c" identifier = identifier) ;) (expression_statement "unaff_s3 = (undefined4 *******)PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;" (assignment_expression "unaff_s3 = (undefined4 *******)PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8" identifier = (cast_expression "(undefined4 *******)PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) identifier)) ;) (if_statement "if ((int)ppppppuVar2 << 0xe < 0) {\n      ppppppuVar7 = param_1[7];\n      if (local_7c == (undefined4 *******)0x0) {\n        local_7c = (undefined4 *******)0x1;\n        dVar35 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n      }\n      else {\n        dVar35 = (double)(int)local_7c;\n        if ((int)local_7c < 0) {\n          dVar35 = dVar35 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n      }\n      if (local_78 == (undefined4 ******)0x0) {\n        dVar30 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n        local_78 = (undefined4 ******)0x1;\n        if (((uint)ppppppuVar2 & 0x2000) != 0) goto LAB_001c8e14;\nLAB_001c8484:\n        pppppppuVar9 = local_74;\n        if ((int)local_74 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_74;\n        }\n        puVar8 = (undefined *)((int)param_1[6] - (int)pppppppuVar9);\n        pppppppuVar9 = local_70;\n        if ((int)local_70 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_70;\n        }\n        puVar3 = (undefined *)((int)ppppppuVar7 - (int)pppppppuVar9);\n      }\n      else {\n        dVar30 = (double)(int)local_78;\n        if ((int)local_78 < 0) {\n          dVar30 = dVar30 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n        if (((uint)ppppppuVar2 & 0x2000) == 0) goto LAB_001c8484;\nLAB_001c8e14:\n        pppppppuVar9 = local_74;\n        if ((int)local_74 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_74;\n        }\n        puVar8 = (undefined *)((int)pppppppuVar9 + (int)param_1[6]);\n        if ((int)local_70 < 0) {\n          puVar3 = (undefined *)((int)ppppppuVar7 - (int)local_70);\n        }\n        else {\n          puVar3 = (undefined *)((int)local_70 + (int)ppppppuVar7);\n        }\n      }\n      unaff_s4 = (undefined4 ******)((uint)ppppppuVar2 & 0x2000);\n      dVar34 = (double)(int)puVar8;\n      if ((int)puVar8 < 0) {\n        dVar34 = dVar34 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n      }\n      dVar35 = dVar34 / dVar35;\n      local_c8 = (double)(int)puVar3;\n      if ((int)puVar3 < 0) {\n        local_c8 = local_c8 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n      }\n      dVar25 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n      local_a0 = dVar25;\n      if (dVar35 < dVar25) {\n        local_a0 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n        dVar35 = dVar25;\n      }\n      if (local_a0 <= local_c8 / dVar30) {\n        local_a0 = local_c8 / dVar30;\n      }\n      dVar30 = 0.0;\n      unaff_s7 = local_70;\n      if (0.0 < local_c8) {\n        dVar25 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4780);\n        dVar31 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4788);\n        if (unaff_s4 != (undefined4 ******)0x0) goto LAB_001c8b70;\nLAB_001c854c:\n        unaff_s7 = local_70;\n        dVar32 = dVar30;\n        if ((int)local_70 < 1) {\n          dVar32 = dVar30 - (double)(int)local_70;\n        }\n        dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n        dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n        if (dVar32 - dVar26 < dVar27 - dVar32) {\n          dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar23 = (code *)PTR_floor_003a9670;\n          if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d7c;\n        }\n        else {\n          if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d7c:\n            iVar15 = -0x7ffffdff;\n            goto joined_r0x001c8cbc;\n          }\n          dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar23 = (code *)PTR_ceil_003a8c20;\n        }\n        if (dVar26 < dVar32) {\n          iVar15 = 0x7ffffdff;\n        }\n        else {\n          dVar32 = (double)(*pcVar23)(dVar32);\n          iVar15 = (int)dVar32;\n        }\njoined_r0x001c8cbc:\n        dVar30 = dVar30 + local_a0;\n        if ((int)unaff_s7 < 0) {\n          dVar32 = 0.0;\n        }\n        else {\n          dVar32 = (double)(int)unaff_s7;\n        }\n        dVar32 = dVar30 + dVar32;\n        dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n        dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n        if (dVar32 - dVar26 < dVar27 - dVar32) {\n          if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8630;\n            goto LAB_001c8cec;\n          }\n        }\n        else if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;\n          goto LAB_001c8d18;\n        }\nLAB_001c8c88:\n        iVar14 = -0x7ffffdff;\nLAB_001c8644:\n        do {\n          unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n          param_2 = (undefined4 *******)((int)param_1[0x8d] + iVar15);\n          dVar32 = 0.0;\n          local_68 = unaff_s8;\n          local_60 = param_2;\n          if (0.0 < dVar34) {\n            dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n            unaff_s6 = &local_6c;\n            dVar27 = *(double *)((int)unaff_s3 + 0x4780);\n            do {\n              unaff_s7 = local_74;\n              if (unaff_s4 == (undefined4 ******)0x0) {\n                dVar33 = dVar32;\n                if ((int)local_74 < 1) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }\nLAB_001c8b04:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;\nLAB_001c8708:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8700:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar33 = 0.0;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8768:\n                  dVar33 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar33 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n              }\n              else {\n                dVar33 = dVar32;\n                if (0 < (int)local_74) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar27 <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar33 = 0.0;\n                }\n                else {\n                  if (dVar33 < dVar27) goto LAB_001c8b24;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (dVar26 < dVar33) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8850:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < dVar25) goto LAB_001c8a44;\n                  if (dVar33 <= dVar26) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar14 = 0x7ffffdff;\n                }\n                else if (dVar25 <= dVar33) {\n                  if (dVar33 <= dVar31) goto LAB_001c8abc;\n                  iVar14 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar14 = -0x7ffffdff;\n                }\n              }\n              unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n              param_2 = (undefined4 *******)((int)param_1[0x8c] + iVar15);\n              local_6c = unaff_s8;\n              local_64 = param_2;\n              iVar15 = (*(code *)PTR_CropImage_003a90b8)(param_1,unaff_s6,param_3);\n              if (iVar15 != 0) {\n                (*(code *)PTR_AppendImageToList_003a9880)(&local_80,iVar15);\n              }\n            } while (dVar32 < dVar34);\n          }\n          unaff_s5 = unaff_s3;\n          if (local_c8 <= dVar30) break;\n          if (unaff_s4 == (undefined4 ******)0x0) goto LAB_001c854c;\nLAB_001c8b70:\n          unaff_s7 = local_70;\n          dVar32 = dVar30;\n          if (0 < (int)local_70) {\n            dVar32 = dVar30 - (double)(int)local_70;\n          }\n          dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n          dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          if (dVar32 - dVar26 < dVar27 - dVar32) {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d8c;\n            pcVar23 = (code *)PTR_floor_003a9670;\n            if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8d50;\nLAB_001c8bd8:\n            dVar32 = (double)(*pcVar23)(dVar32);\n            iVar15 = (int)dVar32;\nLAB_001c8bf0:\n            dVar30 = dVar30 + local_a0;\n            if (-2 < (int)unaff_s7) goto LAB_001c8c00;\nLAB_001c8d6c:\n            dVar32 = (double)(int)unaff_s7;\n          }\n          else {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d8c:\n              iVar15 = -0x7ffffdff;\n              goto LAB_001c8bf0;\n            }\n            pcVar23 = (code *)PTR_ceil_003a8c20;\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8bd8;\nLAB_001c8d50:\n            iVar15 = 0x7ffffdff;\n            dVar30 = dVar30 + local_a0;\n            if ((int)unaff_s7 < -1) goto LAB_001c8d6c;\nLAB_001c8c00:\n            dVar32 = 0.0;\n          }\n          dVar32 = dVar30 + dVar32;\n          dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n          dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          if (dVar32 - dVar26 < dVar27 - dVar32) {\n            if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n              if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) {\nLAB_001c8cec:\n                iVar14 = 0x7ffffdff;\n              }\n              else {\nLAB_001c8630:\n                dVar32 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n                iVar14 = (int)dVar32;\n              }\n              goto LAB_001c8644;\n            }\n            goto LAB_001c8c88;\n          }\n          if (dVar32 < dVar25) goto LAB_001c8c88;\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;\nLAB_001c8d18:\n          dVar32 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          iVar14 = (int)dVar32;\n        } while( true );\n      }\n      (*(code *)PTR_ClearMagickException_003a90f8)(param_3);\n      pppppppuVar9 = local_80;\n      unaff_s0 = param_2;\n    }\n    else {\n      unaff_s3 = &local_7c;\n      if (((local_7c == (undefined4 *******)0x0) && (local_78 == (undefined4 ******)0x0)) ||\n         (((uint)ppppppuVar2 & 3) != 0)) {\n        local_80 = (undefined4 *******)(*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n        pppppppuVar9 = local_80;\n        unaff_s4 = ppppppuVar2;\n        if ((local_80 != (undefined4 *******)0x0) &&\n           (unaff_s4 = (undefined4 ******)((uint)ppppppuVar2 & 0x2000),\n           unaff_s4 != (undefined4 ******)0x0)) {\n          local_80[0x8c] = (undefined4 ******)((int)local_80[0x8c] - (int)local_74);\n          local_80[0x8d] = (undefined4 ******)((int)local_80[0x8d] - (int)local_70);\n          local_80[0x8a] = local_7c;\n          local_80[0x8b] = local_78;\n        }\n      }\n      else {\n        unaff_s7 = (undefined4 *******)param_1[6];\n        if ((local_7c < unaff_s7) || (local_78 < param_1[7])) {\n          ppppppuVar2 = param_1[0x8b];\n          if ((undefined4 *******)param_1[0x8a] != (undefined4 *******)0x0) {\n            unaff_s7 = (undefined4 *******)param_1[0x8a];\n          }\n          if (ppppppuVar2 == (undefined4 ******)0x0) {\n            ppppppuVar2 = param_1[7];\n          }\n          if (local_7c == (undefined4 *******)0x0) {\n            unaff_s0 = unaff_s7;\n          }\n          if (local_78 == (undefined4 ******)0x0) {\n            unaff_s4 = ppppppuVar2;\n          }\n          pppppppuVar9 = local_80;\n          if (0 < (int)ppppppuVar2) {\n            unaff_s3 = (undefined4 *******)0x0;\n            unaff_s8 = &local_80;\n            do {\n              unaff_s5 = (undefined4 *******)0x0;\n              if ((int)unaff_s7 < 1) {\n                pppppppuVar9 = local_80;\n                if (unaff_s6 == (undefined4 *******)0x0) break;\n              }\n              else {\n                do {\n                  local_7c = unaff_s0;\n                  local_78 = unaff_s4;\n                  local_74 = unaff_s5;\n                  local_70 = unaff_s3;\n                  unaff_s6 = (undefined4 *******)\n                             (*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n                  pppppppuVar9 = local_80;\n                  if (unaff_s6 == (undefined4 *******)0x0) goto LAB_001c8908;\n                  unaff_s5 = (undefined4 *******)((int)unaff_s5 + (int)unaff_s0);\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);\n              }\n              unaff_s3 = (undefined4 *******)((int)unaff_s3 + (int)unaff_s4);\n              pppppppuVar9 = local_80;\n            } while ((int)unaff_s3 < (int)ppppppuVar2);\n          }\n        }\n        else {\n          local_e8 = param_3;\n          pppppppuVar9 = (undefined4 *******)(*(code *)PTR_CloneImage_003a9830)(param_1,0,0,1);\n        }\n      }\n    }" if (parenthesized_expression "((int)ppppppuVar2 << 0xe < 0)" ( (binary_expression "(int)ppppppuVar2 << 0xe < 0" (binary_expression "(int)ppppppuVar2 << 0xe" (cast_expression "(int)ppppppuVar2" ( (type_descriptor "int" primitive_type) ) identifier) << number_literal) < number_literal) )) (compound_statement "{\n      ppppppuVar7 = param_1[7];\n      if (local_7c == (undefined4 *******)0x0) {\n        local_7c = (undefined4 *******)0x1;\n        dVar35 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n      }\n      else {\n        dVar35 = (double)(int)local_7c;\n        if ((int)local_7c < 0) {\n          dVar35 = dVar35 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n      }\n      if (local_78 == (undefined4 ******)0x0) {\n        dVar30 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n        local_78 = (undefined4 ******)0x1;\n        if (((uint)ppppppuVar2 & 0x2000) != 0) goto LAB_001c8e14;\nLAB_001c8484:\n        pppppppuVar9 = local_74;\n        if ((int)local_74 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_74;\n        }\n        puVar8 = (undefined *)((int)param_1[6] - (int)pppppppuVar9);\n        pppppppuVar9 = local_70;\n        if ((int)local_70 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_70;\n        }\n        puVar3 = (undefined *)((int)ppppppuVar7 - (int)pppppppuVar9);\n      }\n      else {\n        dVar30 = (double)(int)local_78;\n        if ((int)local_78 < 0) {\n          dVar30 = dVar30 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n        if (((uint)ppppppuVar2 & 0x2000) == 0) goto LAB_001c8484;\nLAB_001c8e14:\n        pppppppuVar9 = local_74;\n        if ((int)local_74 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_74;\n        }\n        puVar8 = (undefined *)((int)pppppppuVar9 + (int)param_1[6]);\n        if ((int)local_70 < 0) {\n          puVar3 = (undefined *)((int)ppppppuVar7 - (int)local_70);\n        }\n        else {\n          puVar3 = (undefined *)((int)local_70 + (int)ppppppuVar7);\n        }\n      }\n      unaff_s4 = (undefined4 ******)((uint)ppppppuVar2 & 0x2000);\n      dVar34 = (double)(int)puVar8;\n      if ((int)puVar8 < 0) {\n        dVar34 = dVar34 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n      }\n      dVar35 = dVar34 / dVar35;\n      local_c8 = (double)(int)puVar3;\n      if ((int)puVar3 < 0) {\n        local_c8 = local_c8 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n      }\n      dVar25 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n      local_a0 = dVar25;\n      if (dVar35 < dVar25) {\n        local_a0 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n        dVar35 = dVar25;\n      }\n      if (local_a0 <= local_c8 / dVar30) {\n        local_a0 = local_c8 / dVar30;\n      }\n      dVar30 = 0.0;\n      unaff_s7 = local_70;\n      if (0.0 < local_c8) {\n        dVar25 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4780);\n        dVar31 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4788);\n        if (unaff_s4 != (undefined4 ******)0x0) goto LAB_001c8b70;\nLAB_001c854c:\n        unaff_s7 = local_70;\n        dVar32 = dVar30;\n        if ((int)local_70 < 1) {\n          dVar32 = dVar30 - (double)(int)local_70;\n        }\n        dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n        dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n        if (dVar32 - dVar26 < dVar27 - dVar32) {\n          dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar23 = (code *)PTR_floor_003a9670;\n          if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d7c;\n        }\n        else {\n          if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d7c:\n            iVar15 = -0x7ffffdff;\n            goto joined_r0x001c8cbc;\n          }\n          dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar23 = (code *)PTR_ceil_003a8c20;\n        }\n        if (dVar26 < dVar32) {\n          iVar15 = 0x7ffffdff;\n        }\n        else {\n          dVar32 = (double)(*pcVar23)(dVar32);\n          iVar15 = (int)dVar32;\n        }\njoined_r0x001c8cbc:\n        dVar30 = dVar30 + local_a0;\n        if ((int)unaff_s7 < 0) {\n          dVar32 = 0.0;\n        }\n        else {\n          dVar32 = (double)(int)unaff_s7;\n        }\n        dVar32 = dVar30 + dVar32;\n        dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n        dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n        if (dVar32 - dVar26 < dVar27 - dVar32) {\n          if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8630;\n            goto LAB_001c8cec;\n          }\n        }\n        else if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;\n          goto LAB_001c8d18;\n        }\nLAB_001c8c88:\n        iVar14 = -0x7ffffdff;\nLAB_001c8644:\n        do {\n          unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n          param_2 = (undefined4 *******)((int)param_1[0x8d] + iVar15);\n          dVar32 = 0.0;\n          local_68 = unaff_s8;\n          local_60 = param_2;\n          if (0.0 < dVar34) {\n            dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n            unaff_s6 = &local_6c;\n            dVar27 = *(double *)((int)unaff_s3 + 0x4780);\n            do {\n              unaff_s7 = local_74;\n              if (unaff_s4 == (undefined4 ******)0x0) {\n                dVar33 = dVar32;\n                if ((int)local_74 < 1) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }\nLAB_001c8b04:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;\nLAB_001c8708:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8700:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar33 = 0.0;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8768:\n                  dVar33 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar33 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n              }\n              else {\n                dVar33 = dVar32;\n                if (0 < (int)local_74) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar27 <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar33 = 0.0;\n                }\n                else {\n                  if (dVar33 < dVar27) goto LAB_001c8b24;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (dVar26 < dVar33) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8850:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < dVar25) goto LAB_001c8a44;\n                  if (dVar33 <= dVar26) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar14 = 0x7ffffdff;\n                }\n                else if (dVar25 <= dVar33) {\n                  if (dVar33 <= dVar31) goto LAB_001c8abc;\n                  iVar14 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar14 = -0x7ffffdff;\n                }\n              }\n              unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n              param_2 = (undefined4 *******)((int)param_1[0x8c] + iVar15);\n              local_6c = unaff_s8;\n              local_64 = param_2;\n              iVar15 = (*(code *)PTR_CropImage_003a90b8)(param_1,unaff_s6,param_3);\n              if (iVar15 != 0) {\n                (*(code *)PTR_AppendImageToList_003a9880)(&local_80,iVar15);\n              }\n            } while (dVar32 < dVar34);\n          }\n          unaff_s5 = unaff_s3;\n          if (local_c8 <= dVar30) break;\n          if (unaff_s4 == (undefined4 ******)0x0) goto LAB_001c854c;\nLAB_001c8b70:\n          unaff_s7 = local_70;\n          dVar32 = dVar30;\n          if (0 < (int)local_70) {\n            dVar32 = dVar30 - (double)(int)local_70;\n          }\n          dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n          dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          if (dVar32 - dVar26 < dVar27 - dVar32) {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d8c;\n            pcVar23 = (code *)PTR_floor_003a9670;\n            if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8d50;\nLAB_001c8bd8:\n            dVar32 = (double)(*pcVar23)(dVar32);\n            iVar15 = (int)dVar32;\nLAB_001c8bf0:\n            dVar30 = dVar30 + local_a0;\n            if (-2 < (int)unaff_s7) goto LAB_001c8c00;\nLAB_001c8d6c:\n            dVar32 = (double)(int)unaff_s7;\n          }\n          else {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d8c:\n              iVar15 = -0x7ffffdff;\n              goto LAB_001c8bf0;\n            }\n            pcVar23 = (code *)PTR_ceil_003a8c20;\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8bd8;\nLAB_001c8d50:\n            iVar15 = 0x7ffffdff;\n            dVar30 = dVar30 + local_a0;\n            if ((int)unaff_s7 < -1) goto LAB_001c8d6c;\nLAB_001c8c00:\n            dVar32 = 0.0;\n          }\n          dVar32 = dVar30 + dVar32;\n          dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n          dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          if (dVar32 - dVar26 < dVar27 - dVar32) {\n            if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n              if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) {\nLAB_001c8cec:\n                iVar14 = 0x7ffffdff;\n              }\n              else {\nLAB_001c8630:\n                dVar32 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n                iVar14 = (int)dVar32;\n              }\n              goto LAB_001c8644;\n            }\n            goto LAB_001c8c88;\n          }\n          if (dVar32 < dVar25) goto LAB_001c8c88;\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;\nLAB_001c8d18:\n          dVar32 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          iVar14 = (int)dVar32;\n        } while( true );\n      }\n      (*(code *)PTR_ClearMagickException_003a90f8)(param_3);\n      pppppppuVar9 = local_80;\n      unaff_s0 = param_2;\n    }" { (expression_statement "ppppppuVar7 = param_1[7];" (assignment_expression "ppppppuVar7 = param_1[7]" identifier = (subscript_expression "param_1[7]" identifier [ number_literal ])) ;) (if_statement "if (local_7c == (undefined4 *******)0x0) {\n        local_7c = (undefined4 *******)0x1;\n        dVar35 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n      }\n      else {\n        dVar35 = (double)(int)local_7c;\n        if ((int)local_7c < 0) {\n          dVar35 = dVar35 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n      }" if (parenthesized_expression "(local_7c == (undefined4 *******)0x0)" ( (binary_expression "local_7c == (undefined4 *******)0x0" identifier == (cast_expression "(undefined4 *******)0x0" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n        local_7c = (undefined4 *******)0x1;\n        dVar35 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n      }" { (expression_statement "local_7c = (undefined4 *******)0x1;" (assignment_expression "local_7c = (undefined4 *******)0x1" identifier = (cast_expression "(undefined4 *******)0x1" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "dVar35 = *(double *)(PTR_LAB_003a88e0 + 0x1438);" (assignment_expression "dVar35 = *(double *)(PTR_LAB_003a88e0 + 0x1438)" identifier = (pointer_expression "*(double *)(PTR_LAB_003a88e0 + 0x1438)" * (cast_expression "(double *)(PTR_LAB_003a88e0 + 0x1438)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_003a88e0 + 0x1438)" ( (binary_expression "PTR_LAB_003a88e0 + 0x1438" identifier + number_literal) ))))) ;) }) (else_clause "else {\n        dVar35 = (double)(int)local_7c;\n        if ((int)local_7c < 0) {\n          dVar35 = dVar35 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n      }" else (compound_statement "{\n        dVar35 = (double)(int)local_7c;\n        if ((int)local_7c < 0) {\n          dVar35 = dVar35 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n      }" { (expression_statement "dVar35 = (double)(int)local_7c;" (assignment_expression "dVar35 = (double)(int)local_7c" identifier = (cast_expression "(double)(int)local_7c" ( (type_descriptor "double" primitive_type) ) (cast_expression "(int)local_7c" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (if_statement "if ((int)local_7c < 0) {\n          dVar35 = dVar35 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }" if (parenthesized_expression "((int)local_7c < 0)" ( (binary_expression "(int)local_7c < 0" (cast_expression "(int)local_7c" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n          dVar35 = dVar35 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }" { (expression_statement "dVar35 = dVar35 + *(double *)(PTR_LAB_003a88e0 + 0x1418);" (assignment_expression "dVar35 = dVar35 + *(double *)(PTR_LAB_003a88e0 + 0x1418)" identifier = (binary_expression "dVar35 + *(double *)(PTR_LAB_003a88e0 + 0x1418)" identifier + (pointer_expression "*(double *)(PTR_LAB_003a88e0 + 0x1418)" * (cast_expression "(double *)(PTR_LAB_003a88e0 + 0x1418)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_003a88e0 + 0x1418)" ( (binary_expression "PTR_LAB_003a88e0 + 0x1418" identifier + number_literal) )))))) ;) })) }))) (if_statement "if (local_78 == (undefined4 ******)0x0) {\n        dVar30 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n        local_78 = (undefined4 ******)0x1;\n        if (((uint)ppppppuVar2 & 0x2000) != 0) goto LAB_001c8e14;\nLAB_001c8484:\n        pppppppuVar9 = local_74;\n        if ((int)local_74 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_74;\n        }\n        puVar8 = (undefined *)((int)param_1[6] - (int)pppppppuVar9);\n        pppppppuVar9 = local_70;\n        if ((int)local_70 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_70;\n        }\n        puVar3 = (undefined *)((int)ppppppuVar7 - (int)pppppppuVar9);\n      }\n      else {\n        dVar30 = (double)(int)local_78;\n        if ((int)local_78 < 0) {\n          dVar30 = dVar30 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n        if (((uint)ppppppuVar2 & 0x2000) == 0) goto LAB_001c8484;\nLAB_001c8e14:\n        pppppppuVar9 = local_74;\n        if ((int)local_74 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_74;\n        }\n        puVar8 = (undefined *)((int)pppppppuVar9 + (int)param_1[6]);\n        if ((int)local_70 < 0) {\n          puVar3 = (undefined *)((int)ppppppuVar7 - (int)local_70);\n        }\n        else {\n          puVar3 = (undefined *)((int)local_70 + (int)ppppppuVar7);\n        }\n      }" if (parenthesized_expression "(local_78 == (undefined4 ******)0x0)" ( (binary_expression "local_78 == (undefined4 ******)0x0" identifier == (cast_expression "(undefined4 ******)0x0" ( (type_descriptor "undefined4 ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n        dVar30 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n        local_78 = (undefined4 ******)0x1;\n        if (((uint)ppppppuVar2 & 0x2000) != 0) goto LAB_001c8e14;\nLAB_001c8484:\n        pppppppuVar9 = local_74;\n        if ((int)local_74 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_74;\n        }\n        puVar8 = (undefined *)((int)param_1[6] - (int)pppppppuVar9);\n        pppppppuVar9 = local_70;\n        if ((int)local_70 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_70;\n        }\n        puVar3 = (undefined *)((int)ppppppuVar7 - (int)pppppppuVar9);\n      }" { (expression_statement "dVar30 = *(double *)(PTR_LAB_003a88e0 + 0x1438);" (assignment_expression "dVar30 = *(double *)(PTR_LAB_003a88e0 + 0x1438)" identifier = (pointer_expression "*(double *)(PTR_LAB_003a88e0 + 0x1438)" * (cast_expression "(double *)(PTR_LAB_003a88e0 + 0x1438)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_003a88e0 + 0x1438)" ( (binary_expression "PTR_LAB_003a88e0 + 0x1438" identifier + number_literal) ))))) ;) (expression_statement "local_78 = (undefined4 ******)0x1;" (assignment_expression "local_78 = (undefined4 ******)0x1" identifier = (cast_expression "(undefined4 ******)0x1" ( (type_descriptor "undefined4 ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) ;) (if_statement "if (((uint)ppppppuVar2 & 0x2000) != 0) goto LAB_001c8e14;" if (parenthesized_expression "(((uint)ppppppuVar2 & 0x2000) != 0)" ( (binary_expression "((uint)ppppppuVar2 & 0x2000) != 0" (parenthesized_expression "((uint)ppppppuVar2 & 0x2000)" ( (binary_expression "(uint)ppppppuVar2 & 0x2000" (cast_expression "(uint)ppppppuVar2" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )) != number_literal) )) (goto_statement "goto LAB_001c8e14;" goto statement_identifier ;)) (labeled_statement "LAB_001c8484:\n        pppppppuVar9 = local_74;" statement_identifier : (expression_statement "pppppppuVar9 = local_74;" (assignment_expression "pppppppuVar9 = local_74" identifier = identifier) ;)) (if_statement "if ((int)local_74 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_74;\n        }" if (parenthesized_expression "((int)local_74 < 0)" ( (binary_expression "(int)local_74 < 0" (cast_expression "(int)local_74" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n          pppppppuVar9 = (undefined4 *******)-(int)local_74;\n        }" { (expression_statement "pppppppuVar9 = (undefined4 *******)-(int)local_74;" (assignment_expression "pppppppuVar9 = (undefined4 *******)-(int)local_74" identifier = (cast_expression "(undefined4 *******)-(int)local_74" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (unary_expression "-(int)local_74" - (cast_expression "(int)local_74" ( (type_descriptor "int" primitive_type) ) identifier)))) ;) })) (expression_statement "puVar8 = (undefined *)((int)param_1[6] - (int)pppppppuVar9);" (assignment_expression "puVar8 = (undefined *)((int)param_1[6] - (int)pppppppuVar9)" identifier = (cast_expression "(undefined *)((int)param_1[6] - (int)pppppppuVar9)" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)param_1[6] - (int)pppppppuVar9)" ( (binary_expression "(int)param_1[6] - (int)pppppppuVar9" (cast_expression "(int)param_1[6]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "param_1[6]" identifier [ number_literal ])) - (cast_expression "(int)pppppppuVar9" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "pppppppuVar9 = local_70;" (assignment_expression "pppppppuVar9 = local_70" identifier = identifier) ;) (if_statement "if ((int)local_70 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_70;\n        }" if (parenthesized_expression "((int)local_70 < 0)" ( (binary_expression "(int)local_70 < 0" (cast_expression "(int)local_70" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n          pppppppuVar9 = (undefined4 *******)-(int)local_70;\n        }" { (expression_statement "pppppppuVar9 = (undefined4 *******)-(int)local_70;" (assignment_expression "pppppppuVar9 = (undefined4 *******)-(int)local_70" identifier = (cast_expression "(undefined4 *******)-(int)local_70" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (unary_expression "-(int)local_70" - (cast_expression "(int)local_70" ( (type_descriptor "int" primitive_type) ) identifier)))) ;) })) (expression_statement "puVar3 = (undefined *)((int)ppppppuVar7 - (int)pppppppuVar9);" (assignment_expression "puVar3 = (undefined *)((int)ppppppuVar7 - (int)pppppppuVar9)" identifier = (cast_expression "(undefined *)((int)ppppppuVar7 - (int)pppppppuVar9)" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)ppppppuVar7 - (int)pppppppuVar9)" ( (binary_expression "(int)ppppppuVar7 - (int)pppppppuVar9" (cast_expression "(int)ppppppuVar7" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pppppppuVar9" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) }) (else_clause "else {\n        dVar30 = (double)(int)local_78;\n        if ((int)local_78 < 0) {\n          dVar30 = dVar30 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n        if (((uint)ppppppuVar2 & 0x2000) == 0) goto LAB_001c8484;\nLAB_001c8e14:\n        pppppppuVar9 = local_74;\n        if ((int)local_74 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_74;\n        }\n        puVar8 = (undefined *)((int)pppppppuVar9 + (int)param_1[6]);\n        if ((int)local_70 < 0) {\n          puVar3 = (undefined *)((int)ppppppuVar7 - (int)local_70);\n        }\n        else {\n          puVar3 = (undefined *)((int)local_70 + (int)ppppppuVar7);\n        }\n      }" else (compound_statement "{\n        dVar30 = (double)(int)local_78;\n        if ((int)local_78 < 0) {\n          dVar30 = dVar30 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n        if (((uint)ppppppuVar2 & 0x2000) == 0) goto LAB_001c8484;\nLAB_001c8e14:\n        pppppppuVar9 = local_74;\n        if ((int)local_74 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_74;\n        }\n        puVar8 = (undefined *)((int)pppppppuVar9 + (int)param_1[6]);\n        if ((int)local_70 < 0) {\n          puVar3 = (undefined *)((int)ppppppuVar7 - (int)local_70);\n        }\n        else {\n          puVar3 = (undefined *)((int)local_70 + (int)ppppppuVar7);\n        }\n      }" { (expression_statement "dVar30 = (double)(int)local_78;" (assignment_expression "dVar30 = (double)(int)local_78" identifier = (cast_expression "(double)(int)local_78" ( (type_descriptor "double" primitive_type) ) (cast_expression "(int)local_78" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (if_statement "if ((int)local_78 < 0) {\n          dVar30 = dVar30 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }" if (parenthesized_expression "((int)local_78 < 0)" ( (binary_expression "(int)local_78 < 0" (cast_expression "(int)local_78" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n          dVar30 = dVar30 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }" { (expression_statement "dVar30 = dVar30 + *(double *)(PTR_LAB_003a88e0 + 0x1418);" (assignment_expression "dVar30 = dVar30 + *(double *)(PTR_LAB_003a88e0 + 0x1418)" identifier = (binary_expression "dVar30 + *(double *)(PTR_LAB_003a88e0 + 0x1418)" identifier + (pointer_expression "*(double *)(PTR_LAB_003a88e0 + 0x1418)" * (cast_expression "(double *)(PTR_LAB_003a88e0 + 0x1418)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_003a88e0 + 0x1418)" ( (binary_expression "PTR_LAB_003a88e0 + 0x1418" identifier + number_literal) )))))) ;) })) (if_statement "if (((uint)ppppppuVar2 & 0x2000) == 0) goto LAB_001c8484;" if (parenthesized_expression "(((uint)ppppppuVar2 & 0x2000) == 0)" ( (binary_expression "((uint)ppppppuVar2 & 0x2000) == 0" (parenthesized_expression "((uint)ppppppuVar2 & 0x2000)" ( (binary_expression "(uint)ppppppuVar2 & 0x2000" (cast_expression "(uint)ppppppuVar2" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )) == number_literal) )) (goto_statement "goto LAB_001c8484;" goto statement_identifier ;)) (labeled_statement "LAB_001c8e14:\n        pppppppuVar9 = local_74;" statement_identifier : (expression_statement "pppppppuVar9 = local_74;" (assignment_expression "pppppppuVar9 = local_74" identifier = identifier) ;)) (if_statement "if ((int)local_74 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_74;\n        }" if (parenthesized_expression "((int)local_74 < 0)" ( (binary_expression "(int)local_74 < 0" (cast_expression "(int)local_74" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n          pppppppuVar9 = (undefined4 *******)-(int)local_74;\n        }" { (expression_statement "pppppppuVar9 = (undefined4 *******)-(int)local_74;" (assignment_expression "pppppppuVar9 = (undefined4 *******)-(int)local_74" identifier = (cast_expression "(undefined4 *******)-(int)local_74" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (unary_expression "-(int)local_74" - (cast_expression "(int)local_74" ( (type_descriptor "int" primitive_type) ) identifier)))) ;) })) (expression_statement "puVar8 = (undefined *)((int)pppppppuVar9 + (int)param_1[6]);" (assignment_expression "puVar8 = (undefined *)((int)pppppppuVar9 + (int)param_1[6])" identifier = (cast_expression "(undefined *)((int)pppppppuVar9 + (int)param_1[6])" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pppppppuVar9 + (int)param_1[6])" ( (binary_expression "(int)pppppppuVar9 + (int)param_1[6]" (cast_expression "(int)pppppppuVar9" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)param_1[6]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "param_1[6]" identifier [ number_literal ]))) )))) ;) (if_statement "if ((int)local_70 < 0) {\n          puVar3 = (undefined *)((int)ppppppuVar7 - (int)local_70);\n        }\n        else {\n          puVar3 = (undefined *)((int)local_70 + (int)ppppppuVar7);\n        }" if (parenthesized_expression "((int)local_70 < 0)" ( (binary_expression "(int)local_70 < 0" (cast_expression "(int)local_70" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n          puVar3 = (undefined *)((int)ppppppuVar7 - (int)local_70);\n        }" { (expression_statement "puVar3 = (undefined *)((int)ppppppuVar7 - (int)local_70);" (assignment_expression "puVar3 = (undefined *)((int)ppppppuVar7 - (int)local_70)" identifier = (cast_expression "(undefined *)((int)ppppppuVar7 - (int)local_70)" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)ppppppuVar7 - (int)local_70)" ( (binary_expression "(int)ppppppuVar7 - (int)local_70" (cast_expression "(int)ppppppuVar7" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)local_70" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) }) (else_clause "else {\n          puVar3 = (undefined *)((int)local_70 + (int)ppppppuVar7);\n        }" else (compound_statement "{\n          puVar3 = (undefined *)((int)local_70 + (int)ppppppuVar7);\n        }" { (expression_statement "puVar3 = (undefined *)((int)local_70 + (int)ppppppuVar7);" (assignment_expression "puVar3 = (undefined *)((int)local_70 + (int)ppppppuVar7)" identifier = (cast_expression "(undefined *)((int)local_70 + (int)ppppppuVar7)" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_70 + (int)ppppppuVar7)" ( (binary_expression "(int)local_70 + (int)ppppppuVar7" (cast_expression "(int)local_70" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)ppppppuVar7" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) }))) }))) (expression_statement "unaff_s4 = (undefined4 ******)((uint)ppppppuVar2 & 0x2000);" (assignment_expression "unaff_s4 = (undefined4 ******)((uint)ppppppuVar2 & 0x2000)" identifier = (cast_expression "(undefined4 ******)((uint)ppppppuVar2 & 0x2000)" ( (type_descriptor "undefined4 ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (parenthesized_expression "((uint)ppppppuVar2 & 0x2000)" ( (binary_expression "(uint)ppppppuVar2 & 0x2000" (cast_expression "(uint)ppppppuVar2" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )))) ;) (expression_statement "dVar34 = (double)(int)puVar8;" (assignment_expression "dVar34 = (double)(int)puVar8" identifier = (cast_expression "(double)(int)puVar8" ( (type_descriptor "double" primitive_type) ) (cast_expression "(int)puVar8" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (if_statement "if ((int)puVar8 < 0) {\n        dVar34 = dVar34 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n      }" if (parenthesized_expression "((int)puVar8 < 0)" ( (binary_expression "(int)puVar8 < 0" (cast_expression "(int)puVar8" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n        dVar34 = dVar34 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n      }" { (expression_statement "dVar34 = dVar34 + *(double *)(PTR_LAB_003a88e0 + 0x1418);" (assignment_expression "dVar34 = dVar34 + *(double *)(PTR_LAB_003a88e0 + 0x1418)" identifier = (binary_expression "dVar34 + *(double *)(PTR_LAB_003a88e0 + 0x1418)" identifier + (pointer_expression "*(double *)(PTR_LAB_003a88e0 + 0x1418)" * (cast_expression "(double *)(PTR_LAB_003a88e0 + 0x1418)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_003a88e0 + 0x1418)" ( (binary_expression "PTR_LAB_003a88e0 + 0x1418" identifier + number_literal) )))))) ;) })) (expression_statement "dVar35 = dVar34 / dVar35;" (assignment_expression "dVar35 = dVar34 / dVar35" identifier = (binary_expression "dVar34 / dVar35" identifier / identifier)) ;) (expression_statement "local_c8 = (double)(int)puVar3;" (assignment_expression "local_c8 = (double)(int)puVar3" identifier = (cast_expression "(double)(int)puVar3" ( (type_descriptor "double" primitive_type) ) (cast_expression "(int)puVar3" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (if_statement "if ((int)puVar3 < 0) {\n        local_c8 = local_c8 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n      }" if (parenthesized_expression "((int)puVar3 < 0)" ( (binary_expression "(int)puVar3 < 0" (cast_expression "(int)puVar3" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n        local_c8 = local_c8 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n      }" { (expression_statement "local_c8 = local_c8 + *(double *)(PTR_LAB_003a88e0 + 0x1418);" (assignment_expression "local_c8 = local_c8 + *(double *)(PTR_LAB_003a88e0 + 0x1418)" identifier = (binary_expression "local_c8 + *(double *)(PTR_LAB_003a88e0 + 0x1418)" identifier + (pointer_expression "*(double *)(PTR_LAB_003a88e0 + 0x1418)" * (cast_expression "(double *)(PTR_LAB_003a88e0 + 0x1418)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_003a88e0 + 0x1418)" ( (binary_expression "PTR_LAB_003a88e0 + 0x1418" identifier + number_literal) )))))) ;) })) (expression_statement "dVar25 = *(double *)(PTR_LAB_003a88e0 + 0x1438);" (assignment_expression "dVar25 = *(double *)(PTR_LAB_003a88e0 + 0x1438)" identifier = (pointer_expression "*(double *)(PTR_LAB_003a88e0 + 0x1438)" * (cast_expression "(double *)(PTR_LAB_003a88e0 + 0x1438)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_003a88e0 + 0x1438)" ( (binary_expression "PTR_LAB_003a88e0 + 0x1438" identifier + number_literal) ))))) ;) (expression_statement "local_a0 = dVar25;" (assignment_expression "local_a0 = dVar25" identifier = identifier) ;) (if_statement "if (dVar35 < dVar25) {\n        local_a0 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n        dVar35 = dVar25;\n      }" if (parenthesized_expression "(dVar35 < dVar25)" ( (binary_expression "dVar35 < dVar25" identifier < identifier) )) (compound_statement "{\n        local_a0 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n        dVar35 = dVar25;\n      }" { (expression_statement "local_a0 = *(double *)(PTR_LAB_003a88e0 + 0x1438);" (assignment_expression "local_a0 = *(double *)(PTR_LAB_003a88e0 + 0x1438)" identifier = (pointer_expression "*(double *)(PTR_LAB_003a88e0 + 0x1438)" * (cast_expression "(double *)(PTR_LAB_003a88e0 + 0x1438)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_003a88e0 + 0x1438)" ( (binary_expression "PTR_LAB_003a88e0 + 0x1438" identifier + number_literal) ))))) ;) (expression_statement "dVar35 = dVar25;" (assignment_expression "dVar35 = dVar25" identifier = identifier) ;) })) (if_statement "if (local_a0 <= local_c8 / dVar30) {\n        local_a0 = local_c8 / dVar30;\n      }" if (parenthesized_expression "(local_a0 <= local_c8 / dVar30)" ( (binary_expression "local_a0 <= local_c8 / dVar30" identifier <= (binary_expression "local_c8 / dVar30" identifier / identifier)) )) (compound_statement "{\n        local_a0 = local_c8 / dVar30;\n      }" { (expression_statement "local_a0 = local_c8 / dVar30;" (assignment_expression "local_a0 = local_c8 / dVar30" identifier = (binary_expression "local_c8 / dVar30" identifier / identifier)) ;) })) (expression_statement "dVar30 = 0.0;" (assignment_expression "dVar30 = 0.0" identifier = number_literal) ;) (expression_statement "unaff_s7 = local_70;" (assignment_expression "unaff_s7 = local_70" identifier = identifier) ;) (if_statement "if (0.0 < local_c8) {\n        dVar25 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4780);\n        dVar31 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4788);\n        if (unaff_s4 != (undefined4 ******)0x0) goto LAB_001c8b70;\nLAB_001c854c:\n        unaff_s7 = local_70;\n        dVar32 = dVar30;\n        if ((int)local_70 < 1) {\n          dVar32 = dVar30 - (double)(int)local_70;\n        }\n        dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n        dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n        if (dVar32 - dVar26 < dVar27 - dVar32) {\n          dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar23 = (code *)PTR_floor_003a9670;\n          if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d7c;\n        }\n        else {\n          if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d7c:\n            iVar15 = -0x7ffffdff;\n            goto joined_r0x001c8cbc;\n          }\n          dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar23 = (code *)PTR_ceil_003a8c20;\n        }\n        if (dVar26 < dVar32) {\n          iVar15 = 0x7ffffdff;\n        }\n        else {\n          dVar32 = (double)(*pcVar23)(dVar32);\n          iVar15 = (int)dVar32;\n        }\njoined_r0x001c8cbc:\n        dVar30 = dVar30 + local_a0;\n        if ((int)unaff_s7 < 0) {\n          dVar32 = 0.0;\n        }\n        else {\n          dVar32 = (double)(int)unaff_s7;\n        }\n        dVar32 = dVar30 + dVar32;\n        dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n        dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n        if (dVar32 - dVar26 < dVar27 - dVar32) {\n          if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8630;\n            goto LAB_001c8cec;\n          }\n        }\n        else if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;\n          goto LAB_001c8d18;\n        }\nLAB_001c8c88:\n        iVar14 = -0x7ffffdff;\nLAB_001c8644:\n        do {\n          unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n          param_2 = (undefined4 *******)((int)param_1[0x8d] + iVar15);\n          dVar32 = 0.0;\n          local_68 = unaff_s8;\n          local_60 = param_2;\n          if (0.0 < dVar34) {\n            dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n            unaff_s6 = &local_6c;\n            dVar27 = *(double *)((int)unaff_s3 + 0x4780);\n            do {\n              unaff_s7 = local_74;\n              if (unaff_s4 == (undefined4 ******)0x0) {\n                dVar33 = dVar32;\n                if ((int)local_74 < 1) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }\nLAB_001c8b04:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;\nLAB_001c8708:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8700:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar33 = 0.0;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8768:\n                  dVar33 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar33 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n              }\n              else {\n                dVar33 = dVar32;\n                if (0 < (int)local_74) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar27 <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar33 = 0.0;\n                }\n                else {\n                  if (dVar33 < dVar27) goto LAB_001c8b24;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (dVar26 < dVar33) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8850:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < dVar25) goto LAB_001c8a44;\n                  if (dVar33 <= dVar26) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar14 = 0x7ffffdff;\n                }\n                else if (dVar25 <= dVar33) {\n                  if (dVar33 <= dVar31) goto LAB_001c8abc;\n                  iVar14 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar14 = -0x7ffffdff;\n                }\n              }\n              unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n              param_2 = (undefined4 *******)((int)param_1[0x8c] + iVar15);\n              local_6c = unaff_s8;\n              local_64 = param_2;\n              iVar15 = (*(code *)PTR_CropImage_003a90b8)(param_1,unaff_s6,param_3);\n              if (iVar15 != 0) {\n                (*(code *)PTR_AppendImageToList_003a9880)(&local_80,iVar15);\n              }\n            } while (dVar32 < dVar34);\n          }\n          unaff_s5 = unaff_s3;\n          if (local_c8 <= dVar30) break;\n          if (unaff_s4 == (undefined4 ******)0x0) goto LAB_001c854c;\nLAB_001c8b70:\n          unaff_s7 = local_70;\n          dVar32 = dVar30;\n          if (0 < (int)local_70) {\n            dVar32 = dVar30 - (double)(int)local_70;\n          }\n          dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n          dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          if (dVar32 - dVar26 < dVar27 - dVar32) {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d8c;\n            pcVar23 = (code *)PTR_floor_003a9670;\n            if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8d50;\nLAB_001c8bd8:\n            dVar32 = (double)(*pcVar23)(dVar32);\n            iVar15 = (int)dVar32;\nLAB_001c8bf0:\n            dVar30 = dVar30 + local_a0;\n            if (-2 < (int)unaff_s7) goto LAB_001c8c00;\nLAB_001c8d6c:\n            dVar32 = (double)(int)unaff_s7;\n          }\n          else {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d8c:\n              iVar15 = -0x7ffffdff;\n              goto LAB_001c8bf0;\n            }\n            pcVar23 = (code *)PTR_ceil_003a8c20;\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8bd8;\nLAB_001c8d50:\n            iVar15 = 0x7ffffdff;\n            dVar30 = dVar30 + local_a0;\n            if ((int)unaff_s7 < -1) goto LAB_001c8d6c;\nLAB_001c8c00:\n            dVar32 = 0.0;\n          }\n          dVar32 = dVar30 + dVar32;\n          dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n          dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          if (dVar32 - dVar26 < dVar27 - dVar32) {\n            if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n              if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) {\nLAB_001c8cec:\n                iVar14 = 0x7ffffdff;\n              }\n              else {\nLAB_001c8630:\n                dVar32 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n                iVar14 = (int)dVar32;\n              }\n              goto LAB_001c8644;\n            }\n            goto LAB_001c8c88;\n          }\n          if (dVar32 < dVar25) goto LAB_001c8c88;\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;\nLAB_001c8d18:\n          dVar32 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          iVar14 = (int)dVar32;\n        } while( true );\n      }" if (parenthesized_expression "(0.0 < local_c8)" ( (binary_expression "0.0 < local_c8" number_literal < identifier) )) (compound_statement "{\n        dVar25 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4780);\n        dVar31 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4788);\n        if (unaff_s4 != (undefined4 ******)0x0) goto LAB_001c8b70;\nLAB_001c854c:\n        unaff_s7 = local_70;\n        dVar32 = dVar30;\n        if ((int)local_70 < 1) {\n          dVar32 = dVar30 - (double)(int)local_70;\n        }\n        dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n        dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n        if (dVar32 - dVar26 < dVar27 - dVar32) {\n          dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar23 = (code *)PTR_floor_003a9670;\n          if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d7c;\n        }\n        else {\n          if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d7c:\n            iVar15 = -0x7ffffdff;\n            goto joined_r0x001c8cbc;\n          }\n          dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar23 = (code *)PTR_ceil_003a8c20;\n        }\n        if (dVar26 < dVar32) {\n          iVar15 = 0x7ffffdff;\n        }\n        else {\n          dVar32 = (double)(*pcVar23)(dVar32);\n          iVar15 = (int)dVar32;\n        }\njoined_r0x001c8cbc:\n        dVar30 = dVar30 + local_a0;\n        if ((int)unaff_s7 < 0) {\n          dVar32 = 0.0;\n        }\n        else {\n          dVar32 = (double)(int)unaff_s7;\n        }\n        dVar32 = dVar30 + dVar32;\n        dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n        dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n        if (dVar32 - dVar26 < dVar27 - dVar32) {\n          if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8630;\n            goto LAB_001c8cec;\n          }\n        }\n        else if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;\n          goto LAB_001c8d18;\n        }\nLAB_001c8c88:\n        iVar14 = -0x7ffffdff;\nLAB_001c8644:\n        do {\n          unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n          param_2 = (undefined4 *******)((int)param_1[0x8d] + iVar15);\n          dVar32 = 0.0;\n          local_68 = unaff_s8;\n          local_60 = param_2;\n          if (0.0 < dVar34) {\n            dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n            unaff_s6 = &local_6c;\n            dVar27 = *(double *)((int)unaff_s3 + 0x4780);\n            do {\n              unaff_s7 = local_74;\n              if (unaff_s4 == (undefined4 ******)0x0) {\n                dVar33 = dVar32;\n                if ((int)local_74 < 1) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }\nLAB_001c8b04:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;\nLAB_001c8708:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8700:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar33 = 0.0;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8768:\n                  dVar33 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar33 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n              }\n              else {\n                dVar33 = dVar32;\n                if (0 < (int)local_74) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar27 <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar33 = 0.0;\n                }\n                else {\n                  if (dVar33 < dVar27) goto LAB_001c8b24;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (dVar26 < dVar33) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8850:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < dVar25) goto LAB_001c8a44;\n                  if (dVar33 <= dVar26) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar14 = 0x7ffffdff;\n                }\n                else if (dVar25 <= dVar33) {\n                  if (dVar33 <= dVar31) goto LAB_001c8abc;\n                  iVar14 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar14 = -0x7ffffdff;\n                }\n              }\n              unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n              param_2 = (undefined4 *******)((int)param_1[0x8c] + iVar15);\n              local_6c = unaff_s8;\n              local_64 = param_2;\n              iVar15 = (*(code *)PTR_CropImage_003a90b8)(param_1,unaff_s6,param_3);\n              if (iVar15 != 0) {\n                (*(code *)PTR_AppendImageToList_003a9880)(&local_80,iVar15);\n              }\n            } while (dVar32 < dVar34);\n          }\n          unaff_s5 = unaff_s3;\n          if (local_c8 <= dVar30) break;\n          if (unaff_s4 == (undefined4 ******)0x0) goto LAB_001c854c;\nLAB_001c8b70:\n          unaff_s7 = local_70;\n          dVar32 = dVar30;\n          if (0 < (int)local_70) {\n            dVar32 = dVar30 - (double)(int)local_70;\n          }\n          dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n          dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          if (dVar32 - dVar26 < dVar27 - dVar32) {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d8c;\n            pcVar23 = (code *)PTR_floor_003a9670;\n            if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8d50;\nLAB_001c8bd8:\n            dVar32 = (double)(*pcVar23)(dVar32);\n            iVar15 = (int)dVar32;\nLAB_001c8bf0:\n            dVar30 = dVar30 + local_a0;\n            if (-2 < (int)unaff_s7) goto LAB_001c8c00;\nLAB_001c8d6c:\n            dVar32 = (double)(int)unaff_s7;\n          }\n          else {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d8c:\n              iVar15 = -0x7ffffdff;\n              goto LAB_001c8bf0;\n            }\n            pcVar23 = (code *)PTR_ceil_003a8c20;\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8bd8;\nLAB_001c8d50:\n            iVar15 = 0x7ffffdff;\n            dVar30 = dVar30 + local_a0;\n            if ((int)unaff_s7 < -1) goto LAB_001c8d6c;\nLAB_001c8c00:\n            dVar32 = 0.0;\n          }\n          dVar32 = dVar30 + dVar32;\n          dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n          dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          if (dVar32 - dVar26 < dVar27 - dVar32) {\n            if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n              if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) {\nLAB_001c8cec:\n                iVar14 = 0x7ffffdff;\n              }\n              else {\nLAB_001c8630:\n                dVar32 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n                iVar14 = (int)dVar32;\n              }\n              goto LAB_001c8644;\n            }\n            goto LAB_001c8c88;\n          }\n          if (dVar32 < dVar25) goto LAB_001c8c88;\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;\nLAB_001c8d18:\n          dVar32 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          iVar14 = (int)dVar32;\n        } while( true );\n      }" { (expression_statement "dVar25 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4780);" (assignment_expression "dVar25 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4780)" identifier = (pointer_expression "*(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4780)" * (cast_expression "(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4780)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4780)" ( (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4780" identifier + number_literal) ))))) ;) (expression_statement "dVar31 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4788);" (assignment_expression "dVar31 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4788)" identifier = (pointer_expression "*(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4788)" * (cast_expression "(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4788)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4788)" ( (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4788" identifier + number_literal) ))))) ;) (if_statement "if (unaff_s4 != (undefined4 ******)0x0) goto LAB_001c8b70;" if (parenthesized_expression "(unaff_s4 != (undefined4 ******)0x0)" ( (binary_expression "unaff_s4 != (undefined4 ******)0x0" identifier != (cast_expression "(undefined4 ******)0x0" ( (type_descriptor "undefined4 ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (goto_statement "goto LAB_001c8b70;" goto statement_identifier ;)) (labeled_statement "LAB_001c854c:\n        unaff_s7 = local_70;" statement_identifier : (expression_statement "unaff_s7 = local_70;" (assignment_expression "unaff_s7 = local_70" identifier = identifier) ;)) (expression_statement "dVar32 = dVar30;" (assignment_expression "dVar32 = dVar30" identifier = identifier) ;) (if_statement "if ((int)local_70 < 1) {\n          dVar32 = dVar30 - (double)(int)local_70;\n        }" if (parenthesized_expression "((int)local_70 < 1)" ( (binary_expression "(int)local_70 < 1" (cast_expression "(int)local_70" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n          dVar32 = dVar30 - (double)(int)local_70;\n        }" { (expression_statement "dVar32 = dVar30 - (double)(int)local_70;" (assignment_expression "dVar32 = dVar30 - (double)(int)local_70" identifier = (binary_expression "dVar30 - (double)(int)local_70" identifier - (cast_expression "(double)(int)local_70" ( (type_descriptor "double" primitive_type) ) (cast_expression "(int)local_70" ( (type_descriptor "int" primitive_type) ) identifier)))) ;) })) (expression_statement "dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);" (assignment_expression "dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32)" identifier = (cast_expression "(double)(*(code *)PTR_floor_003a9670)(dVar32)" ( (type_descriptor "double" primitive_type) ) (call_expression "(*(code *)PTR_floor_003a9670)(dVar32)" (parenthesized_expression "(*(code *)PTR_floor_003a9670)" ( (pointer_expression "*(code *)PTR_floor_003a9670" * (cast_expression "(code *)PTR_floor_003a9670" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(dVar32)" ( identifier ))))) ;) (expression_statement "dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);" (assignment_expression "dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32)" identifier = (cast_expression "(double)(*(code *)PTR_ceil_003a8c20)(dVar32)" ( (type_descriptor "double" primitive_type) ) (call_expression "(*(code *)PTR_ceil_003a8c20)(dVar32)" (parenthesized_expression "(*(code *)PTR_ceil_003a8c20)" ( (pointer_expression "*(code *)PTR_ceil_003a8c20" * (cast_expression "(code *)PTR_ceil_003a8c20" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(dVar32)" ( identifier ))))) ;) (if_statement "if (dVar32 - dVar26 < dVar27 - dVar32) {\n          dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar23 = (code *)PTR_floor_003a9670;\n          if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d7c;\n        }\n        else {\n          if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d7c:\n            iVar15 = -0x7ffffdff;\n            goto joined_r0x001c8cbc;\n          }\n          dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar23 = (code *)PTR_ceil_003a8c20;\n        }" if (parenthesized_expression "(dVar32 - dVar26 < dVar27 - dVar32)" ( (binary_expression "dVar32 - dVar26 < dVar27 - dVar32" (binary_expression "dVar32 - dVar26" identifier - identifier) < (binary_expression "dVar27 - dVar32" identifier - identifier)) )) (compound_statement "{\n          dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar23 = (code *)PTR_floor_003a9670;\n          if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d7c;\n        }" { (expression_statement "dVar26 = *(double *)((int)unaff_s3 + 0x4788);" (assignment_expression "dVar26 = *(double *)((int)unaff_s3 + 0x4788)" identifier = (pointer_expression "*(double *)((int)unaff_s3 + 0x4788)" * (cast_expression "(double *)((int)unaff_s3 + 0x4788)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s3 + 0x4788)" ( (binary_expression "(int)unaff_s3 + 0x4788" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) ;) (expression_statement "pcVar23 = (code *)PTR_floor_003a9670;" (assignment_expression "pcVar23 = (code *)PTR_floor_003a9670" identifier = (cast_expression "(code *)PTR_floor_003a9670" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (if_statement "if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d7c;" if (parenthesized_expression "(dVar32 < *(double *)((int)unaff_s3 + 0x4780))" ( (binary_expression "dVar32 < *(double *)((int)unaff_s3 + 0x4780)" identifier < (pointer_expression "*(double *)((int)unaff_s3 + 0x4780)" * (cast_expression "(double *)((int)unaff_s3 + 0x4780)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s3 + 0x4780)" ( (binary_expression "(int)unaff_s3 + 0x4780" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) )) (goto_statement "goto LAB_001c8d7c;" goto statement_identifier ;)) }) (else_clause "else {\n          if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d7c:\n            iVar15 = -0x7ffffdff;\n            goto joined_r0x001c8cbc;\n          }\n          dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar23 = (code *)PTR_ceil_003a8c20;\n        }" else (compound_statement "{\n          if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d7c:\n            iVar15 = -0x7ffffdff;\n            goto joined_r0x001c8cbc;\n          }\n          dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar23 = (code *)PTR_ceil_003a8c20;\n        }" { (if_statement "if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d7c:\n            iVar15 = -0x7ffffdff;\n            goto joined_r0x001c8cbc;\n          }" if (parenthesized_expression "(dVar32 < *(double *)((int)unaff_s3 + 0x4780))" ( (binary_expression "dVar32 < *(double *)((int)unaff_s3 + 0x4780)" identifier < (pointer_expression "*(double *)((int)unaff_s3 + 0x4780)" * (cast_expression "(double *)((int)unaff_s3 + 0x4780)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s3 + 0x4780)" ( (binary_expression "(int)unaff_s3 + 0x4780" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) )) (compound_statement "{\nLAB_001c8d7c:\n            iVar15 = -0x7ffffdff;\n            goto joined_r0x001c8cbc;\n          }" { (labeled_statement "LAB_001c8d7c:\n            iVar15 = -0x7ffffdff;" statement_identifier : (expression_statement "iVar15 = -0x7ffffdff;" (assignment_expression "iVar15 = -0x7ffffdff" identifier = number_literal) ;)) (goto_statement "goto joined_r0x001c8cbc;" goto statement_identifier ;) })) (expression_statement "dVar26 = *(double *)((int)unaff_s3 + 0x4788);" (assignment_expression "dVar26 = *(double *)((int)unaff_s3 + 0x4788)" identifier = (pointer_expression "*(double *)((int)unaff_s3 + 0x4788)" * (cast_expression "(double *)((int)unaff_s3 + 0x4788)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s3 + 0x4788)" ( (binary_expression "(int)unaff_s3 + 0x4788" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) ;) (expression_statement "pcVar23 = (code *)PTR_ceil_003a8c20;" (assignment_expression "pcVar23 = (code *)PTR_ceil_003a8c20" identifier = (cast_expression "(code *)PTR_ceil_003a8c20" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) }))) (if_statement "if (dVar26 < dVar32) {\n          iVar15 = 0x7ffffdff;\n        }\n        else {\n          dVar32 = (double)(*pcVar23)(dVar32);\n          iVar15 = (int)dVar32;\n        }" if (parenthesized_expression "(dVar26 < dVar32)" ( (binary_expression "dVar26 < dVar32" identifier < identifier) )) (compound_statement "{\n          iVar15 = 0x7ffffdff;\n        }" { (expression_statement "iVar15 = 0x7ffffdff;" (assignment_expression "iVar15 = 0x7ffffdff" identifier = number_literal) ;) }) (else_clause "else {\n          dVar32 = (double)(*pcVar23)(dVar32);\n          iVar15 = (int)dVar32;\n        }" else (compound_statement "{\n          dVar32 = (double)(*pcVar23)(dVar32);\n          iVar15 = (int)dVar32;\n        }" { (expression_statement "dVar32 = (double)(*pcVar23)(dVar32);" (assignment_expression "dVar32 = (double)(*pcVar23)(dVar32)" identifier = (cast_expression "(double)(*pcVar23)(dVar32)" ( (type_descriptor "double" primitive_type) ) (call_expression "(*pcVar23)(dVar32)" (parenthesized_expression "(*pcVar23)" ( (pointer_expression "*pcVar23" * identifier) )) (argument_list "(dVar32)" ( identifier ))))) ;) (expression_statement "iVar15 = (int)dVar32;" (assignment_expression "iVar15 = (int)dVar32" identifier = (cast_expression "(int)dVar32" ( (type_descriptor "int" primitive_type) ) identifier)) ;) }))) (labeled_statement "joined_r0x001c8cbc:\n        dVar30 = dVar30 + local_a0;" statement_identifier : (expression_statement "dVar30 = dVar30 + local_a0;" (assignment_expression "dVar30 = dVar30 + local_a0" identifier = (binary_expression "dVar30 + local_a0" identifier + identifier)) ;)) (if_statement "if ((int)unaff_s7 < 0) {\n          dVar32 = 0.0;\n        }\n        else {\n          dVar32 = (double)(int)unaff_s7;\n        }" if (parenthesized_expression "((int)unaff_s7 < 0)" ( (binary_expression "(int)unaff_s7 < 0" (cast_expression "(int)unaff_s7" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n          dVar32 = 0.0;\n        }" { (expression_statement "dVar32 = 0.0;" (assignment_expression "dVar32 = 0.0" identifier = number_literal) ;) }) (else_clause "else {\n          dVar32 = (double)(int)unaff_s7;\n        }" else (compound_statement "{\n          dVar32 = (double)(int)unaff_s7;\n        }" { (expression_statement "dVar32 = (double)(int)unaff_s7;" (assignment_expression "dVar32 = (double)(int)unaff_s7" identifier = (cast_expression "(double)(int)unaff_s7" ( (type_descriptor "double" primitive_type) ) (cast_expression "(int)unaff_s7" ( (type_descriptor "int" primitive_type) ) identifier))) ;) }))) (expression_statement "dVar32 = dVar30 + dVar32;" (assignment_expression "dVar32 = dVar30 + dVar32" identifier = (binary_expression "dVar30 + dVar32" identifier + identifier)) ;) (expression_statement "dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);" (assignment_expression "dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32)" identifier = (cast_expression "(double)(*(code *)PTR_floor_003a9670)(dVar32)" ( (type_descriptor "double" primitive_type) ) (call_expression "(*(code *)PTR_floor_003a9670)(dVar32)" (parenthesized_expression "(*(code *)PTR_floor_003a9670)" ( (pointer_expression "*(code *)PTR_floor_003a9670" * (cast_expression "(code *)PTR_floor_003a9670" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(dVar32)" ( identifier ))))) ;) (expression_statement "dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);" (assignment_expression "dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32)" identifier = (cast_expression "(double)(*(code *)PTR_ceil_003a8c20)(dVar32)" ( (type_descriptor "double" primitive_type) ) (call_expression "(*(code *)PTR_ceil_003a8c20)(dVar32)" (parenthesized_expression "(*(code *)PTR_ceil_003a8c20)" ( (pointer_expression "*(code *)PTR_ceil_003a8c20" * (cast_expression "(code *)PTR_ceil_003a8c20" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(dVar32)" ( identifier ))))) ;) (if_statement "if (dVar32 - dVar26 < dVar27 - dVar32) {\n          if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8630;\n            goto LAB_001c8cec;\n          }\n        }\n        else if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;\n          goto LAB_001c8d18;\n        }" if (parenthesized_expression "(dVar32 - dVar26 < dVar27 - dVar32)" ( (binary_expression "dVar32 - dVar26 < dVar27 - dVar32" (binary_expression "dVar32 - dVar26" identifier - identifier) < (binary_expression "dVar27 - dVar32" identifier - identifier)) )) (compound_statement "{\n          if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8630;\n            goto LAB_001c8cec;\n          }\n        }" { (if_statement "if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8630;\n            goto LAB_001c8cec;\n          }" if (parenthesized_expression "(*(double *)((int)unaff_s3 + 0x4780) <= dVar32)" ( (binary_expression "*(double *)((int)unaff_s3 + 0x4780) <= dVar32" (pointer_expression "*(double *)((int)unaff_s3 + 0x4780)" * (cast_expression "(double *)((int)unaff_s3 + 0x4780)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s3 + 0x4780)" ( (binary_expression "(int)unaff_s3 + 0x4780" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) <= identifier) )) (compound_statement "{\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8630;\n            goto LAB_001c8cec;\n          }" { (if_statement "if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8630;" if (parenthesized_expression "(dVar32 <= *(double *)((int)unaff_s3 + 0x4788))" ( (binary_expression "dVar32 <= *(double *)((int)unaff_s3 + 0x4788)" identifier <= (pointer_expression "*(double *)((int)unaff_s3 + 0x4788)" * (cast_expression "(double *)((int)unaff_s3 + 0x4788)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s3 + 0x4788)" ( (binary_expression "(int)unaff_s3 + 0x4788" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) )) (goto_statement "goto LAB_001c8630;" goto statement_identifier ;)) (goto_statement "goto LAB_001c8cec;" goto statement_identifier ;) })) }) (else_clause "else if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;\n          goto LAB_001c8d18;\n        }" else (if_statement "if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;\n          goto LAB_001c8d18;\n        }" if (parenthesized_expression "(*(double *)((int)unaff_s3 + 0x4780) <= dVar32)" ( (binary_expression "*(double *)((int)unaff_s3 + 0x4780) <= dVar32" (pointer_expression "*(double *)((int)unaff_s3 + 0x4780)" * (cast_expression "(double *)((int)unaff_s3 + 0x4780)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s3 + 0x4780)" ( (binary_expression "(int)unaff_s3 + 0x4780" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) <= identifier) )) (compound_statement "{\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;\n          goto LAB_001c8d18;\n        }" { (if_statement "if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;" if (parenthesized_expression "(*(double *)((int)unaff_s3 + 0x4788) < dVar32)" ( (binary_expression "*(double *)((int)unaff_s3 + 0x4788) < dVar32" (pointer_expression "*(double *)((int)unaff_s3 + 0x4788)" * (cast_expression "(double *)((int)unaff_s3 + 0x4788)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s3 + 0x4788)" ( (binary_expression "(int)unaff_s3 + 0x4788" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) < identifier) )) (goto_statement "goto LAB_001c8cec;" goto statement_identifier ;)) (goto_statement "goto LAB_001c8d18;" goto statement_identifier ;) })))) (labeled_statement "LAB_001c8c88:\n        iVar14 = -0x7ffffdff;" statement_identifier : (expression_statement "iVar14 = -0x7ffffdff;" (assignment_expression "iVar14 = -0x7ffffdff" identifier = number_literal) ;)) (labeled_statement "LAB_001c8644:\n        do {\n          unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n          param_2 = (undefined4 *******)((int)param_1[0x8d] + iVar15);\n          dVar32 = 0.0;\n          local_68 = unaff_s8;\n          local_60 = param_2;\n          if (0.0 < dVar34) {\n            dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n            unaff_s6 = &local_6c;\n            dVar27 = *(double *)((int)unaff_s3 + 0x4780);\n            do {\n              unaff_s7 = local_74;\n              if (unaff_s4 == (undefined4 ******)0x0) {\n                dVar33 = dVar32;\n                if ((int)local_74 < 1) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }\nLAB_001c8b04:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;\nLAB_001c8708:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8700:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar33 = 0.0;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8768:\n                  dVar33 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar33 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n              }\n              else {\n                dVar33 = dVar32;\n                if (0 < (int)local_74) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar27 <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar33 = 0.0;\n                }\n                else {\n                  if (dVar33 < dVar27) goto LAB_001c8b24;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (dVar26 < dVar33) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8850:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < dVar25) goto LAB_001c8a44;\n                  if (dVar33 <= dVar26) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar14 = 0x7ffffdff;\n                }\n                else if (dVar25 <= dVar33) {\n                  if (dVar33 <= dVar31) goto LAB_001c8abc;\n                  iVar14 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar14 = -0x7ffffdff;\n                }\n              }\n              unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n              param_2 = (undefined4 *******)((int)param_1[0x8c] + iVar15);\n              local_6c = unaff_s8;\n              local_64 = param_2;\n              iVar15 = (*(code *)PTR_CropImage_003a90b8)(param_1,unaff_s6,param_3);\n              if (iVar15 != 0) {\n                (*(code *)PTR_AppendImageToList_003a9880)(&local_80,iVar15);\n              }\n            } while (dVar32 < dVar34);\n          }\n          unaff_s5 = unaff_s3;\n          if (local_c8 <= dVar30) break;\n          if (unaff_s4 == (undefined4 ******)0x0) goto LAB_001c854c;\nLAB_001c8b70:\n          unaff_s7 = local_70;\n          dVar32 = dVar30;\n          if (0 < (int)local_70) {\n            dVar32 = dVar30 - (double)(int)local_70;\n          }\n          dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n          dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          if (dVar32 - dVar26 < dVar27 - dVar32) {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d8c;\n            pcVar23 = (code *)PTR_floor_003a9670;\n            if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8d50;\nLAB_001c8bd8:\n            dVar32 = (double)(*pcVar23)(dVar32);\n            iVar15 = (int)dVar32;\nLAB_001c8bf0:\n            dVar30 = dVar30 + local_a0;\n            if (-2 < (int)unaff_s7) goto LAB_001c8c00;\nLAB_001c8d6c:\n            dVar32 = (double)(int)unaff_s7;\n          }\n          else {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d8c:\n              iVar15 = -0x7ffffdff;\n              goto LAB_001c8bf0;\n            }\n            pcVar23 = (code *)PTR_ceil_003a8c20;\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8bd8;\nLAB_001c8d50:\n            iVar15 = 0x7ffffdff;\n            dVar30 = dVar30 + local_a0;\n            if ((int)unaff_s7 < -1) goto LAB_001c8d6c;\nLAB_001c8c00:\n            dVar32 = 0.0;\n          }\n          dVar32 = dVar30 + dVar32;\n          dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n          dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          if (dVar32 - dVar26 < dVar27 - dVar32) {\n            if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n              if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) {\nLAB_001c8cec:\n                iVar14 = 0x7ffffdff;\n              }\n              else {\nLAB_001c8630:\n                dVar32 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n                iVar14 = (int)dVar32;\n              }\n              goto LAB_001c8644;\n            }\n            goto LAB_001c8c88;\n          }\n          if (dVar32 < dVar25) goto LAB_001c8c88;\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;\nLAB_001c8d18:\n          dVar32 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          iVar14 = (int)dVar32;\n        } while( true );" statement_identifier : (do_statement "do {\n          unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n          param_2 = (undefined4 *******)((int)param_1[0x8d] + iVar15);\n          dVar32 = 0.0;\n          local_68 = unaff_s8;\n          local_60 = param_2;\n          if (0.0 < dVar34) {\n            dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n            unaff_s6 = &local_6c;\n            dVar27 = *(double *)((int)unaff_s3 + 0x4780);\n            do {\n              unaff_s7 = local_74;\n              if (unaff_s4 == (undefined4 ******)0x0) {\n                dVar33 = dVar32;\n                if ((int)local_74 < 1) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }\nLAB_001c8b04:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;\nLAB_001c8708:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8700:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar33 = 0.0;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8768:\n                  dVar33 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar33 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n              }\n              else {\n                dVar33 = dVar32;\n                if (0 < (int)local_74) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar27 <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar33 = 0.0;\n                }\n                else {\n                  if (dVar33 < dVar27) goto LAB_001c8b24;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (dVar26 < dVar33) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8850:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < dVar25) goto LAB_001c8a44;\n                  if (dVar33 <= dVar26) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar14 = 0x7ffffdff;\n                }\n                else if (dVar25 <= dVar33) {\n                  if (dVar33 <= dVar31) goto LAB_001c8abc;\n                  iVar14 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar14 = -0x7ffffdff;\n                }\n              }\n              unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n              param_2 = (undefined4 *******)((int)param_1[0x8c] + iVar15);\n              local_6c = unaff_s8;\n              local_64 = param_2;\n              iVar15 = (*(code *)PTR_CropImage_003a90b8)(param_1,unaff_s6,param_3);\n              if (iVar15 != 0) {\n                (*(code *)PTR_AppendImageToList_003a9880)(&local_80,iVar15);\n              }\n            } while (dVar32 < dVar34);\n          }\n          unaff_s5 = unaff_s3;\n          if (local_c8 <= dVar30) break;\n          if (unaff_s4 == (undefined4 ******)0x0) goto LAB_001c854c;\nLAB_001c8b70:\n          unaff_s7 = local_70;\n          dVar32 = dVar30;\n          if (0 < (int)local_70) {\n            dVar32 = dVar30 - (double)(int)local_70;\n          }\n          dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n          dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          if (dVar32 - dVar26 < dVar27 - dVar32) {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d8c;\n            pcVar23 = (code *)PTR_floor_003a9670;\n            if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8d50;\nLAB_001c8bd8:\n            dVar32 = (double)(*pcVar23)(dVar32);\n            iVar15 = (int)dVar32;\nLAB_001c8bf0:\n            dVar30 = dVar30 + local_a0;\n            if (-2 < (int)unaff_s7) goto LAB_001c8c00;\nLAB_001c8d6c:\n            dVar32 = (double)(int)unaff_s7;\n          }\n          else {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d8c:\n              iVar15 = -0x7ffffdff;\n              goto LAB_001c8bf0;\n            }\n            pcVar23 = (code *)PTR_ceil_003a8c20;\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8bd8;\nLAB_001c8d50:\n            iVar15 = 0x7ffffdff;\n            dVar30 = dVar30 + local_a0;\n            if ((int)unaff_s7 < -1) goto LAB_001c8d6c;\nLAB_001c8c00:\n            dVar32 = 0.0;\n          }\n          dVar32 = dVar30 + dVar32;\n          dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n          dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          if (dVar32 - dVar26 < dVar27 - dVar32) {\n            if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n              if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) {\nLAB_001c8cec:\n                iVar14 = 0x7ffffdff;\n              }\n              else {\nLAB_001c8630:\n                dVar32 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n                iVar14 = (int)dVar32;\n              }\n              goto LAB_001c8644;\n            }\n            goto LAB_001c8c88;\n          }\n          if (dVar32 < dVar25) goto LAB_001c8c88;\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;\nLAB_001c8d18:\n          dVar32 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          iVar14 = (int)dVar32;\n        } while( true );" do (compound_statement "{\n          unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n          param_2 = (undefined4 *******)((int)param_1[0x8d] + iVar15);\n          dVar32 = 0.0;\n          local_68 = unaff_s8;\n          local_60 = param_2;\n          if (0.0 < dVar34) {\n            dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n            unaff_s6 = &local_6c;\n            dVar27 = *(double *)((int)unaff_s3 + 0x4780);\n            do {\n              unaff_s7 = local_74;\n              if (unaff_s4 == (undefined4 ******)0x0) {\n                dVar33 = dVar32;\n                if ((int)local_74 < 1) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }\nLAB_001c8b04:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;\nLAB_001c8708:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8700:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar33 = 0.0;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8768:\n                  dVar33 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar33 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n              }\n              else {\n                dVar33 = dVar32;\n                if (0 < (int)local_74) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar27 <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar33 = 0.0;\n                }\n                else {\n                  if (dVar33 < dVar27) goto LAB_001c8b24;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (dVar26 < dVar33) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8850:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < dVar25) goto LAB_001c8a44;\n                  if (dVar33 <= dVar26) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar14 = 0x7ffffdff;\n                }\n                else if (dVar25 <= dVar33) {\n                  if (dVar33 <= dVar31) goto LAB_001c8abc;\n                  iVar14 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar14 = -0x7ffffdff;\n                }\n              }\n              unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n              param_2 = (undefined4 *******)((int)param_1[0x8c] + iVar15);\n              local_6c = unaff_s8;\n              local_64 = param_2;\n              iVar15 = (*(code *)PTR_CropImage_003a90b8)(param_1,unaff_s6,param_3);\n              if (iVar15 != 0) {\n                (*(code *)PTR_AppendImageToList_003a9880)(&local_80,iVar15);\n              }\n            } while (dVar32 < dVar34);\n          }\n          unaff_s5 = unaff_s3;\n          if (local_c8 <= dVar30) break;\n          if (unaff_s4 == (undefined4 ******)0x0) goto LAB_001c854c;\nLAB_001c8b70:\n          unaff_s7 = local_70;\n          dVar32 = dVar30;\n          if (0 < (int)local_70) {\n            dVar32 = dVar30 - (double)(int)local_70;\n          }\n          dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n          dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          if (dVar32 - dVar26 < dVar27 - dVar32) {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d8c;\n            pcVar23 = (code *)PTR_floor_003a9670;\n            if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8d50;\nLAB_001c8bd8:\n            dVar32 = (double)(*pcVar23)(dVar32);\n            iVar15 = (int)dVar32;\nLAB_001c8bf0:\n            dVar30 = dVar30 + local_a0;\n            if (-2 < (int)unaff_s7) goto LAB_001c8c00;\nLAB_001c8d6c:\n            dVar32 = (double)(int)unaff_s7;\n          }\n          else {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d8c:\n              iVar15 = -0x7ffffdff;\n              goto LAB_001c8bf0;\n            }\n            pcVar23 = (code *)PTR_ceil_003a8c20;\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8bd8;\nLAB_001c8d50:\n            iVar15 = 0x7ffffdff;\n            dVar30 = dVar30 + local_a0;\n            if ((int)unaff_s7 < -1) goto LAB_001c8d6c;\nLAB_001c8c00:\n            dVar32 = 0.0;\n          }\n          dVar32 = dVar30 + dVar32;\n          dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n          dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          if (dVar32 - dVar26 < dVar27 - dVar32) {\n            if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n              if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) {\nLAB_001c8cec:\n                iVar14 = 0x7ffffdff;\n              }\n              else {\nLAB_001c8630:\n                dVar32 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n                iVar14 = (int)dVar32;\n              }\n              goto LAB_001c8644;\n            }\n            goto LAB_001c8c88;\n          }\n          if (dVar32 < dVar25) goto LAB_001c8c88;\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;\nLAB_001c8d18:\n          dVar32 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          iVar14 = (int)dVar32;\n        }" { (expression_statement "unaff_s8 = (undefined4 *******)(iVar14 - iVar15);" (assignment_expression "unaff_s8 = (undefined4 *******)(iVar14 - iVar15)" identifier = (cast_expression "(undefined4 *******)(iVar14 - iVar15)" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(iVar14 - iVar15)" ( (binary_expression "iVar14 - iVar15" identifier - identifier) )))) ;) (expression_statement "param_2 = (undefined4 *******)((int)param_1[0x8d] + iVar15);" (assignment_expression "param_2 = (undefined4 *******)((int)param_1[0x8d] + iVar15)" identifier = (cast_expression "(undefined4 *******)((int)param_1[0x8d] + iVar15)" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)param_1[0x8d] + iVar15)" ( (binary_expression "(int)param_1[0x8d] + iVar15" (cast_expression "(int)param_1[0x8d]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "param_1[0x8d]" identifier [ number_literal ])) + identifier) )))) ;) (expression_statement "dVar32 = 0.0;" (assignment_expression "dVar32 = 0.0" identifier = number_literal) ;) (expression_statement "local_68 = unaff_s8;" (assignment_expression "local_68 = unaff_s8" identifier = identifier) ;) (expression_statement "local_60 = param_2;" (assignment_expression "local_60 = param_2" identifier = identifier) ;) (if_statement "if (0.0 < dVar34) {\n            dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n            unaff_s6 = &local_6c;\n            dVar27 = *(double *)((int)unaff_s3 + 0x4780);\n            do {\n              unaff_s7 = local_74;\n              if (unaff_s4 == (undefined4 ******)0x0) {\n                dVar33 = dVar32;\n                if ((int)local_74 < 1) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }\nLAB_001c8b04:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;\nLAB_001c8708:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8700:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar33 = 0.0;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8768:\n                  dVar33 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar33 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n              }\n              else {\n                dVar33 = dVar32;\n                if (0 < (int)local_74) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar27 <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar33 = 0.0;\n                }\n                else {\n                  if (dVar33 < dVar27) goto LAB_001c8b24;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (dVar26 < dVar33) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8850:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < dVar25) goto LAB_001c8a44;\n                  if (dVar33 <= dVar26) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar14 = 0x7ffffdff;\n                }\n                else if (dVar25 <= dVar33) {\n                  if (dVar33 <= dVar31) goto LAB_001c8abc;\n                  iVar14 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar14 = -0x7ffffdff;\n                }\n              }\n              unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n              param_2 = (undefined4 *******)((int)param_1[0x8c] + iVar15);\n              local_6c = unaff_s8;\n              local_64 = param_2;\n              iVar15 = (*(code *)PTR_CropImage_003a90b8)(param_1,unaff_s6,param_3);\n              if (iVar15 != 0) {\n                (*(code *)PTR_AppendImageToList_003a9880)(&local_80,iVar15);\n              }\n            } while (dVar32 < dVar34);\n          }" if (parenthesized_expression "(0.0 < dVar34)" ( (binary_expression "0.0 < dVar34" number_literal < identifier) )) (compound_statement "{\n            dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n            unaff_s6 = &local_6c;\n            dVar27 = *(double *)((int)unaff_s3 + 0x4780);\n            do {\n              unaff_s7 = local_74;\n              if (unaff_s4 == (undefined4 ******)0x0) {\n                dVar33 = dVar32;\n                if ((int)local_74 < 1) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }\nLAB_001c8b04:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;\nLAB_001c8708:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8700:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar33 = 0.0;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8768:\n                  dVar33 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar33 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n              }\n              else {\n                dVar33 = dVar32;\n                if (0 < (int)local_74) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar27 <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar33 = 0.0;\n                }\n                else {\n                  if (dVar33 < dVar27) goto LAB_001c8b24;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (dVar26 < dVar33) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8850:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < dVar25) goto LAB_001c8a44;\n                  if (dVar33 <= dVar26) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar14 = 0x7ffffdff;\n                }\n                else if (dVar25 <= dVar33) {\n                  if (dVar33 <= dVar31) goto LAB_001c8abc;\n                  iVar14 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar14 = -0x7ffffdff;\n                }\n              }\n              unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n              param_2 = (undefined4 *******)((int)param_1[0x8c] + iVar15);\n              local_6c = unaff_s8;\n              local_64 = param_2;\n              iVar15 = (*(code *)PTR_CropImage_003a90b8)(param_1,unaff_s6,param_3);\n              if (iVar15 != 0) {\n                (*(code *)PTR_AppendImageToList_003a9880)(&local_80,iVar15);\n              }\n            } while (dVar32 < dVar34);\n          }" { (expression_statement "dVar26 = *(double *)((int)unaff_s3 + 0x4788);" (assignment_expression "dVar26 = *(double *)((int)unaff_s3 + 0x4788)" identifier = (pointer_expression "*(double *)((int)unaff_s3 + 0x4788)" * (cast_expression "(double *)((int)unaff_s3 + 0x4788)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s3 + 0x4788)" ( (binary_expression "(int)unaff_s3 + 0x4788" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) ;) (expression_statement "unaff_s6 = &local_6c;" (assignment_expression "unaff_s6 = &local_6c" identifier = (pointer_expression "&local_6c" & identifier)) ;) (expression_statement "dVar27 = *(double *)((int)unaff_s3 + 0x4780);" (assignment_expression "dVar27 = *(double *)((int)unaff_s3 + 0x4780)" identifier = (pointer_expression "*(double *)((int)unaff_s3 + 0x4780)" * (cast_expression "(double *)((int)unaff_s3 + 0x4780)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s3 + 0x4780)" ( (binary_expression "(int)unaff_s3 + 0x4780" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) ;) (do_statement "do {\n              unaff_s7 = local_74;\n              if (unaff_s4 == (undefined4 ******)0x0) {\n                dVar33 = dVar32;\n                if ((int)local_74 < 1) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }\nLAB_001c8b04:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;\nLAB_001c8708:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8700:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar33 = 0.0;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8768:\n                  dVar33 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar33 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n              }\n              else {\n                dVar33 = dVar32;\n                if (0 < (int)local_74) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar27 <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar33 = 0.0;\n                }\n                else {\n                  if (dVar33 < dVar27) goto LAB_001c8b24;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (dVar26 < dVar33) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8850:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < dVar25) goto LAB_001c8a44;\n                  if (dVar33 <= dVar26) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar14 = 0x7ffffdff;\n                }\n                else if (dVar25 <= dVar33) {\n                  if (dVar33 <= dVar31) goto LAB_001c8abc;\n                  iVar14 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar14 = -0x7ffffdff;\n                }\n              }\n              unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n              param_2 = (undefined4 *******)((int)param_1[0x8c] + iVar15);\n              local_6c = unaff_s8;\n              local_64 = param_2;\n              iVar15 = (*(code *)PTR_CropImage_003a90b8)(param_1,unaff_s6,param_3);\n              if (iVar15 != 0) {\n                (*(code *)PTR_AppendImageToList_003a9880)(&local_80,iVar15);\n              }\n            } while (dVar32 < dVar34);" do (compound_statement "{\n              unaff_s7 = local_74;\n              if (unaff_s4 == (undefined4 ******)0x0) {\n                dVar33 = dVar32;\n                if ((int)local_74 < 1) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }\nLAB_001c8b04:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;\nLAB_001c8708:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8700:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar33 = 0.0;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8768:\n                  dVar33 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar33 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n              }\n              else {\n                dVar33 = dVar32;\n                if (0 < (int)local_74) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar27 <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar33 = 0.0;\n                }\n                else {\n                  if (dVar33 < dVar27) goto LAB_001c8b24;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (dVar26 < dVar33) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8850:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < dVar25) goto LAB_001c8a44;\n                  if (dVar33 <= dVar26) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar14 = 0x7ffffdff;\n                }\n                else if (dVar25 <= dVar33) {\n                  if (dVar33 <= dVar31) goto LAB_001c8abc;\n                  iVar14 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar14 = -0x7ffffdff;\n                }\n              }\n              unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n              param_2 = (undefined4 *******)((int)param_1[0x8c] + iVar15);\n              local_6c = unaff_s8;\n              local_64 = param_2;\n              iVar15 = (*(code *)PTR_CropImage_003a90b8)(param_1,unaff_s6,param_3);\n              if (iVar15 != 0) {\n                (*(code *)PTR_AppendImageToList_003a9880)(&local_80,iVar15);\n              }\n            }" { (expression_statement "unaff_s7 = local_74;" (assignment_expression "unaff_s7 = local_74" identifier = identifier) ;) (if_statement "if (unaff_s4 == (undefined4 ******)0x0) {\n                dVar33 = dVar32;\n                if ((int)local_74 < 1) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }\nLAB_001c8b04:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;\nLAB_001c8708:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8700:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar33 = 0.0;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8768:\n                  dVar33 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar33 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n              }\n              else {\n                dVar33 = dVar32;\n                if (0 < (int)local_74) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar27 <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar33 = 0.0;\n                }\n                else {\n                  if (dVar33 < dVar27) goto LAB_001c8b24;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (dVar26 < dVar33) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8850:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < dVar25) goto LAB_001c8a44;\n                  if (dVar33 <= dVar26) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar14 = 0x7ffffdff;\n                }\n                else if (dVar25 <= dVar33) {\n                  if (dVar33 <= dVar31) goto LAB_001c8abc;\n                  iVar14 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar14 = -0x7ffffdff;\n                }\n              }" if (parenthesized_expression "(unaff_s4 == (undefined4 ******)0x0)" ( (binary_expression "unaff_s4 == (undefined4 ******)0x0" identifier == (cast_expression "(undefined4 ******)0x0" ( (type_descriptor "undefined4 ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n                dVar33 = dVar32;\n                if ((int)local_74 < 1) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }\nLAB_001c8b04:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;\nLAB_001c8708:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8700:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar33 = 0.0;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8768:\n                  dVar33 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar33 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n              }" { (expression_statement "dVar33 = dVar32;" (assignment_expression "dVar33 = dVar32" identifier = identifier) ;) (if_statement "if ((int)local_74 < 1) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }" if (parenthesized_expression "((int)local_74 < 1)" ( (binary_expression "(int)local_74 < 1" (cast_expression "(int)local_74" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }" { (expression_statement "dVar33 = dVar32 - (double)(int)local_74;" (assignment_expression "dVar33 = dVar32 - (double)(int)local_74" identifier = (binary_expression "dVar32 - (double)(int)local_74" identifier - (cast_expression "(double)(int)local_74" ( (type_descriptor "double" primitive_type) ) (cast_expression "(int)local_74" ( (type_descriptor "int" primitive_type) ) identifier)))) ;) })) (expression_statement "dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);" (assignment_expression "dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33)" identifier = (cast_expression "(double)(*(code *)PTR_floor_003a9670)(dVar33)" ( (type_descriptor "double" primitive_type) ) (call_expression "(*(code *)PTR_floor_003a9670)(dVar33)" (parenthesized_expression "(*(code *)PTR_floor_003a9670)" ( (pointer_expression "*(code *)PTR_floor_003a9670" * (cast_expression "(code *)PTR_floor_003a9670" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(dVar33)" ( identifier ))))) ;) (expression_statement "dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);" (assignment_expression "dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33)" identifier = (cast_expression "(double)(*(code *)PTR_ceil_003a8c20)(dVar33)" ( (type_descriptor "double" primitive_type) ) (call_expression "(*(code *)PTR_ceil_003a8c20)(dVar33)" (parenthesized_expression "(*(code *)PTR_ceil_003a8c20)" ( (pointer_expression "*(code *)PTR_ceil_003a8c20" * (cast_expression "(code *)PTR_ceil_003a8c20" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(dVar33)" ( identifier ))))) ;) (if_statement "if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }\nLAB_001c8b04:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;\nLAB_001c8708:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8700:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar33 = 0.0;\n                }" if (parenthesized_expression "(dVar33 - dVar28 < dVar29 - dVar33)" ( (binary_expression "dVar33 - dVar28 < dVar29 - dVar33" (binary_expression "dVar33 - dVar28" identifier - identifier) < (binary_expression "dVar29 - dVar33" identifier - identifier)) )) (compound_statement "{\n                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }\nLAB_001c8b04:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;\nLAB_001c8708:\n                  dVar33 = (double)(int)unaff_s7;\n                }" { (if_statement "if (*(double *)((int)unaff_s3 + 0x4780) <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }" if (parenthesized_expression "(*(double *)((int)unaff_s3 + 0x4780) <= dVar33)" ( (binary_expression "*(double *)((int)unaff_s3 + 0x4780) <= dVar33" (pointer_expression "*(double *)((int)unaff_s3 + 0x4780)" * (cast_expression "(double *)((int)unaff_s3 + 0x4780)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s3 + 0x4780)" ( (binary_expression "(int)unaff_s3 + 0x4780" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) <= identifier) )) (compound_statement "{\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }" { (expression_statement "pcVar23 = (code *)PTR_floor_003a9670;" (assignment_expression "pcVar23 = (code *)PTR_floor_003a9670" identifier = (cast_expression "(code *)PTR_floor_003a9670" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (if_statement "if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;" if (parenthesized_expression "(dVar33 <= *(double *)((int)unaff_s3 + 0x4788))" ( (binary_expression "dVar33 <= *(double *)((int)unaff_s3 + 0x4788)" identifier <= (pointer_expression "*(double *)((int)unaff_s3 + 0x4788)" * (cast_expression "(double *)((int)unaff_s3 + 0x4788)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s3 + 0x4788)" ( (binary_expression "(int)unaff_s3 + 0x4788" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) )) (goto_statement "goto LAB_001c86e8;" goto statement_identifier ;)) (labeled_statement "LAB_001c8c78:\n                    iVar15 = 0x7ffffdff;" statement_identifier : (expression_statement "iVar15 = 0x7ffffdff;" (assignment_expression "iVar15 = 0x7ffffdff" identifier = number_literal) ;)) (goto_statement "goto LAB_001c8700;" goto statement_identifier ;) })) (labeled_statement "LAB_001c8b04:\n                  dVar32 = dVar32 + dVar35;" statement_identifier : (expression_statement "dVar32 = dVar32 + dVar35;" (assignment_expression "dVar32 = dVar32 + dVar35" identifier = (binary_expression "dVar32 + dVar35" identifier + identifier)) ;)) (expression_statement "iVar15 = -0x7ffffdff;" (assignment_expression "iVar15 = -0x7ffffdff" identifier = number_literal) ;) (if_statement "if ((int)unaff_s7 < 0) goto LAB_001c8b14;" if (parenthesized_expression "((int)unaff_s7 < 0)" ( (binary_expression "(int)unaff_s7 < 0" (cast_expression "(int)unaff_s7" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (goto_statement "goto LAB_001c8b14;" goto statement_identifier ;)) (labeled_statement "LAB_001c8708:\n                  dVar33 = (double)(int)unaff_s7;" statement_identifier : (expression_statement "dVar33 = (double)(int)unaff_s7;" (assignment_expression "dVar33 = (double)(int)unaff_s7" identifier = (cast_expression "(double)(int)unaff_s7" ( (type_descriptor "double" primitive_type) ) (cast_expression "(int)unaff_s7" ( (type_descriptor "int" primitive_type) ) identifier))) ;)) }) (else_clause "else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8700:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar33 = 0.0;\n                }" else (compound_statement "{\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8700:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar33 = 0.0;\n                }" { (if_statement "if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;" if (parenthesized_expression "(dVar33 < *(double *)((int)unaff_s3 + 0x4780))" ( (binary_expression "dVar33 < *(double *)((int)unaff_s3 + 0x4780)" identifier < (pointer_expression "*(double *)((int)unaff_s3 + 0x4780)" * (cast_expression "(double *)((int)unaff_s3 + 0x4780)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s3 + 0x4780)" ( (binary_expression "(int)unaff_s3 + 0x4780" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) )) (goto_statement "goto LAB_001c8b04;" goto statement_identifier ;)) (expression_statement "pcVar23 = (code *)PTR_ceil_003a8c20;" (assignment_expression "pcVar23 = (code *)PTR_ceil_003a8c20" identifier = (cast_expression "(code *)PTR_ceil_003a8c20" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (if_statement "if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c8c78;" if (parenthesized_expression "(*(double *)((int)unaff_s3 + 0x4788) < dVar33)" ( (binary_expression "*(double *)((int)unaff_s3 + 0x4788) < dVar33" (pointer_expression "*(double *)((int)unaff_s3 + 0x4788)" * (cast_expression "(double *)((int)unaff_s3 + 0x4788)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s3 + 0x4788)" ( (binary_expression "(int)unaff_s3 + 0x4788" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) < identifier) )) (goto_statement "goto LAB_001c8c78;" goto statement_identifier ;)) (labeled_statement "LAB_001c86e8:\n                  dVar33 = (double)(*pcVar23)(dVar33);" statement_identifier : (expression_statement "dVar33 = (double)(*pcVar23)(dVar33);" (assignment_expression "dVar33 = (double)(*pcVar23)(dVar33)" identifier = (cast_expression "(double)(*pcVar23)(dVar33)" ( (type_descriptor "double" primitive_type) ) (call_expression "(*pcVar23)(dVar33)" (parenthesized_expression "(*pcVar23)" ( (pointer_expression "*pcVar23" * identifier) )) (argument_list "(dVar33)" ( identifier ))))) ;)) (expression_statement "iVar15 = (int)dVar33;" (assignment_expression "iVar15 = (int)dVar33" identifier = (cast_expression "(int)dVar33" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (labeled_statement "LAB_001c8700:\n                  dVar32 = dVar32 + dVar35;" statement_identifier : (expression_statement "dVar32 = dVar32 + dVar35;" (assignment_expression "dVar32 = dVar32 + dVar35" identifier = (binary_expression "dVar32 + dVar35" identifier + identifier)) ;)) (if_statement "if (-1 < (int)unaff_s7) goto LAB_001c8708;" if (parenthesized_expression "(-1 < (int)unaff_s7)" ( (binary_expression "-1 < (int)unaff_s7" number_literal < (cast_expression "(int)unaff_s7" ( (type_descriptor "int" primitive_type) ) identifier)) )) (goto_statement "goto LAB_001c8708;" goto statement_identifier ;)) (labeled_statement "LAB_001c8b14:\n                  dVar33 = 0.0;" statement_identifier : (expression_statement "dVar33 = 0.0;" (assignment_expression "dVar33 = 0.0" identifier = number_literal) ;)) }))) (expression_statement "dVar33 = dVar32 + dVar33;" (assignment_expression "dVar33 = dVar32 + dVar33" identifier = (binary_expression "dVar32 + dVar33" identifier + identifier)) ;) (expression_statement "dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);" (assignment_expression "dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33)" identifier = (cast_expression "(double)(*(code *)PTR_floor_003a9670)(dVar33)" ( (type_descriptor "double" primitive_type) ) (call_expression "(*(code *)PTR_floor_003a9670)(dVar33)" (parenthesized_expression "(*(code *)PTR_floor_003a9670)" ( (pointer_expression "*(code *)PTR_floor_003a9670" * (cast_expression "(code *)PTR_floor_003a9670" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(dVar33)" ( identifier ))))) ;) (expression_statement "dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);" (assignment_expression "dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33)" identifier = (cast_expression "(double)(*(code *)PTR_ceil_003a8c20)(dVar33)" ( (type_descriptor "double" primitive_type) ) (call_expression "(*(code *)PTR_ceil_003a8c20)(dVar33)" (parenthesized_expression "(*(code *)PTR_ceil_003a8c20)" ( (pointer_expression "*(code *)PTR_ceil_003a8c20" * (cast_expression "(code *)PTR_ceil_003a8c20" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(dVar33)" ( identifier ))))) ;) (if_statement "if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8768:\n                  dVar33 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar33 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                  iVar14 = (int)dVar33;\n                }" if (parenthesized_expression "(dVar33 - dVar28 < dVar29 - dVar33)" ( (binary_expression "dVar33 - dVar28 < dVar29 - dVar33" (binary_expression "dVar33 - dVar28" identifier - identifier) < (binary_expression "dVar29 - dVar33" identifier - identifier)) )) (compound_statement "{\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8768:\n                  dVar33 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                  iVar14 = (int)dVar33;\n                }" { (if_statement "if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;" if (parenthesized_expression "(dVar33 < *(double *)((int)unaff_s3 + 0x4780))" ( (binary_expression "dVar33 < *(double *)((int)unaff_s3 + 0x4780)" identifier < (pointer_expression "*(double *)((int)unaff_s3 + 0x4780)" * (cast_expression "(double *)((int)unaff_s3 + 0x4780)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s3 + 0x4780)" ( (binary_expression "(int)unaff_s3 + 0x4780" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) )) (goto_statement "goto LAB_001c8a44;" goto statement_identifier ;)) (if_statement "if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;" if (parenthesized_expression "(*(double *)((int)unaff_s3 + 0x4788) < dVar33)" ( (binary_expression "*(double *)((int)unaff_s3 + 0x4788) < dVar33" (pointer_expression "*(double *)((int)unaff_s3 + 0x4788)" * (cast_expression "(double *)((int)unaff_s3 + 0x4788)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s3 + 0x4788)" ( (binary_expression "(int)unaff_s3 + 0x4788" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) < identifier) )) (goto_statement "goto LAB_001c88b8;" goto statement_identifier ;)) (labeled_statement "LAB_001c8768:\n                  dVar33 = (double)(*(code *)PTR_floor_003a9670)(dVar33);" statement_identifier : (expression_statement "dVar33 = (double)(*(code *)PTR_floor_003a9670)(dVar33);" (assignment_expression "dVar33 = (double)(*(code *)PTR_floor_003a9670)(dVar33)" identifier = (cast_expression "(double)(*(code *)PTR_floor_003a9670)(dVar33)" ( (type_descriptor "double" primitive_type) ) (call_expression "(*(code *)PTR_floor_003a9670)(dVar33)" (parenthesized_expression "(*(code *)PTR_floor_003a9670)" ( (pointer_expression "*(code *)PTR_floor_003a9670" * (cast_expression "(code *)PTR_floor_003a9670" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(dVar33)" ( identifier ))))) ;)) (expression_statement "iVar14 = (int)dVar33;" (assignment_expression "iVar14 = (int)dVar33" identifier = (cast_expression "(int)dVar33" ( (type_descriptor "int" primitive_type) ) identifier)) ;) }) (else_clause "else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar33 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                  iVar14 = (int)dVar33;\n                }" else (compound_statement "{\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar33 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                  iVar14 = (int)dVar33;\n                }" { (if_statement "if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;" if (parenthesized_expression "(dVar33 < *(double *)((int)unaff_s3 + 0x4780))" ( (binary_expression "dVar33 < *(double *)((int)unaff_s3 + 0x4780)" identifier < (pointer_expression "*(double *)((int)unaff_s3 + 0x4780)" * (cast_expression "(double *)((int)unaff_s3 + 0x4780)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s3 + 0x4780)" ( (binary_expression "(int)unaff_s3 + 0x4780" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) )) (goto_statement "goto LAB_001c8a44;" goto statement_identifier ;)) (if_statement "if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;" if (parenthesized_expression "(*(double *)((int)unaff_s3 + 0x4788) < dVar33)" ( (binary_expression "*(double *)((int)unaff_s3 + 0x4788) < dVar33" (pointer_expression "*(double *)((int)unaff_s3 + 0x4788)" * (cast_expression "(double *)((int)unaff_s3 + 0x4788)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s3 + 0x4788)" ( (binary_expression "(int)unaff_s3 + 0x4788" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) < identifier) )) (goto_statement "goto LAB_001c88b8;" goto statement_identifier ;)) (labeled_statement "LAB_001c8abc:\n                  dVar33 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);" statement_identifier : (expression_statement "dVar33 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);" (assignment_expression "dVar33 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33)" identifier = (cast_expression "(double)(*(code *)PTR_ceil_003a8c20)(dVar33)" ( (type_descriptor "double" primitive_type) ) (call_expression "(*(code *)PTR_ceil_003a8c20)(dVar33)" (parenthesized_expression "(*(code *)PTR_ceil_003a8c20)" ( (pointer_expression "*(code *)PTR_ceil_003a8c20" * (cast_expression "(code *)PTR_ceil_003a8c20" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(dVar33)" ( identifier ))))) ;)) (expression_statement "iVar14 = (int)dVar33;" (assignment_expression "iVar14 = (int)dVar33" identifier = (cast_expression "(int)dVar33" ( (type_descriptor "int" primitive_type) ) identifier)) ;) }))) }) (else_clause "else {\n                dVar33 = dVar32;\n                if (0 < (int)local_74) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar27 <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar33 = 0.0;\n                }\n                else {\n                  if (dVar33 < dVar27) goto LAB_001c8b24;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (dVar26 < dVar33) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8850:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < dVar25) goto LAB_001c8a44;\n                  if (dVar33 <= dVar26) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar14 = 0x7ffffdff;\n                }\n                else if (dVar25 <= dVar33) {\n                  if (dVar33 <= dVar31) goto LAB_001c8abc;\n                  iVar14 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar14 = -0x7ffffdff;\n                }\n              }" else (compound_statement "{\n                dVar33 = dVar32;\n                if (0 < (int)local_74) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar27 <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar33 = 0.0;\n                }\n                else {\n                  if (dVar33 < dVar27) goto LAB_001c8b24;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (dVar26 < dVar33) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8850:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < dVar25) goto LAB_001c8a44;\n                  if (dVar33 <= dVar26) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar14 = 0x7ffffdff;\n                }\n                else if (dVar25 <= dVar33) {\n                  if (dVar33 <= dVar31) goto LAB_001c8abc;\n                  iVar14 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar14 = -0x7ffffdff;\n                }\n              }" { (expression_statement "dVar33 = dVar32;" (assignment_expression "dVar33 = dVar32" identifier = identifier) ;) (if_statement "if (0 < (int)local_74) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }" if (parenthesized_expression "(0 < (int)local_74)" ( (binary_expression "0 < (int)local_74" number_literal < (cast_expression "(int)local_74" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }" { (expression_statement "dVar33 = dVar32 - (double)(int)local_74;" (assignment_expression "dVar33 = dVar32 - (double)(int)local_74" identifier = (binary_expression "dVar32 - (double)(int)local_74" identifier - (cast_expression "(double)(int)local_74" ( (type_descriptor "double" primitive_type) ) (cast_expression "(int)local_74" ( (type_descriptor "int" primitive_type) ) identifier)))) ;) })) (expression_statement "dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);" (assignment_expression "dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33)" identifier = (cast_expression "(double)(*(code *)PTR_floor_003a9670)(dVar33)" ( (type_descriptor "double" primitive_type) ) (call_expression "(*(code *)PTR_floor_003a9670)(dVar33)" (parenthesized_expression "(*(code *)PTR_floor_003a9670)" ( (pointer_expression "*(code *)PTR_floor_003a9670" * (cast_expression "(code *)PTR_floor_003a9670" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(dVar33)" ( identifier ))))) ;) (expression_statement "dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);" (assignment_expression "dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33)" identifier = (cast_expression "(double)(*(code *)PTR_ceil_003a8c20)(dVar33)" ( (type_descriptor "double" primitive_type) ) (call_expression "(*(code *)PTR_ceil_003a8c20)(dVar33)" (parenthesized_expression "(*(code *)PTR_ceil_003a8c20)" ( (pointer_expression "*(code *)PTR_ceil_003a8c20" * (cast_expression "(code *)PTR_ceil_003a8c20" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(dVar33)" ( identifier ))))) ;) (if_statement "if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar27 <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar33 = 0.0;\n                }\n                else {\n                  if (dVar33 < dVar27) goto LAB_001c8b24;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (dVar26 < dVar33) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8850:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar33 = (double)(int)unaff_s7;\n                }" if (parenthesized_expression "(dVar33 - dVar28 < dVar29 - dVar33)" ( (binary_expression "dVar33 - dVar28 < dVar29 - dVar33" (binary_expression "dVar33 - dVar28" identifier - identifier) < (binary_expression "dVar29 - dVar33" identifier - identifier)) )) (compound_statement "{\n                  if (dVar27 <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar33 = 0.0;\n                }" { (if_statement "if (dVar27 <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }" if (parenthesized_expression "(dVar27 <= dVar33)" ( (binary_expression "dVar27 <= dVar33" identifier <= identifier) )) (compound_statement "{\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }" { (expression_statement "pcVar23 = (code *)PTR_floor_003a9670;" (assignment_expression "pcVar23 = (code *)PTR_floor_003a9670" identifier = (cast_expression "(code *)PTR_floor_003a9670" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (if_statement "if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;" if (parenthesized_expression "(dVar33 <= *(double *)((int)unaff_s3 + 0x4788))" ( (binary_expression "dVar33 <= *(double *)((int)unaff_s3 + 0x4788)" identifier <= (pointer_expression "*(double *)((int)unaff_s3 + 0x4788)" * (cast_expression "(double *)((int)unaff_s3 + 0x4788)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s3 + 0x4788)" ( (binary_expression "(int)unaff_s3 + 0x4788" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) )) (goto_statement "goto LAB_001c8838;" goto statement_identifier ;)) (labeled_statement "LAB_001c8c68:\n                    iVar15 = 0x7ffffdff;" statement_identifier : (expression_statement "iVar15 = 0x7ffffdff;" (assignment_expression "iVar15 = 0x7ffffdff" identifier = number_literal) ;)) (goto_statement "goto LAB_001c8850;" goto statement_identifier ;) })) (labeled_statement "LAB_001c8b24:\n                  dVar32 = dVar32 + dVar35;" statement_identifier : (expression_statement "dVar32 = dVar32 + dVar35;" (assignment_expression "dVar32 = dVar32 + dVar35" identifier = (binary_expression "dVar32 + dVar35" identifier + identifier)) ;)) (expression_statement "iVar15 = -0x7ffffdff;" (assignment_expression "iVar15 = -0x7ffffdff" identifier = number_literal) ;) (if_statement "if ((int)unaff_s7 < 0) goto LAB_001c8b34;" if (parenthesized_expression "((int)unaff_s7 < 0)" ( (binary_expression "(int)unaff_s7 < 0" (cast_expression "(int)unaff_s7" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (goto_statement "goto LAB_001c8b34;" goto statement_identifier ;)) (labeled_statement "LAB_001c8858:\n                  dVar33 = 0.0;" statement_identifier : (expression_statement "dVar33 = 0.0;" (assignment_expression "dVar33 = 0.0" identifier = number_literal) ;)) }) (else_clause "else {\n                  if (dVar33 < dVar27) goto LAB_001c8b24;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (dVar26 < dVar33) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8850:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar33 = (double)(int)unaff_s7;\n                }" else (compound_statement "{\n                  if (dVar33 < dVar27) goto LAB_001c8b24;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (dVar26 < dVar33) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8850:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar33 = (double)(int)unaff_s7;\n                }" { (if_statement "if (dVar33 < dVar27) goto LAB_001c8b24;" if (parenthesized_expression "(dVar33 < dVar27)" ( (binary_expression "dVar33 < dVar27" identifier < identifier) )) (goto_statement "goto LAB_001c8b24;" goto statement_identifier ;)) (expression_statement "pcVar23 = (code *)PTR_ceil_003a8c20;" (assignment_expression "pcVar23 = (code *)PTR_ceil_003a8c20" identifier = (cast_expression "(code *)PTR_ceil_003a8c20" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (if_statement "if (dVar26 < dVar33) goto LAB_001c8c68;" if (parenthesized_expression "(dVar26 < dVar33)" ( (binary_expression "dVar26 < dVar33" identifier < identifier) )) (goto_statement "goto LAB_001c8c68;" goto statement_identifier ;)) (labeled_statement "LAB_001c8838:\n                  dVar33 = (double)(*pcVar23)(dVar33);" statement_identifier : (expression_statement "dVar33 = (double)(*pcVar23)(dVar33);" (assignment_expression "dVar33 = (double)(*pcVar23)(dVar33)" identifier = (cast_expression "(double)(*pcVar23)(dVar33)" ( (type_descriptor "double" primitive_type) ) (call_expression "(*pcVar23)(dVar33)" (parenthesized_expression "(*pcVar23)" ( (pointer_expression "*pcVar23" * identifier) )) (argument_list "(dVar33)" ( identifier ))))) ;)) (expression_statement "iVar15 = (int)dVar33;" (assignment_expression "iVar15 = (int)dVar33" identifier = (cast_expression "(int)dVar33" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (labeled_statement "LAB_001c8850:\n                  dVar32 = dVar32 + dVar35;" statement_identifier : (expression_statement "dVar32 = dVar32 + dVar35;" (assignment_expression "dVar32 = dVar32 + dVar35" identifier = (binary_expression "dVar32 + dVar35" identifier + identifier)) ;)) (if_statement "if (-1 < (int)unaff_s7) goto LAB_001c8858;" if (parenthesized_expression "(-1 < (int)unaff_s7)" ( (binary_expression "-1 < (int)unaff_s7" number_literal < (cast_expression "(int)unaff_s7" ( (type_descriptor "int" primitive_type) ) identifier)) )) (goto_statement "goto LAB_001c8858;" goto statement_identifier ;)) (labeled_statement "LAB_001c8b34:\n                  dVar33 = (double)(int)unaff_s7;" statement_identifier : (expression_statement "dVar33 = (double)(int)unaff_s7;" (assignment_expression "dVar33 = (double)(int)unaff_s7" identifier = (cast_expression "(double)(int)unaff_s7" ( (type_descriptor "double" primitive_type) ) (cast_expression "(int)unaff_s7" ( (type_descriptor "int" primitive_type) ) identifier))) ;)) }))) (expression_statement "dVar33 = dVar32 + dVar33;" (assignment_expression "dVar33 = dVar32 + dVar33" identifier = (binary_expression "dVar32 + dVar33" identifier + identifier)) ;) (expression_statement "dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);" (assignment_expression "dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33)" identifier = (cast_expression "(double)(*(code *)PTR_floor_003a9670)(dVar33)" ( (type_descriptor "double" primitive_type) ) (call_expression "(*(code *)PTR_floor_003a9670)(dVar33)" (parenthesized_expression "(*(code *)PTR_floor_003a9670)" ( (pointer_expression "*(code *)PTR_floor_003a9670" * (cast_expression "(code *)PTR_floor_003a9670" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(dVar33)" ( identifier ))))) ;) (expression_statement "dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);" (assignment_expression "dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33)" identifier = (cast_expression "(double)(*(code *)PTR_ceil_003a8c20)(dVar33)" ( (type_descriptor "double" primitive_type) ) (call_expression "(*(code *)PTR_ceil_003a8c20)(dVar33)" (parenthesized_expression "(*(code *)PTR_ceil_003a8c20)" ( (pointer_expression "*(code *)PTR_ceil_003a8c20" * (cast_expression "(code *)PTR_ceil_003a8c20" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(dVar33)" ( identifier ))))) ;) (if_statement "if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < dVar25) goto LAB_001c8a44;\n                  if (dVar33 <= dVar26) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar14 = 0x7ffffdff;\n                }\n                else if (dVar25 <= dVar33) {\n                  if (dVar33 <= dVar31) goto LAB_001c8abc;\n                  iVar14 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar14 = -0x7ffffdff;\n                }" if (parenthesized_expression "(dVar33 - dVar28 < dVar29 - dVar33)" ( (binary_expression "dVar33 - dVar28 < dVar29 - dVar33" (binary_expression "dVar33 - dVar28" identifier - identifier) < (binary_expression "dVar29 - dVar33" identifier - identifier)) )) (compound_statement "{\n                  if (dVar33 < dVar25) goto LAB_001c8a44;\n                  if (dVar33 <= dVar26) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar14 = 0x7ffffdff;\n                }" { (if_statement "if (dVar33 < dVar25) goto LAB_001c8a44;" if (parenthesized_expression "(dVar33 < dVar25)" ( (binary_expression "dVar33 < dVar25" identifier < identifier) )) (goto_statement "goto LAB_001c8a44;" goto statement_identifier ;)) (if_statement "if (dVar33 <= dVar26) goto LAB_001c8768;" if (parenthesized_expression "(dVar33 <= dVar26)" ( (binary_expression "dVar33 <= dVar26" identifier <= identifier) )) (goto_statement "goto LAB_001c8768;" goto statement_identifier ;)) (labeled_statement "LAB_001c88b8:\n                  iVar14 = 0x7ffffdff;" statement_identifier : (expression_statement "iVar14 = 0x7ffffdff;" (assignment_expression "iVar14 = 0x7ffffdff" identifier = number_literal) ;)) }) (else_clause "else if (dVar25 <= dVar33) {\n                  if (dVar33 <= dVar31) goto LAB_001c8abc;\n                  iVar14 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar14 = -0x7ffffdff;\n                }" else (if_statement "if (dVar25 <= dVar33) {\n                  if (dVar33 <= dVar31) goto LAB_001c8abc;\n                  iVar14 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar14 = -0x7ffffdff;\n                }" if (parenthesized_expression "(dVar25 <= dVar33)" ( (binary_expression "dVar25 <= dVar33" identifier <= identifier) )) (compound_statement "{\n                  if (dVar33 <= dVar31) goto LAB_001c8abc;\n                  iVar14 = 0x7ffffdff;\n                }" { (if_statement "if (dVar33 <= dVar31) goto LAB_001c8abc;" if (parenthesized_expression "(dVar33 <= dVar31)" ( (binary_expression "dVar33 <= dVar31" identifier <= identifier) )) (goto_statement "goto LAB_001c8abc;" goto statement_identifier ;)) (expression_statement "iVar14 = 0x7ffffdff;" (assignment_expression "iVar14 = 0x7ffffdff" identifier = number_literal) ;) }) (else_clause "else {\nLAB_001c8a44:\n                  iVar14 = -0x7ffffdff;\n                }" else (compound_statement "{\nLAB_001c8a44:\n                  iVar14 = -0x7ffffdff;\n                }" { (labeled_statement "LAB_001c8a44:\n                  iVar14 = -0x7ffffdff;" statement_identifier : (expression_statement "iVar14 = -0x7ffffdff;" (assignment_expression "iVar14 = -0x7ffffdff" identifier = number_literal) ;)) }))))) }))) (expression_statement "unaff_s8 = (undefined4 *******)(iVar14 - iVar15);" (assignment_expression "unaff_s8 = (undefined4 *******)(iVar14 - iVar15)" identifier = (cast_expression "(undefined4 *******)(iVar14 - iVar15)" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(iVar14 - iVar15)" ( (binary_expression "iVar14 - iVar15" identifier - identifier) )))) ;) (expression_statement "param_2 = (undefined4 *******)((int)param_1[0x8c] + iVar15);" (assignment_expression "param_2 = (undefined4 *******)((int)param_1[0x8c] + iVar15)" identifier = (cast_expression "(undefined4 *******)((int)param_1[0x8c] + iVar15)" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)param_1[0x8c] + iVar15)" ( (binary_expression "(int)param_1[0x8c] + iVar15" (cast_expression "(int)param_1[0x8c]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "param_1[0x8c]" identifier [ number_literal ])) + identifier) )))) ;) (expression_statement "local_6c = unaff_s8;" (assignment_expression "local_6c = unaff_s8" identifier = identifier) ;) (expression_statement "local_64 = param_2;" (assignment_expression "local_64 = param_2" identifier = identifier) ;) (expression_statement "iVar15 = (*(code *)PTR_CropImage_003a90b8)(param_1,unaff_s6,param_3);" (assignment_expression "iVar15 = (*(code *)PTR_CropImage_003a90b8)(param_1,unaff_s6,param_3)" identifier = (call_expression "(*(code *)PTR_CropImage_003a90b8)(param_1,unaff_s6,param_3)" (parenthesized_expression "(*(code *)PTR_CropImage_003a90b8)" ( (pointer_expression "*(code *)PTR_CropImage_003a90b8" * (cast_expression "(code *)PTR_CropImage_003a90b8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_1,unaff_s6,param_3)" ( identifier , identifier , identifier )))) ;) (if_statement "if (iVar15 != 0) {\n                (*(code *)PTR_AppendImageToList_003a9880)(&local_80,iVar15);\n              }" if (parenthesized_expression "(iVar15 != 0)" ( (binary_expression "iVar15 != 0" identifier != number_literal) )) (compound_statement "{\n                (*(code *)PTR_AppendImageToList_003a9880)(&local_80,iVar15);\n              }" { (expression_statement "(*(code *)PTR_AppendImageToList_003a9880)(&local_80,iVar15);" (call_expression "(*(code *)PTR_AppendImageToList_003a9880)(&local_80,iVar15)" (parenthesized_expression "(*(code *)PTR_AppendImageToList_003a9880)" ( (pointer_expression "*(code *)PTR_AppendImageToList_003a9880" * (cast_expression "(code *)PTR_AppendImageToList_003a9880" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(&local_80,iVar15)" ( (pointer_expression "&local_80" & identifier) , identifier ))) ;) })) }) while (parenthesized_expression "(dVar32 < dVar34)" ( (binary_expression "dVar32 < dVar34" identifier < identifier) )) ;) })) (expression_statement "unaff_s5 = unaff_s3;" (assignment_expression "unaff_s5 = unaff_s3" identifier = identifier) ;) (if_statement "if (local_c8 <= dVar30) break;" if (parenthesized_expression "(local_c8 <= dVar30)" ( (binary_expression "local_c8 <= dVar30" identifier <= identifier) )) (break_statement "break;" break ;)) (if_statement "if (unaff_s4 == (undefined4 ******)0x0) goto LAB_001c854c;" if (parenthesized_expression "(unaff_s4 == (undefined4 ******)0x0)" ( (binary_expression "unaff_s4 == (undefined4 ******)0x0" identifier == (cast_expression "(undefined4 ******)0x0" ( (type_descriptor "undefined4 ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (goto_statement "goto LAB_001c854c;" goto statement_identifier ;)) (labeled_statement "LAB_001c8b70:\n          unaff_s7 = local_70;" statement_identifier : (expression_statement "unaff_s7 = local_70;" (assignment_expression "unaff_s7 = local_70" identifier = identifier) ;)) (expression_statement "dVar32 = dVar30;" (assignment_expression "dVar32 = dVar30" identifier = identifier) ;) (if_statement "if (0 < (int)local_70) {\n            dVar32 = dVar30 - (double)(int)local_70;\n          }" if (parenthesized_expression "(0 < (int)local_70)" ( (binary_expression "0 < (int)local_70" number_literal < (cast_expression "(int)local_70" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n            dVar32 = dVar30 - (double)(int)local_70;\n          }" { (expression_statement "dVar32 = dVar30 - (double)(int)local_70;" (assignment_expression "dVar32 = dVar30 - (double)(int)local_70" identifier = (binary_expression "dVar30 - (double)(int)local_70" identifier - (cast_expression "(double)(int)local_70" ( (type_descriptor "double" primitive_type) ) (cast_expression "(int)local_70" ( (type_descriptor "int" primitive_type) ) identifier)))) ;) })) (expression_statement "dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);" (assignment_expression "dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32)" identifier = (cast_expression "(double)(*(code *)PTR_floor_003a9670)(dVar32)" ( (type_descriptor "double" primitive_type) ) (call_expression "(*(code *)PTR_floor_003a9670)(dVar32)" (parenthesized_expression "(*(code *)PTR_floor_003a9670)" ( (pointer_expression "*(code *)PTR_floor_003a9670" * (cast_expression "(code *)PTR_floor_003a9670" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(dVar32)" ( identifier ))))) ;) (expression_statement "dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);" (assignment_expression "dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32)" identifier = (cast_expression "(double)(*(code *)PTR_ceil_003a8c20)(dVar32)" ( (type_descriptor "double" primitive_type) ) (call_expression "(*(code *)PTR_ceil_003a8c20)(dVar32)" (parenthesized_expression "(*(code *)PTR_ceil_003a8c20)" ( (pointer_expression "*(code *)PTR_ceil_003a8c20" * (cast_expression "(code *)PTR_ceil_003a8c20" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(dVar32)" ( identifier ))))) ;) (if_statement "if (dVar32 - dVar26 < dVar27 - dVar32) {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d8c;\n            pcVar23 = (code *)PTR_floor_003a9670;\n            if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8d50;\nLAB_001c8bd8:\n            dVar32 = (double)(*pcVar23)(dVar32);\n            iVar15 = (int)dVar32;\nLAB_001c8bf0:\n            dVar30 = dVar30 + local_a0;\n            if (-2 < (int)unaff_s7) goto LAB_001c8c00;\nLAB_001c8d6c:\n            dVar32 = (double)(int)unaff_s7;\n          }\n          else {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d8c:\n              iVar15 = -0x7ffffdff;\n              goto LAB_001c8bf0;\n            }\n            pcVar23 = (code *)PTR_ceil_003a8c20;\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8bd8;\nLAB_001c8d50:\n            iVar15 = 0x7ffffdff;\n            dVar30 = dVar30 + local_a0;\n            if ((int)unaff_s7 < -1) goto LAB_001c8d6c;\nLAB_001c8c00:\n            dVar32 = 0.0;\n          }" if (parenthesized_expression "(dVar32 - dVar26 < dVar27 - dVar32)" ( (binary_expression "dVar32 - dVar26 < dVar27 - dVar32" (binary_expression "dVar32 - dVar26" identifier - identifier) < (binary_expression "dVar27 - dVar32" identifier - identifier)) )) (compound_statement "{\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d8c;\n            pcVar23 = (code *)PTR_floor_003a9670;\n            if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8d50;\nLAB_001c8bd8:\n            dVar32 = (double)(*pcVar23)(dVar32);\n            iVar15 = (int)dVar32;\nLAB_001c8bf0:\n            dVar30 = dVar30 + local_a0;\n            if (-2 < (int)unaff_s7) goto LAB_001c8c00;\nLAB_001c8d6c:\n            dVar32 = (double)(int)unaff_s7;\n          }" { (if_statement "if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d8c;" if (parenthesized_expression "(dVar32 < *(double *)((int)unaff_s3 + 0x4780))" ( (binary_expression "dVar32 < *(double *)((int)unaff_s3 + 0x4780)" identifier < (pointer_expression "*(double *)((int)unaff_s3 + 0x4780)" * (cast_expression "(double *)((int)unaff_s3 + 0x4780)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s3 + 0x4780)" ( (binary_expression "(int)unaff_s3 + 0x4780" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) )) (goto_statement "goto LAB_001c8d8c;" goto statement_identifier ;)) (expression_statement "pcVar23 = (code *)PTR_floor_003a9670;" (assignment_expression "pcVar23 = (code *)PTR_floor_003a9670" identifier = (cast_expression "(code *)PTR_floor_003a9670" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (if_statement "if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8d50;" if (parenthesized_expression "(*(double *)((int)unaff_s3 + 0x4788) < dVar32)" ( (binary_expression "*(double *)((int)unaff_s3 + 0x4788) < dVar32" (pointer_expression "*(double *)((int)unaff_s3 + 0x4788)" * (cast_expression "(double *)((int)unaff_s3 + 0x4788)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s3 + 0x4788)" ( (binary_expression "(int)unaff_s3 + 0x4788" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) < identifier) )) (goto_statement "goto LAB_001c8d50;" goto statement_identifier ;)) (labeled_statement "LAB_001c8bd8:\n            dVar32 = (double)(*pcVar23)(dVar32);" statement_identifier : (expression_statement "dVar32 = (double)(*pcVar23)(dVar32);" (assignment_expression "dVar32 = (double)(*pcVar23)(dVar32)" identifier = (cast_expression "(double)(*pcVar23)(dVar32)" ( (type_descriptor "double" primitive_type) ) (call_expression "(*pcVar23)(dVar32)" (parenthesized_expression "(*pcVar23)" ( (pointer_expression "*pcVar23" * identifier) )) (argument_list "(dVar32)" ( identifier ))))) ;)) (expression_statement "iVar15 = (int)dVar32;" (assignment_expression "iVar15 = (int)dVar32" identifier = (cast_expression "(int)dVar32" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (labeled_statement "LAB_001c8bf0:\n            dVar30 = dVar30 + local_a0;" statement_identifier : (expression_statement "dVar30 = dVar30 + local_a0;" (assignment_expression "dVar30 = dVar30 + local_a0" identifier = (binary_expression "dVar30 + local_a0" identifier + identifier)) ;)) (if_statement "if (-2 < (int)unaff_s7) goto LAB_001c8c00;" if (parenthesized_expression "(-2 < (int)unaff_s7)" ( (binary_expression "-2 < (int)unaff_s7" number_literal < (cast_expression "(int)unaff_s7" ( (type_descriptor "int" primitive_type) ) identifier)) )) (goto_statement "goto LAB_001c8c00;" goto statement_identifier ;)) (labeled_statement "LAB_001c8d6c:\n            dVar32 = (double)(int)unaff_s7;" statement_identifier : (expression_statement "dVar32 = (double)(int)unaff_s7;" (assignment_expression "dVar32 = (double)(int)unaff_s7" identifier = (cast_expression "(double)(int)unaff_s7" ( (type_descriptor "double" primitive_type) ) (cast_expression "(int)unaff_s7" ( (type_descriptor "int" primitive_type) ) identifier))) ;)) }) (else_clause "else {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d8c:\n              iVar15 = -0x7ffffdff;\n              goto LAB_001c8bf0;\n            }\n            pcVar23 = (code *)PTR_ceil_003a8c20;\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8bd8;\nLAB_001c8d50:\n            iVar15 = 0x7ffffdff;\n            dVar30 = dVar30 + local_a0;\n            if ((int)unaff_s7 < -1) goto LAB_001c8d6c;\nLAB_001c8c00:\n            dVar32 = 0.0;\n          }" else (compound_statement "{\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d8c:\n              iVar15 = -0x7ffffdff;\n              goto LAB_001c8bf0;\n            }\n            pcVar23 = (code *)PTR_ceil_003a8c20;\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8bd8;\nLAB_001c8d50:\n            iVar15 = 0x7ffffdff;\n            dVar30 = dVar30 + local_a0;\n            if ((int)unaff_s7 < -1) goto LAB_001c8d6c;\nLAB_001c8c00:\n            dVar32 = 0.0;\n          }" { (if_statement "if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d8c:\n              iVar15 = -0x7ffffdff;\n              goto LAB_001c8bf0;\n            }" if (parenthesized_expression "(dVar32 < *(double *)((int)unaff_s3 + 0x4780))" ( (binary_expression "dVar32 < *(double *)((int)unaff_s3 + 0x4780)" identifier < (pointer_expression "*(double *)((int)unaff_s3 + 0x4780)" * (cast_expression "(double *)((int)unaff_s3 + 0x4780)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s3 + 0x4780)" ( (binary_expression "(int)unaff_s3 + 0x4780" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) )) (compound_statement "{\nLAB_001c8d8c:\n              iVar15 = -0x7ffffdff;\n              goto LAB_001c8bf0;\n            }" { (labeled_statement "LAB_001c8d8c:\n              iVar15 = -0x7ffffdff;" statement_identifier : (expression_statement "iVar15 = -0x7ffffdff;" (assignment_expression "iVar15 = -0x7ffffdff" identifier = number_literal) ;)) (goto_statement "goto LAB_001c8bf0;" goto statement_identifier ;) })) (expression_statement "pcVar23 = (code *)PTR_ceil_003a8c20;" (assignment_expression "pcVar23 = (code *)PTR_ceil_003a8c20" identifier = (cast_expression "(code *)PTR_ceil_003a8c20" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (if_statement "if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8bd8;" if (parenthesized_expression "(dVar32 <= *(double *)((int)unaff_s3 + 0x4788))" ( (binary_expression "dVar32 <= *(double *)((int)unaff_s3 + 0x4788)" identifier <= (pointer_expression "*(double *)((int)unaff_s3 + 0x4788)" * (cast_expression "(double *)((int)unaff_s3 + 0x4788)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s3 + 0x4788)" ( (binary_expression "(int)unaff_s3 + 0x4788" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) )) (goto_statement "goto LAB_001c8bd8;" goto statement_identifier ;)) (labeled_statement "LAB_001c8d50:\n            iVar15 = 0x7ffffdff;" statement_identifier : (expression_statement "iVar15 = 0x7ffffdff;" (assignment_expression "iVar15 = 0x7ffffdff" identifier = number_literal) ;)) (expression_statement "dVar30 = dVar30 + local_a0;" (assignment_expression "dVar30 = dVar30 + local_a0" identifier = (binary_expression "dVar30 + local_a0" identifier + identifier)) ;) (if_statement "if ((int)unaff_s7 < -1) goto LAB_001c8d6c;" if (parenthesized_expression "((int)unaff_s7 < -1)" ( (binary_expression "(int)unaff_s7 < -1" (cast_expression "(int)unaff_s7" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (goto_statement "goto LAB_001c8d6c;" goto statement_identifier ;)) (labeled_statement "LAB_001c8c00:\n            dVar32 = 0.0;" statement_identifier : (expression_statement "dVar32 = 0.0;" (assignment_expression "dVar32 = 0.0" identifier = number_literal) ;)) }))) (expression_statement "dVar32 = dVar30 + dVar32;" (assignment_expression "dVar32 = dVar30 + dVar32" identifier = (binary_expression "dVar30 + dVar32" identifier + identifier)) ;) (expression_statement "dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);" (assignment_expression "dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32)" identifier = (cast_expression "(double)(*(code *)PTR_floor_003a9670)(dVar32)" ( (type_descriptor "double" primitive_type) ) (call_expression "(*(code *)PTR_floor_003a9670)(dVar32)" (parenthesized_expression "(*(code *)PTR_floor_003a9670)" ( (pointer_expression "*(code *)PTR_floor_003a9670" * (cast_expression "(code *)PTR_floor_003a9670" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(dVar32)" ( identifier ))))) ;) (expression_statement "dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);" (assignment_expression "dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32)" identifier = (cast_expression "(double)(*(code *)PTR_ceil_003a8c20)(dVar32)" ( (type_descriptor "double" primitive_type) ) (call_expression "(*(code *)PTR_ceil_003a8c20)(dVar32)" (parenthesized_expression "(*(code *)PTR_ceil_003a8c20)" ( (pointer_expression "*(code *)PTR_ceil_003a8c20" * (cast_expression "(code *)PTR_ceil_003a8c20" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(dVar32)" ( identifier ))))) ;) (if_statement "if (dVar32 - dVar26 < dVar27 - dVar32) {\n            if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n              if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) {\nLAB_001c8cec:\n                iVar14 = 0x7ffffdff;\n              }\n              else {\nLAB_001c8630:\n                dVar32 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n                iVar14 = (int)dVar32;\n              }\n              goto LAB_001c8644;\n            }\n            goto LAB_001c8c88;\n          }" if (parenthesized_expression "(dVar32 - dVar26 < dVar27 - dVar32)" ( (binary_expression "dVar32 - dVar26 < dVar27 - dVar32" (binary_expression "dVar32 - dVar26" identifier - identifier) < (binary_expression "dVar27 - dVar32" identifier - identifier)) )) (compound_statement "{\n            if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n              if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) {\nLAB_001c8cec:\n                iVar14 = 0x7ffffdff;\n              }\n              else {\nLAB_001c8630:\n                dVar32 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n                iVar14 = (int)dVar32;\n              }\n              goto LAB_001c8644;\n            }\n            goto LAB_001c8c88;\n          }" { (if_statement "if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n              if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) {\nLAB_001c8cec:\n                iVar14 = 0x7ffffdff;\n              }\n              else {\nLAB_001c8630:\n                dVar32 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n                iVar14 = (int)dVar32;\n              }\n              goto LAB_001c8644;\n            }" if (parenthesized_expression "(*(double *)((int)unaff_s3 + 0x4780) <= dVar32)" ( (binary_expression "*(double *)((int)unaff_s3 + 0x4780) <= dVar32" (pointer_expression "*(double *)((int)unaff_s3 + 0x4780)" * (cast_expression "(double *)((int)unaff_s3 + 0x4780)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s3 + 0x4780)" ( (binary_expression "(int)unaff_s3 + 0x4780" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) <= identifier) )) (compound_statement "{\n              if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) {\nLAB_001c8cec:\n                iVar14 = 0x7ffffdff;\n              }\n              else {\nLAB_001c8630:\n                dVar32 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n                iVar14 = (int)dVar32;\n              }\n              goto LAB_001c8644;\n            }" { (if_statement "if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) {\nLAB_001c8cec:\n                iVar14 = 0x7ffffdff;\n              }\n              else {\nLAB_001c8630:\n                dVar32 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n                iVar14 = (int)dVar32;\n              }" if (parenthesized_expression "(*(double *)((int)unaff_s3 + 0x4788) < dVar32)" ( (binary_expression "*(double *)((int)unaff_s3 + 0x4788) < dVar32" (pointer_expression "*(double *)((int)unaff_s3 + 0x4788)" * (cast_expression "(double *)((int)unaff_s3 + 0x4788)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s3 + 0x4788)" ( (binary_expression "(int)unaff_s3 + 0x4788" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) < identifier) )) (compound_statement "{\nLAB_001c8cec:\n                iVar14 = 0x7ffffdff;\n              }" { (labeled_statement "LAB_001c8cec:\n                iVar14 = 0x7ffffdff;" statement_identifier : (expression_statement "iVar14 = 0x7ffffdff;" (assignment_expression "iVar14 = 0x7ffffdff" identifier = number_literal) ;)) }) (else_clause "else {\nLAB_001c8630:\n                dVar32 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n                iVar14 = (int)dVar32;\n              }" else (compound_statement "{\nLAB_001c8630:\n                dVar32 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n                iVar14 = (int)dVar32;\n              }" { (labeled_statement "LAB_001c8630:\n                dVar32 = (double)(*(code *)PTR_floor_003a9670)(dVar32);" statement_identifier : (expression_statement "dVar32 = (double)(*(code *)PTR_floor_003a9670)(dVar32);" (assignment_expression "dVar32 = (double)(*(code *)PTR_floor_003a9670)(dVar32)" identifier = (cast_expression "(double)(*(code *)PTR_floor_003a9670)(dVar32)" ( (type_descriptor "double" primitive_type) ) (call_expression "(*(code *)PTR_floor_003a9670)(dVar32)" (parenthesized_expression "(*(code *)PTR_floor_003a9670)" ( (pointer_expression "*(code *)PTR_floor_003a9670" * (cast_expression "(code *)PTR_floor_003a9670" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(dVar32)" ( identifier ))))) ;)) (expression_statement "iVar14 = (int)dVar32;" (assignment_expression "iVar14 = (int)dVar32" identifier = (cast_expression "(int)dVar32" ( (type_descriptor "int" primitive_type) ) identifier)) ;) }))) (goto_statement "goto LAB_001c8644;" goto statement_identifier ;) })) (goto_statement "goto LAB_001c8c88;" goto statement_identifier ;) })) (if_statement "if (dVar32 < dVar25) goto LAB_001c8c88;" if (parenthesized_expression "(dVar32 < dVar25)" ( (binary_expression "dVar32 < dVar25" identifier < identifier) )) (goto_statement "goto LAB_001c8c88;" goto statement_identifier ;)) (if_statement "if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;" if (parenthesized_expression "(*(double *)((int)unaff_s3 + 0x4788) < dVar32)" ( (binary_expression "*(double *)((int)unaff_s3 + 0x4788) < dVar32" (pointer_expression "*(double *)((int)unaff_s3 + 0x4788)" * (cast_expression "(double *)((int)unaff_s3 + 0x4788)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s3 + 0x4788)" ( (binary_expression "(int)unaff_s3 + 0x4788" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) < identifier) )) (goto_statement "goto LAB_001c8cec;" goto statement_identifier ;)) (labeled_statement "LAB_001c8d18:\n          dVar32 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);" statement_identifier : (expression_statement "dVar32 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);" (assignment_expression "dVar32 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32)" identifier = (cast_expression "(double)(*(code *)PTR_ceil_003a8c20)(dVar32)" ( (type_descriptor "double" primitive_type) ) (call_expression "(*(code *)PTR_ceil_003a8c20)(dVar32)" (parenthesized_expression "(*(code *)PTR_ceil_003a8c20)" ( (pointer_expression "*(code *)PTR_ceil_003a8c20" * (cast_expression "(code *)PTR_ceil_003a8c20" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(dVar32)" ( identifier ))))) ;)) (expression_statement "iVar14 = (int)dVar32;" (assignment_expression "iVar14 = (int)dVar32" identifier = (cast_expression "(int)dVar32" ( (type_descriptor "int" primitive_type) ) identifier)) ;) }) while (parenthesized_expression "( true )" ( true )) ;)) })) (expression_statement "(*(code *)PTR_ClearMagickException_003a90f8)(param_3);" (call_expression "(*(code *)PTR_ClearMagickException_003a90f8)(param_3)" (parenthesized_expression "(*(code *)PTR_ClearMagickException_003a90f8)" ( (pointer_expression "*(code *)PTR_ClearMagickException_003a90f8" * (cast_expression "(code *)PTR_ClearMagickException_003a90f8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_3)" ( identifier ))) ;) (expression_statement "pppppppuVar9 = local_80;" (assignment_expression "pppppppuVar9 = local_80" identifier = identifier) ;) (expression_statement "unaff_s0 = param_2;" (assignment_expression "unaff_s0 = param_2" identifier = identifier) ;) }) (else_clause "else {\n      unaff_s3 = &local_7c;\n      if (((local_7c == (undefined4 *******)0x0) && (local_78 == (undefined4 ******)0x0)) ||\n         (((uint)ppppppuVar2 & 3) != 0)) {\n        local_80 = (undefined4 *******)(*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n        pppppppuVar9 = local_80;\n        unaff_s4 = ppppppuVar2;\n        if ((local_80 != (undefined4 *******)0x0) &&\n           (unaff_s4 = (undefined4 ******)((uint)ppppppuVar2 & 0x2000),\n           unaff_s4 != (undefined4 ******)0x0)) {\n          local_80[0x8c] = (undefined4 ******)((int)local_80[0x8c] - (int)local_74);\n          local_80[0x8d] = (undefined4 ******)((int)local_80[0x8d] - (int)local_70);\n          local_80[0x8a] = local_7c;\n          local_80[0x8b] = local_78;\n        }\n      }\n      else {\n        unaff_s7 = (undefined4 *******)param_1[6];\n        if ((local_7c < unaff_s7) || (local_78 < param_1[7])) {\n          ppppppuVar2 = param_1[0x8b];\n          if ((undefined4 *******)param_1[0x8a] != (undefined4 *******)0x0) {\n            unaff_s7 = (undefined4 *******)param_1[0x8a];\n          }\n          if (ppppppuVar2 == (undefined4 ******)0x0) {\n            ppppppuVar2 = param_1[7];\n          }\n          if (local_7c == (undefined4 *******)0x0) {\n            unaff_s0 = unaff_s7;\n          }\n          if (local_78 == (undefined4 ******)0x0) {\n            unaff_s4 = ppppppuVar2;\n          }\n          pppppppuVar9 = local_80;\n          if (0 < (int)ppppppuVar2) {\n            unaff_s3 = (undefined4 *******)0x0;\n            unaff_s8 = &local_80;\n            do {\n              unaff_s5 = (undefined4 *******)0x0;\n              if ((int)unaff_s7 < 1) {\n                pppppppuVar9 = local_80;\n                if (unaff_s6 == (undefined4 *******)0x0) break;\n              }\n              else {\n                do {\n                  local_7c = unaff_s0;\n                  local_78 = unaff_s4;\n                  local_74 = unaff_s5;\n                  local_70 = unaff_s3;\n                  unaff_s6 = (undefined4 *******)\n                             (*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n                  pppppppuVar9 = local_80;\n                  if (unaff_s6 == (undefined4 *******)0x0) goto LAB_001c8908;\n                  unaff_s5 = (undefined4 *******)((int)unaff_s5 + (int)unaff_s0);\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);\n              }\n              unaff_s3 = (undefined4 *******)((int)unaff_s3 + (int)unaff_s4);\n              pppppppuVar9 = local_80;\n            } while ((int)unaff_s3 < (int)ppppppuVar2);\n          }\n        }\n        else {\n          local_e8 = param_3;\n          pppppppuVar9 = (undefined4 *******)(*(code *)PTR_CloneImage_003a9830)(param_1,0,0,1);\n        }\n      }\n    }" else (compound_statement "{\n      unaff_s3 = &local_7c;\n      if (((local_7c == (undefined4 *******)0x0) && (local_78 == (undefined4 ******)0x0)) ||\n         (((uint)ppppppuVar2 & 3) != 0)) {\n        local_80 = (undefined4 *******)(*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n        pppppppuVar9 = local_80;\n        unaff_s4 = ppppppuVar2;\n        if ((local_80 != (undefined4 *******)0x0) &&\n           (unaff_s4 = (undefined4 ******)((uint)ppppppuVar2 & 0x2000),\n           unaff_s4 != (undefined4 ******)0x0)) {\n          local_80[0x8c] = (undefined4 ******)((int)local_80[0x8c] - (int)local_74);\n          local_80[0x8d] = (undefined4 ******)((int)local_80[0x8d] - (int)local_70);\n          local_80[0x8a] = local_7c;\n          local_80[0x8b] = local_78;\n        }\n      }\n      else {\n        unaff_s7 = (undefined4 *******)param_1[6];\n        if ((local_7c < unaff_s7) || (local_78 < param_1[7])) {\n          ppppppuVar2 = param_1[0x8b];\n          if ((undefined4 *******)param_1[0x8a] != (undefined4 *******)0x0) {\n            unaff_s7 = (undefined4 *******)param_1[0x8a];\n          }\n          if (ppppppuVar2 == (undefined4 ******)0x0) {\n            ppppppuVar2 = param_1[7];\n          }\n          if (local_7c == (undefined4 *******)0x0) {\n            unaff_s0 = unaff_s7;\n          }\n          if (local_78 == (undefined4 ******)0x0) {\n            unaff_s4 = ppppppuVar2;\n          }\n          pppppppuVar9 = local_80;\n          if (0 < (int)ppppppuVar2) {\n            unaff_s3 = (undefined4 *******)0x0;\n            unaff_s8 = &local_80;\n            do {\n              unaff_s5 = (undefined4 *******)0x0;\n              if ((int)unaff_s7 < 1) {\n                pppppppuVar9 = local_80;\n                if (unaff_s6 == (undefined4 *******)0x0) break;\n              }\n              else {\n                do {\n                  local_7c = unaff_s0;\n                  local_78 = unaff_s4;\n                  local_74 = unaff_s5;\n                  local_70 = unaff_s3;\n                  unaff_s6 = (undefined4 *******)\n                             (*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n                  pppppppuVar9 = local_80;\n                  if (unaff_s6 == (undefined4 *******)0x0) goto LAB_001c8908;\n                  unaff_s5 = (undefined4 *******)((int)unaff_s5 + (int)unaff_s0);\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);\n              }\n              unaff_s3 = (undefined4 *******)((int)unaff_s3 + (int)unaff_s4);\n              pppppppuVar9 = local_80;\n            } while ((int)unaff_s3 < (int)ppppppuVar2);\n          }\n        }\n        else {\n          local_e8 = param_3;\n          pppppppuVar9 = (undefined4 *******)(*(code *)PTR_CloneImage_003a9830)(param_1,0,0,1);\n        }\n      }\n    }" { (expression_statement "unaff_s3 = &local_7c;" (assignment_expression "unaff_s3 = &local_7c" identifier = (pointer_expression "&local_7c" & identifier)) ;) (if_statement "if (((local_7c == (undefined4 *******)0x0) && (local_78 == (undefined4 ******)0x0)) ||\n         (((uint)ppppppuVar2 & 3) != 0)) {\n        local_80 = (undefined4 *******)(*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n        pppppppuVar9 = local_80;\n        unaff_s4 = ppppppuVar2;\n        if ((local_80 != (undefined4 *******)0x0) &&\n           (unaff_s4 = (undefined4 ******)((uint)ppppppuVar2 & 0x2000),\n           unaff_s4 != (undefined4 ******)0x0)) {\n          local_80[0x8c] = (undefined4 ******)((int)local_80[0x8c] - (int)local_74);\n          local_80[0x8d] = (undefined4 ******)((int)local_80[0x8d] - (int)local_70);\n          local_80[0x8a] = local_7c;\n          local_80[0x8b] = local_78;\n        }\n      }\n      else {\n        unaff_s7 = (undefined4 *******)param_1[6];\n        if ((local_7c < unaff_s7) || (local_78 < param_1[7])) {\n          ppppppuVar2 = param_1[0x8b];\n          if ((undefined4 *******)param_1[0x8a] != (undefined4 *******)0x0) {\n            unaff_s7 = (undefined4 *******)param_1[0x8a];\n          }\n          if (ppppppuVar2 == (undefined4 ******)0x0) {\n            ppppppuVar2 = param_1[7];\n          }\n          if (local_7c == (undefined4 *******)0x0) {\n            unaff_s0 = unaff_s7;\n          }\n          if (local_78 == (undefined4 ******)0x0) {\n            unaff_s4 = ppppppuVar2;\n          }\n          pppppppuVar9 = local_80;\n          if (0 < (int)ppppppuVar2) {\n            unaff_s3 = (undefined4 *******)0x0;\n            unaff_s8 = &local_80;\n            do {\n              unaff_s5 = (undefined4 *******)0x0;\n              if ((int)unaff_s7 < 1) {\n                pppppppuVar9 = local_80;\n                if (unaff_s6 == (undefined4 *******)0x0) break;\n              }\n              else {\n                do {\n                  local_7c = unaff_s0;\n                  local_78 = unaff_s4;\n                  local_74 = unaff_s5;\n                  local_70 = unaff_s3;\n                  unaff_s6 = (undefined4 *******)\n                             (*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n                  pppppppuVar9 = local_80;\n                  if (unaff_s6 == (undefined4 *******)0x0) goto LAB_001c8908;\n                  unaff_s5 = (undefined4 *******)((int)unaff_s5 + (int)unaff_s0);\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);\n              }\n              unaff_s3 = (undefined4 *******)((int)unaff_s3 + (int)unaff_s4);\n              pppppppuVar9 = local_80;\n            } while ((int)unaff_s3 < (int)ppppppuVar2);\n          }\n        }\n        else {\n          local_e8 = param_3;\n          pppppppuVar9 = (undefined4 *******)(*(code *)PTR_CloneImage_003a9830)(param_1,0,0,1);\n        }\n      }" if (parenthesized_expression "(((local_7c == (undefined4 *******)0x0) && (local_78 == (undefined4 ******)0x0)) ||\n         (((uint)ppppppuVar2 & 3) != 0))" ( (binary_expression "((local_7c == (undefined4 *******)0x0) && (local_78 == (undefined4 ******)0x0)) ||\n         (((uint)ppppppuVar2 & 3) != 0)" (parenthesized_expression "((local_7c == (undefined4 *******)0x0) && (local_78 == (undefined4 ******)0x0))" ( (binary_expression "(local_7c == (undefined4 *******)0x0) && (local_78 == (undefined4 ******)0x0)" (parenthesized_expression "(local_7c == (undefined4 *******)0x0)" ( (binary_expression "local_7c == (undefined4 *******)0x0" identifier == (cast_expression "(undefined4 *******)0x0" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) && (parenthesized_expression "(local_78 == (undefined4 ******)0x0)" ( (binary_expression "local_78 == (undefined4 ******)0x0" identifier == (cast_expression "(undefined4 ******)0x0" ( (type_descriptor "undefined4 ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) ))) )) || (parenthesized_expression "(((uint)ppppppuVar2 & 3) != 0)" ( (binary_expression "((uint)ppppppuVar2 & 3) != 0" (parenthesized_expression "((uint)ppppppuVar2 & 3)" ( (binary_expression "(uint)ppppppuVar2 & 3" (cast_expression "(uint)ppppppuVar2" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )) != number_literal) ))) )) (compound_statement "{\n        local_80 = (undefined4 *******)(*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n        pppppppuVar9 = local_80;\n        unaff_s4 = ppppppuVar2;\n        if ((local_80 != (undefined4 *******)0x0) &&\n           (unaff_s4 = (undefined4 ******)((uint)ppppppuVar2 & 0x2000),\n           unaff_s4 != (undefined4 ******)0x0)) {\n          local_80[0x8c] = (undefined4 ******)((int)local_80[0x8c] - (int)local_74);\n          local_80[0x8d] = (undefined4 ******)((int)local_80[0x8d] - (int)local_70);\n          local_80[0x8a] = local_7c;\n          local_80[0x8b] = local_78;\n        }\n      }" { (expression_statement "local_80 = (undefined4 *******)(*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);" (assignment_expression "local_80 = (undefined4 *******)(*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3)" identifier = (cast_expression "(undefined4 *******)(*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3)" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3)" (parenthesized_expression "(*(code *)PTR_CropImage_003a90b8)" ( (pointer_expression "*(code *)PTR_CropImage_003a90b8" * (cast_expression "(code *)PTR_CropImage_003a90b8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_1,&local_7c,param_3)" ( identifier , (pointer_expression "&local_7c" & identifier) , identifier ))))) ;) (expression_statement "pppppppuVar9 = local_80;" (assignment_expression "pppppppuVar9 = local_80" identifier = identifier) ;) (expression_statement "unaff_s4 = ppppppuVar2;" (assignment_expression "unaff_s4 = ppppppuVar2" identifier = identifier) ;) (if_statement "if ((local_80 != (undefined4 *******)0x0) &&\n           (unaff_s4 = (undefined4 ******)((uint)ppppppuVar2 & 0x2000),\n           unaff_s4 != (undefined4 ******)0x0)) {\n          local_80[0x8c] = (undefined4 ******)((int)local_80[0x8c] - (int)local_74);\n          local_80[0x8d] = (undefined4 ******)((int)local_80[0x8d] - (int)local_70);\n          local_80[0x8a] = local_7c;\n          local_80[0x8b] = local_78;\n        }" if (parenthesized_expression "((local_80 != (undefined4 *******)0x0) &&\n           (unaff_s4 = (undefined4 ******)((uint)ppppppuVar2 & 0x2000),\n           unaff_s4 != (undefined4 ******)0x0))" ( (binary_expression "(local_80 != (undefined4 *******)0x0) &&\n           (unaff_s4 = (undefined4 ******)((uint)ppppppuVar2 & 0x2000),\n           unaff_s4 != (undefined4 ******)0x0)" (parenthesized_expression "(local_80 != (undefined4 *******)0x0)" ( (binary_expression "local_80 != (undefined4 *******)0x0" identifier != (cast_expression "(undefined4 *******)0x0" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) && (parenthesized_expression "(unaff_s4 = (undefined4 ******)((uint)ppppppuVar2 & 0x2000),\n           unaff_s4 != (undefined4 ******)0x0)" ( (comma_expression "unaff_s4 = (undefined4 ******)((uint)ppppppuVar2 & 0x2000),\n           unaff_s4 != (undefined4 ******)0x0" (assignment_expression "unaff_s4 = (undefined4 ******)((uint)ppppppuVar2 & 0x2000)" identifier = (cast_expression "(undefined4 ******)((uint)ppppppuVar2 & 0x2000)" ( (type_descriptor "undefined4 ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (parenthesized_expression "((uint)ppppppuVar2 & 0x2000)" ( (binary_expression "(uint)ppppppuVar2 & 0x2000" (cast_expression "(uint)ppppppuVar2" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )))) , (binary_expression "unaff_s4 != (undefined4 ******)0x0" identifier != (cast_expression "(undefined4 ******)0x0" ( (type_descriptor "undefined4 ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal))) ))) )) (compound_statement "{\n          local_80[0x8c] = (undefined4 ******)((int)local_80[0x8c] - (int)local_74);\n          local_80[0x8d] = (undefined4 ******)((int)local_80[0x8d] - (int)local_70);\n          local_80[0x8a] = local_7c;\n          local_80[0x8b] = local_78;\n        }" { (expression_statement "local_80[0x8c] = (undefined4 ******)((int)local_80[0x8c] - (int)local_74);" (assignment_expression "local_80[0x8c] = (undefined4 ******)((int)local_80[0x8c] - (int)local_74)" (subscript_expression "local_80[0x8c]" identifier [ number_literal ]) = (cast_expression "(undefined4 ******)((int)local_80[0x8c] - (int)local_74)" ( (type_descriptor "undefined4 ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (parenthesized_expression "((int)local_80[0x8c] - (int)local_74)" ( (binary_expression "(int)local_80[0x8c] - (int)local_74" (cast_expression "(int)local_80[0x8c]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "local_80[0x8c]" identifier [ number_literal ])) - (cast_expression "(int)local_74" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "local_80[0x8d] = (undefined4 ******)((int)local_80[0x8d] - (int)local_70);" (assignment_expression "local_80[0x8d] = (undefined4 ******)((int)local_80[0x8d] - (int)local_70)" (subscript_expression "local_80[0x8d]" identifier [ number_literal ]) = (cast_expression "(undefined4 ******)((int)local_80[0x8d] - (int)local_70)" ( (type_descriptor "undefined4 ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (parenthesized_expression "((int)local_80[0x8d] - (int)local_70)" ( (binary_expression "(int)local_80[0x8d] - (int)local_70" (cast_expression "(int)local_80[0x8d]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "local_80[0x8d]" identifier [ number_literal ])) - (cast_expression "(int)local_70" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "local_80[0x8a] = local_7c;" (assignment_expression "local_80[0x8a] = local_7c" (subscript_expression "local_80[0x8a]" identifier [ number_literal ]) = identifier) ;) (expression_statement "local_80[0x8b] = local_78;" (assignment_expression "local_80[0x8b] = local_78" (subscript_expression "local_80[0x8b]" identifier [ number_literal ]) = identifier) ;) })) }) (else_clause "else {\n        unaff_s7 = (undefined4 *******)param_1[6];\n        if ((local_7c < unaff_s7) || (local_78 < param_1[7])) {\n          ppppppuVar2 = param_1[0x8b];\n          if ((undefined4 *******)param_1[0x8a] != (undefined4 *******)0x0) {\n            unaff_s7 = (undefined4 *******)param_1[0x8a];\n          }\n          if (ppppppuVar2 == (undefined4 ******)0x0) {\n            ppppppuVar2 = param_1[7];\n          }\n          if (local_7c == (undefined4 *******)0x0) {\n            unaff_s0 = unaff_s7;\n          }\n          if (local_78 == (undefined4 ******)0x0) {\n            unaff_s4 = ppppppuVar2;\n          }\n          pppppppuVar9 = local_80;\n          if (0 < (int)ppppppuVar2) {\n            unaff_s3 = (undefined4 *******)0x0;\n            unaff_s8 = &local_80;\n            do {\n              unaff_s5 = (undefined4 *******)0x0;\n              if ((int)unaff_s7 < 1) {\n                pppppppuVar9 = local_80;\n                if (unaff_s6 == (undefined4 *******)0x0) break;\n              }\n              else {\n                do {\n                  local_7c = unaff_s0;\n                  local_78 = unaff_s4;\n                  local_74 = unaff_s5;\n                  local_70 = unaff_s3;\n                  unaff_s6 = (undefined4 *******)\n                             (*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n                  pppppppuVar9 = local_80;\n                  if (unaff_s6 == (undefined4 *******)0x0) goto LAB_001c8908;\n                  unaff_s5 = (undefined4 *******)((int)unaff_s5 + (int)unaff_s0);\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);\n              }\n              unaff_s3 = (undefined4 *******)((int)unaff_s3 + (int)unaff_s4);\n              pppppppuVar9 = local_80;\n            } while ((int)unaff_s3 < (int)ppppppuVar2);\n          }\n        }\n        else {\n          local_e8 = param_3;\n          pppppppuVar9 = (undefined4 *******)(*(code *)PTR_CloneImage_003a9830)(param_1,0,0,1);\n        }\n      }" else (compound_statement "{\n        unaff_s7 = (undefined4 *******)param_1[6];\n        if ((local_7c < unaff_s7) || (local_78 < param_1[7])) {\n          ppppppuVar2 = param_1[0x8b];\n          if ((undefined4 *******)param_1[0x8a] != (undefined4 *******)0x0) {\n            unaff_s7 = (undefined4 *******)param_1[0x8a];\n          }\n          if (ppppppuVar2 == (undefined4 ******)0x0) {\n            ppppppuVar2 = param_1[7];\n          }\n          if (local_7c == (undefined4 *******)0x0) {\n            unaff_s0 = unaff_s7;\n          }\n          if (local_78 == (undefined4 ******)0x0) {\n            unaff_s4 = ppppppuVar2;\n          }\n          pppppppuVar9 = local_80;\n          if (0 < (int)ppppppuVar2) {\n            unaff_s3 = (undefined4 *******)0x0;\n            unaff_s8 = &local_80;\n            do {\n              unaff_s5 = (undefined4 *******)0x0;\n              if ((int)unaff_s7 < 1) {\n                pppppppuVar9 = local_80;\n                if (unaff_s6 == (undefined4 *******)0x0) break;\n              }\n              else {\n                do {\n                  local_7c = unaff_s0;\n                  local_78 = unaff_s4;\n                  local_74 = unaff_s5;\n                  local_70 = unaff_s3;\n                  unaff_s6 = (undefined4 *******)\n                             (*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n                  pppppppuVar9 = local_80;\n                  if (unaff_s6 == (undefined4 *******)0x0) goto LAB_001c8908;\n                  unaff_s5 = (undefined4 *******)((int)unaff_s5 + (int)unaff_s0);\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);\n              }\n              unaff_s3 = (undefined4 *******)((int)unaff_s3 + (int)unaff_s4);\n              pppppppuVar9 = local_80;\n            } while ((int)unaff_s3 < (int)ppppppuVar2);\n          }\n        }\n        else {\n          local_e8 = param_3;\n          pppppppuVar9 = (undefined4 *******)(*(code *)PTR_CloneImage_003a9830)(param_1,0,0,1);\n        }\n      }" { (expression_statement "unaff_s7 = (undefined4 *******)param_1[6];" (assignment_expression "unaff_s7 = (undefined4 *******)param_1[6]" identifier = (cast_expression "(undefined4 *******)param_1[6]" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (subscript_expression "param_1[6]" identifier [ number_literal ]))) ;) (if_statement "if ((local_7c < unaff_s7) || (local_78 < param_1[7])) {\n          ppppppuVar2 = param_1[0x8b];\n          if ((undefined4 *******)param_1[0x8a] != (undefined4 *******)0x0) {\n            unaff_s7 = (undefined4 *******)param_1[0x8a];\n          }\n          if (ppppppuVar2 == (undefined4 ******)0x0) {\n            ppppppuVar2 = param_1[7];\n          }\n          if (local_7c == (undefined4 *******)0x0) {\n            unaff_s0 = unaff_s7;\n          }\n          if (local_78 == (undefined4 ******)0x0) {\n            unaff_s4 = ppppppuVar2;\n          }\n          pppppppuVar9 = local_80;\n          if (0 < (int)ppppppuVar2) {\n            unaff_s3 = (undefined4 *******)0x0;\n            unaff_s8 = &local_80;\n            do {\n              unaff_s5 = (undefined4 *******)0x0;\n              if ((int)unaff_s7 < 1) {\n                pppppppuVar9 = local_80;\n                if (unaff_s6 == (undefined4 *******)0x0) break;\n              }\n              else {\n                do {\n                  local_7c = unaff_s0;\n                  local_78 = unaff_s4;\n                  local_74 = unaff_s5;\n                  local_70 = unaff_s3;\n                  unaff_s6 = (undefined4 *******)\n                             (*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n                  pppppppuVar9 = local_80;\n                  if (unaff_s6 == (undefined4 *******)0x0) goto LAB_001c8908;\n                  unaff_s5 = (undefined4 *******)((int)unaff_s5 + (int)unaff_s0);\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);\n              }\n              unaff_s3 = (undefined4 *******)((int)unaff_s3 + (int)unaff_s4);\n              pppppppuVar9 = local_80;\n            } while ((int)unaff_s3 < (int)ppppppuVar2);\n          }\n        }\n        else {\n          local_e8 = param_3;\n          pppppppuVar9 = (undefined4 *******)(*(code *)PTR_CloneImage_003a9830)(param_1,0,0,1);\n        }" if (parenthesized_expression "((local_7c < unaff_s7) || (local_78 < param_1[7]))" ( (binary_expression "(local_7c < unaff_s7) || (local_78 < param_1[7])" (parenthesized_expression "(local_7c < unaff_s7)" ( (binary_expression "local_7c < unaff_s7" identifier < identifier) )) || (parenthesized_expression "(local_78 < param_1[7])" ( (binary_expression "local_78 < param_1[7]" identifier < (subscript_expression "param_1[7]" identifier [ number_literal ])) ))) )) (compound_statement "{\n          ppppppuVar2 = param_1[0x8b];\n          if ((undefined4 *******)param_1[0x8a] != (undefined4 *******)0x0) {\n            unaff_s7 = (undefined4 *******)param_1[0x8a];\n          }\n          if (ppppppuVar2 == (undefined4 ******)0x0) {\n            ppppppuVar2 = param_1[7];\n          }\n          if (local_7c == (undefined4 *******)0x0) {\n            unaff_s0 = unaff_s7;\n          }\n          if (local_78 == (undefined4 ******)0x0) {\n            unaff_s4 = ppppppuVar2;\n          }\n          pppppppuVar9 = local_80;\n          if (0 < (int)ppppppuVar2) {\n            unaff_s3 = (undefined4 *******)0x0;\n            unaff_s8 = &local_80;\n            do {\n              unaff_s5 = (undefined4 *******)0x0;\n              if ((int)unaff_s7 < 1) {\n                pppppppuVar9 = local_80;\n                if (unaff_s6 == (undefined4 *******)0x0) break;\n              }\n              else {\n                do {\n                  local_7c = unaff_s0;\n                  local_78 = unaff_s4;\n                  local_74 = unaff_s5;\n                  local_70 = unaff_s3;\n                  unaff_s6 = (undefined4 *******)\n                             (*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n                  pppppppuVar9 = local_80;\n                  if (unaff_s6 == (undefined4 *******)0x0) goto LAB_001c8908;\n                  unaff_s5 = (undefined4 *******)((int)unaff_s5 + (int)unaff_s0);\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);\n              }\n              unaff_s3 = (undefined4 *******)((int)unaff_s3 + (int)unaff_s4);\n              pppppppuVar9 = local_80;\n            } while ((int)unaff_s3 < (int)ppppppuVar2);\n          }\n        }" { (expression_statement "ppppppuVar2 = param_1[0x8b];" (assignment_expression "ppppppuVar2 = param_1[0x8b]" identifier = (subscript_expression "param_1[0x8b]" identifier [ number_literal ])) ;) (if_statement "if ((undefined4 *******)param_1[0x8a] != (undefined4 *******)0x0) {\n            unaff_s7 = (undefined4 *******)param_1[0x8a];\n          }" if (parenthesized_expression "((undefined4 *******)param_1[0x8a] != (undefined4 *******)0x0)" ( (binary_expression "(undefined4 *******)param_1[0x8a] != (undefined4 *******)0x0" (cast_expression "(undefined4 *******)param_1[0x8a]" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (subscript_expression "param_1[0x8a]" identifier [ number_literal ])) != (cast_expression "(undefined4 *******)0x0" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n            unaff_s7 = (undefined4 *******)param_1[0x8a];\n          }" { (expression_statement "unaff_s7 = (undefined4 *******)param_1[0x8a];" (assignment_expression "unaff_s7 = (undefined4 *******)param_1[0x8a]" identifier = (cast_expression "(undefined4 *******)param_1[0x8a]" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (subscript_expression "param_1[0x8a]" identifier [ number_literal ]))) ;) })) (if_statement "if (ppppppuVar2 == (undefined4 ******)0x0) {\n            ppppppuVar2 = param_1[7];\n          }" if (parenthesized_expression "(ppppppuVar2 == (undefined4 ******)0x0)" ( (binary_expression "ppppppuVar2 == (undefined4 ******)0x0" identifier == (cast_expression "(undefined4 ******)0x0" ( (type_descriptor "undefined4 ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n            ppppppuVar2 = param_1[7];\n          }" { (expression_statement "ppppppuVar2 = param_1[7];" (assignment_expression "ppppppuVar2 = param_1[7]" identifier = (subscript_expression "param_1[7]" identifier [ number_literal ])) ;) })) (if_statement "if (local_7c == (undefined4 *******)0x0) {\n            unaff_s0 = unaff_s7;\n          }" if (parenthesized_expression "(local_7c == (undefined4 *******)0x0)" ( (binary_expression "local_7c == (undefined4 *******)0x0" identifier == (cast_expression "(undefined4 *******)0x0" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n            unaff_s0 = unaff_s7;\n          }" { (expression_statement "unaff_s0 = unaff_s7;" (assignment_expression "unaff_s0 = unaff_s7" identifier = identifier) ;) })) (if_statement "if (local_78 == (undefined4 ******)0x0) {\n            unaff_s4 = ppppppuVar2;\n          }" if (parenthesized_expression "(local_78 == (undefined4 ******)0x0)" ( (binary_expression "local_78 == (undefined4 ******)0x0" identifier == (cast_expression "(undefined4 ******)0x0" ( (type_descriptor "undefined4 ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n            unaff_s4 = ppppppuVar2;\n          }" { (expression_statement "unaff_s4 = ppppppuVar2;" (assignment_expression "unaff_s4 = ppppppuVar2" identifier = identifier) ;) })) (expression_statement "pppppppuVar9 = local_80;" (assignment_expression "pppppppuVar9 = local_80" identifier = identifier) ;) (if_statement "if (0 < (int)ppppppuVar2) {\n            unaff_s3 = (undefined4 *******)0x0;\n            unaff_s8 = &local_80;\n            do {\n              unaff_s5 = (undefined4 *******)0x0;\n              if ((int)unaff_s7 < 1) {\n                pppppppuVar9 = local_80;\n                if (unaff_s6 == (undefined4 *******)0x0) break;\n              }\n              else {\n                do {\n                  local_7c = unaff_s0;\n                  local_78 = unaff_s4;\n                  local_74 = unaff_s5;\n                  local_70 = unaff_s3;\n                  unaff_s6 = (undefined4 *******)\n                             (*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n                  pppppppuVar9 = local_80;\n                  if (unaff_s6 == (undefined4 *******)0x0) goto LAB_001c8908;\n                  unaff_s5 = (undefined4 *******)((int)unaff_s5 + (int)unaff_s0);\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);\n              }\n              unaff_s3 = (undefined4 *******)((int)unaff_s3 + (int)unaff_s4);\n              pppppppuVar9 = local_80;\n            } while ((int)unaff_s3 < (int)ppppppuVar2);\n          }" if (parenthesized_expression "(0 < (int)ppppppuVar2)" ( (binary_expression "0 < (int)ppppppuVar2" number_literal < (cast_expression "(int)ppppppuVar2" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n            unaff_s3 = (undefined4 *******)0x0;\n            unaff_s8 = &local_80;\n            do {\n              unaff_s5 = (undefined4 *******)0x0;\n              if ((int)unaff_s7 < 1) {\n                pppppppuVar9 = local_80;\n                if (unaff_s6 == (undefined4 *******)0x0) break;\n              }\n              else {\n                do {\n                  local_7c = unaff_s0;\n                  local_78 = unaff_s4;\n                  local_74 = unaff_s5;\n                  local_70 = unaff_s3;\n                  unaff_s6 = (undefined4 *******)\n                             (*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n                  pppppppuVar9 = local_80;\n                  if (unaff_s6 == (undefined4 *******)0x0) goto LAB_001c8908;\n                  unaff_s5 = (undefined4 *******)((int)unaff_s5 + (int)unaff_s0);\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);\n              }\n              unaff_s3 = (undefined4 *******)((int)unaff_s3 + (int)unaff_s4);\n              pppppppuVar9 = local_80;\n            } while ((int)unaff_s3 < (int)ppppppuVar2);\n          }" { (expression_statement "unaff_s3 = (undefined4 *******)0x0;" (assignment_expression "unaff_s3 = (undefined4 *******)0x0" identifier = (cast_expression "(undefined4 *******)0x0" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "unaff_s8 = &local_80;" (assignment_expression "unaff_s8 = &local_80" identifier = (pointer_expression "&local_80" & identifier)) ;) (do_statement "do {\n              unaff_s5 = (undefined4 *******)0x0;\n              if ((int)unaff_s7 < 1) {\n                pppppppuVar9 = local_80;\n                if (unaff_s6 == (undefined4 *******)0x0) break;\n              }\n              else {\n                do {\n                  local_7c = unaff_s0;\n                  local_78 = unaff_s4;\n                  local_74 = unaff_s5;\n                  local_70 = unaff_s3;\n                  unaff_s6 = (undefined4 *******)\n                             (*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n                  pppppppuVar9 = local_80;\n                  if (unaff_s6 == (undefined4 *******)0x0) goto LAB_001c8908;\n                  unaff_s5 = (undefined4 *******)((int)unaff_s5 + (int)unaff_s0);\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);\n              }\n              unaff_s3 = (undefined4 *******)((int)unaff_s3 + (int)unaff_s4);\n              pppppppuVar9 = local_80;\n            } while ((int)unaff_s3 < (int)ppppppuVar2);" do (compound_statement "{\n              unaff_s5 = (undefined4 *******)0x0;\n              if ((int)unaff_s7 < 1) {\n                pppppppuVar9 = local_80;\n                if (unaff_s6 == (undefined4 *******)0x0) break;\n              }\n              else {\n                do {\n                  local_7c = unaff_s0;\n                  local_78 = unaff_s4;\n                  local_74 = unaff_s5;\n                  local_70 = unaff_s3;\n                  unaff_s6 = (undefined4 *******)\n                             (*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n                  pppppppuVar9 = local_80;\n                  if (unaff_s6 == (undefined4 *******)0x0) goto LAB_001c8908;\n                  unaff_s5 = (undefined4 *******)((int)unaff_s5 + (int)unaff_s0);\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);\n              }\n              unaff_s3 = (undefined4 *******)((int)unaff_s3 + (int)unaff_s4);\n              pppppppuVar9 = local_80;\n            }" { (expression_statement "unaff_s5 = (undefined4 *******)0x0;" (assignment_expression "unaff_s5 = (undefined4 *******)0x0" identifier = (cast_expression "(undefined4 *******)0x0" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (if_statement "if ((int)unaff_s7 < 1) {\n                pppppppuVar9 = local_80;\n                if (unaff_s6 == (undefined4 *******)0x0) break;\n              }\n              else {\n                do {\n                  local_7c = unaff_s0;\n                  local_78 = unaff_s4;\n                  local_74 = unaff_s5;\n                  local_70 = unaff_s3;\n                  unaff_s6 = (undefined4 *******)\n                             (*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n                  pppppppuVar9 = local_80;\n                  if (unaff_s6 == (undefined4 *******)0x0) goto LAB_001c8908;\n                  unaff_s5 = (undefined4 *******)((int)unaff_s5 + (int)unaff_s0);\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);\n              }" if (parenthesized_expression "((int)unaff_s7 < 1)" ( (binary_expression "(int)unaff_s7 < 1" (cast_expression "(int)unaff_s7" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n                pppppppuVar9 = local_80;\n                if (unaff_s6 == (undefined4 *******)0x0) break;\n              }" { (expression_statement "pppppppuVar9 = local_80;" (assignment_expression "pppppppuVar9 = local_80" identifier = identifier) ;) (if_statement "if (unaff_s6 == (undefined4 *******)0x0) break;" if (parenthesized_expression "(unaff_s6 == (undefined4 *******)0x0)" ( (binary_expression "unaff_s6 == (undefined4 *******)0x0" identifier == (cast_expression "(undefined4 *******)0x0" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (break_statement "break;" break ;)) }) (else_clause "else {\n                do {\n                  local_7c = unaff_s0;\n                  local_78 = unaff_s4;\n                  local_74 = unaff_s5;\n                  local_70 = unaff_s3;\n                  unaff_s6 = (undefined4 *******)\n                             (*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n                  pppppppuVar9 = local_80;\n                  if (unaff_s6 == (undefined4 *******)0x0) goto LAB_001c8908;\n                  unaff_s5 = (undefined4 *******)((int)unaff_s5 + (int)unaff_s0);\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);\n              }" else (compound_statement "{\n                do {\n                  local_7c = unaff_s0;\n                  local_78 = unaff_s4;\n                  local_74 = unaff_s5;\n                  local_70 = unaff_s3;\n                  unaff_s6 = (undefined4 *******)\n                             (*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n                  pppppppuVar9 = local_80;\n                  if (unaff_s6 == (undefined4 *******)0x0) goto LAB_001c8908;\n                  unaff_s5 = (undefined4 *******)((int)unaff_s5 + (int)unaff_s0);\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);\n              }" { (do_statement "do {\n                  local_7c = unaff_s0;\n                  local_78 = unaff_s4;\n                  local_74 = unaff_s5;\n                  local_70 = unaff_s3;\n                  unaff_s6 = (undefined4 *******)\n                             (*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n                  pppppppuVar9 = local_80;\n                  if (unaff_s6 == (undefined4 *******)0x0) goto LAB_001c8908;\n                  unaff_s5 = (undefined4 *******)((int)unaff_s5 + (int)unaff_s0);\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);" do (compound_statement "{\n                  local_7c = unaff_s0;\n                  local_78 = unaff_s4;\n                  local_74 = unaff_s5;\n                  local_70 = unaff_s3;\n                  unaff_s6 = (undefined4 *******)\n                             (*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n                  pppppppuVar9 = local_80;\n                  if (unaff_s6 == (undefined4 *******)0x0) goto LAB_001c8908;\n                  unaff_s5 = (undefined4 *******)((int)unaff_s5 + (int)unaff_s0);\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                }" { (expression_statement "local_7c = unaff_s0;" (assignment_expression "local_7c = unaff_s0" identifier = identifier) ;) (expression_statement "local_78 = unaff_s4;" (assignment_expression "local_78 = unaff_s4" identifier = identifier) ;) (expression_statement "local_74 = unaff_s5;" (assignment_expression "local_74 = unaff_s5" identifier = identifier) ;) (expression_statement "local_70 = unaff_s3;" (assignment_expression "local_70 = unaff_s3" identifier = identifier) ;) (expression_statement "unaff_s6 = (undefined4 *******)\n                             (*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);" (assignment_expression "unaff_s6 = (undefined4 *******)\n                             (*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3)" identifier = (cast_expression "(undefined4 *******)\n                             (*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3)" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3)" (parenthesized_expression "(*(code *)PTR_CropImage_003a90b8)" ( (pointer_expression "*(code *)PTR_CropImage_003a90b8" * (cast_expression "(code *)PTR_CropImage_003a90b8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_1,&local_7c,param_3)" ( identifier , (pointer_expression "&local_7c" & identifier) , identifier ))))) ;) (expression_statement "pppppppuVar9 = local_80;" (assignment_expression "pppppppuVar9 = local_80" identifier = identifier) ;) (if_statement "if (unaff_s6 == (undefined4 *******)0x0) goto LAB_001c8908;" if (parenthesized_expression "(unaff_s6 == (undefined4 *******)0x0)" ( (binary_expression "unaff_s6 == (undefined4 *******)0x0" identifier == (cast_expression "(undefined4 *******)0x0" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (goto_statement "goto LAB_001c8908;" goto statement_identifier ;)) (expression_statement "unaff_s5 = (undefined4 *******)((int)unaff_s5 + (int)unaff_s0);" (assignment_expression "unaff_s5 = (undefined4 *******)((int)unaff_s5 + (int)unaff_s0)" identifier = (cast_expression "(undefined4 *******)((int)unaff_s5 + (int)unaff_s0)" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)unaff_s5 + (int)unaff_s0)" ( (binary_expression "(int)unaff_s5 + (int)unaff_s0" (cast_expression "(int)unaff_s5" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)unaff_s0" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "(*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);" (call_expression "(*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6)" (parenthesized_expression "(*(code *)PTR_AppendImageToList_003a9880)" ( (pointer_expression "*(code *)PTR_AppendImageToList_003a9880" * (cast_expression "(code *)PTR_AppendImageToList_003a9880" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s8,unaff_s6)" ( identifier , identifier ))) ;) }) while (parenthesized_expression "((int)unaff_s5 < (int)unaff_s7)" ( (binary_expression "(int)unaff_s5 < (int)unaff_s7" (cast_expression "(int)unaff_s5" ( (type_descriptor "int" primitive_type) ) identifier) < (cast_expression "(int)unaff_s7" ( (type_descriptor "int" primitive_type) ) identifier)) )) ;) }))) (expression_statement "unaff_s3 = (undefined4 *******)((int)unaff_s3 + (int)unaff_s4);" (assignment_expression "unaff_s3 = (undefined4 *******)((int)unaff_s3 + (int)unaff_s4)" identifier = (cast_expression "(undefined4 *******)((int)unaff_s3 + (int)unaff_s4)" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)unaff_s3 + (int)unaff_s4)" ( (binary_expression "(int)unaff_s3 + (int)unaff_s4" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)unaff_s4" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "pppppppuVar9 = local_80;" (assignment_expression "pppppppuVar9 = local_80" identifier = identifier) ;) }) while (parenthesized_expression "((int)unaff_s3 < (int)ppppppuVar2)" ( (binary_expression "(int)unaff_s3 < (int)ppppppuVar2" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) < (cast_expression "(int)ppppppuVar2" ( (type_descriptor "int" primitive_type) ) identifier)) )) ;) })) }) (else_clause "else {\n          local_e8 = param_3;\n          pppppppuVar9 = (undefined4 *******)(*(code *)PTR_CloneImage_003a9830)(param_1,0,0,1);\n        }" else (compound_statement "{\n          local_e8 = param_3;\n          pppppppuVar9 = (undefined4 *******)(*(code *)PTR_CloneImage_003a9830)(param_1,0,0,1);\n        }" { (expression_statement "local_e8 = param_3;" (assignment_expression "local_e8 = param_3" identifier = identifier) ;) (expression_statement "pppppppuVar9 = (undefined4 *******)(*(code *)PTR_CloneImage_003a9830)(param_1,0,0,1);" (assignment_expression "pppppppuVar9 = (undefined4 *******)(*(code *)PTR_CloneImage_003a9830)(param_1,0,0,1)" identifier = (cast_expression "(undefined4 *******)(*(code *)PTR_CloneImage_003a9830)(param_1,0,0,1)" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(*(code *)PTR_CloneImage_003a9830)(param_1,0,0,1)" (parenthesized_expression "(*(code *)PTR_CloneImage_003a9830)" ( (pointer_expression "*(code *)PTR_CloneImage_003a9830" * (cast_expression "(code *)PTR_CloneImage_003a9830" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_1,0,0,1)" ( identifier , number_literal , number_literal , number_literal ))))) ;) }))) }))) }))) (labeled_statement "LAB_001c8908:\n    if (local_5c == *(int *)puVar20) {\n      return pppppppuVar9;\n    }" statement_identifier : (if_statement "if (local_5c == *(int *)puVar20) {\n      return pppppppuVar9;\n    }" if (parenthesized_expression "(local_5c == *(int *)puVar20)" ( (binary_expression "local_5c == *(int *)puVar20" identifier == (pointer_expression "*(int *)puVar20" * (cast_expression "(int *)puVar20" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) )) (compound_statement "{\n      return pppppppuVar9;\n    }" { (return_statement "return pppppppuVar9;" return identifier ;) }))) (expression_statement "(*(code *)PTR___stack_chk_fail_003a9064)();" (call_expression "(*(code *)PTR___stack_chk_fail_003a9064)()" (parenthesized_expression "(*(code *)PTR___stack_chk_fail_003a9064)" ( (pointer_expression "*(code *)PTR___stack_chk_fail_003a9064" * (cast_expression "(code *)PTR___stack_chk_fail_003a9064" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))) ;) (expression_statement "unaff_s1 = param_1;" (assignment_expression "unaff_s1 = param_1" identifier = identifier) ;) (expression_statement "unaff_s2 = param_3;" (assignment_expression "unaff_s2 = param_3" identifier = identifier) ;) (goto_statement "goto LAB_001c8ef8;" goto statement_identifier ;) })))) (expression_statement "ppppppuVar2 = (undefined4 ******)0x323;" (assignment_expression "ppppppuVar2 = (undefined4 ******)0x323" identifier = (cast_expression "(undefined4 ******)0x323" ( (type_descriptor "undefined4 ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) ;) (expression_statement "pppppppuVar12 = (undefined4 *******)(PTR_s_courses_003a88ec + -0x288c);" (assignment_expression "pppppppuVar12 = (undefined4 *******)(PTR_s_courses_003a88ec + -0x288c)" identifier = (cast_expression "(undefined4 *******)(PTR_s_courses_003a88ec + -0x288c)" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(PTR_s_courses_003a88ec + -0x288c)" ( (binary_expression "PTR_s_courses_003a88ec + -0x288c" identifier + number_literal) )))) ;) (expression_statement "pcVar23 = ExcerptImage;" (assignment_expression "pcVar23 = ExcerptImage" identifier = identifier) ;) (expression_statement "pppppppuVar9 = (undefined4 *******)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3784);" (assignment_expression "pppppppuVar9 = (undefined4 *******)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3784)" identifier = (cast_expression "(undefined4 *******)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3784)" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3784)" ( (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3784" identifier + number_literal) )))) ;) (expression_statement "puVar20 = PTR___assert_fail_003a9608;" (assignment_expression "puVar20 = PTR___assert_fail_003a9608" identifier = identifier) ;) (expression_statement "(*(code *)PTR___assert_fail_003a9608)();" (call_expression "(*(code *)PTR___assert_fail_003a9608)()" (parenthesized_expression "(*(code *)PTR___assert_fail_003a9608)" ( (pointer_expression "*(code *)PTR___assert_fail_003a9608" * (cast_expression "(code *)PTR___assert_fail_003a9608" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))) ;) (expression_statement "puVar8 = puVar20 + 0x1e7970;" (assignment_expression "puVar8 = puVar20 + 0x1e7970" identifier = (binary_expression "puVar20 + 0x1e7970" identifier + number_literal)) ;) (expression_statement "piVar18 = *(int **)(puVar20 + 0x1e02f0);" (assignment_expression "piVar18 = *(int **)(puVar20 + 0x1e02f0)" identifier = (pointer_expression "*(int **)(puVar20 + 0x1e02f0)" * (cast_expression "(int **)(puVar20 + 0x1e02f0)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar20 + 0x1e02f0)" ( (binary_expression "puVar20 + 0x1e02f0" identifier + number_literal) ))))) ;) (expression_statement "iStack_11c = *piVar18;" (assignment_expression "iStack_11c = *piVar18" identifier = (pointer_expression "*piVar18" * identifier)) ;) (expression_statement "puStack_150 = puVar8;" (assignment_expression "puStack_150 = puVar8" identifier = identifier) ;) (expression_statement "pppppppuStack_118 = unaff_s0;" (assignment_expression "pppppppuStack_118 = unaff_s0" identifier = identifier) ;) (expression_statement "pppppppuStack_114 = param_1;" (assignment_expression "pppppppuStack_114 = param_1" identifier = identifier) ;) (expression_statement "ppppppuStack_110 = unaff_s2;" (assignment_expression "ppppppuStack_110 = unaff_s2" identifier = identifier) ;) (expression_statement "pppppppuStack_10c = unaff_s3;" (assignment_expression "pppppppuStack_10c = unaff_s3" identifier = identifier) ;) (expression_statement "ppppppuStack_108 = unaff_s4;" (assignment_expression "ppppppuStack_108 = unaff_s4" identifier = identifier) ;) (expression_statement "pppppppuStack_104 = unaff_s5;" (assignment_expression "pppppppuStack_104 = unaff_s5" identifier = identifier) ;) (expression_statement "pppppppuStack_100 = unaff_s6;" (assignment_expression "pppppppuStack_100 = unaff_s6" identifier = identifier) ;) (expression_statement "pcStack_fc = pcVar23;" (assignment_expression "pcStack_fc = pcVar23" identifier = identifier) ;) (if_statement "if (pppppppuVar9 == (undefined4 *******)0x0) {\n    iVar15 = *(int *)(puVar20 + 0x1df9ac) + -0x26ac;\n    (**(code **)(puVar20 + 0x1e06c8))\n              (*(int *)(puVar20 + 0x1df9a8) + -0x37b0,*(int *)(puVar20 + 0x1df9ac) + -0x288c,0x3f4,\n               iVar15);\nLAB_001c92d4:\n    iVar15 = iVar15 + -0x26ac;\n    (**(code **)(puVar8 + -0x72a8))\n              (*(int *)(puVar8 + -0x7fd0) + 0x294c,*(int *)(puVar8 + -0x7fc4) + -0x288c,0x3fa,iVar15\n              );\n    ppppppuVar2 = unaff_s2;\nLAB_001c92f4:\n    iVar15 = iVar15 + -0x26ac;\n    (**(code **)(puVar8 + -0x72a8))\n              (*(int *)(puVar8 + -0x7fd0) + 0x1cac,*(int *)(puVar8 + -0x7fc4) + -0x288c,0x3f9,iVar15\n              );\nLAB_001c9314:\n    (**(code **)(puVar8 + -0x784c))();\n    pppppppuVar9 = unaff_s0;\nLAB_001c9320:\n    (**(code **)(puVar8 + -0x72a8))\n              (*(int *)(puVar8 + -0x7fc4) + -0x2850,*(int *)(puVar8 + -0x7fc4) + -0x288c,0x3f8,\n               iVar15 + -0x26ac);\n    unaff_s2 = ppppppuVar2;\n  }\n  else if (pppppppuVar9[0xcdb] == (undefined4 ******)0xabacadab) {\n    if (pppppppuVar9[0xcd4] != (undefined4 ******)0x0) {\n      pppppppuStack_154 = pppppppuVar9 + 0xd0;\n      ppppppuStack_158 = (undefined4 ******)(*(int *)(puVar20 + 0x1df9a4) + -0x62ac);\n      (**(code **)(puVar20 + 0x1e02a0))\n                (0x8000,*(int *)(puVar20 + 0x1df9ac) + -0x288c,\n                 *(int *)(puVar20 + 0x1df9ac) + -0x26bc,0x3f7);\n    }\n    iVar15 = *(int *)(puStack_150 + -0x7fc4);\n    unaff_s3 = pppppppuVar12;\n    puVar8 = puStack_150;\n    if (pppppppuVar12 != (undefined4 *******)0x0) {\n      unaff_s0 = pppppppuVar9;\n      if (ppppppuVar2 == (undefined4 ******)0x0) goto LAB_001c92f4;\n      unaff_s2 = ppppppuVar2;\n      if (ppppppuVar2[7] != (undefined4 *****)0xabacadab) goto LAB_001c92d4;\n      iVar15 = 1;\n      ppppppuStack_158 = ppppppuVar2;\n      param_1 = (undefined4 *******)\n                (**(code **)(puStack_150 + -0x7080))(pppppppuVar9,*pppppppuVar12,pppppppuVar12[1],1)\n      ;\n      if (param_1 != (undefined4 *******)0x0) {\n        uStack_144 = 0;\n        uStack_148 = 0;\n        unaff_s5 = (undefined4 *******)\n                   (**(code **)(puStack_150 + -0x715c))(pppppppuVar9,ppppppuVar2);\n        unaff_s6 = (undefined4 *******)(**(code **)(puStack_150 + -0x79dc))(param_1,ppppppuVar2);\n        iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9);\n        if (((iVar15 == 4) ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9), iVar15 == 3)) &&\n           ((iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 4 ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 3)))) {\n          (**(code **)(puStack_150 + -0x7774))(7);\n          ppppppuVar7 = param_1[7];\n          if ((int)ppppppuVar7 < 0) {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1 < (int)ppppppuVar7 + 0x3f >> 6) goto LAB_001c9298;\nLAB_001c91a4:\n            bVar1 = (int)ppppppuVar7 < 0x80;\n          }\n          else {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if ((int)ppppppuVar7 >> 6 <= extraout_v1) goto LAB_001c91a4;\nLAB_001c9298:\n            (*pcVar23)(7);\n            bVar1 = extraout_v1_02 < 2;\n          }\n          iVar14 = 1;\n          if ((bool)(bVar1 ^ 1)) {\n            (**(code **)(puStack_150 + -0x7774))(7);\n            ppppppuVar7 = param_1[7];\n            if ((int)ppppppuVar7 < 0) {\n              ppppppuVar7 = (undefined4 ******)((int)ppppppuVar7 + 0x3f);\n            }\n            iVar14 = (int)ppppppuVar7 >> 6;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1_01 < iVar14) {\nLAB_001c9234:\n              (*pcVar23)(7);\n              iVar14 = extraout_v1_00;\n            }\n            goto LAB_001c9088;\n          }\n          iVar10 = *(int *)(puStack_150 + -0x7f10);\n        }\n        else {\n          uVar36 = (**(code **)(puStack_150 + -0x7774))(7);\n          if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            uVar36 = (*pcVar23)(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c9070;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            iVar14 = 1;\n          }\n          else {\nLAB_001c9070:\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\nLAB_001c9074:\n            uVar36 = (*pcVar23)(7);\n            if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n               (pcVar23 = *(code **)(puStack_150 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c9234;\n            iVar14 = 2;\n          }\nLAB_001c9088:\n          iVar10 = *(int *)(puStack_150 + -0x7f10);\n        }\n        iVar15 = 0;\n        ppppppuStack_124 = (undefined4 ******)0x1;\n        puStack_120 = &uStack_148;\n        pppppppuStack_13c = pppppppuVar9;\n        pppppppuStack_138 = pppppppuVar12;\n        ppppppuStack_134 = ppppppuVar2;\n        pppppppuStack_130 = unaff_s6;\n        pppppppuStack_12c = unaff_s5;\n        pppppppuStack_128 = param_1;\n        (**(code **)(puStack_150 + -0x7718))(iVar10 + 0x5428,&pppppppuStack_13c,iVar14,0);\n        ppppppuVar2 = ppppppuStack_124;\n        (**(code **)(puStack_150 + -0x79bc))(unaff_s6);\n        (**(code **)(puStack_150 + -0x79bc))(unaff_s5);\n        param_1[0xa8] = pppppppuVar9[0xa8];\n        if (ppppppuVar2 == (undefined4 ******)0x0) {\n          param_1 = (undefined4 *******)(**(code **)(puStack_150 + -0x7964))(param_1);\n        }\n      }\n      puVar8 = puStack_150;\n      if (iStack_11c == *piVar18) {\n        return param_1;\n      }\n      goto LAB_001c9314;\n    }\n    goto LAB_001c9320;\n  }" if (parenthesized_expression "(pppppppuVar9 == (undefined4 *******)0x0)" ( (binary_expression "pppppppuVar9 == (undefined4 *******)0x0" identifier == (cast_expression "(undefined4 *******)0x0" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n    iVar15 = *(int *)(puVar20 + 0x1df9ac) + -0x26ac;\n    (**(code **)(puVar20 + 0x1e06c8))\n              (*(int *)(puVar20 + 0x1df9a8) + -0x37b0,*(int *)(puVar20 + 0x1df9ac) + -0x288c,0x3f4,\n               iVar15);\nLAB_001c92d4:\n    iVar15 = iVar15 + -0x26ac;\n    (**(code **)(puVar8 + -0x72a8))\n              (*(int *)(puVar8 + -0x7fd0) + 0x294c,*(int *)(puVar8 + -0x7fc4) + -0x288c,0x3fa,iVar15\n              );\n    ppppppuVar2 = unaff_s2;\nLAB_001c92f4:\n    iVar15 = iVar15 + -0x26ac;\n    (**(code **)(puVar8 + -0x72a8))\n              (*(int *)(puVar8 + -0x7fd0) + 0x1cac,*(int *)(puVar8 + -0x7fc4) + -0x288c,0x3f9,iVar15\n              );\nLAB_001c9314:\n    (**(code **)(puVar8 + -0x784c))();\n    pppppppuVar9 = unaff_s0;\nLAB_001c9320:\n    (**(code **)(puVar8 + -0x72a8))\n              (*(int *)(puVar8 + -0x7fc4) + -0x2850,*(int *)(puVar8 + -0x7fc4) + -0x288c,0x3f8,\n               iVar15 + -0x26ac);\n    unaff_s2 = ppppppuVar2;\n  }" { (expression_statement "iVar15 = *(int *)(puVar20 + 0x1df9ac) + -0x26ac;" (assignment_expression "iVar15 = *(int *)(puVar20 + 0x1df9ac) + -0x26ac" identifier = (binary_expression "*(int *)(puVar20 + 0x1df9ac) + -0x26ac" (pointer_expression "*(int *)(puVar20 + 0x1df9ac)" * (cast_expression "(int *)(puVar20 + 0x1df9ac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar20 + 0x1df9ac)" ( (binary_expression "puVar20 + 0x1df9ac" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "(**(code **)(puVar20 + 0x1e06c8))\n              (*(int *)(puVar20 + 0x1df9a8) + -0x37b0,*(int *)(puVar20 + 0x1df9ac) + -0x288c,0x3f4,\n               iVar15);" (call_expression "(**(code **)(puVar20 + 0x1e06c8))\n              (*(int *)(puVar20 + 0x1df9a8) + -0x37b0,*(int *)(puVar20 + 0x1df9ac) + -0x288c,0x3f4,\n               iVar15)" (parenthesized_expression "(**(code **)(puVar20 + 0x1e06c8))" ( (pointer_expression "**(code **)(puVar20 + 0x1e06c8)" * (pointer_expression "*(code **)(puVar20 + 0x1e06c8)" * (cast_expression "(code **)(puVar20 + 0x1e06c8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar20 + 0x1e06c8)" ( (binary_expression "puVar20 + 0x1e06c8" identifier + number_literal) ))))) )) (argument_list "(*(int *)(puVar20 + 0x1df9a8) + -0x37b0,*(int *)(puVar20 + 0x1df9ac) + -0x288c,0x3f4,\n               iVar15)" ( (binary_expression "*(int *)(puVar20 + 0x1df9a8) + -0x37b0" (pointer_expression "*(int *)(puVar20 + 0x1df9a8)" * (cast_expression "(int *)(puVar20 + 0x1df9a8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar20 + 0x1df9a8)" ( (binary_expression "puVar20 + 0x1df9a8" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar20 + 0x1df9ac) + -0x288c" (pointer_expression "*(int *)(puVar20 + 0x1df9ac)" * (cast_expression "(int *)(puVar20 + 0x1df9ac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar20 + 0x1df9ac)" ( (binary_expression "puVar20 + 0x1df9ac" identifier + number_literal) )))) + number_literal) , number_literal , identifier ))) ;) (labeled_statement "LAB_001c92d4:\n    iVar15 = iVar15 + -0x26ac;" statement_identifier : (expression_statement "iVar15 = iVar15 + -0x26ac;" (assignment_expression "iVar15 = iVar15 + -0x26ac" identifier = (binary_expression "iVar15 + -0x26ac" identifier + number_literal)) ;)) (expression_statement "(**(code **)(puVar8 + -0x72a8))\n              (*(int *)(puVar8 + -0x7fd0) + 0x294c,*(int *)(puVar8 + -0x7fc4) + -0x288c,0x3fa,iVar15\n              );" (call_expression "(**(code **)(puVar8 + -0x72a8))\n              (*(int *)(puVar8 + -0x7fd0) + 0x294c,*(int *)(puVar8 + -0x7fc4) + -0x288c,0x3fa,iVar15\n              )" (parenthesized_expression "(**(code **)(puVar8 + -0x72a8))" ( (pointer_expression "**(code **)(puVar8 + -0x72a8)" * (pointer_expression "*(code **)(puVar8 + -0x72a8)" * (cast_expression "(code **)(puVar8 + -0x72a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + -0x72a8)" ( (binary_expression "puVar8 + -0x72a8" identifier + number_literal) ))))) )) (argument_list "(*(int *)(puVar8 + -0x7fd0) + 0x294c,*(int *)(puVar8 + -0x7fc4) + -0x288c,0x3fa,iVar15\n              )" ( (binary_expression "*(int *)(puVar8 + -0x7fd0) + 0x294c" (pointer_expression "*(int *)(puVar8 + -0x7fd0)" * (cast_expression "(int *)(puVar8 + -0x7fd0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x7fd0)" ( (binary_expression "puVar8 + -0x7fd0" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar8 + -0x7fc4) + -0x288c" (pointer_expression "*(int *)(puVar8 + -0x7fc4)" * (cast_expression "(int *)(puVar8 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x7fc4)" ( (binary_expression "puVar8 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , identifier ))) ;) (expression_statement "ppppppuVar2 = unaff_s2;" (assignment_expression "ppppppuVar2 = unaff_s2" identifier = identifier) ;) (labeled_statement "LAB_001c92f4:\n    iVar15 = iVar15 + -0x26ac;" statement_identifier : (expression_statement "iVar15 = iVar15 + -0x26ac;" (assignment_expression "iVar15 = iVar15 + -0x26ac" identifier = (binary_expression "iVar15 + -0x26ac" identifier + number_literal)) ;)) (expression_statement "(**(code **)(puVar8 + -0x72a8))\n              (*(int *)(puVar8 + -0x7fd0) + 0x1cac,*(int *)(puVar8 + -0x7fc4) + -0x288c,0x3f9,iVar15\n              );" (call_expression "(**(code **)(puVar8 + -0x72a8))\n              (*(int *)(puVar8 + -0x7fd0) + 0x1cac,*(int *)(puVar8 + -0x7fc4) + -0x288c,0x3f9,iVar15\n              )" (parenthesized_expression "(**(code **)(puVar8 + -0x72a8))" ( (pointer_expression "**(code **)(puVar8 + -0x72a8)" * (pointer_expression "*(code **)(puVar8 + -0x72a8)" * (cast_expression "(code **)(puVar8 + -0x72a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + -0x72a8)" ( (binary_expression "puVar8 + -0x72a8" identifier + number_literal) ))))) )) (argument_list "(*(int *)(puVar8 + -0x7fd0) + 0x1cac,*(int *)(puVar8 + -0x7fc4) + -0x288c,0x3f9,iVar15\n              )" ( (binary_expression "*(int *)(puVar8 + -0x7fd0) + 0x1cac" (pointer_expression "*(int *)(puVar8 + -0x7fd0)" * (cast_expression "(int *)(puVar8 + -0x7fd0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x7fd0)" ( (binary_expression "puVar8 + -0x7fd0" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar8 + -0x7fc4) + -0x288c" (pointer_expression "*(int *)(puVar8 + -0x7fc4)" * (cast_expression "(int *)(puVar8 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x7fc4)" ( (binary_expression "puVar8 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , identifier ))) ;) (labeled_statement "LAB_001c9314:\n    (**(code **)(puVar8 + -0x784c))();" statement_identifier : (expression_statement "(**(code **)(puVar8 + -0x784c))();" (call_expression "(**(code **)(puVar8 + -0x784c))()" (parenthesized_expression "(**(code **)(puVar8 + -0x784c))" ( (pointer_expression "**(code **)(puVar8 + -0x784c)" * (pointer_expression "*(code **)(puVar8 + -0x784c)" * (cast_expression "(code **)(puVar8 + -0x784c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + -0x784c)" ( (binary_expression "puVar8 + -0x784c" identifier + number_literal) ))))) )) (argument_list "()" ( ))) ;)) (expression_statement "pppppppuVar9 = unaff_s0;" (assignment_expression "pppppppuVar9 = unaff_s0" identifier = identifier) ;) (labeled_statement "LAB_001c9320:\n    (**(code **)(puVar8 + -0x72a8))\n              (*(int *)(puVar8 + -0x7fc4) + -0x2850,*(int *)(puVar8 + -0x7fc4) + -0x288c,0x3f8,\n               iVar15 + -0x26ac);" statement_identifier : (expression_statement "(**(code **)(puVar8 + -0x72a8))\n              (*(int *)(puVar8 + -0x7fc4) + -0x2850,*(int *)(puVar8 + -0x7fc4) + -0x288c,0x3f8,\n               iVar15 + -0x26ac);" (call_expression "(**(code **)(puVar8 + -0x72a8))\n              (*(int *)(puVar8 + -0x7fc4) + -0x2850,*(int *)(puVar8 + -0x7fc4) + -0x288c,0x3f8,\n               iVar15 + -0x26ac)" (parenthesized_expression "(**(code **)(puVar8 + -0x72a8))" ( (pointer_expression "**(code **)(puVar8 + -0x72a8)" * (pointer_expression "*(code **)(puVar8 + -0x72a8)" * (cast_expression "(code **)(puVar8 + -0x72a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + -0x72a8)" ( (binary_expression "puVar8 + -0x72a8" identifier + number_literal) ))))) )) (argument_list "(*(int *)(puVar8 + -0x7fc4) + -0x2850,*(int *)(puVar8 + -0x7fc4) + -0x288c,0x3f8,\n               iVar15 + -0x26ac)" ( (binary_expression "*(int *)(puVar8 + -0x7fc4) + -0x2850" (pointer_expression "*(int *)(puVar8 + -0x7fc4)" * (cast_expression "(int *)(puVar8 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x7fc4)" ( (binary_expression "puVar8 + -0x7fc4" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar8 + -0x7fc4) + -0x288c" (pointer_expression "*(int *)(puVar8 + -0x7fc4)" * (cast_expression "(int *)(puVar8 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x7fc4)" ( (binary_expression "puVar8 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "iVar15 + -0x26ac" identifier + number_literal) ))) ;)) (expression_statement "unaff_s2 = ppppppuVar2;" (assignment_expression "unaff_s2 = ppppppuVar2" identifier = identifier) ;) }) (else_clause "else if (pppppppuVar9[0xcdb] == (undefined4 ******)0xabacadab) {\n    if (pppppppuVar9[0xcd4] != (undefined4 ******)0x0) {\n      pppppppuStack_154 = pppppppuVar9 + 0xd0;\n      ppppppuStack_158 = (undefined4 ******)(*(int *)(puVar20 + 0x1df9a4) + -0x62ac);\n      (**(code **)(puVar20 + 0x1e02a0))\n                (0x8000,*(int *)(puVar20 + 0x1df9ac) + -0x288c,\n                 *(int *)(puVar20 + 0x1df9ac) + -0x26bc,0x3f7);\n    }\n    iVar15 = *(int *)(puStack_150 + -0x7fc4);\n    unaff_s3 = pppppppuVar12;\n    puVar8 = puStack_150;\n    if (pppppppuVar12 != (undefined4 *******)0x0) {\n      unaff_s0 = pppppppuVar9;\n      if (ppppppuVar2 == (undefined4 ******)0x0) goto LAB_001c92f4;\n      unaff_s2 = ppppppuVar2;\n      if (ppppppuVar2[7] != (undefined4 *****)0xabacadab) goto LAB_001c92d4;\n      iVar15 = 1;\n      ppppppuStack_158 = ppppppuVar2;\n      param_1 = (undefined4 *******)\n                (**(code **)(puStack_150 + -0x7080))(pppppppuVar9,*pppppppuVar12,pppppppuVar12[1],1)\n      ;\n      if (param_1 != (undefined4 *******)0x0) {\n        uStack_144 = 0;\n        uStack_148 = 0;\n        unaff_s5 = (undefined4 *******)\n                   (**(code **)(puStack_150 + -0x715c))(pppppppuVar9,ppppppuVar2);\n        unaff_s6 = (undefined4 *******)(**(code **)(puStack_150 + -0x79dc))(param_1,ppppppuVar2);\n        iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9);\n        if (((iVar15 == 4) ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9), iVar15 == 3)) &&\n           ((iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 4 ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 3)))) {\n          (**(code **)(puStack_150 + -0x7774))(7);\n          ppppppuVar7 = param_1[7];\n          if ((int)ppppppuVar7 < 0) {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1 < (int)ppppppuVar7 + 0x3f >> 6) goto LAB_001c9298;\nLAB_001c91a4:\n            bVar1 = (int)ppppppuVar7 < 0x80;\n          }\n          else {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if ((int)ppppppuVar7 >> 6 <= extraout_v1) goto LAB_001c91a4;\nLAB_001c9298:\n            (*pcVar23)(7);\n            bVar1 = extraout_v1_02 < 2;\n          }\n          iVar14 = 1;\n          if ((bool)(bVar1 ^ 1)) {\n            (**(code **)(puStack_150 + -0x7774))(7);\n            ppppppuVar7 = param_1[7];\n            if ((int)ppppppuVar7 < 0) {\n              ppppppuVar7 = (undefined4 ******)((int)ppppppuVar7 + 0x3f);\n            }\n            iVar14 = (int)ppppppuVar7 >> 6;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1_01 < iVar14) {\nLAB_001c9234:\n              (*pcVar23)(7);\n              iVar14 = extraout_v1_00;\n            }\n            goto LAB_001c9088;\n          }\n          iVar10 = *(int *)(puStack_150 + -0x7f10);\n        }\n        else {\n          uVar36 = (**(code **)(puStack_150 + -0x7774))(7);\n          if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            uVar36 = (*pcVar23)(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c9070;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            iVar14 = 1;\n          }\n          else {\nLAB_001c9070:\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\nLAB_001c9074:\n            uVar36 = (*pcVar23)(7);\n            if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n               (pcVar23 = *(code **)(puStack_150 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c9234;\n            iVar14 = 2;\n          }\nLAB_001c9088:\n          iVar10 = *(int *)(puStack_150 + -0x7f10);\n        }\n        iVar15 = 0;\n        ppppppuStack_124 = (undefined4 ******)0x1;\n        puStack_120 = &uStack_148;\n        pppppppuStack_13c = pppppppuVar9;\n        pppppppuStack_138 = pppppppuVar12;\n        ppppppuStack_134 = ppppppuVar2;\n        pppppppuStack_130 = unaff_s6;\n        pppppppuStack_12c = unaff_s5;\n        pppppppuStack_128 = param_1;\n        (**(code **)(puStack_150 + -0x7718))(iVar10 + 0x5428,&pppppppuStack_13c,iVar14,0);\n        ppppppuVar2 = ppppppuStack_124;\n        (**(code **)(puStack_150 + -0x79bc))(unaff_s6);\n        (**(code **)(puStack_150 + -0x79bc))(unaff_s5);\n        param_1[0xa8] = pppppppuVar9[0xa8];\n        if (ppppppuVar2 == (undefined4 ******)0x0) {\n          param_1 = (undefined4 *******)(**(code **)(puStack_150 + -0x7964))(param_1);\n        }\n      }\n      puVar8 = puStack_150;\n      if (iStack_11c == *piVar18) {\n        return param_1;\n      }\n      goto LAB_001c9314;\n    }\n    goto LAB_001c9320;\n  }" else (if_statement "if (pppppppuVar9[0xcdb] == (undefined4 ******)0xabacadab) {\n    if (pppppppuVar9[0xcd4] != (undefined4 ******)0x0) {\n      pppppppuStack_154 = pppppppuVar9 + 0xd0;\n      ppppppuStack_158 = (undefined4 ******)(*(int *)(puVar20 + 0x1df9a4) + -0x62ac);\n      (**(code **)(puVar20 + 0x1e02a0))\n                (0x8000,*(int *)(puVar20 + 0x1df9ac) + -0x288c,\n                 *(int *)(puVar20 + 0x1df9ac) + -0x26bc,0x3f7);\n    }\n    iVar15 = *(int *)(puStack_150 + -0x7fc4);\n    unaff_s3 = pppppppuVar12;\n    puVar8 = puStack_150;\n    if (pppppppuVar12 != (undefined4 *******)0x0) {\n      unaff_s0 = pppppppuVar9;\n      if (ppppppuVar2 == (undefined4 ******)0x0) goto LAB_001c92f4;\n      unaff_s2 = ppppppuVar2;\n      if (ppppppuVar2[7] != (undefined4 *****)0xabacadab) goto LAB_001c92d4;\n      iVar15 = 1;\n      ppppppuStack_158 = ppppppuVar2;\n      param_1 = (undefined4 *******)\n                (**(code **)(puStack_150 + -0x7080))(pppppppuVar9,*pppppppuVar12,pppppppuVar12[1],1)\n      ;\n      if (param_1 != (undefined4 *******)0x0) {\n        uStack_144 = 0;\n        uStack_148 = 0;\n        unaff_s5 = (undefined4 *******)\n                   (**(code **)(puStack_150 + -0x715c))(pppppppuVar9,ppppppuVar2);\n        unaff_s6 = (undefined4 *******)(**(code **)(puStack_150 + -0x79dc))(param_1,ppppppuVar2);\n        iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9);\n        if (((iVar15 == 4) ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9), iVar15 == 3)) &&\n           ((iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 4 ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 3)))) {\n          (**(code **)(puStack_150 + -0x7774))(7);\n          ppppppuVar7 = param_1[7];\n          if ((int)ppppppuVar7 < 0) {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1 < (int)ppppppuVar7 + 0x3f >> 6) goto LAB_001c9298;\nLAB_001c91a4:\n            bVar1 = (int)ppppppuVar7 < 0x80;\n          }\n          else {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if ((int)ppppppuVar7 >> 6 <= extraout_v1) goto LAB_001c91a4;\nLAB_001c9298:\n            (*pcVar23)(7);\n            bVar1 = extraout_v1_02 < 2;\n          }\n          iVar14 = 1;\n          if ((bool)(bVar1 ^ 1)) {\n            (**(code **)(puStack_150 + -0x7774))(7);\n            ppppppuVar7 = param_1[7];\n            if ((int)ppppppuVar7 < 0) {\n              ppppppuVar7 = (undefined4 ******)((int)ppppppuVar7 + 0x3f);\n            }\n            iVar14 = (int)ppppppuVar7 >> 6;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1_01 < iVar14) {\nLAB_001c9234:\n              (*pcVar23)(7);\n              iVar14 = extraout_v1_00;\n            }\n            goto LAB_001c9088;\n          }\n          iVar10 = *(int *)(puStack_150 + -0x7f10);\n        }\n        else {\n          uVar36 = (**(code **)(puStack_150 + -0x7774))(7);\n          if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            uVar36 = (*pcVar23)(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c9070;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            iVar14 = 1;\n          }\n          else {\nLAB_001c9070:\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\nLAB_001c9074:\n            uVar36 = (*pcVar23)(7);\n            if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n               (pcVar23 = *(code **)(puStack_150 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c9234;\n            iVar14 = 2;\n          }\nLAB_001c9088:\n          iVar10 = *(int *)(puStack_150 + -0x7f10);\n        }\n        iVar15 = 0;\n        ppppppuStack_124 = (undefined4 ******)0x1;\n        puStack_120 = &uStack_148;\n        pppppppuStack_13c = pppppppuVar9;\n        pppppppuStack_138 = pppppppuVar12;\n        ppppppuStack_134 = ppppppuVar2;\n        pppppppuStack_130 = unaff_s6;\n        pppppppuStack_12c = unaff_s5;\n        pppppppuStack_128 = param_1;\n        (**(code **)(puStack_150 + -0x7718))(iVar10 + 0x5428,&pppppppuStack_13c,iVar14,0);\n        ppppppuVar2 = ppppppuStack_124;\n        (**(code **)(puStack_150 + -0x79bc))(unaff_s6);\n        (**(code **)(puStack_150 + -0x79bc))(unaff_s5);\n        param_1[0xa8] = pppppppuVar9[0xa8];\n        if (ppppppuVar2 == (undefined4 ******)0x0) {\n          param_1 = (undefined4 *******)(**(code **)(puStack_150 + -0x7964))(param_1);\n        }\n      }\n      puVar8 = puStack_150;\n      if (iStack_11c == *piVar18) {\n        return param_1;\n      }\n      goto LAB_001c9314;\n    }\n    goto LAB_001c9320;\n  }" if (parenthesized_expression "(pppppppuVar9[0xcdb] == (undefined4 ******)0xabacadab)" ( (binary_expression "pppppppuVar9[0xcdb] == (undefined4 ******)0xabacadab" (subscript_expression "pppppppuVar9[0xcdb]" identifier [ number_literal ]) == (cast_expression "(undefined4 ******)0xabacadab" ( (type_descriptor "undefined4 ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n    if (pppppppuVar9[0xcd4] != (undefined4 ******)0x0) {\n      pppppppuStack_154 = pppppppuVar9 + 0xd0;\n      ppppppuStack_158 = (undefined4 ******)(*(int *)(puVar20 + 0x1df9a4) + -0x62ac);\n      (**(code **)(puVar20 + 0x1e02a0))\n                (0x8000,*(int *)(puVar20 + 0x1df9ac) + -0x288c,\n                 *(int *)(puVar20 + 0x1df9ac) + -0x26bc,0x3f7);\n    }\n    iVar15 = *(int *)(puStack_150 + -0x7fc4);\n    unaff_s3 = pppppppuVar12;\n    puVar8 = puStack_150;\n    if (pppppppuVar12 != (undefined4 *******)0x0) {\n      unaff_s0 = pppppppuVar9;\n      if (ppppppuVar2 == (undefined4 ******)0x0) goto LAB_001c92f4;\n      unaff_s2 = ppppppuVar2;\n      if (ppppppuVar2[7] != (undefined4 *****)0xabacadab) goto LAB_001c92d4;\n      iVar15 = 1;\n      ppppppuStack_158 = ppppppuVar2;\n      param_1 = (undefined4 *******)\n                (**(code **)(puStack_150 + -0x7080))(pppppppuVar9,*pppppppuVar12,pppppppuVar12[1],1)\n      ;\n      if (param_1 != (undefined4 *******)0x0) {\n        uStack_144 = 0;\n        uStack_148 = 0;\n        unaff_s5 = (undefined4 *******)\n                   (**(code **)(puStack_150 + -0x715c))(pppppppuVar9,ppppppuVar2);\n        unaff_s6 = (undefined4 *******)(**(code **)(puStack_150 + -0x79dc))(param_1,ppppppuVar2);\n        iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9);\n        if (((iVar15 == 4) ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9), iVar15 == 3)) &&\n           ((iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 4 ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 3)))) {\n          (**(code **)(puStack_150 + -0x7774))(7);\n          ppppppuVar7 = param_1[7];\n          if ((int)ppppppuVar7 < 0) {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1 < (int)ppppppuVar7 + 0x3f >> 6) goto LAB_001c9298;\nLAB_001c91a4:\n            bVar1 = (int)ppppppuVar7 < 0x80;\n          }\n          else {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if ((int)ppppppuVar7 >> 6 <= extraout_v1) goto LAB_001c91a4;\nLAB_001c9298:\n            (*pcVar23)(7);\n            bVar1 = extraout_v1_02 < 2;\n          }\n          iVar14 = 1;\n          if ((bool)(bVar1 ^ 1)) {\n            (**(code **)(puStack_150 + -0x7774))(7);\n            ppppppuVar7 = param_1[7];\n            if ((int)ppppppuVar7 < 0) {\n              ppppppuVar7 = (undefined4 ******)((int)ppppppuVar7 + 0x3f);\n            }\n            iVar14 = (int)ppppppuVar7 >> 6;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1_01 < iVar14) {\nLAB_001c9234:\n              (*pcVar23)(7);\n              iVar14 = extraout_v1_00;\n            }\n            goto LAB_001c9088;\n          }\n          iVar10 = *(int *)(puStack_150 + -0x7f10);\n        }\n        else {\n          uVar36 = (**(code **)(puStack_150 + -0x7774))(7);\n          if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            uVar36 = (*pcVar23)(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c9070;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            iVar14 = 1;\n          }\n          else {\nLAB_001c9070:\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\nLAB_001c9074:\n            uVar36 = (*pcVar23)(7);\n            if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n               (pcVar23 = *(code **)(puStack_150 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c9234;\n            iVar14 = 2;\n          }\nLAB_001c9088:\n          iVar10 = *(int *)(puStack_150 + -0x7f10);\n        }\n        iVar15 = 0;\n        ppppppuStack_124 = (undefined4 ******)0x1;\n        puStack_120 = &uStack_148;\n        pppppppuStack_13c = pppppppuVar9;\n        pppppppuStack_138 = pppppppuVar12;\n        ppppppuStack_134 = ppppppuVar2;\n        pppppppuStack_130 = unaff_s6;\n        pppppppuStack_12c = unaff_s5;\n        pppppppuStack_128 = param_1;\n        (**(code **)(puStack_150 + -0x7718))(iVar10 + 0x5428,&pppppppuStack_13c,iVar14,0);\n        ppppppuVar2 = ppppppuStack_124;\n        (**(code **)(puStack_150 + -0x79bc))(unaff_s6);\n        (**(code **)(puStack_150 + -0x79bc))(unaff_s5);\n        param_1[0xa8] = pppppppuVar9[0xa8];\n        if (ppppppuVar2 == (undefined4 ******)0x0) {\n          param_1 = (undefined4 *******)(**(code **)(puStack_150 + -0x7964))(param_1);\n        }\n      }\n      puVar8 = puStack_150;\n      if (iStack_11c == *piVar18) {\n        return param_1;\n      }\n      goto LAB_001c9314;\n    }\n    goto LAB_001c9320;\n  }" { (if_statement "if (pppppppuVar9[0xcd4] != (undefined4 ******)0x0) {\n      pppppppuStack_154 = pppppppuVar9 + 0xd0;\n      ppppppuStack_158 = (undefined4 ******)(*(int *)(puVar20 + 0x1df9a4) + -0x62ac);\n      (**(code **)(puVar20 + 0x1e02a0))\n                (0x8000,*(int *)(puVar20 + 0x1df9ac) + -0x288c,\n                 *(int *)(puVar20 + 0x1df9ac) + -0x26bc,0x3f7);\n    }" if (parenthesized_expression "(pppppppuVar9[0xcd4] != (undefined4 ******)0x0)" ( (binary_expression "pppppppuVar9[0xcd4] != (undefined4 ******)0x0" (subscript_expression "pppppppuVar9[0xcd4]" identifier [ number_literal ]) != (cast_expression "(undefined4 ******)0x0" ( (type_descriptor "undefined4 ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n      pppppppuStack_154 = pppppppuVar9 + 0xd0;\n      ppppppuStack_158 = (undefined4 ******)(*(int *)(puVar20 + 0x1df9a4) + -0x62ac);\n      (**(code **)(puVar20 + 0x1e02a0))\n                (0x8000,*(int *)(puVar20 + 0x1df9ac) + -0x288c,\n                 *(int *)(puVar20 + 0x1df9ac) + -0x26bc,0x3f7);\n    }" { (expression_statement "pppppppuStack_154 = pppppppuVar9 + 0xd0;" (assignment_expression "pppppppuStack_154 = pppppppuVar9 + 0xd0" identifier = (binary_expression "pppppppuVar9 + 0xd0" identifier + number_literal)) ;) (expression_statement "ppppppuStack_158 = (undefined4 ******)(*(int *)(puVar20 + 0x1df9a4) + -0x62ac);" (assignment_expression "ppppppuStack_158 = (undefined4 ******)(*(int *)(puVar20 + 0x1df9a4) + -0x62ac)" identifier = (cast_expression "(undefined4 ******)(*(int *)(puVar20 + 0x1df9a4) + -0x62ac)" ( (type_descriptor "undefined4 ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (parenthesized_expression "(*(int *)(puVar20 + 0x1df9a4) + -0x62ac)" ( (binary_expression "*(int *)(puVar20 + 0x1df9a4) + -0x62ac" (pointer_expression "*(int *)(puVar20 + 0x1df9a4)" * (cast_expression "(int *)(puVar20 + 0x1df9a4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar20 + 0x1df9a4)" ( (binary_expression "puVar20 + 0x1df9a4" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "(**(code **)(puVar20 + 0x1e02a0))\n                (0x8000,*(int *)(puVar20 + 0x1df9ac) + -0x288c,\n                 *(int *)(puVar20 + 0x1df9ac) + -0x26bc,0x3f7);" (call_expression "(**(code **)(puVar20 + 0x1e02a0))\n                (0x8000,*(int *)(puVar20 + 0x1df9ac) + -0x288c,\n                 *(int *)(puVar20 + 0x1df9ac) + -0x26bc,0x3f7)" (parenthesized_expression "(**(code **)(puVar20 + 0x1e02a0))" ( (pointer_expression "**(code **)(puVar20 + 0x1e02a0)" * (pointer_expression "*(code **)(puVar20 + 0x1e02a0)" * (cast_expression "(code **)(puVar20 + 0x1e02a0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar20 + 0x1e02a0)" ( (binary_expression "puVar20 + 0x1e02a0" identifier + number_literal) ))))) )) (argument_list "(0x8000,*(int *)(puVar20 + 0x1df9ac) + -0x288c,\n                 *(int *)(puVar20 + 0x1df9ac) + -0x26bc,0x3f7)" ( number_literal , (binary_expression "*(int *)(puVar20 + 0x1df9ac) + -0x288c" (pointer_expression "*(int *)(puVar20 + 0x1df9ac)" * (cast_expression "(int *)(puVar20 + 0x1df9ac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar20 + 0x1df9ac)" ( (binary_expression "puVar20 + 0x1df9ac" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar20 + 0x1df9ac) + -0x26bc" (pointer_expression "*(int *)(puVar20 + 0x1df9ac)" * (cast_expression "(int *)(puVar20 + 0x1df9ac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar20 + 0x1df9ac)" ( (binary_expression "puVar20 + 0x1df9ac" identifier + number_literal) )))) + number_literal) , number_literal ))) ;) })) (expression_statement "iVar15 = *(int *)(puStack_150 + -0x7fc4);" (assignment_expression "iVar15 = *(int *)(puStack_150 + -0x7fc4)" identifier = (pointer_expression "*(int *)(puStack_150 + -0x7fc4)" * (cast_expression "(int *)(puStack_150 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puStack_150 + -0x7fc4)" ( (binary_expression "puStack_150 + -0x7fc4" identifier + number_literal) ))))) ;) (expression_statement "unaff_s3 = pppppppuVar12;" (assignment_expression "unaff_s3 = pppppppuVar12" identifier = identifier) ;) (expression_statement "puVar8 = puStack_150;" (assignment_expression "puVar8 = puStack_150" identifier = identifier) ;) (if_statement "if (pppppppuVar12 != (undefined4 *******)0x0) {\n      unaff_s0 = pppppppuVar9;\n      if (ppppppuVar2 == (undefined4 ******)0x0) goto LAB_001c92f4;\n      unaff_s2 = ppppppuVar2;\n      if (ppppppuVar2[7] != (undefined4 *****)0xabacadab) goto LAB_001c92d4;\n      iVar15 = 1;\n      ppppppuStack_158 = ppppppuVar2;\n      param_1 = (undefined4 *******)\n                (**(code **)(puStack_150 + -0x7080))(pppppppuVar9,*pppppppuVar12,pppppppuVar12[1],1)\n      ;\n      if (param_1 != (undefined4 *******)0x0) {\n        uStack_144 = 0;\n        uStack_148 = 0;\n        unaff_s5 = (undefined4 *******)\n                   (**(code **)(puStack_150 + -0x715c))(pppppppuVar9,ppppppuVar2);\n        unaff_s6 = (undefined4 *******)(**(code **)(puStack_150 + -0x79dc))(param_1,ppppppuVar2);\n        iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9);\n        if (((iVar15 == 4) ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9), iVar15 == 3)) &&\n           ((iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 4 ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 3)))) {\n          (**(code **)(puStack_150 + -0x7774))(7);\n          ppppppuVar7 = param_1[7];\n          if ((int)ppppppuVar7 < 0) {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1 < (int)ppppppuVar7 + 0x3f >> 6) goto LAB_001c9298;\nLAB_001c91a4:\n            bVar1 = (int)ppppppuVar7 < 0x80;\n          }\n          else {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if ((int)ppppppuVar7 >> 6 <= extraout_v1) goto LAB_001c91a4;\nLAB_001c9298:\n            (*pcVar23)(7);\n            bVar1 = extraout_v1_02 < 2;\n          }\n          iVar14 = 1;\n          if ((bool)(bVar1 ^ 1)) {\n            (**(code **)(puStack_150 + -0x7774))(7);\n            ppppppuVar7 = param_1[7];\n            if ((int)ppppppuVar7 < 0) {\n              ppppppuVar7 = (undefined4 ******)((int)ppppppuVar7 + 0x3f);\n            }\n            iVar14 = (int)ppppppuVar7 >> 6;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1_01 < iVar14) {\nLAB_001c9234:\n              (*pcVar23)(7);\n              iVar14 = extraout_v1_00;\n            }\n            goto LAB_001c9088;\n          }\n          iVar10 = *(int *)(puStack_150 + -0x7f10);\n        }\n        else {\n          uVar36 = (**(code **)(puStack_150 + -0x7774))(7);\n          if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            uVar36 = (*pcVar23)(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c9070;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            iVar14 = 1;\n          }\n          else {\nLAB_001c9070:\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\nLAB_001c9074:\n            uVar36 = (*pcVar23)(7);\n            if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n               (pcVar23 = *(code **)(puStack_150 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c9234;\n            iVar14 = 2;\n          }\nLAB_001c9088:\n          iVar10 = *(int *)(puStack_150 + -0x7f10);\n        }\n        iVar15 = 0;\n        ppppppuStack_124 = (undefined4 ******)0x1;\n        puStack_120 = &uStack_148;\n        pppppppuStack_13c = pppppppuVar9;\n        pppppppuStack_138 = pppppppuVar12;\n        ppppppuStack_134 = ppppppuVar2;\n        pppppppuStack_130 = unaff_s6;\n        pppppppuStack_12c = unaff_s5;\n        pppppppuStack_128 = param_1;\n        (**(code **)(puStack_150 + -0x7718))(iVar10 + 0x5428,&pppppppuStack_13c,iVar14,0);\n        ppppppuVar2 = ppppppuStack_124;\n        (**(code **)(puStack_150 + -0x79bc))(unaff_s6);\n        (**(code **)(puStack_150 + -0x79bc))(unaff_s5);\n        param_1[0xa8] = pppppppuVar9[0xa8];\n        if (ppppppuVar2 == (undefined4 ******)0x0) {\n          param_1 = (undefined4 *******)(**(code **)(puStack_150 + -0x7964))(param_1);\n        }\n      }\n      puVar8 = puStack_150;\n      if (iStack_11c == *piVar18) {\n        return param_1;\n      }\n      goto LAB_001c9314;\n    }" if (parenthesized_expression "(pppppppuVar12 != (undefined4 *******)0x0)" ( (binary_expression "pppppppuVar12 != (undefined4 *******)0x0" identifier != (cast_expression "(undefined4 *******)0x0" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n      unaff_s0 = pppppppuVar9;\n      if (ppppppuVar2 == (undefined4 ******)0x0) goto LAB_001c92f4;\n      unaff_s2 = ppppppuVar2;\n      if (ppppppuVar2[7] != (undefined4 *****)0xabacadab) goto LAB_001c92d4;\n      iVar15 = 1;\n      ppppppuStack_158 = ppppppuVar2;\n      param_1 = (undefined4 *******)\n                (**(code **)(puStack_150 + -0x7080))(pppppppuVar9,*pppppppuVar12,pppppppuVar12[1],1)\n      ;\n      if (param_1 != (undefined4 *******)0x0) {\n        uStack_144 = 0;\n        uStack_148 = 0;\n        unaff_s5 = (undefined4 *******)\n                   (**(code **)(puStack_150 + -0x715c))(pppppppuVar9,ppppppuVar2);\n        unaff_s6 = (undefined4 *******)(**(code **)(puStack_150 + -0x79dc))(param_1,ppppppuVar2);\n        iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9);\n        if (((iVar15 == 4) ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9), iVar15 == 3)) &&\n           ((iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 4 ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 3)))) {\n          (**(code **)(puStack_150 + -0x7774))(7);\n          ppppppuVar7 = param_1[7];\n          if ((int)ppppppuVar7 < 0) {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1 < (int)ppppppuVar7 + 0x3f >> 6) goto LAB_001c9298;\nLAB_001c91a4:\n            bVar1 = (int)ppppppuVar7 < 0x80;\n          }\n          else {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if ((int)ppppppuVar7 >> 6 <= extraout_v1) goto LAB_001c91a4;\nLAB_001c9298:\n            (*pcVar23)(7);\n            bVar1 = extraout_v1_02 < 2;\n          }\n          iVar14 = 1;\n          if ((bool)(bVar1 ^ 1)) {\n            (**(code **)(puStack_150 + -0x7774))(7);\n            ppppppuVar7 = param_1[7];\n            if ((int)ppppppuVar7 < 0) {\n              ppppppuVar7 = (undefined4 ******)((int)ppppppuVar7 + 0x3f);\n            }\n            iVar14 = (int)ppppppuVar7 >> 6;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1_01 < iVar14) {\nLAB_001c9234:\n              (*pcVar23)(7);\n              iVar14 = extraout_v1_00;\n            }\n            goto LAB_001c9088;\n          }\n          iVar10 = *(int *)(puStack_150 + -0x7f10);\n        }\n        else {\n          uVar36 = (**(code **)(puStack_150 + -0x7774))(7);\n          if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            uVar36 = (*pcVar23)(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c9070;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            iVar14 = 1;\n          }\n          else {\nLAB_001c9070:\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\nLAB_001c9074:\n            uVar36 = (*pcVar23)(7);\n            if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n               (pcVar23 = *(code **)(puStack_150 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c9234;\n            iVar14 = 2;\n          }\nLAB_001c9088:\n          iVar10 = *(int *)(puStack_150 + -0x7f10);\n        }\n        iVar15 = 0;\n        ppppppuStack_124 = (undefined4 ******)0x1;\n        puStack_120 = &uStack_148;\n        pppppppuStack_13c = pppppppuVar9;\n        pppppppuStack_138 = pppppppuVar12;\n        ppppppuStack_134 = ppppppuVar2;\n        pppppppuStack_130 = unaff_s6;\n        pppppppuStack_12c = unaff_s5;\n        pppppppuStack_128 = param_1;\n        (**(code **)(puStack_150 + -0x7718))(iVar10 + 0x5428,&pppppppuStack_13c,iVar14,0);\n        ppppppuVar2 = ppppppuStack_124;\n        (**(code **)(puStack_150 + -0x79bc))(unaff_s6);\n        (**(code **)(puStack_150 + -0x79bc))(unaff_s5);\n        param_1[0xa8] = pppppppuVar9[0xa8];\n        if (ppppppuVar2 == (undefined4 ******)0x0) {\n          param_1 = (undefined4 *******)(**(code **)(puStack_150 + -0x7964))(param_1);\n        }\n      }\n      puVar8 = puStack_150;\n      if (iStack_11c == *piVar18) {\n        return param_1;\n      }\n      goto LAB_001c9314;\n    }" { (expression_statement "unaff_s0 = pppppppuVar9;" (assignment_expression "unaff_s0 = pppppppuVar9" identifier = identifier) ;) (if_statement "if (ppppppuVar2 == (undefined4 ******)0x0) goto LAB_001c92f4;" if (parenthesized_expression "(ppppppuVar2 == (undefined4 ******)0x0)" ( (binary_expression "ppppppuVar2 == (undefined4 ******)0x0" identifier == (cast_expression "(undefined4 ******)0x0" ( (type_descriptor "undefined4 ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (goto_statement "goto LAB_001c92f4;" goto statement_identifier ;)) (expression_statement "unaff_s2 = ppppppuVar2;" (assignment_expression "unaff_s2 = ppppppuVar2" identifier = identifier) ;) (if_statement "if (ppppppuVar2[7] != (undefined4 *****)0xabacadab) goto LAB_001c92d4;" if (parenthesized_expression "(ppppppuVar2[7] != (undefined4 *****)0xabacadab)" ( (binary_expression "ppppppuVar2[7] != (undefined4 *****)0xabacadab" (subscript_expression "ppppppuVar2[7]" identifier [ number_literal ]) != (cast_expression "(undefined4 *****)0xabacadab" ( (type_descriptor "undefined4 *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) )) (goto_statement "goto LAB_001c92d4;" goto statement_identifier ;)) (expression_statement "iVar15 = 1;" (assignment_expression "iVar15 = 1" identifier = number_literal) ;) (expression_statement "ppppppuStack_158 = ppppppuVar2;" (assignment_expression "ppppppuStack_158 = ppppppuVar2" identifier = identifier) ;) (expression_statement "param_1 = (undefined4 *******)\n                (**(code **)(puStack_150 + -0x7080))(pppppppuVar9,*pppppppuVar12,pppppppuVar12[1],1)\n      ;" (assignment_expression "param_1 = (undefined4 *******)\n                (**(code **)(puStack_150 + -0x7080))(pppppppuVar9,*pppppppuVar12,pppppppuVar12[1],1)" identifier = (cast_expression "(undefined4 *******)\n                (**(code **)(puStack_150 + -0x7080))(pppppppuVar9,*pppppppuVar12,pppppppuVar12[1],1)" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(**(code **)(puStack_150 + -0x7080))(pppppppuVar9,*pppppppuVar12,pppppppuVar12[1],1)" (parenthesized_expression "(**(code **)(puStack_150 + -0x7080))" ( (pointer_expression "**(code **)(puStack_150 + -0x7080)" * (pointer_expression "*(code **)(puStack_150 + -0x7080)" * (cast_expression "(code **)(puStack_150 + -0x7080)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_150 + -0x7080)" ( (binary_expression "puStack_150 + -0x7080" identifier + number_literal) ))))) )) (argument_list "(pppppppuVar9,*pppppppuVar12,pppppppuVar12[1],1)" ( identifier , (pointer_expression "*pppppppuVar12" * identifier) , (subscript_expression "pppppppuVar12[1]" identifier [ number_literal ]) , number_literal ))))) ;) (if_statement "if (param_1 != (undefined4 *******)0x0) {\n        uStack_144 = 0;\n        uStack_148 = 0;\n        unaff_s5 = (undefined4 *******)\n                   (**(code **)(puStack_150 + -0x715c))(pppppppuVar9,ppppppuVar2);\n        unaff_s6 = (undefined4 *******)(**(code **)(puStack_150 + -0x79dc))(param_1,ppppppuVar2);\n        iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9);\n        if (((iVar15 == 4) ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9), iVar15 == 3)) &&\n           ((iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 4 ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 3)))) {\n          (**(code **)(puStack_150 + -0x7774))(7);\n          ppppppuVar7 = param_1[7];\n          if ((int)ppppppuVar7 < 0) {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1 < (int)ppppppuVar7 + 0x3f >> 6) goto LAB_001c9298;\nLAB_001c91a4:\n            bVar1 = (int)ppppppuVar7 < 0x80;\n          }\n          else {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if ((int)ppppppuVar7 >> 6 <= extraout_v1) goto LAB_001c91a4;\nLAB_001c9298:\n            (*pcVar23)(7);\n            bVar1 = extraout_v1_02 < 2;\n          }\n          iVar14 = 1;\n          if ((bool)(bVar1 ^ 1)) {\n            (**(code **)(puStack_150 + -0x7774))(7);\n            ppppppuVar7 = param_1[7];\n            if ((int)ppppppuVar7 < 0) {\n              ppppppuVar7 = (undefined4 ******)((int)ppppppuVar7 + 0x3f);\n            }\n            iVar14 = (int)ppppppuVar7 >> 6;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1_01 < iVar14) {\nLAB_001c9234:\n              (*pcVar23)(7);\n              iVar14 = extraout_v1_00;\n            }\n            goto LAB_001c9088;\n          }\n          iVar10 = *(int *)(puStack_150 + -0x7f10);\n        }\n        else {\n          uVar36 = (**(code **)(puStack_150 + -0x7774))(7);\n          if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            uVar36 = (*pcVar23)(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c9070;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            iVar14 = 1;\n          }\n          else {\nLAB_001c9070:\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\nLAB_001c9074:\n            uVar36 = (*pcVar23)(7);\n            if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n               (pcVar23 = *(code **)(puStack_150 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c9234;\n            iVar14 = 2;\n          }\nLAB_001c9088:\n          iVar10 = *(int *)(puStack_150 + -0x7f10);\n        }\n        iVar15 = 0;\n        ppppppuStack_124 = (undefined4 ******)0x1;\n        puStack_120 = &uStack_148;\n        pppppppuStack_13c = pppppppuVar9;\n        pppppppuStack_138 = pppppppuVar12;\n        ppppppuStack_134 = ppppppuVar2;\n        pppppppuStack_130 = unaff_s6;\n        pppppppuStack_12c = unaff_s5;\n        pppppppuStack_128 = param_1;\n        (**(code **)(puStack_150 + -0x7718))(iVar10 + 0x5428,&pppppppuStack_13c,iVar14,0);\n        ppppppuVar2 = ppppppuStack_124;\n        (**(code **)(puStack_150 + -0x79bc))(unaff_s6);\n        (**(code **)(puStack_150 + -0x79bc))(unaff_s5);\n        param_1[0xa8] = pppppppuVar9[0xa8];\n        if (ppppppuVar2 == (undefined4 ******)0x0) {\n          param_1 = (undefined4 *******)(**(code **)(puStack_150 + -0x7964))(param_1);\n        }\n      }" if (parenthesized_expression "(param_1 != (undefined4 *******)0x0)" ( (binary_expression "param_1 != (undefined4 *******)0x0" identifier != (cast_expression "(undefined4 *******)0x0" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n        uStack_144 = 0;\n        uStack_148 = 0;\n        unaff_s5 = (undefined4 *******)\n                   (**(code **)(puStack_150 + -0x715c))(pppppppuVar9,ppppppuVar2);\n        unaff_s6 = (undefined4 *******)(**(code **)(puStack_150 + -0x79dc))(param_1,ppppppuVar2);\n        iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9);\n        if (((iVar15 == 4) ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9), iVar15 == 3)) &&\n           ((iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 4 ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 3)))) {\n          (**(code **)(puStack_150 + -0x7774))(7);\n          ppppppuVar7 = param_1[7];\n          if ((int)ppppppuVar7 < 0) {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1 < (int)ppppppuVar7 + 0x3f >> 6) goto LAB_001c9298;\nLAB_001c91a4:\n            bVar1 = (int)ppppppuVar7 < 0x80;\n          }\n          else {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if ((int)ppppppuVar7 >> 6 <= extraout_v1) goto LAB_001c91a4;\nLAB_001c9298:\n            (*pcVar23)(7);\n            bVar1 = extraout_v1_02 < 2;\n          }\n          iVar14 = 1;\n          if ((bool)(bVar1 ^ 1)) {\n            (**(code **)(puStack_150 + -0x7774))(7);\n            ppppppuVar7 = param_1[7];\n            if ((int)ppppppuVar7 < 0) {\n              ppppppuVar7 = (undefined4 ******)((int)ppppppuVar7 + 0x3f);\n            }\n            iVar14 = (int)ppppppuVar7 >> 6;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1_01 < iVar14) {\nLAB_001c9234:\n              (*pcVar23)(7);\n              iVar14 = extraout_v1_00;\n            }\n            goto LAB_001c9088;\n          }\n          iVar10 = *(int *)(puStack_150 + -0x7f10);\n        }\n        else {\n          uVar36 = (**(code **)(puStack_150 + -0x7774))(7);\n          if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            uVar36 = (*pcVar23)(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c9070;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            iVar14 = 1;\n          }\n          else {\nLAB_001c9070:\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\nLAB_001c9074:\n            uVar36 = (*pcVar23)(7);\n            if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n               (pcVar23 = *(code **)(puStack_150 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c9234;\n            iVar14 = 2;\n          }\nLAB_001c9088:\n          iVar10 = *(int *)(puStack_150 + -0x7f10);\n        }\n        iVar15 = 0;\n        ppppppuStack_124 = (undefined4 ******)0x1;\n        puStack_120 = &uStack_148;\n        pppppppuStack_13c = pppppppuVar9;\n        pppppppuStack_138 = pppppppuVar12;\n        ppppppuStack_134 = ppppppuVar2;\n        pppppppuStack_130 = unaff_s6;\n        pppppppuStack_12c = unaff_s5;\n        pppppppuStack_128 = param_1;\n        (**(code **)(puStack_150 + -0x7718))(iVar10 + 0x5428,&pppppppuStack_13c,iVar14,0);\n        ppppppuVar2 = ppppppuStack_124;\n        (**(code **)(puStack_150 + -0x79bc))(unaff_s6);\n        (**(code **)(puStack_150 + -0x79bc))(unaff_s5);\n        param_1[0xa8] = pppppppuVar9[0xa8];\n        if (ppppppuVar2 == (undefined4 ******)0x0) {\n          param_1 = (undefined4 *******)(**(code **)(puStack_150 + -0x7964))(param_1);\n        }\n      }" { (expression_statement "uStack_144 = 0;" (assignment_expression "uStack_144 = 0" identifier = number_literal) ;) (expression_statement "uStack_148 = 0;" (assignment_expression "uStack_148 = 0" identifier = number_literal) ;) (expression_statement "unaff_s5 = (undefined4 *******)\n                   (**(code **)(puStack_150 + -0x715c))(pppppppuVar9,ppppppuVar2);" (assignment_expression "unaff_s5 = (undefined4 *******)\n                   (**(code **)(puStack_150 + -0x715c))(pppppppuVar9,ppppppuVar2)" identifier = (cast_expression "(undefined4 *******)\n                   (**(code **)(puStack_150 + -0x715c))(pppppppuVar9,ppppppuVar2)" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(**(code **)(puStack_150 + -0x715c))(pppppppuVar9,ppppppuVar2)" (parenthesized_expression "(**(code **)(puStack_150 + -0x715c))" ( (pointer_expression "**(code **)(puStack_150 + -0x715c)" * (pointer_expression "*(code **)(puStack_150 + -0x715c)" * (cast_expression "(code **)(puStack_150 + -0x715c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_150 + -0x715c)" ( (binary_expression "puStack_150 + -0x715c" identifier + number_literal) ))))) )) (argument_list "(pppppppuVar9,ppppppuVar2)" ( identifier , identifier ))))) ;) (expression_statement "unaff_s6 = (undefined4 *******)(**(code **)(puStack_150 + -0x79dc))(param_1,ppppppuVar2);" (assignment_expression "unaff_s6 = (undefined4 *******)(**(code **)(puStack_150 + -0x79dc))(param_1,ppppppuVar2)" identifier = (cast_expression "(undefined4 *******)(**(code **)(puStack_150 + -0x79dc))(param_1,ppppppuVar2)" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(**(code **)(puStack_150 + -0x79dc))(param_1,ppppppuVar2)" (parenthesized_expression "(**(code **)(puStack_150 + -0x79dc))" ( (pointer_expression "**(code **)(puStack_150 + -0x79dc)" * (pointer_expression "*(code **)(puStack_150 + -0x79dc)" * (cast_expression "(code **)(puStack_150 + -0x79dc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_150 + -0x79dc)" ( (binary_expression "puStack_150 + -0x79dc" identifier + number_literal) ))))) )) (argument_list "(param_1,ppppppuVar2)" ( identifier , identifier ))))) ;) (expression_statement "iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9);" (assignment_expression "iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9)" identifier = (call_expression "(**(code **)(puStack_150 + -0x73fc))(pppppppuVar9)" (parenthesized_expression "(**(code **)(puStack_150 + -0x73fc))" ( (pointer_expression "**(code **)(puStack_150 + -0x73fc)" * (pointer_expression "*(code **)(puStack_150 + -0x73fc)" * (cast_expression "(code **)(puStack_150 + -0x73fc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_150 + -0x73fc)" ( (binary_expression "puStack_150 + -0x73fc" identifier + number_literal) ))))) )) (argument_list "(pppppppuVar9)" ( identifier )))) ;) (if_statement "if (((iVar15 == 4) ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9), iVar15 == 3)) &&\n           ((iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 4 ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 3)))) {\n          (**(code **)(puStack_150 + -0x7774))(7);\n          ppppppuVar7 = param_1[7];\n          if ((int)ppppppuVar7 < 0) {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1 < (int)ppppppuVar7 + 0x3f >> 6) goto LAB_001c9298;\nLAB_001c91a4:\n            bVar1 = (int)ppppppuVar7 < 0x80;\n          }\n          else {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if ((int)ppppppuVar7 >> 6 <= extraout_v1) goto LAB_001c91a4;\nLAB_001c9298:\n            (*pcVar23)(7);\n            bVar1 = extraout_v1_02 < 2;\n          }\n          iVar14 = 1;\n          if ((bool)(bVar1 ^ 1)) {\n            (**(code **)(puStack_150 + -0x7774))(7);\n            ppppppuVar7 = param_1[7];\n            if ((int)ppppppuVar7 < 0) {\n              ppppppuVar7 = (undefined4 ******)((int)ppppppuVar7 + 0x3f);\n            }\n            iVar14 = (int)ppppppuVar7 >> 6;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1_01 < iVar14) {\nLAB_001c9234:\n              (*pcVar23)(7);\n              iVar14 = extraout_v1_00;\n            }\n            goto LAB_001c9088;\n          }\n          iVar10 = *(int *)(puStack_150 + -0x7f10);\n        }\n        else {\n          uVar36 = (**(code **)(puStack_150 + -0x7774))(7);\n          if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            uVar36 = (*pcVar23)(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c9070;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            iVar14 = 1;\n          }\n          else {\nLAB_001c9070:\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\nLAB_001c9074:\n            uVar36 = (*pcVar23)(7);\n            if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n               (pcVar23 = *(code **)(puStack_150 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c9234;\n            iVar14 = 2;\n          }\nLAB_001c9088:\n          iVar10 = *(int *)(puStack_150 + -0x7f10);\n        }" if (parenthesized_expression "(((iVar15 == 4) ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9), iVar15 == 3)) &&\n           ((iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 4 ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 3))))" ( (binary_expression "((iVar15 == 4) ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9), iVar15 == 3)) &&\n           ((iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 4 ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 3)))" (parenthesized_expression "((iVar15 == 4) ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9), iVar15 == 3))" ( (binary_expression "(iVar15 == 4) ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9), iVar15 == 3)" (parenthesized_expression "(iVar15 == 4)" ( (binary_expression "iVar15 == 4" identifier == number_literal) )) || (parenthesized_expression "(iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9), iVar15 == 3)" ( (comma_expression "iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9), iVar15 == 3" (assignment_expression "iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9)" identifier = (call_expression "(**(code **)(puStack_150 + -0x73fc))(pppppppuVar9)" (parenthesized_expression "(**(code **)(puStack_150 + -0x73fc))" ( (pointer_expression "**(code **)(puStack_150 + -0x73fc)" * (pointer_expression "*(code **)(puStack_150 + -0x73fc)" * (cast_expression "(code **)(puStack_150 + -0x73fc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_150 + -0x73fc)" ( (binary_expression "puStack_150 + -0x73fc" identifier + number_literal) ))))) )) (argument_list "(pppppppuVar9)" ( identifier )))) , (binary_expression "iVar15 == 3" identifier == number_literal)) ))) )) && (parenthesized_expression "((iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 4 ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 3)))" ( (parenthesized_expression "(iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 4 ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 3))" ( (comma_expression "iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 4 ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 3)" (assignment_expression "iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1)" identifier = (call_expression "(**(code **)(puStack_150 + -0x73fc))(param_1)" (parenthesized_expression "(**(code **)(puStack_150 + -0x73fc))" ( (pointer_expression "**(code **)(puStack_150 + -0x73fc)" * (pointer_expression "*(code **)(puStack_150 + -0x73fc)" * (cast_expression "(code **)(puStack_150 + -0x73fc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_150 + -0x73fc)" ( (binary_expression "puStack_150 + -0x73fc" identifier + number_literal) ))))) )) (argument_list "(param_1)" ( identifier )))) , (binary_expression "iVar15 == 4 ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 3)" (binary_expression "iVar15 == 4" identifier == number_literal) || (parenthesized_expression "(iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 3)" ( (comma_expression "iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 3" (assignment_expression "iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1)" identifier = (call_expression "(**(code **)(puStack_150 + -0x73fc))(param_1)" (parenthesized_expression "(**(code **)(puStack_150 + -0x73fc))" ( (pointer_expression "**(code **)(puStack_150 + -0x73fc)" * (pointer_expression "*(code **)(puStack_150 + -0x73fc)" * (cast_expression "(code **)(puStack_150 + -0x73fc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_150 + -0x73fc)" ( (binary_expression "puStack_150 + -0x73fc" identifier + number_literal) ))))) )) (argument_list "(param_1)" ( identifier )))) , (binary_expression "iVar15 == 3" identifier == number_literal)) )))) )) ))) )) (compound_statement "{\n          (**(code **)(puStack_150 + -0x7774))(7);\n          ppppppuVar7 = param_1[7];\n          if ((int)ppppppuVar7 < 0) {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1 < (int)ppppppuVar7 + 0x3f >> 6) goto LAB_001c9298;\nLAB_001c91a4:\n            bVar1 = (int)ppppppuVar7 < 0x80;\n          }\n          else {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if ((int)ppppppuVar7 >> 6 <= extraout_v1) goto LAB_001c91a4;\nLAB_001c9298:\n            (*pcVar23)(7);\n            bVar1 = extraout_v1_02 < 2;\n          }\n          iVar14 = 1;\n          if ((bool)(bVar1 ^ 1)) {\n            (**(code **)(puStack_150 + -0x7774))(7);\n            ppppppuVar7 = param_1[7];\n            if ((int)ppppppuVar7 < 0) {\n              ppppppuVar7 = (undefined4 ******)((int)ppppppuVar7 + 0x3f);\n            }\n            iVar14 = (int)ppppppuVar7 >> 6;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1_01 < iVar14) {\nLAB_001c9234:\n              (*pcVar23)(7);\n              iVar14 = extraout_v1_00;\n            }\n            goto LAB_001c9088;\n          }\n          iVar10 = *(int *)(puStack_150 + -0x7f10);\n        }" { (expression_statement "(**(code **)(puStack_150 + -0x7774))(7);" (call_expression "(**(code **)(puStack_150 + -0x7774))(7)" (parenthesized_expression "(**(code **)(puStack_150 + -0x7774))" ( (pointer_expression "**(code **)(puStack_150 + -0x7774)" * (pointer_expression "*(code **)(puStack_150 + -0x7774)" * (cast_expression "(code **)(puStack_150 + -0x7774)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_150 + -0x7774)" ( (binary_expression "puStack_150 + -0x7774" identifier + number_literal) ))))) )) (argument_list "(7)" ( number_literal ))) ;) (expression_statement "ppppppuVar7 = param_1[7];" (assignment_expression "ppppppuVar7 = param_1[7]" identifier = (subscript_expression "param_1[7]" identifier [ number_literal ])) ;) (if_statement "if ((int)ppppppuVar7 < 0) {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1 < (int)ppppppuVar7 + 0x3f >> 6) goto LAB_001c9298;\nLAB_001c91a4:\n            bVar1 = (int)ppppppuVar7 < 0x80;\n          }\n          else {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if ((int)ppppppuVar7 >> 6 <= extraout_v1) goto LAB_001c91a4;\nLAB_001c9298:\n            (*pcVar23)(7);\n            bVar1 = extraout_v1_02 < 2;\n          }" if (parenthesized_expression "((int)ppppppuVar7 < 0)" ( (binary_expression "(int)ppppppuVar7 < 0" (cast_expression "(int)ppppppuVar7" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1 < (int)ppppppuVar7 + 0x3f >> 6) goto LAB_001c9298;\nLAB_001c91a4:\n            bVar1 = (int)ppppppuVar7 < 0x80;\n          }" { (expression_statement "pcVar23 = *(code **)(puStack_150 + -0x7774);" (assignment_expression "pcVar23 = *(code **)(puStack_150 + -0x7774)" identifier = (pointer_expression "*(code **)(puStack_150 + -0x7774)" * (cast_expression "(code **)(puStack_150 + -0x7774)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_150 + -0x7774)" ( (binary_expression "puStack_150 + -0x7774" identifier + number_literal) ))))) ;) (if_statement "if (extraout_v1 < (int)ppppppuVar7 + 0x3f >> 6) goto LAB_001c9298;" if (parenthesized_expression "(extraout_v1 < (int)ppppppuVar7 + 0x3f >> 6)" ( (binary_expression "extraout_v1 < (int)ppppppuVar7 + 0x3f >> 6" identifier < (binary_expression "(int)ppppppuVar7 + 0x3f >> 6" (binary_expression "(int)ppppppuVar7 + 0x3f" (cast_expression "(int)ppppppuVar7" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) >> number_literal)) )) (goto_statement "goto LAB_001c9298;" goto statement_identifier ;)) (labeled_statement "LAB_001c91a4:\n            bVar1 = (int)ppppppuVar7 < 0x80;" statement_identifier : (expression_statement "bVar1 = (int)ppppppuVar7 < 0x80;" (assignment_expression "bVar1 = (int)ppppppuVar7 < 0x80" identifier = (binary_expression "(int)ppppppuVar7 < 0x80" (cast_expression "(int)ppppppuVar7" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal)) ;)) }) (else_clause "else {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if ((int)ppppppuVar7 >> 6 <= extraout_v1) goto LAB_001c91a4;\nLAB_001c9298:\n            (*pcVar23)(7);\n            bVar1 = extraout_v1_02 < 2;\n          }" else (compound_statement "{\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if ((int)ppppppuVar7 >> 6 <= extraout_v1) goto LAB_001c91a4;\nLAB_001c9298:\n            (*pcVar23)(7);\n            bVar1 = extraout_v1_02 < 2;\n          }" { (expression_statement "pcVar23 = *(code **)(puStack_150 + -0x7774);" (assignment_expression "pcVar23 = *(code **)(puStack_150 + -0x7774)" identifier = (pointer_expression "*(code **)(puStack_150 + -0x7774)" * (cast_expression "(code **)(puStack_150 + -0x7774)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_150 + -0x7774)" ( (binary_expression "puStack_150 + -0x7774" identifier + number_literal) ))))) ;) (if_statement "if ((int)ppppppuVar7 >> 6 <= extraout_v1) goto LAB_001c91a4;" if (parenthesized_expression "((int)ppppppuVar7 >> 6 <= extraout_v1)" ( (binary_expression "(int)ppppppuVar7 >> 6 <= extraout_v1" (binary_expression "(int)ppppppuVar7 >> 6" (cast_expression "(int)ppppppuVar7" ( (type_descriptor "int" primitive_type) ) identifier) >> number_literal) <= identifier) )) (goto_statement "goto LAB_001c91a4;" goto statement_identifier ;)) (labeled_statement "LAB_001c9298:\n            (*pcVar23)(7);" statement_identifier : (expression_statement "(*pcVar23)(7);" (call_expression "(*pcVar23)(7)" (parenthesized_expression "(*pcVar23)" ( (pointer_expression "*pcVar23" * identifier) )) (argument_list "(7)" ( number_literal ))) ;)) (expression_statement "bVar1 = extraout_v1_02 < 2;" (assignment_expression "bVar1 = extraout_v1_02 < 2" identifier = (binary_expression "extraout_v1_02 < 2" identifier < number_literal)) ;) }))) (expression_statement "iVar14 = 1;" (assignment_expression "iVar14 = 1" identifier = number_literal) ;) (if_statement "if ((bool)(bVar1 ^ 1)) {\n            (**(code **)(puStack_150 + -0x7774))(7);\n            ppppppuVar7 = param_1[7];\n            if ((int)ppppppuVar7 < 0) {\n              ppppppuVar7 = (undefined4 ******)((int)ppppppuVar7 + 0x3f);\n            }\n            iVar14 = (int)ppppppuVar7 >> 6;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1_01 < iVar14) {\nLAB_001c9234:\n              (*pcVar23)(7);\n              iVar14 = extraout_v1_00;\n            }\n            goto LAB_001c9088;\n          }" if (parenthesized_expression "((bool)(bVar1 ^ 1))" ( (cast_expression "(bool)(bVar1 ^ 1)" ( (type_descriptor "bool" primitive_type) ) (parenthesized_expression "(bVar1 ^ 1)" ( (binary_expression "bVar1 ^ 1" identifier ^ number_literal) ))) )) (compound_statement "{\n            (**(code **)(puStack_150 + -0x7774))(7);\n            ppppppuVar7 = param_1[7];\n            if ((int)ppppppuVar7 < 0) {\n              ppppppuVar7 = (undefined4 ******)((int)ppppppuVar7 + 0x3f);\n            }\n            iVar14 = (int)ppppppuVar7 >> 6;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1_01 < iVar14) {\nLAB_001c9234:\n              (*pcVar23)(7);\n              iVar14 = extraout_v1_00;\n            }\n            goto LAB_001c9088;\n          }" { (expression_statement "(**(code **)(puStack_150 + -0x7774))(7);" (call_expression "(**(code **)(puStack_150 + -0x7774))(7)" (parenthesized_expression "(**(code **)(puStack_150 + -0x7774))" ( (pointer_expression "**(code **)(puStack_150 + -0x7774)" * (pointer_expression "*(code **)(puStack_150 + -0x7774)" * (cast_expression "(code **)(puStack_150 + -0x7774)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_150 + -0x7774)" ( (binary_expression "puStack_150 + -0x7774" identifier + number_literal) ))))) )) (argument_list "(7)" ( number_literal ))) ;) (expression_statement "ppppppuVar7 = param_1[7];" (assignment_expression "ppppppuVar7 = param_1[7]" identifier = (subscript_expression "param_1[7]" identifier [ number_literal ])) ;) (if_statement "if ((int)ppppppuVar7 < 0) {\n              ppppppuVar7 = (undefined4 ******)((int)ppppppuVar7 + 0x3f);\n            }" if (parenthesized_expression "((int)ppppppuVar7 < 0)" ( (binary_expression "(int)ppppppuVar7 < 0" (cast_expression "(int)ppppppuVar7" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n              ppppppuVar7 = (undefined4 ******)((int)ppppppuVar7 + 0x3f);\n            }" { (expression_statement "ppppppuVar7 = (undefined4 ******)((int)ppppppuVar7 + 0x3f);" (assignment_expression "ppppppuVar7 = (undefined4 ******)((int)ppppppuVar7 + 0x3f)" identifier = (cast_expression "(undefined4 ******)((int)ppppppuVar7 + 0x3f)" ( (type_descriptor "undefined4 ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (parenthesized_expression "((int)ppppppuVar7 + 0x3f)" ( (binary_expression "(int)ppppppuVar7 + 0x3f" (cast_expression "(int)ppppppuVar7" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) })) (expression_statement "iVar14 = (int)ppppppuVar7 >> 6;" (assignment_expression "iVar14 = (int)ppppppuVar7 >> 6" identifier = (binary_expression "(int)ppppppuVar7 >> 6" (cast_expression "(int)ppppppuVar7" ( (type_descriptor "int" primitive_type) ) identifier) >> number_literal)) ;) (expression_statement "pcVar23 = *(code **)(puStack_150 + -0x7774);" (assignment_expression "pcVar23 = *(code **)(puStack_150 + -0x7774)" identifier = (pointer_expression "*(code **)(puStack_150 + -0x7774)" * (cast_expression "(code **)(puStack_150 + -0x7774)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_150 + -0x7774)" ( (binary_expression "puStack_150 + -0x7774" identifier + number_literal) ))))) ;) (if_statement "if (extraout_v1_01 < iVar14) {\nLAB_001c9234:\n              (*pcVar23)(7);\n              iVar14 = extraout_v1_00;\n            }" if (parenthesized_expression "(extraout_v1_01 < iVar14)" ( (binary_expression "extraout_v1_01 < iVar14" identifier < identifier) )) (compound_statement "{\nLAB_001c9234:\n              (*pcVar23)(7);\n              iVar14 = extraout_v1_00;\n            }" { (labeled_statement "LAB_001c9234:\n              (*pcVar23)(7);" statement_identifier : (expression_statement "(*pcVar23)(7);" (call_expression "(*pcVar23)(7)" (parenthesized_expression "(*pcVar23)" ( (pointer_expression "*pcVar23" * identifier) )) (argument_list "(7)" ( number_literal ))) ;)) (expression_statement "iVar14 = extraout_v1_00;" (assignment_expression "iVar14 = extraout_v1_00" identifier = identifier) ;) })) (goto_statement "goto LAB_001c9088;" goto statement_identifier ;) })) (expression_statement "iVar10 = *(int *)(puStack_150 + -0x7f10);" (assignment_expression "iVar10 = *(int *)(puStack_150 + -0x7f10)" identifier = (pointer_expression "*(int *)(puStack_150 + -0x7f10)" * (cast_expression "(int *)(puStack_150 + -0x7f10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puStack_150 + -0x7f10)" ( (binary_expression "puStack_150 + -0x7f10" identifier + number_literal) ))))) ;) }) (else_clause "else {\n          uVar36 = (**(code **)(puStack_150 + -0x7774))(7);\n          if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            uVar36 = (*pcVar23)(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c9070;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            iVar14 = 1;\n          }\n          else {\nLAB_001c9070:\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\nLAB_001c9074:\n            uVar36 = (*pcVar23)(7);\n            if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n               (pcVar23 = *(code **)(puStack_150 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c9234;\n            iVar14 = 2;\n          }\nLAB_001c9088:\n          iVar10 = *(int *)(puStack_150 + -0x7f10);\n        }" else (compound_statement "{\n          uVar36 = (**(code **)(puStack_150 + -0x7774))(7);\n          if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            uVar36 = (*pcVar23)(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c9070;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            iVar14 = 1;\n          }\n          else {\nLAB_001c9070:\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\nLAB_001c9074:\n            uVar36 = (*pcVar23)(7);\n            if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n               (pcVar23 = *(code **)(puStack_150 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c9234;\n            iVar14 = 2;\n          }\nLAB_001c9088:\n          iVar10 = *(int *)(puStack_150 + -0x7f10);\n        }" { (expression_statement "uVar36 = (**(code **)(puStack_150 + -0x7774))(7);" (assignment_expression "uVar36 = (**(code **)(puStack_150 + -0x7774))(7)" identifier = (call_expression "(**(code **)(puStack_150 + -0x7774))(7)" (parenthesized_expression "(**(code **)(puStack_150 + -0x7774))" ( (pointer_expression "**(code **)(puStack_150 + -0x7774)" * (pointer_expression "*(code **)(puStack_150 + -0x7774)" * (cast_expression "(code **)(puStack_150 + -0x7774)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_150 + -0x7774)" ( (binary_expression "puStack_150 + -0x7774" identifier + number_literal) ))))) )) (argument_list "(7)" ( number_literal )))) ;) (if_statement "if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            uVar36 = (*pcVar23)(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c9070;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            iVar14 = 1;\n          }\n          else {\nLAB_001c9070:\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\nLAB_001c9074:\n            uVar36 = (*pcVar23)(7);\n            if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n               (pcVar23 = *(code **)(puStack_150 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c9234;\n            iVar14 = 2;\n          }" if (parenthesized_expression "((int)((ulonglong)uVar36 >> 0x20) == 0)" ( (binary_expression "(int)((ulonglong)uVar36 >> 0x20) == 0" (cast_expression "(int)((ulonglong)uVar36 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)uVar36 >> 0x20)" ( (binary_expression "(ulonglong)uVar36 >> 0x20" (cast_expression "(ulonglong)uVar36" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) ))) == number_literal) )) (compound_statement "{\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            uVar36 = (*pcVar23)(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c9070;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            iVar14 = 1;\n          }" { (expression_statement "pcVar23 = *(code **)(puStack_150 + -0x7774);" (assignment_expression "pcVar23 = *(code **)(puStack_150 + -0x7774)" identifier = (pointer_expression "*(code **)(puStack_150 + -0x7774)" * (cast_expression "(code **)(puStack_150 + -0x7774)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_150 + -0x7774)" ( (binary_expression "puStack_150 + -0x7774" identifier + number_literal) ))))) ;) (if_statement "if (1 < (uint)uVar36) goto LAB_001c9074;" if (parenthesized_expression "(1 < (uint)uVar36)" ( (binary_expression "1 < (uint)uVar36" number_literal < (cast_expression "(uint)uVar36" ( (type_descriptor "uint" type_identifier) ) identifier)) )) (goto_statement "goto LAB_001c9074;" goto statement_identifier ;)) (expression_statement "uVar36 = (*pcVar23)(7);" (assignment_expression "uVar36 = (*pcVar23)(7)" identifier = (call_expression "(*pcVar23)(7)" (parenthesized_expression "(*pcVar23)" ( (pointer_expression "*pcVar23" * identifier) )) (argument_list "(7)" ( number_literal )))) ;) (if_statement "if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c9070;" if (parenthesized_expression "((int)((ulonglong)uVar36 >> 0x20) != 0)" ( (binary_expression "(int)((ulonglong)uVar36 >> 0x20) != 0" (cast_expression "(int)((ulonglong)uVar36 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)uVar36 >> 0x20)" ( (binary_expression "(ulonglong)uVar36 >> 0x20" (cast_expression "(ulonglong)uVar36" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) ))) != number_literal) )) (goto_statement "goto LAB_001c9070;" goto statement_identifier ;)) (expression_statement "pcVar23 = *(code **)(puStack_150 + -0x7774);" (assignment_expression "pcVar23 = *(code **)(puStack_150 + -0x7774)" identifier = (pointer_expression "*(code **)(puStack_150 + -0x7774)" * (cast_expression "(code **)(puStack_150 + -0x7774)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_150 + -0x7774)" ( (binary_expression "puStack_150 + -0x7774" identifier + number_literal) ))))) ;) (if_statement "if (1 < (uint)uVar36) goto LAB_001c9074;" if (parenthesized_expression "(1 < (uint)uVar36)" ( (binary_expression "1 < (uint)uVar36" number_literal < (cast_expression "(uint)uVar36" ( (type_descriptor "uint" type_identifier) ) identifier)) )) (goto_statement "goto LAB_001c9074;" goto statement_identifier ;)) (expression_statement "iVar14 = 1;" (assignment_expression "iVar14 = 1" identifier = number_literal) ;) }) (else_clause "else {\nLAB_001c9070:\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\nLAB_001c9074:\n            uVar36 = (*pcVar23)(7);\n            if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n               (pcVar23 = *(code **)(puStack_150 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c9234;\n            iVar14 = 2;\n          }" else (compound_statement "{\nLAB_001c9070:\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\nLAB_001c9074:\n            uVar36 = (*pcVar23)(7);\n            if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n               (pcVar23 = *(code **)(puStack_150 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c9234;\n            iVar14 = 2;\n          }" { (labeled_statement "LAB_001c9070:\n            pcVar23 = *(code **)(puStack_150 + -0x7774);" statement_identifier : (expression_statement "pcVar23 = *(code **)(puStack_150 + -0x7774);" (assignment_expression "pcVar23 = *(code **)(puStack_150 + -0x7774)" identifier = (pointer_expression "*(code **)(puStack_150 + -0x7774)" * (cast_expression "(code **)(puStack_150 + -0x7774)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_150 + -0x7774)" ( (binary_expression "puStack_150 + -0x7774" identifier + number_literal) ))))) ;)) (labeled_statement "LAB_001c9074:\n            uVar36 = (*pcVar23)(7);" statement_identifier : (expression_statement "uVar36 = (*pcVar23)(7);" (assignment_expression "uVar36 = (*pcVar23)(7)" identifier = (call_expression "(*pcVar23)(7)" (parenthesized_expression "(*pcVar23)" ( (pointer_expression "*pcVar23" * identifier) )) (argument_list "(7)" ( number_literal )))) ;)) (if_statement "if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n               (pcVar23 = *(code **)(puStack_150 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c9234;" if (parenthesized_expression "(((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n               (pcVar23 = *(code **)(puStack_150 + -0x7774), (uint)uVar36 < 2))" ( (binary_expression "((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n               (pcVar23 = *(code **)(puStack_150 + -0x7774), (uint)uVar36 < 2)" (parenthesized_expression "((int)((ulonglong)uVar36 >> 0x20) == 0)" ( (binary_expression "(int)((ulonglong)uVar36 >> 0x20) == 0" (cast_expression "(int)((ulonglong)uVar36 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)uVar36 >> 0x20)" ( (binary_expression "(ulonglong)uVar36 >> 0x20" (cast_expression "(ulonglong)uVar36" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) ))) == number_literal) )) && (parenthesized_expression "(pcVar23 = *(code **)(puStack_150 + -0x7774), (uint)uVar36 < 2)" ( (comma_expression "pcVar23 = *(code **)(puStack_150 + -0x7774), (uint)uVar36 < 2" (assignment_expression "pcVar23 = *(code **)(puStack_150 + -0x7774)" identifier = (pointer_expression "*(code **)(puStack_150 + -0x7774)" * (cast_expression "(code **)(puStack_150 + -0x7774)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_150 + -0x7774)" ( (binary_expression "puStack_150 + -0x7774" identifier + number_literal) ))))) , (binary_expression "(uint)uVar36 < 2" (cast_expression "(uint)uVar36" ( (type_descriptor "uint" type_identifier) ) identifier) < number_literal)) ))) )) (goto_statement "goto LAB_001c9234;" goto statement_identifier ;)) (expression_statement "iVar14 = 2;" (assignment_expression "iVar14 = 2" identifier = number_literal) ;) }))) (labeled_statement "LAB_001c9088:\n          iVar10 = *(int *)(puStack_150 + -0x7f10);" statement_identifier : (expression_statement "iVar10 = *(int *)(puStack_150 + -0x7f10);" (assignment_expression "iVar10 = *(int *)(puStack_150 + -0x7f10)" identifier = (pointer_expression "*(int *)(puStack_150 + -0x7f10)" * (cast_expression "(int *)(puStack_150 + -0x7f10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puStack_150 + -0x7f10)" ( (binary_expression "puStack_150 + -0x7f10" identifier + number_literal) ))))) ;)) }))) (expression_statement "iVar15 = 0;" (assignment_expression "iVar15 = 0" identifier = number_literal) ;) (expression_statement "ppppppuStack_124 = (undefined4 ******)0x1;" (assignment_expression "ppppppuStack_124 = (undefined4 ******)0x1" identifier = (cast_expression "(undefined4 ******)0x1" ( (type_descriptor "undefined4 ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) ;) (expression_statement "puStack_120 = &uStack_148;" (assignment_expression "puStack_120 = &uStack_148" identifier = (pointer_expression "&uStack_148" & identifier)) ;) (expression_statement "pppppppuStack_13c = pppppppuVar9;" (assignment_expression "pppppppuStack_13c = pppppppuVar9" identifier = identifier) ;) (expression_statement "pppppppuStack_138 = pppppppuVar12;" (assignment_expression "pppppppuStack_138 = pppppppuVar12" identifier = identifier) ;) (expression_statement "ppppppuStack_134 = ppppppuVar2;" (assignment_expression "ppppppuStack_134 = ppppppuVar2" identifier = identifier) ;) (expression_statement "pppppppuStack_130 = unaff_s6;" (assignment_expression "pppppppuStack_130 = unaff_s6" identifier = identifier) ;) (expression_statement "pppppppuStack_12c = unaff_s5;" (assignment_expression "pppppppuStack_12c = unaff_s5" identifier = identifier) ;) (expression_statement "pppppppuStack_128 = param_1;" (assignment_expression "pppppppuStack_128 = param_1" identifier = identifier) ;) (expression_statement "(**(code **)(puStack_150 + -0x7718))(iVar10 + 0x5428,&pppppppuStack_13c,iVar14,0);" (call_expression "(**(code **)(puStack_150 + -0x7718))(iVar10 + 0x5428,&pppppppuStack_13c,iVar14,0)" (parenthesized_expression "(**(code **)(puStack_150 + -0x7718))" ( (pointer_expression "**(code **)(puStack_150 + -0x7718)" * (pointer_expression "*(code **)(puStack_150 + -0x7718)" * (cast_expression "(code **)(puStack_150 + -0x7718)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_150 + -0x7718)" ( (binary_expression "puStack_150 + -0x7718" identifier + number_literal) ))))) )) (argument_list "(iVar10 + 0x5428,&pppppppuStack_13c,iVar14,0)" ( (binary_expression "iVar10 + 0x5428" identifier + number_literal) , (pointer_expression "&pppppppuStack_13c" & identifier) , identifier , number_literal ))) ;) (expression_statement "ppppppuVar2 = ppppppuStack_124;" (assignment_expression "ppppppuVar2 = ppppppuStack_124" identifier = identifier) ;) (expression_statement "(**(code **)(puStack_150 + -0x79bc))(unaff_s6);" (call_expression "(**(code **)(puStack_150 + -0x79bc))(unaff_s6)" (parenthesized_expression "(**(code **)(puStack_150 + -0x79bc))" ( (pointer_expression "**(code **)(puStack_150 + -0x79bc)" * (pointer_expression "*(code **)(puStack_150 + -0x79bc)" * (cast_expression "(code **)(puStack_150 + -0x79bc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_150 + -0x79bc)" ( (binary_expression "puStack_150 + -0x79bc" identifier + number_literal) ))))) )) (argument_list "(unaff_s6)" ( identifier ))) ;) (expression_statement "(**(code **)(puStack_150 + -0x79bc))(unaff_s5);" (call_expression "(**(code **)(puStack_150 + -0x79bc))(unaff_s5)" (parenthesized_expression "(**(code **)(puStack_150 + -0x79bc))" ( (pointer_expression "**(code **)(puStack_150 + -0x79bc)" * (pointer_expression "*(code **)(puStack_150 + -0x79bc)" * (cast_expression "(code **)(puStack_150 + -0x79bc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_150 + -0x79bc)" ( (binary_expression "puStack_150 + -0x79bc" identifier + number_literal) ))))) )) (argument_list "(unaff_s5)" ( identifier ))) ;) (expression_statement "param_1[0xa8] = pppppppuVar9[0xa8];" (assignment_expression "param_1[0xa8] = pppppppuVar9[0xa8]" (subscript_expression "param_1[0xa8]" identifier [ number_literal ]) = (subscript_expression "pppppppuVar9[0xa8]" identifier [ number_literal ])) ;) (if_statement "if (ppppppuVar2 == (undefined4 ******)0x0) {\n          param_1 = (undefined4 *******)(**(code **)(puStack_150 + -0x7964))(param_1);\n        }" if (parenthesized_expression "(ppppppuVar2 == (undefined4 ******)0x0)" ( (binary_expression "ppppppuVar2 == (undefined4 ******)0x0" identifier == (cast_expression "(undefined4 ******)0x0" ( (type_descriptor "undefined4 ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n          param_1 = (undefined4 *******)(**(code **)(puStack_150 + -0x7964))(param_1);\n        }" { (expression_statement "param_1 = (undefined4 *******)(**(code **)(puStack_150 + -0x7964))(param_1);" (assignment_expression "param_1 = (undefined4 *******)(**(code **)(puStack_150 + -0x7964))(param_1)" identifier = (cast_expression "(undefined4 *******)(**(code **)(puStack_150 + -0x7964))(param_1)" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(**(code **)(puStack_150 + -0x7964))(param_1)" (parenthesized_expression "(**(code **)(puStack_150 + -0x7964))" ( (pointer_expression "**(code **)(puStack_150 + -0x7964)" * (pointer_expression "*(code **)(puStack_150 + -0x7964)" * (cast_expression "(code **)(puStack_150 + -0x7964)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_150 + -0x7964)" ( (binary_expression "puStack_150 + -0x7964" identifier + number_literal) ))))) )) (argument_list "(param_1)" ( identifier ))))) ;) })) })) (expression_statement "puVar8 = puStack_150;" (assignment_expression "puVar8 = puStack_150" identifier = identifier) ;) (if_statement "if (iStack_11c == *piVar18) {\n        return param_1;\n      }" if (parenthesized_expression "(iStack_11c == *piVar18)" ( (binary_expression "iStack_11c == *piVar18" identifier == (pointer_expression "*piVar18" * identifier)) )) (compound_statement "{\n        return param_1;\n      }" { (return_statement "return param_1;" return identifier ;) })) (goto_statement "goto LAB_001c9314;" goto statement_identifier ;) })) (goto_statement "goto LAB_001c9320;" goto statement_identifier ;) })))) (expression_statement "ppppppuVar2 = (undefined4 ******)0x3f5;" (assignment_expression "ppppppuVar2 = (undefined4 ******)0x3f5" identifier = (cast_expression "(undefined4 ******)0x3f5" ( (type_descriptor "undefined4 ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) ;) (expression_statement "pcVar21 = *(code **)(puVar8 + -0x72a8);" (assignment_expression "pcVar21 = *(code **)(puVar8 + -0x72a8)" identifier = (pointer_expression "*(code **)(puVar8 + -0x72a8)" * (cast_expression "(code **)(puVar8 + -0x72a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + -0x72a8)" ( (binary_expression "puVar8 + -0x72a8" identifier + number_literal) ))))) ;) (expression_statement "pppppppuVar13 = (undefined4 *******)(*(int *)(puVar8 + -0x7fc4) + -0x288c);" (assignment_expression "pppppppuVar13 = (undefined4 *******)(*(int *)(puVar8 + -0x7fc4) + -0x288c)" identifier = (cast_expression "(undefined4 *******)(*(int *)(puVar8 + -0x7fc4) + -0x288c)" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(*(int *)(puVar8 + -0x7fc4) + -0x288c)" ( (binary_expression "*(int *)(puVar8 + -0x7fc4) + -0x288c" (pointer_expression "*(int *)(puVar8 + -0x7fc4)" * (cast_expression "(int *)(puVar8 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x7fc4)" ( (binary_expression "puVar8 + -0x7fc4" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "pcVar24 = ExtentImage;" (assignment_expression "pcVar24 = ExtentImage" identifier = identifier) ;) (expression_statement "pppppppuVar12 = (undefined4 *******)(*(int *)(puVar8 + -0x7fc8) + -0x3784);" (assignment_expression "pppppppuVar12 = (undefined4 *******)(*(int *)(puVar8 + -0x7fc8) + -0x3784)" identifier = (cast_expression "(undefined4 *******)(*(int *)(puVar8 + -0x7fc8) + -0x3784)" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(*(int *)(puVar8 + -0x7fc8) + -0x3784)" ( (binary_expression "*(int *)(puVar8 + -0x7fc8) + -0x3784" (pointer_expression "*(int *)(puVar8 + -0x7fc8)" * (cast_expression "(int *)(puVar8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x7fc8)" ( (binary_expression "puVar8 + -0x7fc8" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "(*pcVar21)();" (call_expression "(*pcVar21)()" (parenthesized_expression "(*pcVar21)" ( (pointer_expression "*pcVar21" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "pcVar23 = pcVar21 + 0x1e754c;" (assignment_expression "pcVar23 = pcVar21 + 0x1e754c" identifier = (binary_expression "pcVar21 + 0x1e754c" identifier + number_literal)) ;) (expression_statement "pcStack_188 = pcVar23;" (assignment_expression "pcStack_188 = pcVar23" identifier = identifier) ;) (expression_statement "pppppppuStack_17c = pppppppuVar9;" (assignment_expression "pppppppuStack_17c = pppppppuVar9" identifier = identifier) ;) (expression_statement "pppppppuStack_178 = param_1;" (assignment_expression "pppppppuStack_178 = param_1" identifier = identifier) ;) (expression_statement "ppppppuStack_174 = unaff_s2;" (assignment_expression "ppppppuStack_174 = unaff_s2" identifier = identifier) ;) (expression_statement "pppppppuStack_170 = unaff_s3;" (assignment_expression "pppppppuStack_170 = unaff_s3" identifier = identifier) ;) (expression_statement "pcStack_16c = pcVar24;" (assignment_expression "pcStack_16c = pcVar24" identifier = identifier) ;) (if_statement "if (pppppppuVar12 == (undefined4 *******)0x0) {\n    iVar15 = *(int *)(pcVar21 + 0x1df588) + -0x26c8;\n    (**(code **)(pcVar21 + 0x1e02a4))\n              (*(int *)(pcVar21 + 0x1df584) + -0x37b0,*(int *)(pcVar21 + 0x1df588) + -0x288c,0x474,\n               iVar15);\nLAB_001c94fc:\n    iVar15 = iVar15 + -0x26c8;\n    (**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fc4) + -0x2850,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x478,\n               iVar15);\nLAB_001c951c:\n    iVar15 = iVar15 + -0x26c8;\n    (**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fd0) + 0x294c,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x47a,\n               iVar15);\n    pppppppuVar12 = pppppppuVar9;\nLAB_001c953c:\n    (**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fd0) + 0x1cac,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x479,\n               iVar15 + -0x26c8);\n  }\n  else if (pppppppuVar12[0xcdb] == (undefined4 ******)0xabacadab) {\n    if (pppppppuVar12[0xcd4] != (undefined4 ******)0x0) {\n      pppppppuStack_194 = pppppppuVar12 + 0xd0;\n      ppppppuStack_198 = (undefined4 ******)(*(int *)(pcVar21 + 0x1df580) + -0x62ac);\n      (**(code **)(pcVar21 + 0x1dfe7c))\n                (0x8000,*(int *)(pcVar21 + 0x1df588) + -0x288c,\n                 *(int *)(pcVar21 + 0x1df588) + -0x26d4,0x477);\n    }\n    iVar15 = *(int *)(pcStack_188 + -0x7fc4);\n    pppppppuVar9 = pppppppuVar12;\n    param_1 = pppppppuVar13;\n    unaff_s2 = ppppppuVar2;\n    pcVar23 = pcStack_188;\n    if (pppppppuVar13 == (undefined4 *******)0x0) goto LAB_001c94fc;\n    if (ppppppuVar2 != (undefined4 ******)0x0) {\n      if (ppppppuVar2[7] == (undefined4 *****)0xabacadab) {\n        ppppppuStack_198 = ppppppuVar2;\n        pppppppuVar9 = (undefined4 *******)\n                       (**(code **)(pcStack_188 + -0x7080))\n                                 (pppppppuVar12,*pppppppuVar13,pppppppuVar13[1],1);\n        if (pppppppuVar9 != (undefined4 *******)0x0) {\n          iVar15 = (**(code **)(pcStack_188 + -0x7a20))(pppppppuVar9,ppppppuVar2);\n          if (iVar15 == 0) {\n            (**(code **)(pcStack_188 + -0x7964))(pppppppuVar9);\n            pppppppuVar9 = (undefined4 *******)0x0;\n          }\n          else {\n            pppppppuStack_194 = (undefined4 *******)-(int)pppppppuVar13[3];\n            ppppppuStack_198 = (undefined4 ******)-(int)pppppppuVar13[2];\n            ppppppuStack_190 = ppppppuVar2;\n            iVar15 = (**(code **)(pcStack_188 + -0x7bec))\n                               (pppppppuVar9,pppppppuVar12,pppppppuVar12[0x99],1);\n            if (iVar15 != 0) {\n              (**(code **)(pcStack_188 + -0x7d18))\n                        (pppppppuVar9,pppppppuVar12[6],pppppppuVar12[7],pppppppuVar13);\n            }\n          }\n        }\n        return pppppppuVar9;\n      }\n      goto LAB_001c951c;\n    }\n    goto LAB_001c953c;\n  }" if (parenthesized_expression "(pppppppuVar12 == (undefined4 *******)0x0)" ( (binary_expression "pppppppuVar12 == (undefined4 *******)0x0" identifier == (cast_expression "(undefined4 *******)0x0" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n    iVar15 = *(int *)(pcVar21 + 0x1df588) + -0x26c8;\n    (**(code **)(pcVar21 + 0x1e02a4))\n              (*(int *)(pcVar21 + 0x1df584) + -0x37b0,*(int *)(pcVar21 + 0x1df588) + -0x288c,0x474,\n               iVar15);\nLAB_001c94fc:\n    iVar15 = iVar15 + -0x26c8;\n    (**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fc4) + -0x2850,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x478,\n               iVar15);\nLAB_001c951c:\n    iVar15 = iVar15 + -0x26c8;\n    (**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fd0) + 0x294c,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x47a,\n               iVar15);\n    pppppppuVar12 = pppppppuVar9;\nLAB_001c953c:\n    (**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fd0) + 0x1cac,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x479,\n               iVar15 + -0x26c8);\n  }" { (expression_statement "iVar15 = *(int *)(pcVar21 + 0x1df588) + -0x26c8;" (assignment_expression "iVar15 = *(int *)(pcVar21 + 0x1df588) + -0x26c8" identifier = (binary_expression "*(int *)(pcVar21 + 0x1df588) + -0x26c8" (pointer_expression "*(int *)(pcVar21 + 0x1df588)" * (cast_expression "(int *)(pcVar21 + 0x1df588)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0x1df588)" ( (binary_expression "pcVar21 + 0x1df588" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "(**(code **)(pcVar21 + 0x1e02a4))\n              (*(int *)(pcVar21 + 0x1df584) + -0x37b0,*(int *)(pcVar21 + 0x1df588) + -0x288c,0x474,\n               iVar15);" (call_expression "(**(code **)(pcVar21 + 0x1e02a4))\n              (*(int *)(pcVar21 + 0x1df584) + -0x37b0,*(int *)(pcVar21 + 0x1df588) + -0x288c,0x474,\n               iVar15)" (parenthesized_expression "(**(code **)(pcVar21 + 0x1e02a4))" ( (pointer_expression "**(code **)(pcVar21 + 0x1e02a4)" * (pointer_expression "*(code **)(pcVar21 + 0x1e02a4)" * (cast_expression "(code **)(pcVar21 + 0x1e02a4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0x1e02a4)" ( (binary_expression "pcVar21 + 0x1e02a4" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar21 + 0x1df584) + -0x37b0,*(int *)(pcVar21 + 0x1df588) + -0x288c,0x474,\n               iVar15)" ( (binary_expression "*(int *)(pcVar21 + 0x1df584) + -0x37b0" (pointer_expression "*(int *)(pcVar21 + 0x1df584)" * (cast_expression "(int *)(pcVar21 + 0x1df584)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0x1df584)" ( (binary_expression "pcVar21 + 0x1df584" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar21 + 0x1df588) + -0x288c" (pointer_expression "*(int *)(pcVar21 + 0x1df588)" * (cast_expression "(int *)(pcVar21 + 0x1df588)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0x1df588)" ( (binary_expression "pcVar21 + 0x1df588" identifier + number_literal) )))) + number_literal) , number_literal , identifier ))) ;) (labeled_statement "LAB_001c94fc:\n    iVar15 = iVar15 + -0x26c8;" statement_identifier : (expression_statement "iVar15 = iVar15 + -0x26c8;" (assignment_expression "iVar15 = iVar15 + -0x26c8" identifier = (binary_expression "iVar15 + -0x26c8" identifier + number_literal)) ;)) (expression_statement "(**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fc4) + -0x2850,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x478,\n               iVar15);" (call_expression "(**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fc4) + -0x2850,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x478,\n               iVar15)" (parenthesized_expression "(**(code **)(pcVar23 + -0x72a8))" ( (pointer_expression "**(code **)(pcVar23 + -0x72a8)" * (pointer_expression "*(code **)(pcVar23 + -0x72a8)" * (cast_expression "(code **)(pcVar23 + -0x72a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar23 + -0x72a8)" ( (binary_expression "pcVar23 + -0x72a8" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar23 + -0x7fc4) + -0x2850,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x478,\n               iVar15)" ( (binary_expression "*(int *)(pcVar23 + -0x7fc4) + -0x2850" (pointer_expression "*(int *)(pcVar23 + -0x7fc4)" * (cast_expression "(int *)(pcVar23 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar23 + -0x7fc4)" ( (binary_expression "pcVar23 + -0x7fc4" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar23 + -0x7fc4) + -0x288c" (pointer_expression "*(int *)(pcVar23 + -0x7fc4)" * (cast_expression "(int *)(pcVar23 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar23 + -0x7fc4)" ( (binary_expression "pcVar23 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , identifier ))) ;) (labeled_statement "LAB_001c951c:\n    iVar15 = iVar15 + -0x26c8;" statement_identifier : (expression_statement "iVar15 = iVar15 + -0x26c8;" (assignment_expression "iVar15 = iVar15 + -0x26c8" identifier = (binary_expression "iVar15 + -0x26c8" identifier + number_literal)) ;)) (expression_statement "(**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fd0) + 0x294c,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x47a,\n               iVar15);" (call_expression "(**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fd0) + 0x294c,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x47a,\n               iVar15)" (parenthesized_expression "(**(code **)(pcVar23 + -0x72a8))" ( (pointer_expression "**(code **)(pcVar23 + -0x72a8)" * (pointer_expression "*(code **)(pcVar23 + -0x72a8)" * (cast_expression "(code **)(pcVar23 + -0x72a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar23 + -0x72a8)" ( (binary_expression "pcVar23 + -0x72a8" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar23 + -0x7fd0) + 0x294c,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x47a,\n               iVar15)" ( (binary_expression "*(int *)(pcVar23 + -0x7fd0) + 0x294c" (pointer_expression "*(int *)(pcVar23 + -0x7fd0)" * (cast_expression "(int *)(pcVar23 + -0x7fd0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar23 + -0x7fd0)" ( (binary_expression "pcVar23 + -0x7fd0" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar23 + -0x7fc4) + -0x288c" (pointer_expression "*(int *)(pcVar23 + -0x7fc4)" * (cast_expression "(int *)(pcVar23 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar23 + -0x7fc4)" ( (binary_expression "pcVar23 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , identifier ))) ;) (expression_statement "pppppppuVar12 = pppppppuVar9;" (assignment_expression "pppppppuVar12 = pppppppuVar9" identifier = identifier) ;) (labeled_statement "LAB_001c953c:\n    (**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fd0) + 0x1cac,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x479,\n               iVar15 + -0x26c8);" statement_identifier : (expression_statement "(**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fd0) + 0x1cac,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x479,\n               iVar15 + -0x26c8);" (call_expression "(**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fd0) + 0x1cac,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x479,\n               iVar15 + -0x26c8)" (parenthesized_expression "(**(code **)(pcVar23 + -0x72a8))" ( (pointer_expression "**(code **)(pcVar23 + -0x72a8)" * (pointer_expression "*(code **)(pcVar23 + -0x72a8)" * (cast_expression "(code **)(pcVar23 + -0x72a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar23 + -0x72a8)" ( (binary_expression "pcVar23 + -0x72a8" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar23 + -0x7fd0) + 0x1cac,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x479,\n               iVar15 + -0x26c8)" ( (binary_expression "*(int *)(pcVar23 + -0x7fd0) + 0x1cac" (pointer_expression "*(int *)(pcVar23 + -0x7fd0)" * (cast_expression "(int *)(pcVar23 + -0x7fd0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar23 + -0x7fd0)" ( (binary_expression "pcVar23 + -0x7fd0" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar23 + -0x7fc4) + -0x288c" (pointer_expression "*(int *)(pcVar23 + -0x7fc4)" * (cast_expression "(int *)(pcVar23 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar23 + -0x7fc4)" ( (binary_expression "pcVar23 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "iVar15 + -0x26c8" identifier + number_literal) ))) ;)) }) (else_clause "else if (pppppppuVar12[0xcdb] == (undefined4 ******)0xabacadab) {\n    if (pppppppuVar12[0xcd4] != (undefined4 ******)0x0) {\n      pppppppuStack_194 = pppppppuVar12 + 0xd0;\n      ppppppuStack_198 = (undefined4 ******)(*(int *)(pcVar21 + 0x1df580) + -0x62ac);\n      (**(code **)(pcVar21 + 0x1dfe7c))\n                (0x8000,*(int *)(pcVar21 + 0x1df588) + -0x288c,\n                 *(int *)(pcVar21 + 0x1df588) + -0x26d4,0x477);\n    }\n    iVar15 = *(int *)(pcStack_188 + -0x7fc4);\n    pppppppuVar9 = pppppppuVar12;\n    param_1 = pppppppuVar13;\n    unaff_s2 = ppppppuVar2;\n    pcVar23 = pcStack_188;\n    if (pppppppuVar13 == (undefined4 *******)0x0) goto LAB_001c94fc;\n    if (ppppppuVar2 != (undefined4 ******)0x0) {\n      if (ppppppuVar2[7] == (undefined4 *****)0xabacadab) {\n        ppppppuStack_198 = ppppppuVar2;\n        pppppppuVar9 = (undefined4 *******)\n                       (**(code **)(pcStack_188 + -0x7080))\n                                 (pppppppuVar12,*pppppppuVar13,pppppppuVar13[1],1);\n        if (pppppppuVar9 != (undefined4 *******)0x0) {\n          iVar15 = (**(code **)(pcStack_188 + -0x7a20))(pppppppuVar9,ppppppuVar2);\n          if (iVar15 == 0) {\n            (**(code **)(pcStack_188 + -0x7964))(pppppppuVar9);\n            pppppppuVar9 = (undefined4 *******)0x0;\n          }\n          else {\n            pppppppuStack_194 = (undefined4 *******)-(int)pppppppuVar13[3];\n            ppppppuStack_198 = (undefined4 ******)-(int)pppppppuVar13[2];\n            ppppppuStack_190 = ppppppuVar2;\n            iVar15 = (**(code **)(pcStack_188 + -0x7bec))\n                               (pppppppuVar9,pppppppuVar12,pppppppuVar12[0x99],1);\n            if (iVar15 != 0) {\n              (**(code **)(pcStack_188 + -0x7d18))\n                        (pppppppuVar9,pppppppuVar12[6],pppppppuVar12[7],pppppppuVar13);\n            }\n          }\n        }\n        return pppppppuVar9;\n      }\n      goto LAB_001c951c;\n    }\n    goto LAB_001c953c;\n  }" else (if_statement "if (pppppppuVar12[0xcdb] == (undefined4 ******)0xabacadab) {\n    if (pppppppuVar12[0xcd4] != (undefined4 ******)0x0) {\n      pppppppuStack_194 = pppppppuVar12 + 0xd0;\n      ppppppuStack_198 = (undefined4 ******)(*(int *)(pcVar21 + 0x1df580) + -0x62ac);\n      (**(code **)(pcVar21 + 0x1dfe7c))\n                (0x8000,*(int *)(pcVar21 + 0x1df588) + -0x288c,\n                 *(int *)(pcVar21 + 0x1df588) + -0x26d4,0x477);\n    }\n    iVar15 = *(int *)(pcStack_188 + -0x7fc4);\n    pppppppuVar9 = pppppppuVar12;\n    param_1 = pppppppuVar13;\n    unaff_s2 = ppppppuVar2;\n    pcVar23 = pcStack_188;\n    if (pppppppuVar13 == (undefined4 *******)0x0) goto LAB_001c94fc;\n    if (ppppppuVar2 != (undefined4 ******)0x0) {\n      if (ppppppuVar2[7] == (undefined4 *****)0xabacadab) {\n        ppppppuStack_198 = ppppppuVar2;\n        pppppppuVar9 = (undefined4 *******)\n                       (**(code **)(pcStack_188 + -0x7080))\n                                 (pppppppuVar12,*pppppppuVar13,pppppppuVar13[1],1);\n        if (pppppppuVar9 != (undefined4 *******)0x0) {\n          iVar15 = (**(code **)(pcStack_188 + -0x7a20))(pppppppuVar9,ppppppuVar2);\n          if (iVar15 == 0) {\n            (**(code **)(pcStack_188 + -0x7964))(pppppppuVar9);\n            pppppppuVar9 = (undefined4 *******)0x0;\n          }\n          else {\n            pppppppuStack_194 = (undefined4 *******)-(int)pppppppuVar13[3];\n            ppppppuStack_198 = (undefined4 ******)-(int)pppppppuVar13[2];\n            ppppppuStack_190 = ppppppuVar2;\n            iVar15 = (**(code **)(pcStack_188 + -0x7bec))\n                               (pppppppuVar9,pppppppuVar12,pppppppuVar12[0x99],1);\n            if (iVar15 != 0) {\n              (**(code **)(pcStack_188 + -0x7d18))\n                        (pppppppuVar9,pppppppuVar12[6],pppppppuVar12[7],pppppppuVar13);\n            }\n          }\n        }\n        return pppppppuVar9;\n      }\n      goto LAB_001c951c;\n    }\n    goto LAB_001c953c;\n  }" if (parenthesized_expression "(pppppppuVar12[0xcdb] == (undefined4 ******)0xabacadab)" ( (binary_expression "pppppppuVar12[0xcdb] == (undefined4 ******)0xabacadab" (subscript_expression "pppppppuVar12[0xcdb]" identifier [ number_literal ]) == (cast_expression "(undefined4 ******)0xabacadab" ( (type_descriptor "undefined4 ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n    if (pppppppuVar12[0xcd4] != (undefined4 ******)0x0) {\n      pppppppuStack_194 = pppppppuVar12 + 0xd0;\n      ppppppuStack_198 = (undefined4 ******)(*(int *)(pcVar21 + 0x1df580) + -0x62ac);\n      (**(code **)(pcVar21 + 0x1dfe7c))\n                (0x8000,*(int *)(pcVar21 + 0x1df588) + -0x288c,\n                 *(int *)(pcVar21 + 0x1df588) + -0x26d4,0x477);\n    }\n    iVar15 = *(int *)(pcStack_188 + -0x7fc4);\n    pppppppuVar9 = pppppppuVar12;\n    param_1 = pppppppuVar13;\n    unaff_s2 = ppppppuVar2;\n    pcVar23 = pcStack_188;\n    if (pppppppuVar13 == (undefined4 *******)0x0) goto LAB_001c94fc;\n    if (ppppppuVar2 != (undefined4 ******)0x0) {\n      if (ppppppuVar2[7] == (undefined4 *****)0xabacadab) {\n        ppppppuStack_198 = ppppppuVar2;\n        pppppppuVar9 = (undefined4 *******)\n                       (**(code **)(pcStack_188 + -0x7080))\n                                 (pppppppuVar12,*pppppppuVar13,pppppppuVar13[1],1);\n        if (pppppppuVar9 != (undefined4 *******)0x0) {\n          iVar15 = (**(code **)(pcStack_188 + -0x7a20))(pppppppuVar9,ppppppuVar2);\n          if (iVar15 == 0) {\n            (**(code **)(pcStack_188 + -0x7964))(pppppppuVar9);\n            pppppppuVar9 = (undefined4 *******)0x0;\n          }\n          else {\n            pppppppuStack_194 = (undefined4 *******)-(int)pppppppuVar13[3];\n            ppppppuStack_198 = (undefined4 ******)-(int)pppppppuVar13[2];\n            ppppppuStack_190 = ppppppuVar2;\n            iVar15 = (**(code **)(pcStack_188 + -0x7bec))\n                               (pppppppuVar9,pppppppuVar12,pppppppuVar12[0x99],1);\n            if (iVar15 != 0) {\n              (**(code **)(pcStack_188 + -0x7d18))\n                        (pppppppuVar9,pppppppuVar12[6],pppppppuVar12[7],pppppppuVar13);\n            }\n          }\n        }\n        return pppppppuVar9;\n      }\n      goto LAB_001c951c;\n    }\n    goto LAB_001c953c;\n  }" { (if_statement "if (pppppppuVar12[0xcd4] != (undefined4 ******)0x0) {\n      pppppppuStack_194 = pppppppuVar12 + 0xd0;\n      ppppppuStack_198 = (undefined4 ******)(*(int *)(pcVar21 + 0x1df580) + -0x62ac);\n      (**(code **)(pcVar21 + 0x1dfe7c))\n                (0x8000,*(int *)(pcVar21 + 0x1df588) + -0x288c,\n                 *(int *)(pcVar21 + 0x1df588) + -0x26d4,0x477);\n    }" if (parenthesized_expression "(pppppppuVar12[0xcd4] != (undefined4 ******)0x0)" ( (binary_expression "pppppppuVar12[0xcd4] != (undefined4 ******)0x0" (subscript_expression "pppppppuVar12[0xcd4]" identifier [ number_literal ]) != (cast_expression "(undefined4 ******)0x0" ( (type_descriptor "undefined4 ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n      pppppppuStack_194 = pppppppuVar12 + 0xd0;\n      ppppppuStack_198 = (undefined4 ******)(*(int *)(pcVar21 + 0x1df580) + -0x62ac);\n      (**(code **)(pcVar21 + 0x1dfe7c))\n                (0x8000,*(int *)(pcVar21 + 0x1df588) + -0x288c,\n                 *(int *)(pcVar21 + 0x1df588) + -0x26d4,0x477);\n    }" { (expression_statement "pppppppuStack_194 = pppppppuVar12 + 0xd0;" (assignment_expression "pppppppuStack_194 = pppppppuVar12 + 0xd0" identifier = (binary_expression "pppppppuVar12 + 0xd0" identifier + number_literal)) ;) (expression_statement "ppppppuStack_198 = (undefined4 ******)(*(int *)(pcVar21 + 0x1df580) + -0x62ac);" (assignment_expression "ppppppuStack_198 = (undefined4 ******)(*(int *)(pcVar21 + 0x1df580) + -0x62ac)" identifier = (cast_expression "(undefined4 ******)(*(int *)(pcVar21 + 0x1df580) + -0x62ac)" ( (type_descriptor "undefined4 ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (parenthesized_expression "(*(int *)(pcVar21 + 0x1df580) + -0x62ac)" ( (binary_expression "*(int *)(pcVar21 + 0x1df580) + -0x62ac" (pointer_expression "*(int *)(pcVar21 + 0x1df580)" * (cast_expression "(int *)(pcVar21 + 0x1df580)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0x1df580)" ( (binary_expression "pcVar21 + 0x1df580" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "(**(code **)(pcVar21 + 0x1dfe7c))\n                (0x8000,*(int *)(pcVar21 + 0x1df588) + -0x288c,\n                 *(int *)(pcVar21 + 0x1df588) + -0x26d4,0x477);" (call_expression "(**(code **)(pcVar21 + 0x1dfe7c))\n                (0x8000,*(int *)(pcVar21 + 0x1df588) + -0x288c,\n                 *(int *)(pcVar21 + 0x1df588) + -0x26d4,0x477)" (parenthesized_expression "(**(code **)(pcVar21 + 0x1dfe7c))" ( (pointer_expression "**(code **)(pcVar21 + 0x1dfe7c)" * (pointer_expression "*(code **)(pcVar21 + 0x1dfe7c)" * (cast_expression "(code **)(pcVar21 + 0x1dfe7c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0x1dfe7c)" ( (binary_expression "pcVar21 + 0x1dfe7c" identifier + number_literal) ))))) )) (argument_list "(0x8000,*(int *)(pcVar21 + 0x1df588) + -0x288c,\n                 *(int *)(pcVar21 + 0x1df588) + -0x26d4,0x477)" ( number_literal , (binary_expression "*(int *)(pcVar21 + 0x1df588) + -0x288c" (pointer_expression "*(int *)(pcVar21 + 0x1df588)" * (cast_expression "(int *)(pcVar21 + 0x1df588)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0x1df588)" ( (binary_expression "pcVar21 + 0x1df588" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar21 + 0x1df588) + -0x26d4" (pointer_expression "*(int *)(pcVar21 + 0x1df588)" * (cast_expression "(int *)(pcVar21 + 0x1df588)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0x1df588)" ( (binary_expression "pcVar21 + 0x1df588" identifier + number_literal) )))) + number_literal) , number_literal ))) ;) })) (expression_statement "iVar15 = *(int *)(pcStack_188 + -0x7fc4);" (assignment_expression "iVar15 = *(int *)(pcStack_188 + -0x7fc4)" identifier = (pointer_expression "*(int *)(pcStack_188 + -0x7fc4)" * (cast_expression "(int *)(pcStack_188 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_188 + -0x7fc4)" ( (binary_expression "pcStack_188 + -0x7fc4" identifier + number_literal) ))))) ;) (expression_statement "pppppppuVar9 = pppppppuVar12;" (assignment_expression "pppppppuVar9 = pppppppuVar12" identifier = identifier) ;) (expression_statement "param_1 = pppppppuVar13;" (assignment_expression "param_1 = pppppppuVar13" identifier = identifier) ;) (expression_statement "unaff_s2 = ppppppuVar2;" (assignment_expression "unaff_s2 = ppppppuVar2" identifier = identifier) ;) (expression_statement "pcVar23 = pcStack_188;" (assignment_expression "pcVar23 = pcStack_188" identifier = identifier) ;) (if_statement "if (pppppppuVar13 == (undefined4 *******)0x0) goto LAB_001c94fc;" if (parenthesized_expression "(pppppppuVar13 == (undefined4 *******)0x0)" ( (binary_expression "pppppppuVar13 == (undefined4 *******)0x0" identifier == (cast_expression "(undefined4 *******)0x0" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (goto_statement "goto LAB_001c94fc;" goto statement_identifier ;)) (if_statement "if (ppppppuVar2 != (undefined4 ******)0x0) {\n      if (ppppppuVar2[7] == (undefined4 *****)0xabacadab) {\n        ppppppuStack_198 = ppppppuVar2;\n        pppppppuVar9 = (undefined4 *******)\n                       (**(code **)(pcStack_188 + -0x7080))\n                                 (pppppppuVar12,*pppppppuVar13,pppppppuVar13[1],1);\n        if (pppppppuVar9 != (undefined4 *******)0x0) {\n          iVar15 = (**(code **)(pcStack_188 + -0x7a20))(pppppppuVar9,ppppppuVar2);\n          if (iVar15 == 0) {\n            (**(code **)(pcStack_188 + -0x7964))(pppppppuVar9);\n            pppppppuVar9 = (undefined4 *******)0x0;\n          }\n          else {\n            pppppppuStack_194 = (undefined4 *******)-(int)pppppppuVar13[3];\n            ppppppuStack_198 = (undefined4 ******)-(int)pppppppuVar13[2];\n            ppppppuStack_190 = ppppppuVar2;\n            iVar15 = (**(code **)(pcStack_188 + -0x7bec))\n                               (pppppppuVar9,pppppppuVar12,pppppppuVar12[0x99],1);\n            if (iVar15 != 0) {\n              (**(code **)(pcStack_188 + -0x7d18))\n                        (pppppppuVar9,pppppppuVar12[6],pppppppuVar12[7],pppppppuVar13);\n            }\n          }\n        }\n        return pppppppuVar9;\n      }\n      goto LAB_001c951c;\n    }" if (parenthesized_expression "(ppppppuVar2 != (undefined4 ******)0x0)" ( (binary_expression "ppppppuVar2 != (undefined4 ******)0x0" identifier != (cast_expression "(undefined4 ******)0x0" ( (type_descriptor "undefined4 ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n      if (ppppppuVar2[7] == (undefined4 *****)0xabacadab) {\n        ppppppuStack_198 = ppppppuVar2;\n        pppppppuVar9 = (undefined4 *******)\n                       (**(code **)(pcStack_188 + -0x7080))\n                                 (pppppppuVar12,*pppppppuVar13,pppppppuVar13[1],1);\n        if (pppppppuVar9 != (undefined4 *******)0x0) {\n          iVar15 = (**(code **)(pcStack_188 + -0x7a20))(pppppppuVar9,ppppppuVar2);\n          if (iVar15 == 0) {\n            (**(code **)(pcStack_188 + -0x7964))(pppppppuVar9);\n            pppppppuVar9 = (undefined4 *******)0x0;\n          }\n          else {\n            pppppppuStack_194 = (undefined4 *******)-(int)pppppppuVar13[3];\n            ppppppuStack_198 = (undefined4 ******)-(int)pppppppuVar13[2];\n            ppppppuStack_190 = ppppppuVar2;\n            iVar15 = (**(code **)(pcStack_188 + -0x7bec))\n                               (pppppppuVar9,pppppppuVar12,pppppppuVar12[0x99],1);\n            if (iVar15 != 0) {\n              (**(code **)(pcStack_188 + -0x7d18))\n                        (pppppppuVar9,pppppppuVar12[6],pppppppuVar12[7],pppppppuVar13);\n            }\n          }\n        }\n        return pppppppuVar9;\n      }\n      goto LAB_001c951c;\n    }" { (if_statement "if (ppppppuVar2[7] == (undefined4 *****)0xabacadab) {\n        ppppppuStack_198 = ppppppuVar2;\n        pppppppuVar9 = (undefined4 *******)\n                       (**(code **)(pcStack_188 + -0x7080))\n                                 (pppppppuVar12,*pppppppuVar13,pppppppuVar13[1],1);\n        if (pppppppuVar9 != (undefined4 *******)0x0) {\n          iVar15 = (**(code **)(pcStack_188 + -0x7a20))(pppppppuVar9,ppppppuVar2);\n          if (iVar15 == 0) {\n            (**(code **)(pcStack_188 + -0x7964))(pppppppuVar9);\n            pppppppuVar9 = (undefined4 *******)0x0;\n          }\n          else {\n            pppppppuStack_194 = (undefined4 *******)-(int)pppppppuVar13[3];\n            ppppppuStack_198 = (undefined4 ******)-(int)pppppppuVar13[2];\n            ppppppuStack_190 = ppppppuVar2;\n            iVar15 = (**(code **)(pcStack_188 + -0x7bec))\n                               (pppppppuVar9,pppppppuVar12,pppppppuVar12[0x99],1);\n            if (iVar15 != 0) {\n              (**(code **)(pcStack_188 + -0x7d18))\n                        (pppppppuVar9,pppppppuVar12[6],pppppppuVar12[7],pppppppuVar13);\n            }\n          }\n        }\n        return pppppppuVar9;\n      }" if (parenthesized_expression "(ppppppuVar2[7] == (undefined4 *****)0xabacadab)" ( (binary_expression "ppppppuVar2[7] == (undefined4 *****)0xabacadab" (subscript_expression "ppppppuVar2[7]" identifier [ number_literal ]) == (cast_expression "(undefined4 *****)0xabacadab" ( (type_descriptor "undefined4 *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) )) (compound_statement "{\n        ppppppuStack_198 = ppppppuVar2;\n        pppppppuVar9 = (undefined4 *******)\n                       (**(code **)(pcStack_188 + -0x7080))\n                                 (pppppppuVar12,*pppppppuVar13,pppppppuVar13[1],1);\n        if (pppppppuVar9 != (undefined4 *******)0x0) {\n          iVar15 = (**(code **)(pcStack_188 + -0x7a20))(pppppppuVar9,ppppppuVar2);\n          if (iVar15 == 0) {\n            (**(code **)(pcStack_188 + -0x7964))(pppppppuVar9);\n            pppppppuVar9 = (undefined4 *******)0x0;\n          }\n          else {\n            pppppppuStack_194 = (undefined4 *******)-(int)pppppppuVar13[3];\n            ppppppuStack_198 = (undefined4 ******)-(int)pppppppuVar13[2];\n            ppppppuStack_190 = ppppppuVar2;\n            iVar15 = (**(code **)(pcStack_188 + -0x7bec))\n                               (pppppppuVar9,pppppppuVar12,pppppppuVar12[0x99],1);\n            if (iVar15 != 0) {\n              (**(code **)(pcStack_188 + -0x7d18))\n                        (pppppppuVar9,pppppppuVar12[6],pppppppuVar12[7],pppppppuVar13);\n            }\n          }\n        }\n        return pppppppuVar9;\n      }" { (expression_statement "ppppppuStack_198 = ppppppuVar2;" (assignment_expression "ppppppuStack_198 = ppppppuVar2" identifier = identifier) ;) (expression_statement "pppppppuVar9 = (undefined4 *******)\n                       (**(code **)(pcStack_188 + -0x7080))\n                                 (pppppppuVar12,*pppppppuVar13,pppppppuVar13[1],1);" (assignment_expression "pppppppuVar9 = (undefined4 *******)\n                       (**(code **)(pcStack_188 + -0x7080))\n                                 (pppppppuVar12,*pppppppuVar13,pppppppuVar13[1],1)" identifier = (cast_expression "(undefined4 *******)\n                       (**(code **)(pcStack_188 + -0x7080))\n                                 (pppppppuVar12,*pppppppuVar13,pppppppuVar13[1],1)" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(**(code **)(pcStack_188 + -0x7080))\n                                 (pppppppuVar12,*pppppppuVar13,pppppppuVar13[1],1)" (parenthesized_expression "(**(code **)(pcStack_188 + -0x7080))" ( (pointer_expression "**(code **)(pcStack_188 + -0x7080)" * (pointer_expression "*(code **)(pcStack_188 + -0x7080)" * (cast_expression "(code **)(pcStack_188 + -0x7080)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_188 + -0x7080)" ( (binary_expression "pcStack_188 + -0x7080" identifier + number_literal) ))))) )) (argument_list "(pppppppuVar12,*pppppppuVar13,pppppppuVar13[1],1)" ( identifier , (pointer_expression "*pppppppuVar13" * identifier) , (subscript_expression "pppppppuVar13[1]" identifier [ number_literal ]) , number_literal ))))) ;) (if_statement "if (pppppppuVar9 != (undefined4 *******)0x0) {\n          iVar15 = (**(code **)(pcStack_188 + -0x7a20))(pppppppuVar9,ppppppuVar2);\n          if (iVar15 == 0) {\n            (**(code **)(pcStack_188 + -0x7964))(pppppppuVar9);\n            pppppppuVar9 = (undefined4 *******)0x0;\n          }\n          else {\n            pppppppuStack_194 = (undefined4 *******)-(int)pppppppuVar13[3];\n            ppppppuStack_198 = (undefined4 ******)-(int)pppppppuVar13[2];\n            ppppppuStack_190 = ppppppuVar2;\n            iVar15 = (**(code **)(pcStack_188 + -0x7bec))\n                               (pppppppuVar9,pppppppuVar12,pppppppuVar12[0x99],1);\n            if (iVar15 != 0) {\n              (**(code **)(pcStack_188 + -0x7d18))\n                        (pppppppuVar9,pppppppuVar12[6],pppppppuVar12[7],pppppppuVar13);\n            }\n          }\n        }" if (parenthesized_expression "(pppppppuVar9 != (undefined4 *******)0x0)" ( (binary_expression "pppppppuVar9 != (undefined4 *******)0x0" identifier != (cast_expression "(undefined4 *******)0x0" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n          iVar15 = (**(code **)(pcStack_188 + -0x7a20))(pppppppuVar9,ppppppuVar2);\n          if (iVar15 == 0) {\n            (**(code **)(pcStack_188 + -0x7964))(pppppppuVar9);\n            pppppppuVar9 = (undefined4 *******)0x0;\n          }\n          else {\n            pppppppuStack_194 = (undefined4 *******)-(int)pppppppuVar13[3];\n            ppppppuStack_198 = (undefined4 ******)-(int)pppppppuVar13[2];\n            ppppppuStack_190 = ppppppuVar2;\n            iVar15 = (**(code **)(pcStack_188 + -0x7bec))\n                               (pppppppuVar9,pppppppuVar12,pppppppuVar12[0x99],1);\n            if (iVar15 != 0) {\n              (**(code **)(pcStack_188 + -0x7d18))\n                        (pppppppuVar9,pppppppuVar12[6],pppppppuVar12[7],pppppppuVar13);\n            }\n          }\n        }" { (expression_statement "iVar15 = (**(code **)(pcStack_188 + -0x7a20))(pppppppuVar9,ppppppuVar2);" (assignment_expression "iVar15 = (**(code **)(pcStack_188 + -0x7a20))(pppppppuVar9,ppppppuVar2)" identifier = (call_expression "(**(code **)(pcStack_188 + -0x7a20))(pppppppuVar9,ppppppuVar2)" (parenthesized_expression "(**(code **)(pcStack_188 + -0x7a20))" ( (pointer_expression "**(code **)(pcStack_188 + -0x7a20)" * (pointer_expression "*(code **)(pcStack_188 + -0x7a20)" * (cast_expression "(code **)(pcStack_188 + -0x7a20)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_188 + -0x7a20)" ( (binary_expression "pcStack_188 + -0x7a20" identifier + number_literal) ))))) )) (argument_list "(pppppppuVar9,ppppppuVar2)" ( identifier , identifier )))) ;) (if_statement "if (iVar15 == 0) {\n            (**(code **)(pcStack_188 + -0x7964))(pppppppuVar9);\n            pppppppuVar9 = (undefined4 *******)0x0;\n          }\n          else {\n            pppppppuStack_194 = (undefined4 *******)-(int)pppppppuVar13[3];\n            ppppppuStack_198 = (undefined4 ******)-(int)pppppppuVar13[2];\n            ppppppuStack_190 = ppppppuVar2;\n            iVar15 = (**(code **)(pcStack_188 + -0x7bec))\n                               (pppppppuVar9,pppppppuVar12,pppppppuVar12[0x99],1);\n            if (iVar15 != 0) {\n              (**(code **)(pcStack_188 + -0x7d18))\n                        (pppppppuVar9,pppppppuVar12[6],pppppppuVar12[7],pppppppuVar13);\n            }\n          }" if (parenthesized_expression "(iVar15 == 0)" ( (binary_expression "iVar15 == 0" identifier == number_literal) )) (compound_statement "{\n            (**(code **)(pcStack_188 + -0x7964))(pppppppuVar9);\n            pppppppuVar9 = (undefined4 *******)0x0;\n          }" { (expression_statement "(**(code **)(pcStack_188 + -0x7964))(pppppppuVar9);" (call_expression "(**(code **)(pcStack_188 + -0x7964))(pppppppuVar9)" (parenthesized_expression "(**(code **)(pcStack_188 + -0x7964))" ( (pointer_expression "**(code **)(pcStack_188 + -0x7964)" * (pointer_expression "*(code **)(pcStack_188 + -0x7964)" * (cast_expression "(code **)(pcStack_188 + -0x7964)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_188 + -0x7964)" ( (binary_expression "pcStack_188 + -0x7964" identifier + number_literal) ))))) )) (argument_list "(pppppppuVar9)" ( identifier ))) ;) (expression_statement "pppppppuVar9 = (undefined4 *******)0x0;" (assignment_expression "pppppppuVar9 = (undefined4 *******)0x0" identifier = (cast_expression "(undefined4 *******)0x0" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) }) (else_clause "else {\n            pppppppuStack_194 = (undefined4 *******)-(int)pppppppuVar13[3];\n            ppppppuStack_198 = (undefined4 ******)-(int)pppppppuVar13[2];\n            ppppppuStack_190 = ppppppuVar2;\n            iVar15 = (**(code **)(pcStack_188 + -0x7bec))\n                               (pppppppuVar9,pppppppuVar12,pppppppuVar12[0x99],1);\n            if (iVar15 != 0) {\n              (**(code **)(pcStack_188 + -0x7d18))\n                        (pppppppuVar9,pppppppuVar12[6],pppppppuVar12[7],pppppppuVar13);\n            }\n          }" else (compound_statement "{\n            pppppppuStack_194 = (undefined4 *******)-(int)pppppppuVar13[3];\n            ppppppuStack_198 = (undefined4 ******)-(int)pppppppuVar13[2];\n            ppppppuStack_190 = ppppppuVar2;\n            iVar15 = (**(code **)(pcStack_188 + -0x7bec))\n                               (pppppppuVar9,pppppppuVar12,pppppppuVar12[0x99],1);\n            if (iVar15 != 0) {\n              (**(code **)(pcStack_188 + -0x7d18))\n                        (pppppppuVar9,pppppppuVar12[6],pppppppuVar12[7],pppppppuVar13);\n            }\n          }" { (expression_statement "pppppppuStack_194 = (undefined4 *******)-(int)pppppppuVar13[3];" (assignment_expression "pppppppuStack_194 = (undefined4 *******)-(int)pppppppuVar13[3]" identifier = (cast_expression "(undefined4 *******)-(int)pppppppuVar13[3]" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (unary_expression "-(int)pppppppuVar13[3]" - (cast_expression "(int)pppppppuVar13[3]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "pppppppuVar13[3]" identifier [ number_literal ]))))) ;) (expression_statement "ppppppuStack_198 = (undefined4 ******)-(int)pppppppuVar13[2];" (assignment_expression "ppppppuStack_198 = (undefined4 ******)-(int)pppppppuVar13[2]" identifier = (cast_expression "(undefined4 ******)-(int)pppppppuVar13[2]" ( (type_descriptor "undefined4 ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (unary_expression "-(int)pppppppuVar13[2]" - (cast_expression "(int)pppppppuVar13[2]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "pppppppuVar13[2]" identifier [ number_literal ]))))) ;) (expression_statement "ppppppuStack_190 = ppppppuVar2;" (assignment_expression "ppppppuStack_190 = ppppppuVar2" identifier = identifier) ;) (expression_statement "iVar15 = (**(code **)(pcStack_188 + -0x7bec))\n                               (pppppppuVar9,pppppppuVar12,pppppppuVar12[0x99],1);" (assignment_expression "iVar15 = (**(code **)(pcStack_188 + -0x7bec))\n                               (pppppppuVar9,pppppppuVar12,pppppppuVar12[0x99],1)" identifier = (call_expression "(**(code **)(pcStack_188 + -0x7bec))\n                               (pppppppuVar9,pppppppuVar12,pppppppuVar12[0x99],1)" (parenthesized_expression "(**(code **)(pcStack_188 + -0x7bec))" ( (pointer_expression "**(code **)(pcStack_188 + -0x7bec)" * (pointer_expression "*(code **)(pcStack_188 + -0x7bec)" * (cast_expression "(code **)(pcStack_188 + -0x7bec)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_188 + -0x7bec)" ( (binary_expression "pcStack_188 + -0x7bec" identifier + number_literal) ))))) )) (argument_list "(pppppppuVar9,pppppppuVar12,pppppppuVar12[0x99],1)" ( identifier , identifier , (subscript_expression "pppppppuVar12[0x99]" identifier [ number_literal ]) , number_literal )))) ;) (if_statement "if (iVar15 != 0) {\n              (**(code **)(pcStack_188 + -0x7d18))\n                        (pppppppuVar9,pppppppuVar12[6],pppppppuVar12[7],pppppppuVar13);\n            }" if (parenthesized_expression "(iVar15 != 0)" ( (binary_expression "iVar15 != 0" identifier != number_literal) )) (compound_statement "{\n              (**(code **)(pcStack_188 + -0x7d18))\n                        (pppppppuVar9,pppppppuVar12[6],pppppppuVar12[7],pppppppuVar13);\n            }" { (expression_statement "(**(code **)(pcStack_188 + -0x7d18))\n                        (pppppppuVar9,pppppppuVar12[6],pppppppuVar12[7],pppppppuVar13);" (call_expression "(**(code **)(pcStack_188 + -0x7d18))\n                        (pppppppuVar9,pppppppuVar12[6],pppppppuVar12[7],pppppppuVar13)" (parenthesized_expression "(**(code **)(pcStack_188 + -0x7d18))" ( (pointer_expression "**(code **)(pcStack_188 + -0x7d18)" * (pointer_expression "*(code **)(pcStack_188 + -0x7d18)" * (cast_expression "(code **)(pcStack_188 + -0x7d18)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_188 + -0x7d18)" ( (binary_expression "pcStack_188 + -0x7d18" identifier + number_literal) ))))) )) (argument_list "(pppppppuVar9,pppppppuVar12[6],pppppppuVar12[7],pppppppuVar13)" ( identifier , (subscript_expression "pppppppuVar12[6]" identifier [ number_literal ]) , (subscript_expression "pppppppuVar12[7]" identifier [ number_literal ]) , identifier ))) ;) })) }))) })) (return_statement "return pppppppuVar9;" return identifier ;) })) (goto_statement "goto LAB_001c951c;" goto statement_identifier ;) })) (goto_statement "goto LAB_001c953c;" goto statement_identifier ;) })))) (expression_statement "pcVar21 = *(code **)(pcVar23 + -0x72a8);" (assignment_expression "pcVar21 = *(code **)(pcVar23 + -0x72a8)" identifier = (pointer_expression "*(code **)(pcVar23 + -0x72a8)" * (cast_expression "(code **)(pcVar23 + -0x72a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar23 + -0x72a8)" ( (binary_expression "pcVar23 + -0x72a8" identifier + number_literal) ))))) ;) (expression_statement "pppppppuVar9 = (undefined4 *******)(*(int *)(pcVar23 + -0x7fc4) + -0x288c);" (assignment_expression "pppppppuVar9 = (undefined4 *******)(*(int *)(pcVar23 + -0x7fc4) + -0x288c)" identifier = (cast_expression "(undefined4 *******)(*(int *)(pcVar23 + -0x7fc4) + -0x288c)" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(*(int *)(pcVar23 + -0x7fc4) + -0x288c)" ( (binary_expression "*(int *)(pcVar23 + -0x7fc4) + -0x288c" (pointer_expression "*(int *)(pcVar23 + -0x7fc4)" * (cast_expression "(int *)(pcVar23 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar23 + -0x7fc4)" ( (binary_expression "pcVar23 + -0x7fc4" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "pcVar24 = FlipImage;" (assignment_expression "pcVar24 = FlipImage" identifier = identifier) ;) (expression_statement "pppppppuVar13 = (undefined4 *******)(*(int *)(pcVar23 + -0x7fc8) + -0x3784);" (assignment_expression "pppppppuVar13 = (undefined4 *******)(*(int *)(pcVar23 + -0x7fc8) + -0x3784)" identifier = (cast_expression "(undefined4 *******)(*(int *)(pcVar23 + -0x7fc8) + -0x3784)" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(*(int *)(pcVar23 + -0x7fc8) + -0x3784)" ( (binary_expression "*(int *)(pcVar23 + -0x7fc8) + -0x3784" (pointer_expression "*(int *)(pcVar23 + -0x7fc8)" * (cast_expression "(int *)(pcVar23 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar23 + -0x7fc8)" ( (binary_expression "pcVar23 + -0x7fc8" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "(*pcVar21)(pppppppuVar13,pppppppuVar9,0x475,*(int *)(pcVar23 + -0x7fc4) + -0x26c8);" (call_expression "(*pcVar21)(pppppppuVar13,pppppppuVar9,0x475,*(int *)(pcVar23 + -0x7fc4) + -0x26c8)" (parenthesized_expression "(*pcVar21)" ( (pointer_expression "*pcVar21" * identifier) )) (argument_list "(pppppppuVar13,pppppppuVar9,0x475,*(int *)(pcVar23 + -0x7fc4) + -0x26c8)" ( identifier , identifier , number_literal , (binary_expression "*(int *)(pcVar23 + -0x7fc4) + -0x26c8" (pointer_expression "*(int *)(pcVar23 + -0x7fc4)" * (cast_expression "(int *)(pcVar23 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar23 + -0x7fc4)" ( (binary_expression "pcVar23 + -0x7fc4" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "pcVar23 = pcVar21 + 0x1e7330;" (assignment_expression "pcVar23 = pcVar21 + 0x1e7330" identifier = (binary_expression "pcVar21 + 0x1e7330" identifier + number_literal)) ;) (expression_statement "piVar16 = *(int **)(pcVar21 + 0x1dfcb0);" (assignment_expression "piVar16 = *(int **)(pcVar21 + 0x1dfcb0)" identifier = (pointer_expression "*(int **)(pcVar21 + 0x1dfcb0)" * (cast_expression "(int **)(pcVar21 + 0x1dfcb0)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0x1dfcb0)" ( (binary_expression "pcVar21 + 0x1dfcb0" identifier + number_literal) ))))) ;) (expression_statement "iStack_1d4 = *piVar16;" (assignment_expression "iStack_1d4 = *piVar16" identifier = (pointer_expression "*piVar16" * identifier)) ;) (expression_statement "pcStack_208 = pcVar23;" (assignment_expression "pcStack_208 = pcVar23" identifier = identifier) ;) (expression_statement "pppppppuStack_1d0 = pppppppuVar12;" (assignment_expression "pppppppuStack_1d0 = pppppppuVar12" identifier = identifier) ;) (expression_statement "pppppppuStack_1cc = param_1;" (assignment_expression "pppppppuStack_1cc = param_1" identifier = identifier) ;) (expression_statement "ppppppuStack_1c8 = unaff_s2;" (assignment_expression "ppppppuStack_1c8 = unaff_s2" identifier = identifier) ;) (expression_statement "pppppppuStack_1c4 = unaff_s3;" (assignment_expression "pppppppuStack_1c4 = unaff_s3" identifier = identifier) ;) (expression_statement "piStack_1c0 = piVar18;" (assignment_expression "piStack_1c0 = piVar18" identifier = identifier) ;) (expression_statement "pppppppuStack_1bc = unaff_s5;" (assignment_expression "pppppppuStack_1bc = unaff_s5" identifier = identifier) ;) (expression_statement "pppppppuStack_1b8 = unaff_s6;" (assignment_expression "pppppppuStack_1b8 = unaff_s6" identifier = identifier) ;) (expression_statement "pppppppuStack_1b4 = unaff_s7;" (assignment_expression "pppppppuStack_1b4 = unaff_s7" identifier = identifier) ;) (expression_statement "pppppppuStack_1b0 = unaff_s8;" (assignment_expression "pppppppuStack_1b0 = unaff_s8" identifier = identifier) ;) (expression_statement "pcStack_1ac = pcVar24;" (assignment_expression "pcStack_1ac = pcVar24" identifier = identifier) ;) (if_statement "if (pppppppuVar13 == (undefined4 *******)0x0) {\n    (**(code **)(pcVar21 + 0x1e0088))\n              (*(int *)(pcVar21 + 0x1df368) + -0x37b0,*(int *)(pcVar21 + 0x1df36c) + -0x288c,0x4bc,\n               *(int *)(pcVar21 + 0x1df36c) + -0x26e0);\n    pppppppuVar9 = param_1;\nLAB_001c9944:\n    (**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fd0) + 0x1cac,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x4c0,\n               *(int *)(pcVar23 + -0x7fc4) + -0x26e0);\nLAB_001c9968:\n    (**(code **)(pcVar23 + -0x784c))();\n    pppppppuVar13 = unaff_s7;\nLAB_001c9974:\n    (**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fd0) + 0x294c,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x4c1,\n               *(int *)(pcVar23 + -0x7fc4) + -0x26e0);\n    pppppppuStack_244 = pppppppuVar9;\n  }\n  else {\n    pppppppuStack_244 = param_1;\n    if (pppppppuVar13[0xcdb] == (undefined4 ******)0xabacadab) {\n      if (pppppppuVar13[0xcd4] != (undefined4 ******)0x0) {\n        pppppppuStack_20c = pppppppuVar13 + 0xd0;\n        pppppppuStack_210 = (undefined4 *******)(*(int *)(pcVar21 + 0x1df364) + -0x62ac);\n        (**(code **)(pcVar21 + 0x1dfc60))\n                  (0x8000,*(int *)(pcVar21 + 0x1df36c) + -0x288c,\n                   *(int *)(pcVar21 + 0x1df36c) + -0x26ec,0x4bf);\n      }\n      unaff_s7 = pppppppuVar13;\n      pcVar23 = pcStack_208;\n      if (pppppppuVar9 == (undefined4 *******)0x0) goto LAB_001c9944;\n      if (pppppppuVar9[7] == (undefined4 ******)0xabacadab) {\n        pppppppuStack_210 = pppppppuVar9;\n        pppppppuVar12 =\n             (undefined4 *******)(**(code **)(pcStack_208 + -0x7080))(pppppppuVar13,0,0,1);\n        if (pppppppuVar12 != (undefined4 *******)0x0) {\n          ppppppuStack_1fc = pppppppuVar13[0x8c];\n          unaff_s8 = (undefined4 *******)pppppppuVar13[0x8a];\n          unaff_s2 = pppppppuVar13[0x8b];\n          unaff_s6 = (undefined4 *******)pppppppuVar13[0x8d];\n          uStack_1f4 = 0;\n          uStack_1f8 = 0;\n          piVar18 = (int *)(**(code **)(pcStack_208 + -0x715c))(pppppppuVar13,pppppppuVar9);\n          unaff_s5 = (undefined4 *******)\n                     (**(code **)(pcStack_208 + -0x79dc))(pppppppuVar12,pppppppuVar9);\n          iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13);\n          if (((iVar15 == 4) ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13), iVar15 == 3)) &&\n             ((iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 4 ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 3)))) {\n            (**(code **)(pcStack_208 + -0x7774))(7);\n            ppppppuVar2 = pppppppuVar12[7];\n            if ((int)ppppppuVar2 < 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_03 < (int)ppppppuVar2 + 0x3f >> 6) goto LAB_001c98d4;\nLAB_001c981c:\n              bVar1 = (int)ppppppuVar2 < 0x80;\n            }\n            else {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if ((int)ppppppuVar2 >> 6 <= extraout_v1_03) goto LAB_001c981c;\nLAB_001c98d4:\n              (*pcVar23)(7);\n              bVar1 = extraout_v1_05 < 2;\n            }\n            iVar15 = 1;\n            if ((bool)(bVar1 ^ 1)) {\n              (**(code **)(pcStack_208 + -0x7774))(7);\n              ppppppuVar2 = pppppppuVar12[7];\n              if ((int)ppppppuVar2 < 0) {\n                ppppppuVar2 = (undefined4 ******)((int)ppppppuVar2 + 0x3f);\n              }\n              iVar15 = (int)ppppppuVar2 >> 6;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_06 < iVar15) {\nLAB_001c98ac:\n                (*pcVar23)(7);\n                iVar15 = extraout_v1_04;\n              }\n              goto LAB_001c96d8;\n            }\n            iVar14 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          else {\n            uVar36 = (**(code **)(pcStack_208 + -0x7774))(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              uVar36 = (*pcVar23)(7);\n              if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c96c0;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              iVar15 = 1;\n            }\n            else {\nLAB_001c96c0:\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\nLAB_001c96c4:\n              uVar36 = (*pcVar23)(7);\n              if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n                 (pcVar23 = *(code **)(pcStack_208 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c98ac;\n              iVar15 = 2;\n            }\nLAB_001c96d8:\n            iVar14 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          puStack_1dc = &uStack_1f8;\n          pppppppuStack_1d8 = (undefined4 *******)0x1;\n          pppppppuStack_1f0 = pppppppuVar13;\n          pppppppuStack_1ec = pppppppuVar9;\n          pppppppuStack_1e8 = unaff_s5;\n          piStack_1e4 = piVar18;\n          pppppppuStack_1e0 = pppppppuVar12;\n          (**(code **)(pcStack_208 + -0x7718))(iVar14 + 0x56bc,&pppppppuStack_1f0,iVar15,0);\n          pppppppuVar9 = pppppppuStack_1d8;\n          (**(code **)(pcStack_208 + -0x79bc))(unaff_s5);\n          (**(code **)(pcStack_208 + -0x79bc))(piVar18);\n          pppppppuVar12[0xa8] = pppppppuVar13[0xa8];\n          if (unaff_s2 != (undefined4 ******)0x0) {\n            unaff_s6 = (undefined4 *******)\n                       ((int)unaff_s2 + (-(int)unaff_s6 - (int)pppppppuVar12[7]));\n          }\n          pppppppuVar12[0x8a] = unaff_s8;\n          pppppppuVar12[0x8b] = unaff_s2;\n          pppppppuVar12[0x8c] = ppppppuStack_1fc;\n          pppppppuVar12[0x8d] = unaff_s6;\n          if (pppppppuVar9 == (undefined4 *******)0x0) {\n            pppppppuVar12 = (undefined4 *******)(**(code **)(pcStack_208 + -0x7964))(pppppppuVar12);\n          }\n        }\n        pcVar23 = pcStack_208;\n        if (iStack_1d4 == *piVar16) {\n          return pppppppuVar12;\n        }\n        goto LAB_001c9968;\n      }\n      goto LAB_001c9974;\n    }\n  }" if (parenthesized_expression "(pppppppuVar13 == (undefined4 *******)0x0)" ( (binary_expression "pppppppuVar13 == (undefined4 *******)0x0" identifier == (cast_expression "(undefined4 *******)0x0" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n    (**(code **)(pcVar21 + 0x1e0088))\n              (*(int *)(pcVar21 + 0x1df368) + -0x37b0,*(int *)(pcVar21 + 0x1df36c) + -0x288c,0x4bc,\n               *(int *)(pcVar21 + 0x1df36c) + -0x26e0);\n    pppppppuVar9 = param_1;\nLAB_001c9944:\n    (**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fd0) + 0x1cac,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x4c0,\n               *(int *)(pcVar23 + -0x7fc4) + -0x26e0);\nLAB_001c9968:\n    (**(code **)(pcVar23 + -0x784c))();\n    pppppppuVar13 = unaff_s7;\nLAB_001c9974:\n    (**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fd0) + 0x294c,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x4c1,\n               *(int *)(pcVar23 + -0x7fc4) + -0x26e0);\n    pppppppuStack_244 = pppppppuVar9;\n  }" { (expression_statement "(**(code **)(pcVar21 + 0x1e0088))\n              (*(int *)(pcVar21 + 0x1df368) + -0x37b0,*(int *)(pcVar21 + 0x1df36c) + -0x288c,0x4bc,\n               *(int *)(pcVar21 + 0x1df36c) + -0x26e0);" (call_expression "(**(code **)(pcVar21 + 0x1e0088))\n              (*(int *)(pcVar21 + 0x1df368) + -0x37b0,*(int *)(pcVar21 + 0x1df36c) + -0x288c,0x4bc,\n               *(int *)(pcVar21 + 0x1df36c) + -0x26e0)" (parenthesized_expression "(**(code **)(pcVar21 + 0x1e0088))" ( (pointer_expression "**(code **)(pcVar21 + 0x1e0088)" * (pointer_expression "*(code **)(pcVar21 + 0x1e0088)" * (cast_expression "(code **)(pcVar21 + 0x1e0088)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0x1e0088)" ( (binary_expression "pcVar21 + 0x1e0088" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar21 + 0x1df368) + -0x37b0,*(int *)(pcVar21 + 0x1df36c) + -0x288c,0x4bc,\n               *(int *)(pcVar21 + 0x1df36c) + -0x26e0)" ( (binary_expression "*(int *)(pcVar21 + 0x1df368) + -0x37b0" (pointer_expression "*(int *)(pcVar21 + 0x1df368)" * (cast_expression "(int *)(pcVar21 + 0x1df368)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0x1df368)" ( (binary_expression "pcVar21 + 0x1df368" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar21 + 0x1df36c) + -0x288c" (pointer_expression "*(int *)(pcVar21 + 0x1df36c)" * (cast_expression "(int *)(pcVar21 + 0x1df36c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0x1df36c)" ( (binary_expression "pcVar21 + 0x1df36c" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar21 + 0x1df36c) + -0x26e0" (pointer_expression "*(int *)(pcVar21 + 0x1df36c)" * (cast_expression "(int *)(pcVar21 + 0x1df36c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0x1df36c)" ( (binary_expression "pcVar21 + 0x1df36c" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "pppppppuVar9 = param_1;" (assignment_expression "pppppppuVar9 = param_1" identifier = identifier) ;) (labeled_statement "LAB_001c9944:\n    (**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fd0) + 0x1cac,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x4c0,\n               *(int *)(pcVar23 + -0x7fc4) + -0x26e0);" statement_identifier : (expression_statement "(**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fd0) + 0x1cac,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x4c0,\n               *(int *)(pcVar23 + -0x7fc4) + -0x26e0);" (call_expression "(**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fd0) + 0x1cac,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x4c0,\n               *(int *)(pcVar23 + -0x7fc4) + -0x26e0)" (parenthesized_expression "(**(code **)(pcVar23 + -0x72a8))" ( (pointer_expression "**(code **)(pcVar23 + -0x72a8)" * (pointer_expression "*(code **)(pcVar23 + -0x72a8)" * (cast_expression "(code **)(pcVar23 + -0x72a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar23 + -0x72a8)" ( (binary_expression "pcVar23 + -0x72a8" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar23 + -0x7fd0) + 0x1cac,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x4c0,\n               *(int *)(pcVar23 + -0x7fc4) + -0x26e0)" ( (binary_expression "*(int *)(pcVar23 + -0x7fd0) + 0x1cac" (pointer_expression "*(int *)(pcVar23 + -0x7fd0)" * (cast_expression "(int *)(pcVar23 + -0x7fd0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar23 + -0x7fd0)" ( (binary_expression "pcVar23 + -0x7fd0" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar23 + -0x7fc4) + -0x288c" (pointer_expression "*(int *)(pcVar23 + -0x7fc4)" * (cast_expression "(int *)(pcVar23 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar23 + -0x7fc4)" ( (binary_expression "pcVar23 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar23 + -0x7fc4) + -0x26e0" (pointer_expression "*(int *)(pcVar23 + -0x7fc4)" * (cast_expression "(int *)(pcVar23 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar23 + -0x7fc4)" ( (binary_expression "pcVar23 + -0x7fc4" identifier + number_literal) )))) + number_literal) ))) ;)) (labeled_statement "LAB_001c9968:\n    (**(code **)(pcVar23 + -0x784c))();" statement_identifier : (expression_statement "(**(code **)(pcVar23 + -0x784c))();" (call_expression "(**(code **)(pcVar23 + -0x784c))()" (parenthesized_expression "(**(code **)(pcVar23 + -0x784c))" ( (pointer_expression "**(code **)(pcVar23 + -0x784c)" * (pointer_expression "*(code **)(pcVar23 + -0x784c)" * (cast_expression "(code **)(pcVar23 + -0x784c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar23 + -0x784c)" ( (binary_expression "pcVar23 + -0x784c" identifier + number_literal) ))))) )) (argument_list "()" ( ))) ;)) (expression_statement "pppppppuVar13 = unaff_s7;" (assignment_expression "pppppppuVar13 = unaff_s7" identifier = identifier) ;) (labeled_statement "LAB_001c9974:\n    (**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fd0) + 0x294c,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x4c1,\n               *(int *)(pcVar23 + -0x7fc4) + -0x26e0);" statement_identifier : (expression_statement "(**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fd0) + 0x294c,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x4c1,\n               *(int *)(pcVar23 + -0x7fc4) + -0x26e0);" (call_expression "(**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fd0) + 0x294c,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x4c1,\n               *(int *)(pcVar23 + -0x7fc4) + -0x26e0)" (parenthesized_expression "(**(code **)(pcVar23 + -0x72a8))" ( (pointer_expression "**(code **)(pcVar23 + -0x72a8)" * (pointer_expression "*(code **)(pcVar23 + -0x72a8)" * (cast_expression "(code **)(pcVar23 + -0x72a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar23 + -0x72a8)" ( (binary_expression "pcVar23 + -0x72a8" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar23 + -0x7fd0) + 0x294c,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x4c1,\n               *(int *)(pcVar23 + -0x7fc4) + -0x26e0)" ( (binary_expression "*(int *)(pcVar23 + -0x7fd0) + 0x294c" (pointer_expression "*(int *)(pcVar23 + -0x7fd0)" * (cast_expression "(int *)(pcVar23 + -0x7fd0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar23 + -0x7fd0)" ( (binary_expression "pcVar23 + -0x7fd0" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar23 + -0x7fc4) + -0x288c" (pointer_expression "*(int *)(pcVar23 + -0x7fc4)" * (cast_expression "(int *)(pcVar23 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar23 + -0x7fc4)" ( (binary_expression "pcVar23 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar23 + -0x7fc4) + -0x26e0" (pointer_expression "*(int *)(pcVar23 + -0x7fc4)" * (cast_expression "(int *)(pcVar23 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar23 + -0x7fc4)" ( (binary_expression "pcVar23 + -0x7fc4" identifier + number_literal) )))) + number_literal) ))) ;)) (expression_statement "pppppppuStack_244 = pppppppuVar9;" (assignment_expression "pppppppuStack_244 = pppppppuVar9" identifier = identifier) ;) }) (else_clause "else {\n    pppppppuStack_244 = param_1;\n    if (pppppppuVar13[0xcdb] == (undefined4 ******)0xabacadab) {\n      if (pppppppuVar13[0xcd4] != (undefined4 ******)0x0) {\n        pppppppuStack_20c = pppppppuVar13 + 0xd0;\n        pppppppuStack_210 = (undefined4 *******)(*(int *)(pcVar21 + 0x1df364) + -0x62ac);\n        (**(code **)(pcVar21 + 0x1dfc60))\n                  (0x8000,*(int *)(pcVar21 + 0x1df36c) + -0x288c,\n                   *(int *)(pcVar21 + 0x1df36c) + -0x26ec,0x4bf);\n      }\n      unaff_s7 = pppppppuVar13;\n      pcVar23 = pcStack_208;\n      if (pppppppuVar9 == (undefined4 *******)0x0) goto LAB_001c9944;\n      if (pppppppuVar9[7] == (undefined4 ******)0xabacadab) {\n        pppppppuStack_210 = pppppppuVar9;\n        pppppppuVar12 =\n             (undefined4 *******)(**(code **)(pcStack_208 + -0x7080))(pppppppuVar13,0,0,1);\n        if (pppppppuVar12 != (undefined4 *******)0x0) {\n          ppppppuStack_1fc = pppppppuVar13[0x8c];\n          unaff_s8 = (undefined4 *******)pppppppuVar13[0x8a];\n          unaff_s2 = pppppppuVar13[0x8b];\n          unaff_s6 = (undefined4 *******)pppppppuVar13[0x8d];\n          uStack_1f4 = 0;\n          uStack_1f8 = 0;\n          piVar18 = (int *)(**(code **)(pcStack_208 + -0x715c))(pppppppuVar13,pppppppuVar9);\n          unaff_s5 = (undefined4 *******)\n                     (**(code **)(pcStack_208 + -0x79dc))(pppppppuVar12,pppppppuVar9);\n          iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13);\n          if (((iVar15 == 4) ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13), iVar15 == 3)) &&\n             ((iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 4 ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 3)))) {\n            (**(code **)(pcStack_208 + -0x7774))(7);\n            ppppppuVar2 = pppppppuVar12[7];\n            if ((int)ppppppuVar2 < 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_03 < (int)ppppppuVar2 + 0x3f >> 6) goto LAB_001c98d4;\nLAB_001c981c:\n              bVar1 = (int)ppppppuVar2 < 0x80;\n            }\n            else {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if ((int)ppppppuVar2 >> 6 <= extraout_v1_03) goto LAB_001c981c;\nLAB_001c98d4:\n              (*pcVar23)(7);\n              bVar1 = extraout_v1_05 < 2;\n            }\n            iVar15 = 1;\n            if ((bool)(bVar1 ^ 1)) {\n              (**(code **)(pcStack_208 + -0x7774))(7);\n              ppppppuVar2 = pppppppuVar12[7];\n              if ((int)ppppppuVar2 < 0) {\n                ppppppuVar2 = (undefined4 ******)((int)ppppppuVar2 + 0x3f);\n              }\n              iVar15 = (int)ppppppuVar2 >> 6;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_06 < iVar15) {\nLAB_001c98ac:\n                (*pcVar23)(7);\n                iVar15 = extraout_v1_04;\n              }\n              goto LAB_001c96d8;\n            }\n            iVar14 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          else {\n            uVar36 = (**(code **)(pcStack_208 + -0x7774))(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              uVar36 = (*pcVar23)(7);\n              if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c96c0;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              iVar15 = 1;\n            }\n            else {\nLAB_001c96c0:\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\nLAB_001c96c4:\n              uVar36 = (*pcVar23)(7);\n              if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n                 (pcVar23 = *(code **)(pcStack_208 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c98ac;\n              iVar15 = 2;\n            }\nLAB_001c96d8:\n            iVar14 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          puStack_1dc = &uStack_1f8;\n          pppppppuStack_1d8 = (undefined4 *******)0x1;\n          pppppppuStack_1f0 = pppppppuVar13;\n          pppppppuStack_1ec = pppppppuVar9;\n          pppppppuStack_1e8 = unaff_s5;\n          piStack_1e4 = piVar18;\n          pppppppuStack_1e0 = pppppppuVar12;\n          (**(code **)(pcStack_208 + -0x7718))(iVar14 + 0x56bc,&pppppppuStack_1f0,iVar15,0);\n          pppppppuVar9 = pppppppuStack_1d8;\n          (**(code **)(pcStack_208 + -0x79bc))(unaff_s5);\n          (**(code **)(pcStack_208 + -0x79bc))(piVar18);\n          pppppppuVar12[0xa8] = pppppppuVar13[0xa8];\n          if (unaff_s2 != (undefined4 ******)0x0) {\n            unaff_s6 = (undefined4 *******)\n                       ((int)unaff_s2 + (-(int)unaff_s6 - (int)pppppppuVar12[7]));\n          }\n          pppppppuVar12[0x8a] = unaff_s8;\n          pppppppuVar12[0x8b] = unaff_s2;\n          pppppppuVar12[0x8c] = ppppppuStack_1fc;\n          pppppppuVar12[0x8d] = unaff_s6;\n          if (pppppppuVar9 == (undefined4 *******)0x0) {\n            pppppppuVar12 = (undefined4 *******)(**(code **)(pcStack_208 + -0x7964))(pppppppuVar12);\n          }\n        }\n        pcVar23 = pcStack_208;\n        if (iStack_1d4 == *piVar16) {\n          return pppppppuVar12;\n        }\n        goto LAB_001c9968;\n      }\n      goto LAB_001c9974;\n    }\n  }" else (compound_statement "{\n    pppppppuStack_244 = param_1;\n    if (pppppppuVar13[0xcdb] == (undefined4 ******)0xabacadab) {\n      if (pppppppuVar13[0xcd4] != (undefined4 ******)0x0) {\n        pppppppuStack_20c = pppppppuVar13 + 0xd0;\n        pppppppuStack_210 = (undefined4 *******)(*(int *)(pcVar21 + 0x1df364) + -0x62ac);\n        (**(code **)(pcVar21 + 0x1dfc60))\n                  (0x8000,*(int *)(pcVar21 + 0x1df36c) + -0x288c,\n                   *(int *)(pcVar21 + 0x1df36c) + -0x26ec,0x4bf);\n      }\n      unaff_s7 = pppppppuVar13;\n      pcVar23 = pcStack_208;\n      if (pppppppuVar9 == (undefined4 *******)0x0) goto LAB_001c9944;\n      if (pppppppuVar9[7] == (undefined4 ******)0xabacadab) {\n        pppppppuStack_210 = pppppppuVar9;\n        pppppppuVar12 =\n             (undefined4 *******)(**(code **)(pcStack_208 + -0x7080))(pppppppuVar13,0,0,1);\n        if (pppppppuVar12 != (undefined4 *******)0x0) {\n          ppppppuStack_1fc = pppppppuVar13[0x8c];\n          unaff_s8 = (undefined4 *******)pppppppuVar13[0x8a];\n          unaff_s2 = pppppppuVar13[0x8b];\n          unaff_s6 = (undefined4 *******)pppppppuVar13[0x8d];\n          uStack_1f4 = 0;\n          uStack_1f8 = 0;\n          piVar18 = (int *)(**(code **)(pcStack_208 + -0x715c))(pppppppuVar13,pppppppuVar9);\n          unaff_s5 = (undefined4 *******)\n                     (**(code **)(pcStack_208 + -0x79dc))(pppppppuVar12,pppppppuVar9);\n          iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13);\n          if (((iVar15 == 4) ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13), iVar15 == 3)) &&\n             ((iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 4 ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 3)))) {\n            (**(code **)(pcStack_208 + -0x7774))(7);\n            ppppppuVar2 = pppppppuVar12[7];\n            if ((int)ppppppuVar2 < 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_03 < (int)ppppppuVar2 + 0x3f >> 6) goto LAB_001c98d4;\nLAB_001c981c:\n              bVar1 = (int)ppppppuVar2 < 0x80;\n            }\n            else {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if ((int)ppppppuVar2 >> 6 <= extraout_v1_03) goto LAB_001c981c;\nLAB_001c98d4:\n              (*pcVar23)(7);\n              bVar1 = extraout_v1_05 < 2;\n            }\n            iVar15 = 1;\n            if ((bool)(bVar1 ^ 1)) {\n              (**(code **)(pcStack_208 + -0x7774))(7);\n              ppppppuVar2 = pppppppuVar12[7];\n              if ((int)ppppppuVar2 < 0) {\n                ppppppuVar2 = (undefined4 ******)((int)ppppppuVar2 + 0x3f);\n              }\n              iVar15 = (int)ppppppuVar2 >> 6;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_06 < iVar15) {\nLAB_001c98ac:\n                (*pcVar23)(7);\n                iVar15 = extraout_v1_04;\n              }\n              goto LAB_001c96d8;\n            }\n            iVar14 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          else {\n            uVar36 = (**(code **)(pcStack_208 + -0x7774))(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              uVar36 = (*pcVar23)(7);\n              if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c96c0;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              iVar15 = 1;\n            }\n            else {\nLAB_001c96c0:\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\nLAB_001c96c4:\n              uVar36 = (*pcVar23)(7);\n              if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n                 (pcVar23 = *(code **)(pcStack_208 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c98ac;\n              iVar15 = 2;\n            }\nLAB_001c96d8:\n            iVar14 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          puStack_1dc = &uStack_1f8;\n          pppppppuStack_1d8 = (undefined4 *******)0x1;\n          pppppppuStack_1f0 = pppppppuVar13;\n          pppppppuStack_1ec = pppppppuVar9;\n          pppppppuStack_1e8 = unaff_s5;\n          piStack_1e4 = piVar18;\n          pppppppuStack_1e0 = pppppppuVar12;\n          (**(code **)(pcStack_208 + -0x7718))(iVar14 + 0x56bc,&pppppppuStack_1f0,iVar15,0);\n          pppppppuVar9 = pppppppuStack_1d8;\n          (**(code **)(pcStack_208 + -0x79bc))(unaff_s5);\n          (**(code **)(pcStack_208 + -0x79bc))(piVar18);\n          pppppppuVar12[0xa8] = pppppppuVar13[0xa8];\n          if (unaff_s2 != (undefined4 ******)0x0) {\n            unaff_s6 = (undefined4 *******)\n                       ((int)unaff_s2 + (-(int)unaff_s6 - (int)pppppppuVar12[7]));\n          }\n          pppppppuVar12[0x8a] = unaff_s8;\n          pppppppuVar12[0x8b] = unaff_s2;\n          pppppppuVar12[0x8c] = ppppppuStack_1fc;\n          pppppppuVar12[0x8d] = unaff_s6;\n          if (pppppppuVar9 == (undefined4 *******)0x0) {\n            pppppppuVar12 = (undefined4 *******)(**(code **)(pcStack_208 + -0x7964))(pppppppuVar12);\n          }\n        }\n        pcVar23 = pcStack_208;\n        if (iStack_1d4 == *piVar16) {\n          return pppppppuVar12;\n        }\n        goto LAB_001c9968;\n      }\n      goto LAB_001c9974;\n    }\n  }" { (expression_statement "pppppppuStack_244 = param_1;" (assignment_expression "pppppppuStack_244 = param_1" identifier = identifier) ;) (if_statement "if (pppppppuVar13[0xcdb] == (undefined4 ******)0xabacadab) {\n      if (pppppppuVar13[0xcd4] != (undefined4 ******)0x0) {\n        pppppppuStack_20c = pppppppuVar13 + 0xd0;\n        pppppppuStack_210 = (undefined4 *******)(*(int *)(pcVar21 + 0x1df364) + -0x62ac);\n        (**(code **)(pcVar21 + 0x1dfc60))\n                  (0x8000,*(int *)(pcVar21 + 0x1df36c) + -0x288c,\n                   *(int *)(pcVar21 + 0x1df36c) + -0x26ec,0x4bf);\n      }\n      unaff_s7 = pppppppuVar13;\n      pcVar23 = pcStack_208;\n      if (pppppppuVar9 == (undefined4 *******)0x0) goto LAB_001c9944;\n      if (pppppppuVar9[7] == (undefined4 ******)0xabacadab) {\n        pppppppuStack_210 = pppppppuVar9;\n        pppppppuVar12 =\n             (undefined4 *******)(**(code **)(pcStack_208 + -0x7080))(pppppppuVar13,0,0,1);\n        if (pppppppuVar12 != (undefined4 *******)0x0) {\n          ppppppuStack_1fc = pppppppuVar13[0x8c];\n          unaff_s8 = (undefined4 *******)pppppppuVar13[0x8a];\n          unaff_s2 = pppppppuVar13[0x8b];\n          unaff_s6 = (undefined4 *******)pppppppuVar13[0x8d];\n          uStack_1f4 = 0;\n          uStack_1f8 = 0;\n          piVar18 = (int *)(**(code **)(pcStack_208 + -0x715c))(pppppppuVar13,pppppppuVar9);\n          unaff_s5 = (undefined4 *******)\n                     (**(code **)(pcStack_208 + -0x79dc))(pppppppuVar12,pppppppuVar9);\n          iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13);\n          if (((iVar15 == 4) ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13), iVar15 == 3)) &&\n             ((iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 4 ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 3)))) {\n            (**(code **)(pcStack_208 + -0x7774))(7);\n            ppppppuVar2 = pppppppuVar12[7];\n            if ((int)ppppppuVar2 < 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_03 < (int)ppppppuVar2 + 0x3f >> 6) goto LAB_001c98d4;\nLAB_001c981c:\n              bVar1 = (int)ppppppuVar2 < 0x80;\n            }\n            else {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if ((int)ppppppuVar2 >> 6 <= extraout_v1_03) goto LAB_001c981c;\nLAB_001c98d4:\n              (*pcVar23)(7);\n              bVar1 = extraout_v1_05 < 2;\n            }\n            iVar15 = 1;\n            if ((bool)(bVar1 ^ 1)) {\n              (**(code **)(pcStack_208 + -0x7774))(7);\n              ppppppuVar2 = pppppppuVar12[7];\n              if ((int)ppppppuVar2 < 0) {\n                ppppppuVar2 = (undefined4 ******)((int)ppppppuVar2 + 0x3f);\n              }\n              iVar15 = (int)ppppppuVar2 >> 6;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_06 < iVar15) {\nLAB_001c98ac:\n                (*pcVar23)(7);\n                iVar15 = extraout_v1_04;\n              }\n              goto LAB_001c96d8;\n            }\n            iVar14 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          else {\n            uVar36 = (**(code **)(pcStack_208 + -0x7774))(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              uVar36 = (*pcVar23)(7);\n              if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c96c0;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              iVar15 = 1;\n            }\n            else {\nLAB_001c96c0:\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\nLAB_001c96c4:\n              uVar36 = (*pcVar23)(7);\n              if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n                 (pcVar23 = *(code **)(pcStack_208 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c98ac;\n              iVar15 = 2;\n            }\nLAB_001c96d8:\n            iVar14 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          puStack_1dc = &uStack_1f8;\n          pppppppuStack_1d8 = (undefined4 *******)0x1;\n          pppppppuStack_1f0 = pppppppuVar13;\n          pppppppuStack_1ec = pppppppuVar9;\n          pppppppuStack_1e8 = unaff_s5;\n          piStack_1e4 = piVar18;\n          pppppppuStack_1e0 = pppppppuVar12;\n          (**(code **)(pcStack_208 + -0x7718))(iVar14 + 0x56bc,&pppppppuStack_1f0,iVar15,0);\n          pppppppuVar9 = pppppppuStack_1d8;\n          (**(code **)(pcStack_208 + -0x79bc))(unaff_s5);\n          (**(code **)(pcStack_208 + -0x79bc))(piVar18);\n          pppppppuVar12[0xa8] = pppppppuVar13[0xa8];\n          if (unaff_s2 != (undefined4 ******)0x0) {\n            unaff_s6 = (undefined4 *******)\n                       ((int)unaff_s2 + (-(int)unaff_s6 - (int)pppppppuVar12[7]));\n          }\n          pppppppuVar12[0x8a] = unaff_s8;\n          pppppppuVar12[0x8b] = unaff_s2;\n          pppppppuVar12[0x8c] = ppppppuStack_1fc;\n          pppppppuVar12[0x8d] = unaff_s6;\n          if (pppppppuVar9 == (undefined4 *******)0x0) {\n            pppppppuVar12 = (undefined4 *******)(**(code **)(pcStack_208 + -0x7964))(pppppppuVar12);\n          }\n        }\n        pcVar23 = pcStack_208;\n        if (iStack_1d4 == *piVar16) {\n          return pppppppuVar12;\n        }\n        goto LAB_001c9968;\n      }\n      goto LAB_001c9974;\n    }" if (parenthesized_expression "(pppppppuVar13[0xcdb] == (undefined4 ******)0xabacadab)" ( (binary_expression "pppppppuVar13[0xcdb] == (undefined4 ******)0xabacadab" (subscript_expression "pppppppuVar13[0xcdb]" identifier [ number_literal ]) == (cast_expression "(undefined4 ******)0xabacadab" ( (type_descriptor "undefined4 ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n      if (pppppppuVar13[0xcd4] != (undefined4 ******)0x0) {\n        pppppppuStack_20c = pppppppuVar13 + 0xd0;\n        pppppppuStack_210 = (undefined4 *******)(*(int *)(pcVar21 + 0x1df364) + -0x62ac);\n        (**(code **)(pcVar21 + 0x1dfc60))\n                  (0x8000,*(int *)(pcVar21 + 0x1df36c) + -0x288c,\n                   *(int *)(pcVar21 + 0x1df36c) + -0x26ec,0x4bf);\n      }\n      unaff_s7 = pppppppuVar13;\n      pcVar23 = pcStack_208;\n      if (pppppppuVar9 == (undefined4 *******)0x0) goto LAB_001c9944;\n      if (pppppppuVar9[7] == (undefined4 ******)0xabacadab) {\n        pppppppuStack_210 = pppppppuVar9;\n        pppppppuVar12 =\n             (undefined4 *******)(**(code **)(pcStack_208 + -0x7080))(pppppppuVar13,0,0,1);\n        if (pppppppuVar12 != (undefined4 *******)0x0) {\n          ppppppuStack_1fc = pppppppuVar13[0x8c];\n          unaff_s8 = (undefined4 *******)pppppppuVar13[0x8a];\n          unaff_s2 = pppppppuVar13[0x8b];\n          unaff_s6 = (undefined4 *******)pppppppuVar13[0x8d];\n          uStack_1f4 = 0;\n          uStack_1f8 = 0;\n          piVar18 = (int *)(**(code **)(pcStack_208 + -0x715c))(pppppppuVar13,pppppppuVar9);\n          unaff_s5 = (undefined4 *******)\n                     (**(code **)(pcStack_208 + -0x79dc))(pppppppuVar12,pppppppuVar9);\n          iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13);\n          if (((iVar15 == 4) ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13), iVar15 == 3)) &&\n             ((iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 4 ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 3)))) {\n            (**(code **)(pcStack_208 + -0x7774))(7);\n            ppppppuVar2 = pppppppuVar12[7];\n            if ((int)ppppppuVar2 < 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_03 < (int)ppppppuVar2 + 0x3f >> 6) goto LAB_001c98d4;\nLAB_001c981c:\n              bVar1 = (int)ppppppuVar2 < 0x80;\n            }\n            else {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if ((int)ppppppuVar2 >> 6 <= extraout_v1_03) goto LAB_001c981c;\nLAB_001c98d4:\n              (*pcVar23)(7);\n              bVar1 = extraout_v1_05 < 2;\n            }\n            iVar15 = 1;\n            if ((bool)(bVar1 ^ 1)) {\n              (**(code **)(pcStack_208 + -0x7774))(7);\n              ppppppuVar2 = pppppppuVar12[7];\n              if ((int)ppppppuVar2 < 0) {\n                ppppppuVar2 = (undefined4 ******)((int)ppppppuVar2 + 0x3f);\n              }\n              iVar15 = (int)ppppppuVar2 >> 6;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_06 < iVar15) {\nLAB_001c98ac:\n                (*pcVar23)(7);\n                iVar15 = extraout_v1_04;\n              }\n              goto LAB_001c96d8;\n            }\n            iVar14 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          else {\n            uVar36 = (**(code **)(pcStack_208 + -0x7774))(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              uVar36 = (*pcVar23)(7);\n              if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c96c0;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              iVar15 = 1;\n            }\n            else {\nLAB_001c96c0:\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\nLAB_001c96c4:\n              uVar36 = (*pcVar23)(7);\n              if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n                 (pcVar23 = *(code **)(pcStack_208 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c98ac;\n              iVar15 = 2;\n            }\nLAB_001c96d8:\n            iVar14 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          puStack_1dc = &uStack_1f8;\n          pppppppuStack_1d8 = (undefined4 *******)0x1;\n          pppppppuStack_1f0 = pppppppuVar13;\n          pppppppuStack_1ec = pppppppuVar9;\n          pppppppuStack_1e8 = unaff_s5;\n          piStack_1e4 = piVar18;\n          pppppppuStack_1e0 = pppppppuVar12;\n          (**(code **)(pcStack_208 + -0x7718))(iVar14 + 0x56bc,&pppppppuStack_1f0,iVar15,0);\n          pppppppuVar9 = pppppppuStack_1d8;\n          (**(code **)(pcStack_208 + -0x79bc))(unaff_s5);\n          (**(code **)(pcStack_208 + -0x79bc))(piVar18);\n          pppppppuVar12[0xa8] = pppppppuVar13[0xa8];\n          if (unaff_s2 != (undefined4 ******)0x0) {\n            unaff_s6 = (undefined4 *******)\n                       ((int)unaff_s2 + (-(int)unaff_s6 - (int)pppppppuVar12[7]));\n          }\n          pppppppuVar12[0x8a] = unaff_s8;\n          pppppppuVar12[0x8b] = unaff_s2;\n          pppppppuVar12[0x8c] = ppppppuStack_1fc;\n          pppppppuVar12[0x8d] = unaff_s6;\n          if (pppppppuVar9 == (undefined4 *******)0x0) {\n            pppppppuVar12 = (undefined4 *******)(**(code **)(pcStack_208 + -0x7964))(pppppppuVar12);\n          }\n        }\n        pcVar23 = pcStack_208;\n        if (iStack_1d4 == *piVar16) {\n          return pppppppuVar12;\n        }\n        goto LAB_001c9968;\n      }\n      goto LAB_001c9974;\n    }" { (if_statement "if (pppppppuVar13[0xcd4] != (undefined4 ******)0x0) {\n        pppppppuStack_20c = pppppppuVar13 + 0xd0;\n        pppppppuStack_210 = (undefined4 *******)(*(int *)(pcVar21 + 0x1df364) + -0x62ac);\n        (**(code **)(pcVar21 + 0x1dfc60))\n                  (0x8000,*(int *)(pcVar21 + 0x1df36c) + -0x288c,\n                   *(int *)(pcVar21 + 0x1df36c) + -0x26ec,0x4bf);\n      }" if (parenthesized_expression "(pppppppuVar13[0xcd4] != (undefined4 ******)0x0)" ( (binary_expression "pppppppuVar13[0xcd4] != (undefined4 ******)0x0" (subscript_expression "pppppppuVar13[0xcd4]" identifier [ number_literal ]) != (cast_expression "(undefined4 ******)0x0" ( (type_descriptor "undefined4 ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n        pppppppuStack_20c = pppppppuVar13 + 0xd0;\n        pppppppuStack_210 = (undefined4 *******)(*(int *)(pcVar21 + 0x1df364) + -0x62ac);\n        (**(code **)(pcVar21 + 0x1dfc60))\n                  (0x8000,*(int *)(pcVar21 + 0x1df36c) + -0x288c,\n                   *(int *)(pcVar21 + 0x1df36c) + -0x26ec,0x4bf);\n      }" { (expression_statement "pppppppuStack_20c = pppppppuVar13 + 0xd0;" (assignment_expression "pppppppuStack_20c = pppppppuVar13 + 0xd0" identifier = (binary_expression "pppppppuVar13 + 0xd0" identifier + number_literal)) ;) (expression_statement "pppppppuStack_210 = (undefined4 *******)(*(int *)(pcVar21 + 0x1df364) + -0x62ac);" (assignment_expression "pppppppuStack_210 = (undefined4 *******)(*(int *)(pcVar21 + 0x1df364) + -0x62ac)" identifier = (cast_expression "(undefined4 *******)(*(int *)(pcVar21 + 0x1df364) + -0x62ac)" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(*(int *)(pcVar21 + 0x1df364) + -0x62ac)" ( (binary_expression "*(int *)(pcVar21 + 0x1df364) + -0x62ac" (pointer_expression "*(int *)(pcVar21 + 0x1df364)" * (cast_expression "(int *)(pcVar21 + 0x1df364)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0x1df364)" ( (binary_expression "pcVar21 + 0x1df364" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "(**(code **)(pcVar21 + 0x1dfc60))\n                  (0x8000,*(int *)(pcVar21 + 0x1df36c) + -0x288c,\n                   *(int *)(pcVar21 + 0x1df36c) + -0x26ec,0x4bf);" (call_expression "(**(code **)(pcVar21 + 0x1dfc60))\n                  (0x8000,*(int *)(pcVar21 + 0x1df36c) + -0x288c,\n                   *(int *)(pcVar21 + 0x1df36c) + -0x26ec,0x4bf)" (parenthesized_expression "(**(code **)(pcVar21 + 0x1dfc60))" ( (pointer_expression "**(code **)(pcVar21 + 0x1dfc60)" * (pointer_expression "*(code **)(pcVar21 + 0x1dfc60)" * (cast_expression "(code **)(pcVar21 + 0x1dfc60)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0x1dfc60)" ( (binary_expression "pcVar21 + 0x1dfc60" identifier + number_literal) ))))) )) (argument_list "(0x8000,*(int *)(pcVar21 + 0x1df36c) + -0x288c,\n                   *(int *)(pcVar21 + 0x1df36c) + -0x26ec,0x4bf)" ( number_literal , (binary_expression "*(int *)(pcVar21 + 0x1df36c) + -0x288c" (pointer_expression "*(int *)(pcVar21 + 0x1df36c)" * (cast_expression "(int *)(pcVar21 + 0x1df36c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0x1df36c)" ( (binary_expression "pcVar21 + 0x1df36c" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar21 + 0x1df36c) + -0x26ec" (pointer_expression "*(int *)(pcVar21 + 0x1df36c)" * (cast_expression "(int *)(pcVar21 + 0x1df36c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0x1df36c)" ( (binary_expression "pcVar21 + 0x1df36c" identifier + number_literal) )))) + number_literal) , number_literal ))) ;) })) (expression_statement "unaff_s7 = pppppppuVar13;" (assignment_expression "unaff_s7 = pppppppuVar13" identifier = identifier) ;) (expression_statement "pcVar23 = pcStack_208;" (assignment_expression "pcVar23 = pcStack_208" identifier = identifier) ;) (if_statement "if (pppppppuVar9 == (undefined4 *******)0x0) goto LAB_001c9944;" if (parenthesized_expression "(pppppppuVar9 == (undefined4 *******)0x0)" ( (binary_expression "pppppppuVar9 == (undefined4 *******)0x0" identifier == (cast_expression "(undefined4 *******)0x0" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (goto_statement "goto LAB_001c9944;" goto statement_identifier ;)) (if_statement "if (pppppppuVar9[7] == (undefined4 ******)0xabacadab) {\n        pppppppuStack_210 = pppppppuVar9;\n        pppppppuVar12 =\n             (undefined4 *******)(**(code **)(pcStack_208 + -0x7080))(pppppppuVar13,0,0,1);\n        if (pppppppuVar12 != (undefined4 *******)0x0) {\n          ppppppuStack_1fc = pppppppuVar13[0x8c];\n          unaff_s8 = (undefined4 *******)pppppppuVar13[0x8a];\n          unaff_s2 = pppppppuVar13[0x8b];\n          unaff_s6 = (undefined4 *******)pppppppuVar13[0x8d];\n          uStack_1f4 = 0;\n          uStack_1f8 = 0;\n          piVar18 = (int *)(**(code **)(pcStack_208 + -0x715c))(pppppppuVar13,pppppppuVar9);\n          unaff_s5 = (undefined4 *******)\n                     (**(code **)(pcStack_208 + -0x79dc))(pppppppuVar12,pppppppuVar9);\n          iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13);\n          if (((iVar15 == 4) ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13), iVar15 == 3)) &&\n             ((iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 4 ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 3)))) {\n            (**(code **)(pcStack_208 + -0x7774))(7);\n            ppppppuVar2 = pppppppuVar12[7];\n            if ((int)ppppppuVar2 < 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_03 < (int)ppppppuVar2 + 0x3f >> 6) goto LAB_001c98d4;\nLAB_001c981c:\n              bVar1 = (int)ppppppuVar2 < 0x80;\n            }\n            else {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if ((int)ppppppuVar2 >> 6 <= extraout_v1_03) goto LAB_001c981c;\nLAB_001c98d4:\n              (*pcVar23)(7);\n              bVar1 = extraout_v1_05 < 2;\n            }\n            iVar15 = 1;\n            if ((bool)(bVar1 ^ 1)) {\n              (**(code **)(pcStack_208 + -0x7774))(7);\n              ppppppuVar2 = pppppppuVar12[7];\n              if ((int)ppppppuVar2 < 0) {\n                ppppppuVar2 = (undefined4 ******)((int)ppppppuVar2 + 0x3f);\n              }\n              iVar15 = (int)ppppppuVar2 >> 6;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_06 < iVar15) {\nLAB_001c98ac:\n                (*pcVar23)(7);\n                iVar15 = extraout_v1_04;\n              }\n              goto LAB_001c96d8;\n            }\n            iVar14 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          else {\n            uVar36 = (**(code **)(pcStack_208 + -0x7774))(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              uVar36 = (*pcVar23)(7);\n              if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c96c0;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              iVar15 = 1;\n            }\n            else {\nLAB_001c96c0:\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\nLAB_001c96c4:\n              uVar36 = (*pcVar23)(7);\n              if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n                 (pcVar23 = *(code **)(pcStack_208 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c98ac;\n              iVar15 = 2;\n            }\nLAB_001c96d8:\n            iVar14 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          puStack_1dc = &uStack_1f8;\n          pppppppuStack_1d8 = (undefined4 *******)0x1;\n          pppppppuStack_1f0 = pppppppuVar13;\n          pppppppuStack_1ec = pppppppuVar9;\n          pppppppuStack_1e8 = unaff_s5;\n          piStack_1e4 = piVar18;\n          pppppppuStack_1e0 = pppppppuVar12;\n          (**(code **)(pcStack_208 + -0x7718))(iVar14 + 0x56bc,&pppppppuStack_1f0,iVar15,0);\n          pppppppuVar9 = pppppppuStack_1d8;\n          (**(code **)(pcStack_208 + -0x79bc))(unaff_s5);\n          (**(code **)(pcStack_208 + -0x79bc))(piVar18);\n          pppppppuVar12[0xa8] = pppppppuVar13[0xa8];\n          if (unaff_s2 != (undefined4 ******)0x0) {\n            unaff_s6 = (undefined4 *******)\n                       ((int)unaff_s2 + (-(int)unaff_s6 - (int)pppppppuVar12[7]));\n          }\n          pppppppuVar12[0x8a] = unaff_s8;\n          pppppppuVar12[0x8b] = unaff_s2;\n          pppppppuVar12[0x8c] = ppppppuStack_1fc;\n          pppppppuVar12[0x8d] = unaff_s6;\n          if (pppppppuVar9 == (undefined4 *******)0x0) {\n            pppppppuVar12 = (undefined4 *******)(**(code **)(pcStack_208 + -0x7964))(pppppppuVar12);\n          }\n        }\n        pcVar23 = pcStack_208;\n        if (iStack_1d4 == *piVar16) {\n          return pppppppuVar12;\n        }\n        goto LAB_001c9968;\n      }" if (parenthesized_expression "(pppppppuVar9[7] == (undefined4 ******)0xabacadab)" ( (binary_expression "pppppppuVar9[7] == (undefined4 ******)0xabacadab" (subscript_expression "pppppppuVar9[7]" identifier [ number_literal ]) == (cast_expression "(undefined4 ******)0xabacadab" ( (type_descriptor "undefined4 ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n        pppppppuStack_210 = pppppppuVar9;\n        pppppppuVar12 =\n             (undefined4 *******)(**(code **)(pcStack_208 + -0x7080))(pppppppuVar13,0,0,1);\n        if (pppppppuVar12 != (undefined4 *******)0x0) {\n          ppppppuStack_1fc = pppppppuVar13[0x8c];\n          unaff_s8 = (undefined4 *******)pppppppuVar13[0x8a];\n          unaff_s2 = pppppppuVar13[0x8b];\n          unaff_s6 = (undefined4 *******)pppppppuVar13[0x8d];\n          uStack_1f4 = 0;\n          uStack_1f8 = 0;\n          piVar18 = (int *)(**(code **)(pcStack_208 + -0x715c))(pppppppuVar13,pppppppuVar9);\n          unaff_s5 = (undefined4 *******)\n                     (**(code **)(pcStack_208 + -0x79dc))(pppppppuVar12,pppppppuVar9);\n          iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13);\n          if (((iVar15 == 4) ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13), iVar15 == 3)) &&\n             ((iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 4 ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 3)))) {\n            (**(code **)(pcStack_208 + -0x7774))(7);\n            ppppppuVar2 = pppppppuVar12[7];\n            if ((int)ppppppuVar2 < 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_03 < (int)ppppppuVar2 + 0x3f >> 6) goto LAB_001c98d4;\nLAB_001c981c:\n              bVar1 = (int)ppppppuVar2 < 0x80;\n            }\n            else {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if ((int)ppppppuVar2 >> 6 <= extraout_v1_03) goto LAB_001c981c;\nLAB_001c98d4:\n              (*pcVar23)(7);\n              bVar1 = extraout_v1_05 < 2;\n            }\n            iVar15 = 1;\n            if ((bool)(bVar1 ^ 1)) {\n              (**(code **)(pcStack_208 + -0x7774))(7);\n              ppppppuVar2 = pppppppuVar12[7];\n              if ((int)ppppppuVar2 < 0) {\n                ppppppuVar2 = (undefined4 ******)((int)ppppppuVar2 + 0x3f);\n              }\n              iVar15 = (int)ppppppuVar2 >> 6;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_06 < iVar15) {\nLAB_001c98ac:\n                (*pcVar23)(7);\n                iVar15 = extraout_v1_04;\n              }\n              goto LAB_001c96d8;\n            }\n            iVar14 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          else {\n            uVar36 = (**(code **)(pcStack_208 + -0x7774))(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              uVar36 = (*pcVar23)(7);\n              if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c96c0;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              iVar15 = 1;\n            }\n            else {\nLAB_001c96c0:\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\nLAB_001c96c4:\n              uVar36 = (*pcVar23)(7);\n              if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n                 (pcVar23 = *(code **)(pcStack_208 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c98ac;\n              iVar15 = 2;\n            }\nLAB_001c96d8:\n            iVar14 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          puStack_1dc = &uStack_1f8;\n          pppppppuStack_1d8 = (undefined4 *******)0x1;\n          pppppppuStack_1f0 = pppppppuVar13;\n          pppppppuStack_1ec = pppppppuVar9;\n          pppppppuStack_1e8 = unaff_s5;\n          piStack_1e4 = piVar18;\n          pppppppuStack_1e0 = pppppppuVar12;\n          (**(code **)(pcStack_208 + -0x7718))(iVar14 + 0x56bc,&pppppppuStack_1f0,iVar15,0);\n          pppppppuVar9 = pppppppuStack_1d8;\n          (**(code **)(pcStack_208 + -0x79bc))(unaff_s5);\n          (**(code **)(pcStack_208 + -0x79bc))(piVar18);\n          pppppppuVar12[0xa8] = pppppppuVar13[0xa8];\n          if (unaff_s2 != (undefined4 ******)0x0) {\n            unaff_s6 = (undefined4 *******)\n                       ((int)unaff_s2 + (-(int)unaff_s6 - (int)pppppppuVar12[7]));\n          }\n          pppppppuVar12[0x8a] = unaff_s8;\n          pppppppuVar12[0x8b] = unaff_s2;\n          pppppppuVar12[0x8c] = ppppppuStack_1fc;\n          pppppppuVar12[0x8d] = unaff_s6;\n          if (pppppppuVar9 == (undefined4 *******)0x0) {\n            pppppppuVar12 = (undefined4 *******)(**(code **)(pcStack_208 + -0x7964))(pppppppuVar12);\n          }\n        }\n        pcVar23 = pcStack_208;\n        if (iStack_1d4 == *piVar16) {\n          return pppppppuVar12;\n        }\n        goto LAB_001c9968;\n      }" { (expression_statement "pppppppuStack_210 = pppppppuVar9;" (assignment_expression "pppppppuStack_210 = pppppppuVar9" identifier = identifier) ;) (expression_statement "pppppppuVar12 =\n             (undefined4 *******)(**(code **)(pcStack_208 + -0x7080))(pppppppuVar13,0,0,1);" (assignment_expression "pppppppuVar12 =\n             (undefined4 *******)(**(code **)(pcStack_208 + -0x7080))(pppppppuVar13,0,0,1)" identifier = (cast_expression "(undefined4 *******)(**(code **)(pcStack_208 + -0x7080))(pppppppuVar13,0,0,1)" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(**(code **)(pcStack_208 + -0x7080))(pppppppuVar13,0,0,1)" (parenthesized_expression "(**(code **)(pcStack_208 + -0x7080))" ( (pointer_expression "**(code **)(pcStack_208 + -0x7080)" * (pointer_expression "*(code **)(pcStack_208 + -0x7080)" * (cast_expression "(code **)(pcStack_208 + -0x7080)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_208 + -0x7080)" ( (binary_expression "pcStack_208 + -0x7080" identifier + number_literal) ))))) )) (argument_list "(pppppppuVar13,0,0,1)" ( identifier , number_literal , number_literal , number_literal ))))) ;) (if_statement "if (pppppppuVar12 != (undefined4 *******)0x0) {\n          ppppppuStack_1fc = pppppppuVar13[0x8c];\n          unaff_s8 = (undefined4 *******)pppppppuVar13[0x8a];\n          unaff_s2 = pppppppuVar13[0x8b];\n          unaff_s6 = (undefined4 *******)pppppppuVar13[0x8d];\n          uStack_1f4 = 0;\n          uStack_1f8 = 0;\n          piVar18 = (int *)(**(code **)(pcStack_208 + -0x715c))(pppppppuVar13,pppppppuVar9);\n          unaff_s5 = (undefined4 *******)\n                     (**(code **)(pcStack_208 + -0x79dc))(pppppppuVar12,pppppppuVar9);\n          iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13);\n          if (((iVar15 == 4) ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13), iVar15 == 3)) &&\n             ((iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 4 ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 3)))) {\n            (**(code **)(pcStack_208 + -0x7774))(7);\n            ppppppuVar2 = pppppppuVar12[7];\n            if ((int)ppppppuVar2 < 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_03 < (int)ppppppuVar2 + 0x3f >> 6) goto LAB_001c98d4;\nLAB_001c981c:\n              bVar1 = (int)ppppppuVar2 < 0x80;\n            }\n            else {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if ((int)ppppppuVar2 >> 6 <= extraout_v1_03) goto LAB_001c981c;\nLAB_001c98d4:\n              (*pcVar23)(7);\n              bVar1 = extraout_v1_05 < 2;\n            }\n            iVar15 = 1;\n            if ((bool)(bVar1 ^ 1)) {\n              (**(code **)(pcStack_208 + -0x7774))(7);\n              ppppppuVar2 = pppppppuVar12[7];\n              if ((int)ppppppuVar2 < 0) {\n                ppppppuVar2 = (undefined4 ******)((int)ppppppuVar2 + 0x3f);\n              }\n              iVar15 = (int)ppppppuVar2 >> 6;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_06 < iVar15) {\nLAB_001c98ac:\n                (*pcVar23)(7);\n                iVar15 = extraout_v1_04;\n              }\n              goto LAB_001c96d8;\n            }\n            iVar14 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          else {\n            uVar36 = (**(code **)(pcStack_208 + -0x7774))(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              uVar36 = (*pcVar23)(7);\n              if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c96c0;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              iVar15 = 1;\n            }\n            else {\nLAB_001c96c0:\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\nLAB_001c96c4:\n              uVar36 = (*pcVar23)(7);\n              if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n                 (pcVar23 = *(code **)(pcStack_208 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c98ac;\n              iVar15 = 2;\n            }\nLAB_001c96d8:\n            iVar14 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          puStack_1dc = &uStack_1f8;\n          pppppppuStack_1d8 = (undefined4 *******)0x1;\n          pppppppuStack_1f0 = pppppppuVar13;\n          pppppppuStack_1ec = pppppppuVar9;\n          pppppppuStack_1e8 = unaff_s5;\n          piStack_1e4 = piVar18;\n          pppppppuStack_1e0 = pppppppuVar12;\n          (**(code **)(pcStack_208 + -0x7718))(iVar14 + 0x56bc,&pppppppuStack_1f0,iVar15,0);\n          pppppppuVar9 = pppppppuStack_1d8;\n          (**(code **)(pcStack_208 + -0x79bc))(unaff_s5);\n          (**(code **)(pcStack_208 + -0x79bc))(piVar18);\n          pppppppuVar12[0xa8] = pppppppuVar13[0xa8];\n          if (unaff_s2 != (undefined4 ******)0x0) {\n            unaff_s6 = (undefined4 *******)\n                       ((int)unaff_s2 + (-(int)unaff_s6 - (int)pppppppuVar12[7]));\n          }\n          pppppppuVar12[0x8a] = unaff_s8;\n          pppppppuVar12[0x8b] = unaff_s2;\n          pppppppuVar12[0x8c] = ppppppuStack_1fc;\n          pppppppuVar12[0x8d] = unaff_s6;\n          if (pppppppuVar9 == (undefined4 *******)0x0) {\n            pppppppuVar12 = (undefined4 *******)(**(code **)(pcStack_208 + -0x7964))(pppppppuVar12);\n          }\n        }" if (parenthesized_expression "(pppppppuVar12 != (undefined4 *******)0x0)" ( (binary_expression "pppppppuVar12 != (undefined4 *******)0x0" identifier != (cast_expression "(undefined4 *******)0x0" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n          ppppppuStack_1fc = pppppppuVar13[0x8c];\n          unaff_s8 = (undefined4 *******)pppppppuVar13[0x8a];\n          unaff_s2 = pppppppuVar13[0x8b];\n          unaff_s6 = (undefined4 *******)pppppppuVar13[0x8d];\n          uStack_1f4 = 0;\n          uStack_1f8 = 0;\n          piVar18 = (int *)(**(code **)(pcStack_208 + -0x715c))(pppppppuVar13,pppppppuVar9);\n          unaff_s5 = (undefined4 *******)\n                     (**(code **)(pcStack_208 + -0x79dc))(pppppppuVar12,pppppppuVar9);\n          iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13);\n          if (((iVar15 == 4) ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13), iVar15 == 3)) &&\n             ((iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 4 ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 3)))) {\n            (**(code **)(pcStack_208 + -0x7774))(7);\n            ppppppuVar2 = pppppppuVar12[7];\n            if ((int)ppppppuVar2 < 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_03 < (int)ppppppuVar2 + 0x3f >> 6) goto LAB_001c98d4;\nLAB_001c981c:\n              bVar1 = (int)ppppppuVar2 < 0x80;\n            }\n            else {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if ((int)ppppppuVar2 >> 6 <= extraout_v1_03) goto LAB_001c981c;\nLAB_001c98d4:\n              (*pcVar23)(7);\n              bVar1 = extraout_v1_05 < 2;\n            }\n            iVar15 = 1;\n            if ((bool)(bVar1 ^ 1)) {\n              (**(code **)(pcStack_208 + -0x7774))(7);\n              ppppppuVar2 = pppppppuVar12[7];\n              if ((int)ppppppuVar2 < 0) {\n                ppppppuVar2 = (undefined4 ******)((int)ppppppuVar2 + 0x3f);\n              }\n              iVar15 = (int)ppppppuVar2 >> 6;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_06 < iVar15) {\nLAB_001c98ac:\n                (*pcVar23)(7);\n                iVar15 = extraout_v1_04;\n              }\n              goto LAB_001c96d8;\n            }\n            iVar14 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          else {\n            uVar36 = (**(code **)(pcStack_208 + -0x7774))(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              uVar36 = (*pcVar23)(7);\n              if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c96c0;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              iVar15 = 1;\n            }\n            else {\nLAB_001c96c0:\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\nLAB_001c96c4:\n              uVar36 = (*pcVar23)(7);\n              if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n                 (pcVar23 = *(code **)(pcStack_208 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c98ac;\n              iVar15 = 2;\n            }\nLAB_001c96d8:\n            iVar14 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          puStack_1dc = &uStack_1f8;\n          pppppppuStack_1d8 = (undefined4 *******)0x1;\n          pppppppuStack_1f0 = pppppppuVar13;\n          pppppppuStack_1ec = pppppppuVar9;\n          pppppppuStack_1e8 = unaff_s5;\n          piStack_1e4 = piVar18;\n          pppppppuStack_1e0 = pppppppuVar12;\n          (**(code **)(pcStack_208 + -0x7718))(iVar14 + 0x56bc,&pppppppuStack_1f0,iVar15,0);\n          pppppppuVar9 = pppppppuStack_1d8;\n          (**(code **)(pcStack_208 + -0x79bc))(unaff_s5);\n          (**(code **)(pcStack_208 + -0x79bc))(piVar18);\n          pppppppuVar12[0xa8] = pppppppuVar13[0xa8];\n          if (unaff_s2 != (undefined4 ******)0x0) {\n            unaff_s6 = (undefined4 *******)\n                       ((int)unaff_s2 + (-(int)unaff_s6 - (int)pppppppuVar12[7]));\n          }\n          pppppppuVar12[0x8a] = unaff_s8;\n          pppppppuVar12[0x8b] = unaff_s2;\n          pppppppuVar12[0x8c] = ppppppuStack_1fc;\n          pppppppuVar12[0x8d] = unaff_s6;\n          if (pppppppuVar9 == (undefined4 *******)0x0) {\n            pppppppuVar12 = (undefined4 *******)(**(code **)(pcStack_208 + -0x7964))(pppppppuVar12);\n          }\n        }" { (expression_statement "ppppppuStack_1fc = pppppppuVar13[0x8c];" (assignment_expression "ppppppuStack_1fc = pppppppuVar13[0x8c]" identifier = (subscript_expression "pppppppuVar13[0x8c]" identifier [ number_literal ])) ;) (expression_statement "unaff_s8 = (undefined4 *******)pppppppuVar13[0x8a];" (assignment_expression "unaff_s8 = (undefined4 *******)pppppppuVar13[0x8a]" identifier = (cast_expression "(undefined4 *******)pppppppuVar13[0x8a]" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (subscript_expression "pppppppuVar13[0x8a]" identifier [ number_literal ]))) ;) (expression_statement "unaff_s2 = pppppppuVar13[0x8b];" (assignment_expression "unaff_s2 = pppppppuVar13[0x8b]" identifier = (subscript_expression "pppppppuVar13[0x8b]" identifier [ number_literal ])) ;) (expression_statement "unaff_s6 = (undefined4 *******)pppppppuVar13[0x8d];" (assignment_expression "unaff_s6 = (undefined4 *******)pppppppuVar13[0x8d]" identifier = (cast_expression "(undefined4 *******)pppppppuVar13[0x8d]" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (subscript_expression "pppppppuVar13[0x8d]" identifier [ number_literal ]))) ;) (expression_statement "uStack_1f4 = 0;" (assignment_expression "uStack_1f4 = 0" identifier = number_literal) ;) (expression_statement "uStack_1f8 = 0;" (assignment_expression "uStack_1f8 = 0" identifier = number_literal) ;) (expression_statement "piVar18 = (int *)(**(code **)(pcStack_208 + -0x715c))(pppppppuVar13,pppppppuVar9);" (assignment_expression "piVar18 = (int *)(**(code **)(pcStack_208 + -0x715c))(pppppppuVar13,pppppppuVar9)" identifier = (cast_expression "(int *)(**(code **)(pcStack_208 + -0x715c))(pppppppuVar13,pppppppuVar9)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(pcStack_208 + -0x715c))(pppppppuVar13,pppppppuVar9)" (parenthesized_expression "(**(code **)(pcStack_208 + -0x715c))" ( (pointer_expression "**(code **)(pcStack_208 + -0x715c)" * (pointer_expression "*(code **)(pcStack_208 + -0x715c)" * (cast_expression "(code **)(pcStack_208 + -0x715c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_208 + -0x715c)" ( (binary_expression "pcStack_208 + -0x715c" identifier + number_literal) ))))) )) (argument_list "(pppppppuVar13,pppppppuVar9)" ( identifier , identifier ))))) ;) (expression_statement "unaff_s5 = (undefined4 *******)\n                     (**(code **)(pcStack_208 + -0x79dc))(pppppppuVar12,pppppppuVar9);" (assignment_expression "unaff_s5 = (undefined4 *******)\n                     (**(code **)(pcStack_208 + -0x79dc))(pppppppuVar12,pppppppuVar9)" identifier = (cast_expression "(undefined4 *******)\n                     (**(code **)(pcStack_208 + -0x79dc))(pppppppuVar12,pppppppuVar9)" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(**(code **)(pcStack_208 + -0x79dc))(pppppppuVar12,pppppppuVar9)" (parenthesized_expression "(**(code **)(pcStack_208 + -0x79dc))" ( (pointer_expression "**(code **)(pcStack_208 + -0x79dc)" * (pointer_expression "*(code **)(pcStack_208 + -0x79dc)" * (cast_expression "(code **)(pcStack_208 + -0x79dc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_208 + -0x79dc)" ( (binary_expression "pcStack_208 + -0x79dc" identifier + number_literal) ))))) )) (argument_list "(pppppppuVar12,pppppppuVar9)" ( identifier , identifier ))))) ;) (expression_statement "iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13);" (assignment_expression "iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13)" identifier = (call_expression "(**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13)" (parenthesized_expression "(**(code **)(pcStack_208 + -0x73fc))" ( (pointer_expression "**(code **)(pcStack_208 + -0x73fc)" * (pointer_expression "*(code **)(pcStack_208 + -0x73fc)" * (cast_expression "(code **)(pcStack_208 + -0x73fc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_208 + -0x73fc)" ( (binary_expression "pcStack_208 + -0x73fc" identifier + number_literal) ))))) )) (argument_list "(pppppppuVar13)" ( identifier )))) ;) (if_statement "if (((iVar15 == 4) ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13), iVar15 == 3)) &&\n             ((iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 4 ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 3)))) {\n            (**(code **)(pcStack_208 + -0x7774))(7);\n            ppppppuVar2 = pppppppuVar12[7];\n            if ((int)ppppppuVar2 < 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_03 < (int)ppppppuVar2 + 0x3f >> 6) goto LAB_001c98d4;\nLAB_001c981c:\n              bVar1 = (int)ppppppuVar2 < 0x80;\n            }\n            else {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if ((int)ppppppuVar2 >> 6 <= extraout_v1_03) goto LAB_001c981c;\nLAB_001c98d4:\n              (*pcVar23)(7);\n              bVar1 = extraout_v1_05 < 2;\n            }\n            iVar15 = 1;\n            if ((bool)(bVar1 ^ 1)) {\n              (**(code **)(pcStack_208 + -0x7774))(7);\n              ppppppuVar2 = pppppppuVar12[7];\n              if ((int)ppppppuVar2 < 0) {\n                ppppppuVar2 = (undefined4 ******)((int)ppppppuVar2 + 0x3f);\n              }\n              iVar15 = (int)ppppppuVar2 >> 6;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_06 < iVar15) {\nLAB_001c98ac:\n                (*pcVar23)(7);\n                iVar15 = extraout_v1_04;\n              }\n              goto LAB_001c96d8;\n            }\n            iVar14 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          else {\n            uVar36 = (**(code **)(pcStack_208 + -0x7774))(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              uVar36 = (*pcVar23)(7);\n              if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c96c0;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              iVar15 = 1;\n            }\n            else {\nLAB_001c96c0:\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\nLAB_001c96c4:\n              uVar36 = (*pcVar23)(7);\n              if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n                 (pcVar23 = *(code **)(pcStack_208 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c98ac;\n              iVar15 = 2;\n            }\nLAB_001c96d8:\n            iVar14 = *(int *)(pcStack_208 + -0x7f10);\n          }" if (parenthesized_expression "(((iVar15 == 4) ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13), iVar15 == 3)) &&\n             ((iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 4 ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 3))))" ( (binary_expression "((iVar15 == 4) ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13), iVar15 == 3)) &&\n             ((iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 4 ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 3)))" (parenthesized_expression "((iVar15 == 4) ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13), iVar15 == 3))" ( (binary_expression "(iVar15 == 4) ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13), iVar15 == 3)" (parenthesized_expression "(iVar15 == 4)" ( (binary_expression "iVar15 == 4" identifier == number_literal) )) || (parenthesized_expression "(iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13), iVar15 == 3)" ( (comma_expression "iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13), iVar15 == 3" (assignment_expression "iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13)" identifier = (call_expression "(**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13)" (parenthesized_expression "(**(code **)(pcStack_208 + -0x73fc))" ( (pointer_expression "**(code **)(pcStack_208 + -0x73fc)" * (pointer_expression "*(code **)(pcStack_208 + -0x73fc)" * (cast_expression "(code **)(pcStack_208 + -0x73fc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_208 + -0x73fc)" ( (binary_expression "pcStack_208 + -0x73fc" identifier + number_literal) ))))) )) (argument_list "(pppppppuVar13)" ( identifier )))) , (binary_expression "iVar15 == 3" identifier == number_literal)) ))) )) && (parenthesized_expression "((iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 4 ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 3)))" ( (parenthesized_expression "(iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 4 ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 3))" ( (comma_expression "iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 4 ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 3)" (assignment_expression "iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12)" identifier = (call_expression "(**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12)" (parenthesized_expression "(**(code **)(pcStack_208 + -0x73fc))" ( (pointer_expression "**(code **)(pcStack_208 + -0x73fc)" * (pointer_expression "*(code **)(pcStack_208 + -0x73fc)" * (cast_expression "(code **)(pcStack_208 + -0x73fc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_208 + -0x73fc)" ( (binary_expression "pcStack_208 + -0x73fc" identifier + number_literal) ))))) )) (argument_list "(pppppppuVar12)" ( identifier )))) , (binary_expression "iVar15 == 4 ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 3)" (binary_expression "iVar15 == 4" identifier == number_literal) || (parenthesized_expression "(iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 3)" ( (comma_expression "iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 3" (assignment_expression "iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12)" identifier = (call_expression "(**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12)" (parenthesized_expression "(**(code **)(pcStack_208 + -0x73fc))" ( (pointer_expression "**(code **)(pcStack_208 + -0x73fc)" * (pointer_expression "*(code **)(pcStack_208 + -0x73fc)" * (cast_expression "(code **)(pcStack_208 + -0x73fc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_208 + -0x73fc)" ( (binary_expression "pcStack_208 + -0x73fc" identifier + number_literal) ))))) )) (argument_list "(pppppppuVar12)" ( identifier )))) , (binary_expression "iVar15 == 3" identifier == number_literal)) )))) )) ))) )) (compound_statement "{\n            (**(code **)(pcStack_208 + -0x7774))(7);\n            ppppppuVar2 = pppppppuVar12[7];\n            if ((int)ppppppuVar2 < 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_03 < (int)ppppppuVar2 + 0x3f >> 6) goto LAB_001c98d4;\nLAB_001c981c:\n              bVar1 = (int)ppppppuVar2 < 0x80;\n            }\n            else {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if ((int)ppppppuVar2 >> 6 <= extraout_v1_03) goto LAB_001c981c;\nLAB_001c98d4:\n              (*pcVar23)(7);\n              bVar1 = extraout_v1_05 < 2;\n            }\n            iVar15 = 1;\n            if ((bool)(bVar1 ^ 1)) {\n              (**(code **)(pcStack_208 + -0x7774))(7);\n              ppppppuVar2 = pppppppuVar12[7];\n              if ((int)ppppppuVar2 < 0) {\n                ppppppuVar2 = (undefined4 ******)((int)ppppppuVar2 + 0x3f);\n              }\n              iVar15 = (int)ppppppuVar2 >> 6;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_06 < iVar15) {\nLAB_001c98ac:\n                (*pcVar23)(7);\n                iVar15 = extraout_v1_04;\n              }\n              goto LAB_001c96d8;\n            }\n            iVar14 = *(int *)(pcStack_208 + -0x7f10);\n          }" { (expression_statement "(**(code **)(pcStack_208 + -0x7774))(7);" (call_expression "(**(code **)(pcStack_208 + -0x7774))(7)" (parenthesized_expression "(**(code **)(pcStack_208 + -0x7774))" ( (pointer_expression "**(code **)(pcStack_208 + -0x7774)" * (pointer_expression "*(code **)(pcStack_208 + -0x7774)" * (cast_expression "(code **)(pcStack_208 + -0x7774)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_208 + -0x7774)" ( (binary_expression "pcStack_208 + -0x7774" identifier + number_literal) ))))) )) (argument_list "(7)" ( number_literal ))) ;) (expression_statement "ppppppuVar2 = pppppppuVar12[7];" (assignment_expression "ppppppuVar2 = pppppppuVar12[7]" identifier = (subscript_expression "pppppppuVar12[7]" identifier [ number_literal ])) ;) (if_statement "if ((int)ppppppuVar2 < 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_03 < (int)ppppppuVar2 + 0x3f >> 6) goto LAB_001c98d4;\nLAB_001c981c:\n              bVar1 = (int)ppppppuVar2 < 0x80;\n            }\n            else {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if ((int)ppppppuVar2 >> 6 <= extraout_v1_03) goto LAB_001c981c;\nLAB_001c98d4:\n              (*pcVar23)(7);\n              bVar1 = extraout_v1_05 < 2;\n            }" if (parenthesized_expression "((int)ppppppuVar2 < 0)" ( (binary_expression "(int)ppppppuVar2 < 0" (cast_expression "(int)ppppppuVar2" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_03 < (int)ppppppuVar2 + 0x3f >> 6) goto LAB_001c98d4;\nLAB_001c981c:\n              bVar1 = (int)ppppppuVar2 < 0x80;\n            }" { (expression_statement "pcVar23 = *(code **)(pcStack_208 + -0x7774);" (assignment_expression "pcVar23 = *(code **)(pcStack_208 + -0x7774)" identifier = (pointer_expression "*(code **)(pcStack_208 + -0x7774)" * (cast_expression "(code **)(pcStack_208 + -0x7774)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_208 + -0x7774)" ( (binary_expression "pcStack_208 + -0x7774" identifier + number_literal) ))))) ;) (if_statement "if (extraout_v1_03 < (int)ppppppuVar2 + 0x3f >> 6) goto LAB_001c98d4;" if (parenthesized_expression "(extraout_v1_03 < (int)ppppppuVar2 + 0x3f >> 6)" ( (binary_expression "extraout_v1_03 < (int)ppppppuVar2 + 0x3f >> 6" identifier < (binary_expression "(int)ppppppuVar2 + 0x3f >> 6" (binary_expression "(int)ppppppuVar2 + 0x3f" (cast_expression "(int)ppppppuVar2" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) >> number_literal)) )) (goto_statement "goto LAB_001c98d4;" goto statement_identifier ;)) (labeled_statement "LAB_001c981c:\n              bVar1 = (int)ppppppuVar2 < 0x80;" statement_identifier : (expression_statement "bVar1 = (int)ppppppuVar2 < 0x80;" (assignment_expression "bVar1 = (int)ppppppuVar2 < 0x80" identifier = (binary_expression "(int)ppppppuVar2 < 0x80" (cast_expression "(int)ppppppuVar2" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal)) ;)) }) (else_clause "else {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if ((int)ppppppuVar2 >> 6 <= extraout_v1_03) goto LAB_001c981c;\nLAB_001c98d4:\n              (*pcVar23)(7);\n              bVar1 = extraout_v1_05 < 2;\n            }" else (compound_statement "{\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if ((int)ppppppuVar2 >> 6 <= extraout_v1_03) goto LAB_001c981c;\nLAB_001c98d4:\n              (*pcVar23)(7);\n              bVar1 = extraout_v1_05 < 2;\n            }" { (expression_statement "pcVar23 = *(code **)(pcStack_208 + -0x7774);" (assignment_expression "pcVar23 = *(code **)(pcStack_208 + -0x7774)" identifier = (pointer_expression "*(code **)(pcStack_208 + -0x7774)" * (cast_expression "(code **)(pcStack_208 + -0x7774)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_208 + -0x7774)" ( (binary_expression "pcStack_208 + -0x7774" identifier + number_literal) ))))) ;) (if_statement "if ((int)ppppppuVar2 >> 6 <= extraout_v1_03) goto LAB_001c981c;" if (parenthesized_expression "((int)ppppppuVar2 >> 6 <= extraout_v1_03)" ( (binary_expression "(int)ppppppuVar2 >> 6 <= extraout_v1_03" (binary_expression "(int)ppppppuVar2 >> 6" (cast_expression "(int)ppppppuVar2" ( (type_descriptor "int" primitive_type) ) identifier) >> number_literal) <= identifier) )) (goto_statement "goto LAB_001c981c;" goto statement_identifier ;)) (labeled_statement "LAB_001c98d4:\n              (*pcVar23)(7);" statement_identifier : (expression_statement "(*pcVar23)(7);" (call_expression "(*pcVar23)(7)" (parenthesized_expression "(*pcVar23)" ( (pointer_expression "*pcVar23" * identifier) )) (argument_list "(7)" ( number_literal ))) ;)) (expression_statement "bVar1 = extraout_v1_05 < 2;" (assignment_expression "bVar1 = extraout_v1_05 < 2" identifier = (binary_expression "extraout_v1_05 < 2" identifier < number_literal)) ;) }))) (expression_statement "iVar15 = 1;" (assignment_expression "iVar15 = 1" identifier = number_literal) ;) (if_statement "if ((bool)(bVar1 ^ 1)) {\n              (**(code **)(pcStack_208 + -0x7774))(7);\n              ppppppuVar2 = pppppppuVar12[7];\n              if ((int)ppppppuVar2 < 0) {\n                ppppppuVar2 = (undefined4 ******)((int)ppppppuVar2 + 0x3f);\n              }\n              iVar15 = (int)ppppppuVar2 >> 6;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_06 < iVar15) {\nLAB_001c98ac:\n                (*pcVar23)(7);\n                iVar15 = extraout_v1_04;\n              }\n              goto LAB_001c96d8;\n            }" if (parenthesized_expression "((bool)(bVar1 ^ 1))" ( (cast_expression "(bool)(bVar1 ^ 1)" ( (type_descriptor "bool" primitive_type) ) (parenthesized_expression "(bVar1 ^ 1)" ( (binary_expression "bVar1 ^ 1" identifier ^ number_literal) ))) )) (compound_statement "{\n              (**(code **)(pcStack_208 + -0x7774))(7);\n              ppppppuVar2 = pppppppuVar12[7];\n              if ((int)ppppppuVar2 < 0) {\n                ppppppuVar2 = (undefined4 ******)((int)ppppppuVar2 + 0x3f);\n              }\n              iVar15 = (int)ppppppuVar2 >> 6;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_06 < iVar15) {\nLAB_001c98ac:\n                (*pcVar23)(7);\n                iVar15 = extraout_v1_04;\n              }\n              goto LAB_001c96d8;\n            }" { (expression_statement "(**(code **)(pcStack_208 + -0x7774))(7);" (call_expression "(**(code **)(pcStack_208 + -0x7774))(7)" (parenthesized_expression "(**(code **)(pcStack_208 + -0x7774))" ( (pointer_expression "**(code **)(pcStack_208 + -0x7774)" * (pointer_expression "*(code **)(pcStack_208 + -0x7774)" * (cast_expression "(code **)(pcStack_208 + -0x7774)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_208 + -0x7774)" ( (binary_expression "pcStack_208 + -0x7774" identifier + number_literal) ))))) )) (argument_list "(7)" ( number_literal ))) ;) (expression_statement "ppppppuVar2 = pppppppuVar12[7];" (assignment_expression "ppppppuVar2 = pppppppuVar12[7]" identifier = (subscript_expression "pppppppuVar12[7]" identifier [ number_literal ])) ;) (if_statement "if ((int)ppppppuVar2 < 0) {\n                ppppppuVar2 = (undefined4 ******)((int)ppppppuVar2 + 0x3f);\n              }" if (parenthesized_expression "((int)ppppppuVar2 < 0)" ( (binary_expression "(int)ppppppuVar2 < 0" (cast_expression "(int)ppppppuVar2" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n                ppppppuVar2 = (undefined4 ******)((int)ppppppuVar2 + 0x3f);\n              }" { (expression_statement "ppppppuVar2 = (undefined4 ******)((int)ppppppuVar2 + 0x3f);" (assignment_expression "ppppppuVar2 = (undefined4 ******)((int)ppppppuVar2 + 0x3f)" identifier = (cast_expression "(undefined4 ******)((int)ppppppuVar2 + 0x3f)" ( (type_descriptor "undefined4 ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (parenthesized_expression "((int)ppppppuVar2 + 0x3f)" ( (binary_expression "(int)ppppppuVar2 + 0x3f" (cast_expression "(int)ppppppuVar2" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) })) (expression_statement "iVar15 = (int)ppppppuVar2 >> 6;" (assignment_expression "iVar15 = (int)ppppppuVar2 >> 6" identifier = (binary_expression "(int)ppppppuVar2 >> 6" (cast_expression "(int)ppppppuVar2" ( (type_descriptor "int" primitive_type) ) identifier) >> number_literal)) ;) (expression_statement "pcVar23 = *(code **)(pcStack_208 + -0x7774);" (assignment_expression "pcVar23 = *(code **)(pcStack_208 + -0x7774)" identifier = (pointer_expression "*(code **)(pcStack_208 + -0x7774)" * (cast_expression "(code **)(pcStack_208 + -0x7774)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_208 + -0x7774)" ( (binary_expression "pcStack_208 + -0x7774" identifier + number_literal) ))))) ;) (if_statement "if (extraout_v1_06 < iVar15) {\nLAB_001c98ac:\n                (*pcVar23)(7);\n                iVar15 = extraout_v1_04;\n              }" if (parenthesized_expression "(extraout_v1_06 < iVar15)" ( (binary_expression "extraout_v1_06 < iVar15" identifier < identifier) )) (compound_statement "{\nLAB_001c98ac:\n                (*pcVar23)(7);\n                iVar15 = extraout_v1_04;\n              }" { (labeled_statement "LAB_001c98ac:\n                (*pcVar23)(7);" statement_identifier : (expression_statement "(*pcVar23)(7);" (call_expression "(*pcVar23)(7)" (parenthesized_expression "(*pcVar23)" ( (pointer_expression "*pcVar23" * identifier) )) (argument_list "(7)" ( number_literal ))) ;)) (expression_statement "iVar15 = extraout_v1_04;" (assignment_expression "iVar15 = extraout_v1_04" identifier = identifier) ;) })) (goto_statement "goto LAB_001c96d8;" goto statement_identifier ;) })) (expression_statement "iVar14 = *(int *)(pcStack_208 + -0x7f10);" (assignment_expression "iVar14 = *(int *)(pcStack_208 + -0x7f10)" identifier = (pointer_expression "*(int *)(pcStack_208 + -0x7f10)" * (cast_expression "(int *)(pcStack_208 + -0x7f10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_208 + -0x7f10)" ( (binary_expression "pcStack_208 + -0x7f10" identifier + number_literal) ))))) ;) }) (else_clause "else {\n            uVar36 = (**(code **)(pcStack_208 + -0x7774))(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              uVar36 = (*pcVar23)(7);\n              if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c96c0;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              iVar15 = 1;\n            }\n            else {\nLAB_001c96c0:\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\nLAB_001c96c4:\n              uVar36 = (*pcVar23)(7);\n              if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n                 (pcVar23 = *(code **)(pcStack_208 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c98ac;\n              iVar15 = 2;\n            }\nLAB_001c96d8:\n            iVar14 = *(int *)(pcStack_208 + -0x7f10);\n          }" else (compound_statement "{\n            uVar36 = (**(code **)(pcStack_208 + -0x7774))(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              uVar36 = (*pcVar23)(7);\n              if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c96c0;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              iVar15 = 1;\n            }\n            else {\nLAB_001c96c0:\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\nLAB_001c96c4:\n              uVar36 = (*pcVar23)(7);\n              if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n                 (pcVar23 = *(code **)(pcStack_208 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c98ac;\n              iVar15 = 2;\n            }\nLAB_001c96d8:\n            iVar14 = *(int *)(pcStack_208 + -0x7f10);\n          }" { (expression_statement "uVar36 = (**(code **)(pcStack_208 + -0x7774))(7);" (assignment_expression "uVar36 = (**(code **)(pcStack_208 + -0x7774))(7)" identifier = (call_expression "(**(code **)(pcStack_208 + -0x7774))(7)" (parenthesized_expression "(**(code **)(pcStack_208 + -0x7774))" ( (pointer_expression "**(code **)(pcStack_208 + -0x7774)" * (pointer_expression "*(code **)(pcStack_208 + -0x7774)" * (cast_expression "(code **)(pcStack_208 + -0x7774)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_208 + -0x7774)" ( (binary_expression "pcStack_208 + -0x7774" identifier + number_literal) ))))) )) (argument_list "(7)" ( number_literal )))) ;) (if_statement "if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              uVar36 = (*pcVar23)(7);\n              if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c96c0;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              iVar15 = 1;\n            }\n            else {\nLAB_001c96c0:\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\nLAB_001c96c4:\n              uVar36 = (*pcVar23)(7);\n              if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n                 (pcVar23 = *(code **)(pcStack_208 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c98ac;\n              iVar15 = 2;\n            }" if (parenthesized_expression "((int)((ulonglong)uVar36 >> 0x20) == 0)" ( (binary_expression "(int)((ulonglong)uVar36 >> 0x20) == 0" (cast_expression "(int)((ulonglong)uVar36 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)uVar36 >> 0x20)" ( (binary_expression "(ulonglong)uVar36 >> 0x20" (cast_expression "(ulonglong)uVar36" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) ))) == number_literal) )) (compound_statement "{\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              uVar36 = (*pcVar23)(7);\n              if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c96c0;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              iVar15 = 1;\n            }" { (expression_statement "pcVar23 = *(code **)(pcStack_208 + -0x7774);" (assignment_expression "pcVar23 = *(code **)(pcStack_208 + -0x7774)" identifier = (pointer_expression "*(code **)(pcStack_208 + -0x7774)" * (cast_expression "(code **)(pcStack_208 + -0x7774)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_208 + -0x7774)" ( (binary_expression "pcStack_208 + -0x7774" identifier + number_literal) ))))) ;) (if_statement "if (1 < (uint)uVar36) goto LAB_001c96c4;" if (parenthesized_expression "(1 < (uint)uVar36)" ( (binary_expression "1 < (uint)uVar36" number_literal < (cast_expression "(uint)uVar36" ( (type_descriptor "uint" type_identifier) ) identifier)) )) (goto_statement "goto LAB_001c96c4;" goto statement_identifier ;)) (expression_statement "uVar36 = (*pcVar23)(7);" (assignment_expression "uVar36 = (*pcVar23)(7)" identifier = (call_expression "(*pcVar23)(7)" (parenthesized_expression "(*pcVar23)" ( (pointer_expression "*pcVar23" * identifier) )) (argument_list "(7)" ( number_literal )))) ;) (if_statement "if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c96c0;" if (parenthesized_expression "((int)((ulonglong)uVar36 >> 0x20) != 0)" ( (binary_expression "(int)((ulonglong)uVar36 >> 0x20) != 0" (cast_expression "(int)((ulonglong)uVar36 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)uVar36 >> 0x20)" ( (binary_expression "(ulonglong)uVar36 >> 0x20" (cast_expression "(ulonglong)uVar36" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) ))) != number_literal) )) (goto_statement "goto LAB_001c96c0;" goto statement_identifier ;)) (expression_statement "pcVar23 = *(code **)(pcStack_208 + -0x7774);" (assignment_expression "pcVar23 = *(code **)(pcStack_208 + -0x7774)" identifier = (pointer_expression "*(code **)(pcStack_208 + -0x7774)" * (cast_expression "(code **)(pcStack_208 + -0x7774)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_208 + -0x7774)" ( (binary_expression "pcStack_208 + -0x7774" identifier + number_literal) ))))) ;) (if_statement "if (1 < (uint)uVar36) goto LAB_001c96c4;" if (parenthesized_expression "(1 < (uint)uVar36)" ( (binary_expression "1 < (uint)uVar36" number_literal < (cast_expression "(uint)uVar36" ( (type_descriptor "uint" type_identifier) ) identifier)) )) (goto_statement "goto LAB_001c96c4;" goto statement_identifier ;)) (expression_statement "iVar15 = 1;" (assignment_expression "iVar15 = 1" identifier = number_literal) ;) }) (else_clause "else {\nLAB_001c96c0:\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\nLAB_001c96c4:\n              uVar36 = (*pcVar23)(7);\n              if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n                 (pcVar23 = *(code **)(pcStack_208 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c98ac;\n              iVar15 = 2;\n            }" else (compound_statement "{\nLAB_001c96c0:\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\nLAB_001c96c4:\n              uVar36 = (*pcVar23)(7);\n              if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n                 (pcVar23 = *(code **)(pcStack_208 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c98ac;\n              iVar15 = 2;\n            }" { (labeled_statement "LAB_001c96c0:\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);" statement_identifier : (expression_statement "pcVar23 = *(code **)(pcStack_208 + -0x7774);" (assignment_expression "pcVar23 = *(code **)(pcStack_208 + -0x7774)" identifier = (pointer_expression "*(code **)(pcStack_208 + -0x7774)" * (cast_expression "(code **)(pcStack_208 + -0x7774)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_208 + -0x7774)" ( (binary_expression "pcStack_208 + -0x7774" identifier + number_literal) ))))) ;)) (labeled_statement "LAB_001c96c4:\n              uVar36 = (*pcVar23)(7);" statement_identifier : (expression_statement "uVar36 = (*pcVar23)(7);" (assignment_expression "uVar36 = (*pcVar23)(7)" identifier = (call_expression "(*pcVar23)(7)" (parenthesized_expression "(*pcVar23)" ( (pointer_expression "*pcVar23" * identifier) )) (argument_list "(7)" ( number_literal )))) ;)) (if_statement "if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n                 (pcVar23 = *(code **)(pcStack_208 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c98ac;" if (parenthesized_expression "(((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n                 (pcVar23 = *(code **)(pcStack_208 + -0x7774), (uint)uVar36 < 2))" ( (binary_expression "((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n                 (pcVar23 = *(code **)(pcStack_208 + -0x7774), (uint)uVar36 < 2)" (parenthesized_expression "((int)((ulonglong)uVar36 >> 0x20) == 0)" ( (binary_expression "(int)((ulonglong)uVar36 >> 0x20) == 0" (cast_expression "(int)((ulonglong)uVar36 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)uVar36 >> 0x20)" ( (binary_expression "(ulonglong)uVar36 >> 0x20" (cast_expression "(ulonglong)uVar36" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) ))) == number_literal) )) && (parenthesized_expression "(pcVar23 = *(code **)(pcStack_208 + -0x7774), (uint)uVar36 < 2)" ( (comma_expression "pcVar23 = *(code **)(pcStack_208 + -0x7774), (uint)uVar36 < 2" (assignment_expression "pcVar23 = *(code **)(pcStack_208 + -0x7774)" identifier = (pointer_expression "*(code **)(pcStack_208 + -0x7774)" * (cast_expression "(code **)(pcStack_208 + -0x7774)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_208 + -0x7774)" ( (binary_expression "pcStack_208 + -0x7774" identifier + number_literal) ))))) , (binary_expression "(uint)uVar36 < 2" (cast_expression "(uint)uVar36" ( (type_descriptor "uint" type_identifier) ) identifier) < number_literal)) ))) )) (goto_statement "goto LAB_001c98ac;" goto statement_identifier ;)) (expression_statement "iVar15 = 2;" (assignment_expression "iVar15 = 2" identifier = number_literal) ;) }))) (labeled_statement "LAB_001c96d8:\n            iVar14 = *(int *)(pcStack_208 + -0x7f10);" statement_identifier : (expression_statement "iVar14 = *(int *)(pcStack_208 + -0x7f10);" (assignment_expression "iVar14 = *(int *)(pcStack_208 + -0x7f10)" identifier = (pointer_expression "*(int *)(pcStack_208 + -0x7f10)" * (cast_expression "(int *)(pcStack_208 + -0x7f10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_208 + -0x7f10)" ( (binary_expression "pcStack_208 + -0x7f10" identifier + number_literal) ))))) ;)) }))) (expression_statement "puStack_1dc = &uStack_1f8;" (assignment_expression "puStack_1dc = &uStack_1f8" identifier = (pointer_expression "&uStack_1f8" & identifier)) ;) (expression_statement "pppppppuStack_1d8 = (undefined4 *******)0x1;" (assignment_expression "pppppppuStack_1d8 = (undefined4 *******)0x1" identifier = (cast_expression "(undefined4 *******)0x1" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "pppppppuStack_1f0 = pppppppuVar13;" (assignment_expression "pppppppuStack_1f0 = pppppppuVar13" identifier = identifier) ;) (expression_statement "pppppppuStack_1ec = pppppppuVar9;" (assignment_expression "pppppppuStack_1ec = pppppppuVar9" identifier = identifier) ;) (expression_statement "pppppppuStack_1e8 = unaff_s5;" (assignment_expression "pppppppuStack_1e8 = unaff_s5" identifier = identifier) ;) (expression_statement "piStack_1e4 = piVar18;" (assignment_expression "piStack_1e4 = piVar18" identifier = identifier) ;) (expression_statement "pppppppuStack_1e0 = pppppppuVar12;" (assignment_expression "pppppppuStack_1e0 = pppppppuVar12" identifier = identifier) ;) (expression_statement "(**(code **)(pcStack_208 + -0x7718))(iVar14 + 0x56bc,&pppppppuStack_1f0,iVar15,0);" (call_expression "(**(code **)(pcStack_208 + -0x7718))(iVar14 + 0x56bc,&pppppppuStack_1f0,iVar15,0)" (parenthesized_expression "(**(code **)(pcStack_208 + -0x7718))" ( (pointer_expression "**(code **)(pcStack_208 + -0x7718)" * (pointer_expression "*(code **)(pcStack_208 + -0x7718)" * (cast_expression "(code **)(pcStack_208 + -0x7718)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_208 + -0x7718)" ( (binary_expression "pcStack_208 + -0x7718" identifier + number_literal) ))))) )) (argument_list "(iVar14 + 0x56bc,&pppppppuStack_1f0,iVar15,0)" ( (binary_expression "iVar14 + 0x56bc" identifier + number_literal) , (pointer_expression "&pppppppuStack_1f0" & identifier) , identifier , number_literal ))) ;) (expression_statement "pppppppuVar9 = pppppppuStack_1d8;" (assignment_expression "pppppppuVar9 = pppppppuStack_1d8" identifier = identifier) ;) (expression_statement "(**(code **)(pcStack_208 + -0x79bc))(unaff_s5);" (call_expression "(**(code **)(pcStack_208 + -0x79bc))(unaff_s5)" (parenthesized_expression "(**(code **)(pcStack_208 + -0x79bc))" ( (pointer_expression "**(code **)(pcStack_208 + -0x79bc)" * (pointer_expression "*(code **)(pcStack_208 + -0x79bc)" * (cast_expression "(code **)(pcStack_208 + -0x79bc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_208 + -0x79bc)" ( (binary_expression "pcStack_208 + -0x79bc" identifier + number_literal) ))))) )) (argument_list "(unaff_s5)" ( identifier ))) ;) (expression_statement "(**(code **)(pcStack_208 + -0x79bc))(piVar18);" (call_expression "(**(code **)(pcStack_208 + -0x79bc))(piVar18)" (parenthesized_expression "(**(code **)(pcStack_208 + -0x79bc))" ( (pointer_expression "**(code **)(pcStack_208 + -0x79bc)" * (pointer_expression "*(code **)(pcStack_208 + -0x79bc)" * (cast_expression "(code **)(pcStack_208 + -0x79bc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_208 + -0x79bc)" ( (binary_expression "pcStack_208 + -0x79bc" identifier + number_literal) ))))) )) (argument_list "(piVar18)" ( identifier ))) ;) (expression_statement "pppppppuVar12[0xa8] = pppppppuVar13[0xa8];" (assignment_expression "pppppppuVar12[0xa8] = pppppppuVar13[0xa8]" (subscript_expression "pppppppuVar12[0xa8]" identifier [ number_literal ]) = (subscript_expression "pppppppuVar13[0xa8]" identifier [ number_literal ])) ;) (if_statement "if (unaff_s2 != (undefined4 ******)0x0) {\n            unaff_s6 = (undefined4 *******)\n                       ((int)unaff_s2 + (-(int)unaff_s6 - (int)pppppppuVar12[7]));\n          }" if (parenthesized_expression "(unaff_s2 != (undefined4 ******)0x0)" ( (binary_expression "unaff_s2 != (undefined4 ******)0x0" identifier != (cast_expression "(undefined4 ******)0x0" ( (type_descriptor "undefined4 ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n            unaff_s6 = (undefined4 *******)\n                       ((int)unaff_s2 + (-(int)unaff_s6 - (int)pppppppuVar12[7]));\n          }" { (expression_statement "unaff_s6 = (undefined4 *******)\n                       ((int)unaff_s2 + (-(int)unaff_s6 - (int)pppppppuVar12[7]));" (assignment_expression "unaff_s6 = (undefined4 *******)\n                       ((int)unaff_s2 + (-(int)unaff_s6 - (int)pppppppuVar12[7]))" identifier = (cast_expression "(undefined4 *******)\n                       ((int)unaff_s2 + (-(int)unaff_s6 - (int)pppppppuVar12[7]))" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)unaff_s2 + (-(int)unaff_s6 - (int)pppppppuVar12[7]))" ( (binary_expression "(int)unaff_s2 + (-(int)unaff_s6 - (int)pppppppuVar12[7])" (cast_expression "(int)unaff_s2" ( (type_descriptor "int" primitive_type) ) identifier) + (parenthesized_expression "(-(int)unaff_s6 - (int)pppppppuVar12[7])" ( (binary_expression "-(int)unaff_s6 - (int)pppppppuVar12[7]" (unary_expression "-(int)unaff_s6" - (cast_expression "(int)unaff_s6" ( (type_descriptor "int" primitive_type) ) identifier)) - (cast_expression "(int)pppppppuVar12[7]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "pppppppuVar12[7]" identifier [ number_literal ]))) ))) )))) ;) })) (expression_statement "pppppppuVar12[0x8a] = unaff_s8;" (assignment_expression "pppppppuVar12[0x8a] = unaff_s8" (subscript_expression "pppppppuVar12[0x8a]" identifier [ number_literal ]) = identifier) ;) (expression_statement "pppppppuVar12[0x8b] = unaff_s2;" (assignment_expression "pppppppuVar12[0x8b] = unaff_s2" (subscript_expression "pppppppuVar12[0x8b]" identifier [ number_literal ]) = identifier) ;) (expression_statement "pppppppuVar12[0x8c] = ppppppuStack_1fc;" (assignment_expression "pppppppuVar12[0x8c] = ppppppuStack_1fc" (subscript_expression "pppppppuVar12[0x8c]" identifier [ number_literal ]) = identifier) ;) (expression_statement "pppppppuVar12[0x8d] = unaff_s6;" (assignment_expression "pppppppuVar12[0x8d] = unaff_s6" (subscript_expression "pppppppuVar12[0x8d]" identifier [ number_literal ]) = identifier) ;) (if_statement "if (pppppppuVar9 == (undefined4 *******)0x0) {\n            pppppppuVar12 = (undefined4 *******)(**(code **)(pcStack_208 + -0x7964))(pppppppuVar12);\n          }" if (parenthesized_expression "(pppppppuVar9 == (undefined4 *******)0x0)" ( (binary_expression "pppppppuVar9 == (undefined4 *******)0x0" identifier == (cast_expression "(undefined4 *******)0x0" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n            pppppppuVar12 = (undefined4 *******)(**(code **)(pcStack_208 + -0x7964))(pppppppuVar12);\n          }" { (expression_statement "pppppppuVar12 = (undefined4 *******)(**(code **)(pcStack_208 + -0x7964))(pppppppuVar12);" (assignment_expression "pppppppuVar12 = (undefined4 *******)(**(code **)(pcStack_208 + -0x7964))(pppppppuVar12)" identifier = (cast_expression "(undefined4 *******)(**(code **)(pcStack_208 + -0x7964))(pppppppuVar12)" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(**(code **)(pcStack_208 + -0x7964))(pppppppuVar12)" (parenthesized_expression "(**(code **)(pcStack_208 + -0x7964))" ( (pointer_expression "**(code **)(pcStack_208 + -0x7964)" * (pointer_expression "*(code **)(pcStack_208 + -0x7964)" * (cast_expression "(code **)(pcStack_208 + -0x7964)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_208 + -0x7964)" ( (binary_expression "pcStack_208 + -0x7964" identifier + number_literal) ))))) )) (argument_list "(pppppppuVar12)" ( identifier ))))) ;) })) })) (expression_statement "pcVar23 = pcStack_208;" (assignment_expression "pcVar23 = pcStack_208" identifier = identifier) ;) (if_statement "if (iStack_1d4 == *piVar16) {\n          return pppppppuVar12;\n        }" if (parenthesized_expression "(iStack_1d4 == *piVar16)" ( (binary_expression "iStack_1d4 == *piVar16" identifier == (pointer_expression "*piVar16" * identifier)) )) (compound_statement "{\n          return pppppppuVar12;\n        }" { (return_statement "return pppppppuVar12;" return identifier ;) })) (goto_statement "goto LAB_001c9968;" goto statement_identifier ;) })) (goto_statement "goto LAB_001c9974;" goto statement_identifier ;) })) }))) (expression_statement "pcVar21 = *(code **)(pcVar23 + -0x72a8);" (assignment_expression "pcVar21 = *(code **)(pcVar23 + -0x72a8)" identifier = (pointer_expression "*(code **)(pcVar23 + -0x72a8)" * (cast_expression "(code **)(pcVar23 + -0x72a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar23 + -0x72a8)" ( (binary_expression "pcVar23 + -0x72a8" identifier + number_literal) ))))) ;) (expression_statement "iVar14 = *(int *)(pcVar23 + -0x7fc4) + -0x288c;" (assignment_expression "iVar14 = *(int *)(pcVar23 + -0x7fc4) + -0x288c" identifier = (binary_expression "*(int *)(pcVar23 + -0x7fc4) + -0x288c" (pointer_expression "*(int *)(pcVar23 + -0x7fc4)" * (cast_expression "(int *)(pcVar23 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar23 + -0x7fc4)" ( (binary_expression "pcVar23 + -0x7fc4" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "pcVar24 = FlopImage;" (assignment_expression "pcVar24 = FlopImage" identifier = identifier) ;) (expression_statement "iVar15 = *(int *)(pcVar23 + -0x7fc8) + -0x3784;" (assignment_expression "iVar15 = *(int *)(pcVar23 + -0x7fc8) + -0x3784" identifier = (binary_expression "*(int *)(pcVar23 + -0x7fc8) + -0x3784" (pointer_expression "*(int *)(pcVar23 + -0x7fc8)" * (cast_expression "(int *)(pcVar23 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar23 + -0x7fc8)" ( (binary_expression "pcVar23 + -0x7fc8" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "(*pcVar21)(iVar15,iVar14,0x4bd,*(int *)(pcVar23 + -0x7fc4) + -0x26e0);" (call_expression "(*pcVar21)(iVar15,iVar14,0x4bd,*(int *)(pcVar23 + -0x7fc4) + -0x26e0)" (parenthesized_expression "(*pcVar21)" ( (pointer_expression "*pcVar21" * identifier) )) (argument_list "(iVar15,iVar14,0x4bd,*(int *)(pcVar23 + -0x7fc4) + -0x26e0)" ( identifier , identifier , number_literal , (binary_expression "*(int *)(pcVar23 + -0x7fc4) + -0x26e0" (pointer_expression "*(int *)(pcVar23 + -0x7fc4)" * (cast_expression "(int *)(pcVar23 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar23 + -0x7fc4)" ( (binary_expression "pcVar23 + -0x7fc4" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "piVar17 = *(int **)(pcVar21 + 0x1df874);" (assignment_expression "piVar17 = *(int **)(pcVar21 + 0x1df874)" identifier = (pointer_expression "*(int **)(pcVar21 + 0x1df874)" * (cast_expression "(int **)(pcVar21 + 0x1df874)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0x1df874)" ( (binary_expression "pcVar21 + 0x1df874" identifier + number_literal) ))))) ;) (expression_statement "iStack_24c = *piVar17;" (assignment_expression "iStack_24c = *piVar17" identifier = (pointer_expression "*piVar17" * identifier)) ;) (expression_statement "pppppppuStack_248 = pppppppuVar12;" (assignment_expression "pppppppuStack_248 = pppppppuVar12" identifier = identifier) ;) (expression_statement "ppppppuStack_240 = unaff_s2;" (assignment_expression "ppppppuStack_240 = unaff_s2" identifier = identifier) ;) (expression_statement "piStack_23c = piVar16;" (assignment_expression "piStack_23c = piVar16" identifier = identifier) ;) (expression_statement "piStack_238 = piVar18;" (assignment_expression "piStack_238 = piVar18" identifier = identifier) ;) (expression_statement "pppppppuStack_234 = unaff_s5;" (assignment_expression "pppppppuStack_234 = unaff_s5" identifier = identifier) ;) (expression_statement "pppppppuStack_230 = unaff_s6;" (assignment_expression "pppppppuStack_230 = unaff_s6" identifier = identifier) ;) (expression_statement "pppppppuStack_22c = pppppppuVar13;" (assignment_expression "pppppppuStack_22c = pppppppuVar13" identifier = identifier) ;) (expression_statement "pppppppuStack_228 = unaff_s8;" (assignment_expression "pppppppuStack_228 = unaff_s8" identifier = identifier) ;) (expression_statement "pcStack_224 = pcVar24;" (assignment_expression "pcStack_224 = pcVar24" identifier = identifier) ;) (if_statement "if (iVar15 == 0) {\n    pppppppuVar9 = (undefined4 *******)\n                   (**(code **)(pcVar21 + 0x1dfc4c))\n                             (*(int *)(pcVar21 + 0x1def2c) + -0x37b0,\n                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x543,\n                              *(int *)(pcVar21 + 0x1def30) + -0x26f8);\n    return pppppppuVar9;\n  }" if (parenthesized_expression "(iVar15 == 0)" ( (binary_expression "iVar15 == 0" identifier == number_literal) )) (compound_statement "{\n    pppppppuVar9 = (undefined4 *******)\n                   (**(code **)(pcVar21 + 0x1dfc4c))\n                             (*(int *)(pcVar21 + 0x1def2c) + -0x37b0,\n                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x543,\n                              *(int *)(pcVar21 + 0x1def30) + -0x26f8);\n    return pppppppuVar9;\n  }" { (expression_statement "pppppppuVar9 = (undefined4 *******)\n                   (**(code **)(pcVar21 + 0x1dfc4c))\n                             (*(int *)(pcVar21 + 0x1def2c) + -0x37b0,\n                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x543,\n                              *(int *)(pcVar21 + 0x1def30) + -0x26f8);" (assignment_expression "pppppppuVar9 = (undefined4 *******)\n                   (**(code **)(pcVar21 + 0x1dfc4c))\n                             (*(int *)(pcVar21 + 0x1def2c) + -0x37b0,\n                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x543,\n                              *(int *)(pcVar21 + 0x1def30) + -0x26f8)" identifier = (cast_expression "(undefined4 *******)\n                   (**(code **)(pcVar21 + 0x1dfc4c))\n                             (*(int *)(pcVar21 + 0x1def2c) + -0x37b0,\n                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x543,\n                              *(int *)(pcVar21 + 0x1def30) + -0x26f8)" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(**(code **)(pcVar21 + 0x1dfc4c))\n                             (*(int *)(pcVar21 + 0x1def2c) + -0x37b0,\n                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x543,\n                              *(int *)(pcVar21 + 0x1def30) + -0x26f8)" (parenthesized_expression "(**(code **)(pcVar21 + 0x1dfc4c))" ( (pointer_expression "**(code **)(pcVar21 + 0x1dfc4c)" * (pointer_expression "*(code **)(pcVar21 + 0x1dfc4c)" * (cast_expression "(code **)(pcVar21 + 0x1dfc4c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0x1dfc4c)" ( (binary_expression "pcVar21 + 0x1dfc4c" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar21 + 0x1def2c) + -0x37b0,\n                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x543,\n                              *(int *)(pcVar21 + 0x1def30) + -0x26f8)" ( (binary_expression "*(int *)(pcVar21 + 0x1def2c) + -0x37b0" (pointer_expression "*(int *)(pcVar21 + 0x1def2c)" * (cast_expression "(int *)(pcVar21 + 0x1def2c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0x1def2c)" ( (binary_expression "pcVar21 + 0x1def2c" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar21 + 0x1def30) + -0x288c" (pointer_expression "*(int *)(pcVar21 + 0x1def30)" * (cast_expression "(int *)(pcVar21 + 0x1def30)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0x1def30)" ( (binary_expression "pcVar21 + 0x1def30" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar21 + 0x1def30) + -0x26f8" (pointer_expression "*(int *)(pcVar21 + 0x1def30)" * (cast_expression "(int *)(pcVar21 + 0x1def30)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0x1def30)" ( (binary_expression "pcVar21 + 0x1def30" identifier + number_literal) )))) + number_literal) ))))) ;) (return_statement "return pppppppuVar9;" return identifier ;) })) (if_statement "if (*(int *)(iVar15 + 0x336c) != -0x54535255) {\n    pppppppuVar9 = (undefined4 *******)\n                   (**(code **)(pcVar21 + 0x1dfc4c))\n                             (*(int *)(pcVar21 + 0x1def2c) + -0x3784,\n                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x544,\n                              *(int *)(pcVar21 + 0x1def30) + -0x26f8);\n    return pppppppuVar9;\n  }" if (parenthesized_expression "(*(int *)(iVar15 + 0x336c) != -0x54535255)" ( (binary_expression "*(int *)(iVar15 + 0x336c) != -0x54535255" (pointer_expression "*(int *)(iVar15 + 0x336c)" * (cast_expression "(int *)(iVar15 + 0x336c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar15 + 0x336c)" ( (binary_expression "iVar15 + 0x336c" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n    pppppppuVar9 = (undefined4 *******)\n                   (**(code **)(pcVar21 + 0x1dfc4c))\n                             (*(int *)(pcVar21 + 0x1def2c) + -0x3784,\n                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x544,\n                              *(int *)(pcVar21 + 0x1def30) + -0x26f8);\n    return pppppppuVar9;\n  }" { (expression_statement "pppppppuVar9 = (undefined4 *******)\n                   (**(code **)(pcVar21 + 0x1dfc4c))\n                             (*(int *)(pcVar21 + 0x1def2c) + -0x3784,\n                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x544,\n                              *(int *)(pcVar21 + 0x1def30) + -0x26f8);" (assignment_expression "pppppppuVar9 = (undefined4 *******)\n                   (**(code **)(pcVar21 + 0x1dfc4c))\n                             (*(int *)(pcVar21 + 0x1def2c) + -0x3784,\n                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x544,\n                              *(int *)(pcVar21 + 0x1def30) + -0x26f8)" identifier = (cast_expression "(undefined4 *******)\n                   (**(code **)(pcVar21 + 0x1dfc4c))\n                             (*(int *)(pcVar21 + 0x1def2c) + -0x3784,\n                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x544,\n                              *(int *)(pcVar21 + 0x1def30) + -0x26f8)" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(**(code **)(pcVar21 + 0x1dfc4c))\n                             (*(int *)(pcVar21 + 0x1def2c) + -0x3784,\n                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x544,\n                              *(int *)(pcVar21 + 0x1def30) + -0x26f8)" (parenthesized_expression "(**(code **)(pcVar21 + 0x1dfc4c))" ( (pointer_expression "**(code **)(pcVar21 + 0x1dfc4c)" * (pointer_expression "*(code **)(pcVar21 + 0x1dfc4c)" * (cast_expression "(code **)(pcVar21 + 0x1dfc4c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0x1dfc4c)" ( (binary_expression "pcVar21 + 0x1dfc4c" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar21 + 0x1def2c) + -0x3784,\n                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x544,\n                              *(int *)(pcVar21 + 0x1def30) + -0x26f8)" ( (binary_expression "*(int *)(pcVar21 + 0x1def2c) + -0x3784" (pointer_expression "*(int *)(pcVar21 + 0x1def2c)" * (cast_expression "(int *)(pcVar21 + 0x1def2c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0x1def2c)" ( (binary_expression "pcVar21 + 0x1def2c" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar21 + 0x1def30) + -0x288c" (pointer_expression "*(int *)(pcVar21 + 0x1def30)" * (cast_expression "(int *)(pcVar21 + 0x1def30)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0x1def30)" ( (binary_expression "pcVar21 + 0x1def30" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar21 + 0x1def30) + -0x26f8" (pointer_expression "*(int *)(pcVar21 + 0x1def30)" * (cast_expression "(int *)(pcVar21 + 0x1def30)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0x1def30)" ( (binary_expression "pcVar21 + 0x1def30" identifier + number_literal) )))) + number_literal) ))))) ;) (return_statement "return pppppppuVar9;" return identifier ;) })) (if_statement "if (*(int *)(iVar15 + 0x3350) != 0) {\n    (**(code **)(pcVar21 + 0x1df824))\n              (0x8000,*(int *)(pcVar21 + 0x1def30) + -0x288c,*(int *)(pcVar21 + 0x1def30) + -0x2704,\n               0x546,*(int *)(pcVar21 + 0x1def28) + -0x62ac,iVar15 + 0x340);\n  }" if (parenthesized_expression "(*(int *)(iVar15 + 0x3350) != 0)" ( (binary_expression "*(int *)(iVar15 + 0x3350) != 0" (pointer_expression "*(int *)(iVar15 + 0x3350)" * (cast_expression "(int *)(iVar15 + 0x3350)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar15 + 0x3350)" ( (binary_expression "iVar15 + 0x3350" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n    (**(code **)(pcVar21 + 0x1df824))\n              (0x8000,*(int *)(pcVar21 + 0x1def30) + -0x288c,*(int *)(pcVar21 + 0x1def30) + -0x2704,\n               0x546,*(int *)(pcVar21 + 0x1def28) + -0x62ac,iVar15 + 0x340);\n  }" { (expression_statement "(**(code **)(pcVar21 + 0x1df824))\n              (0x8000,*(int *)(pcVar21 + 0x1def30) + -0x288c,*(int *)(pcVar21 + 0x1def30) + -0x2704,\n               0x546,*(int *)(pcVar21 + 0x1def28) + -0x62ac,iVar15 + 0x340);" (call_expression "(**(code **)(pcVar21 + 0x1df824))\n              (0x8000,*(int *)(pcVar21 + 0x1def30) + -0x288c,*(int *)(pcVar21 + 0x1def30) + -0x2704,\n               0x546,*(int *)(pcVar21 + 0x1def28) + -0x62ac,iVar15 + 0x340)" (parenthesized_expression "(**(code **)(pcVar21 + 0x1df824))" ( (pointer_expression "**(code **)(pcVar21 + 0x1df824)" * (pointer_expression "*(code **)(pcVar21 + 0x1df824)" * (cast_expression "(code **)(pcVar21 + 0x1df824)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0x1df824)" ( (binary_expression "pcVar21 + 0x1df824" identifier + number_literal) ))))) )) (argument_list "(0x8000,*(int *)(pcVar21 + 0x1def30) + -0x288c,*(int *)(pcVar21 + 0x1def30) + -0x2704,\n               0x546,*(int *)(pcVar21 + 0x1def28) + -0x62ac,iVar15 + 0x340)" ( number_literal , (binary_expression "*(int *)(pcVar21 + 0x1def30) + -0x288c" (pointer_expression "*(int *)(pcVar21 + 0x1def30)" * (cast_expression "(int *)(pcVar21 + 0x1def30)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0x1def30)" ( (binary_expression "pcVar21 + 0x1def30" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar21 + 0x1def30) + -0x2704" (pointer_expression "*(int *)(pcVar21 + 0x1def30)" * (cast_expression "(int *)(pcVar21 + 0x1def30)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0x1def30)" ( (binary_expression "pcVar21 + 0x1def30" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar21 + 0x1def28) + -0x62ac" (pointer_expression "*(int *)(pcVar21 + 0x1def28)" * (cast_expression "(int *)(pcVar21 + 0x1def28)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0x1def28)" ( (binary_expression "pcVar21 + 0x1def28" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar15 + 0x340" identifier + number_literal) ))) ;) })) (if_statement "if (iVar14 == 0) {\n    pppppppuVar9 = (undefined4 *******)\n                   (**(code **)(pcVar21 + 0x1dfc4c))\n                             (*(int *)(pcVar21 + 0x1def24) + 0x1cac,\n                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x547,\n                              *(int *)(pcVar21 + 0x1def30) + -0x26f8);\n    return pppppppuVar9;\n  }" if (parenthesized_expression "(iVar14 == 0)" ( (binary_expression "iVar14 == 0" identifier == number_literal) )) (compound_statement "{\n    pppppppuVar9 = (undefined4 *******)\n                   (**(code **)(pcVar21 + 0x1dfc4c))\n                             (*(int *)(pcVar21 + 0x1def24) + 0x1cac,\n                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x547,\n                              *(int *)(pcVar21 + 0x1def30) + -0x26f8);\n    return pppppppuVar9;\n  }" { (expression_statement "pppppppuVar9 = (undefined4 *******)\n                   (**(code **)(pcVar21 + 0x1dfc4c))\n                             (*(int *)(pcVar21 + 0x1def24) + 0x1cac,\n                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x547,\n                              *(int *)(pcVar21 + 0x1def30) + -0x26f8);" (assignment_expression "pppppppuVar9 = (undefined4 *******)\n                   (**(code **)(pcVar21 + 0x1dfc4c))\n                             (*(int *)(pcVar21 + 0x1def24) + 0x1cac,\n                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x547,\n                              *(int *)(pcVar21 + 0x1def30) + -0x26f8)" identifier = (cast_expression "(undefined4 *******)\n                   (**(code **)(pcVar21 + 0x1dfc4c))\n                             (*(int *)(pcVar21 + 0x1def24) + 0x1cac,\n                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x547,\n                              *(int *)(pcVar21 + 0x1def30) + -0x26f8)" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(**(code **)(pcVar21 + 0x1dfc4c))\n                             (*(int *)(pcVar21 + 0x1def24) + 0x1cac,\n                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x547,\n                              *(int *)(pcVar21 + 0x1def30) + -0x26f8)" (parenthesized_expression "(**(code **)(pcVar21 + 0x1dfc4c))" ( (pointer_expression "**(code **)(pcVar21 + 0x1dfc4c)" * (pointer_expression "*(code **)(pcVar21 + 0x1dfc4c)" * (cast_expression "(code **)(pcVar21 + 0x1dfc4c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0x1dfc4c)" ( (binary_expression "pcVar21 + 0x1dfc4c" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar21 + 0x1def24) + 0x1cac,\n                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x547,\n                              *(int *)(pcVar21 + 0x1def30) + -0x26f8)" ( (binary_expression "*(int *)(pcVar21 + 0x1def24) + 0x1cac" (pointer_expression "*(int *)(pcVar21 + 0x1def24)" * (cast_expression "(int *)(pcVar21 + 0x1def24)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0x1def24)" ( (binary_expression "pcVar21 + 0x1def24" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar21 + 0x1def30) + -0x288c" (pointer_expression "*(int *)(pcVar21 + 0x1def30)" * (cast_expression "(int *)(pcVar21 + 0x1def30)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0x1def30)" ( (binary_expression "pcVar21 + 0x1def30" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar21 + 0x1def30) + -0x26f8" (pointer_expression "*(int *)(pcVar21 + 0x1def30)" * (cast_expression "(int *)(pcVar21 + 0x1def30)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0x1def30)" ( (binary_expression "pcVar21 + 0x1def30" identifier + number_literal) )))) + number_literal) ))))) ;) (return_statement "return pppppppuVar9;" return identifier ;) })) (if_statement "if (*(int *)(iVar14 + 0x1c) != -0x54535255) goto LAB_001c9db0;" if (parenthesized_expression "(*(int *)(iVar14 + 0x1c) != -0x54535255)" ( (binary_expression "*(int *)(iVar14 + 0x1c) != -0x54535255" (pointer_expression "*(int *)(iVar14 + 0x1c)" * (cast_expression "(int *)(iVar14 + 0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar14 + 0x1c)" ( (binary_expression "iVar14 + 0x1c" identifier + number_literal) )))) != number_literal) )) (goto_statement "goto LAB_001c9db0;" goto statement_identifier ;)) (expression_statement "pppppppuVar9 = (undefined4 *******)(**(code **)(pcVar21 + 0x1dfe74))(iVar15,0,0,1,iVar14);" (assignment_expression "pppppppuVar9 = (undefined4 *******)(**(code **)(pcVar21 + 0x1dfe74))(iVar15,0,0,1,iVar14)" identifier = (cast_expression "(undefined4 *******)(**(code **)(pcVar21 + 0x1dfe74))(iVar15,0,0,1,iVar14)" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(**(code **)(pcVar21 + 0x1dfe74))(iVar15,0,0,1,iVar14)" (parenthesized_expression "(**(code **)(pcVar21 + 0x1dfe74))" ( (pointer_expression "**(code **)(pcVar21 + 0x1dfe74)" * (pointer_expression "*(code **)(pcVar21 + 0x1dfe74)" * (cast_expression "(code **)(pcVar21 + 0x1dfe74)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0x1dfe74)" ( (binary_expression "pcVar21 + 0x1dfe74" identifier + number_literal) ))))) )) (argument_list "(iVar15,0,0,1,iVar14)" ( identifier , number_literal , number_literal , number_literal , identifier ))))) ;) (if_statement "if (pppppppuVar9 != (undefined4 *******)0x0) {\n    ppppppuVar2 = *(undefined4 *******)(iVar15 + 0x234);\n    ppppppuVar7 = *(undefined4 *******)(iVar15 + 0x228);\n    ppppppuVar22 = *(undefined4 *******)(iVar15 + 0x22c);\n    ppppppuVar19 = *(undefined4 *******)(iVar15 + 0x230);\n    uStack_26c = 0;\n    uStack_270 = 0;\n    uVar4 = (**(code **)(pcVar21 + 0x1dfd98))(iVar15,iVar14);\n    uVar5 = (**(code **)(pcVar21 + 0x1df518))(pppppppuVar9,iVar14);\n    iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(iVar15);\n    if (((iVar10 == 4) || (iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(iVar15), iVar10 == 3)) &&\n       ((iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(pppppppuVar9), iVar10 == 4 ||\n        (iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(pppppppuVar9), iVar10 == 3)))) {\n      (**(code **)(pcVar21 + 0x1df780))(7);\n      ppppppuVar6 = pppppppuVar9[7];\n      if ((int)ppppppuVar6 < 0) {\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (extraout_v1_07 < (int)ppppppuVar6 + 0x3f >> 6) goto LAB_001c9d10;\nLAB_001c9c58:\n        bVar1 = (int)ppppppuVar6 < 0x80;\n      }\n      else {\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if ((int)ppppppuVar6 >> 6 <= extraout_v1_07) goto LAB_001c9c58;\nLAB_001c9d10:\n        (*pcVar23)(7);\n        bVar1 = extraout_v1_09 < 2;\n      }\n      iVar10 = 1;\n      if ((bool)(bVar1 ^ 1)) {\n        (**(code **)(pcVar21 + 0x1df780))(7);\n        ppppppuVar6 = pppppppuVar9[7];\n        if ((int)ppppppuVar6 < 0) {\n          ppppppuVar6 = (undefined4 ******)((int)ppppppuVar6 + 0x3f);\n        }\n        iVar10 = (int)ppppppuVar6 >> 6;\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (extraout_v1_10 < iVar10) {\nLAB_001c9ce8:\n          (*pcVar23)(7);\n          iVar10 = extraout_v1_08;\n        }\n        goto LAB_001c9b14;\n      }\n      iVar11 = *(int *)(pcVar21 + 0x1defe4);\n    }\n    else {\n      uVar36 = (**(code **)(pcVar21 + 0x1df780))(7);\n      if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (1 < (uint)uVar36) goto LAB_001c9b00;\n        uVar36 = (*pcVar23)(7);\n        if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c9afc;\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (1 < (uint)uVar36) goto LAB_001c9b00;\n        iVar10 = 1;\n      }\n      else {\nLAB_001c9afc:\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\nLAB_001c9b00:\n        uVar36 = (*pcVar23)(7);\n        if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n           (pcVar23 = *(code **)(pcVar21 + 0x1df780), (uint)uVar36 < 2)) goto LAB_001c9ce8;\n        iVar10 = 2;\n      }\nLAB_001c9b14:\n      iVar11 = *(int *)(pcVar21 + 0x1defe4);\n    }\n    puStack_254 = &uStack_270;\n    iStack_250 = 1;\n    iStack_268 = iVar15;\n    iStack_264 = iVar14;\n    uStack_260 = uVar5;\n    uStack_25c = uVar4;\n    pppppppuStack_258 = pppppppuVar9;\n    (**(code **)(pcVar21 + 0x1df7dc))(iVar11 + 0x594c,&iStack_268,iVar10,0);\n    iVar14 = iStack_250;\n    (**(code **)(pcVar21 + 0x1df538))(uVar5);\n    (**(code **)(pcVar21 + 0x1df538))(uVar4);\n    pppppppuVar9[0xa8] = *(undefined4 *******)(iVar15 + 0x2a0);\n    if (ppppppuVar7 != (undefined4 ******)0x0) {\n      ppppppuVar19 = (undefined4 ******)\n                     ((int)ppppppuVar7 + (-(int)ppppppuVar19 - (int)pppppppuVar9[6]));\n    }\n    pppppppuVar9[0x8a] = ppppppuVar7;\n    pppppppuVar9[0x8b] = ppppppuVar22;\n    pppppppuVar9[0x8c] = ppppppuVar19;\n    pppppppuVar9[0x8d] = ppppppuVar2;\n    if (iVar14 == 0) {\n      pppppppuVar9 = (undefined4 *******)(**(code **)(pcVar21 + 0x1df590))(pppppppuVar9);\n    }\n  }" if (parenthesized_expression "(pppppppuVar9 != (undefined4 *******)0x0)" ( (binary_expression "pppppppuVar9 != (undefined4 *******)0x0" identifier != (cast_expression "(undefined4 *******)0x0" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n    ppppppuVar2 = *(undefined4 *******)(iVar15 + 0x234);\n    ppppppuVar7 = *(undefined4 *******)(iVar15 + 0x228);\n    ppppppuVar22 = *(undefined4 *******)(iVar15 + 0x22c);\n    ppppppuVar19 = *(undefined4 *******)(iVar15 + 0x230);\n    uStack_26c = 0;\n    uStack_270 = 0;\n    uVar4 = (**(code **)(pcVar21 + 0x1dfd98))(iVar15,iVar14);\n    uVar5 = (**(code **)(pcVar21 + 0x1df518))(pppppppuVar9,iVar14);\n    iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(iVar15);\n    if (((iVar10 == 4) || (iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(iVar15), iVar10 == 3)) &&\n       ((iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(pppppppuVar9), iVar10 == 4 ||\n        (iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(pppppppuVar9), iVar10 == 3)))) {\n      (**(code **)(pcVar21 + 0x1df780))(7);\n      ppppppuVar6 = pppppppuVar9[7];\n      if ((int)ppppppuVar6 < 0) {\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (extraout_v1_07 < (int)ppppppuVar6 + 0x3f >> 6) goto LAB_001c9d10;\nLAB_001c9c58:\n        bVar1 = (int)ppppppuVar6 < 0x80;\n      }\n      else {\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if ((int)ppppppuVar6 >> 6 <= extraout_v1_07) goto LAB_001c9c58;\nLAB_001c9d10:\n        (*pcVar23)(7);\n        bVar1 = extraout_v1_09 < 2;\n      }\n      iVar10 = 1;\n      if ((bool)(bVar1 ^ 1)) {\n        (**(code **)(pcVar21 + 0x1df780))(7);\n        ppppppuVar6 = pppppppuVar9[7];\n        if ((int)ppppppuVar6 < 0) {\n          ppppppuVar6 = (undefined4 ******)((int)ppppppuVar6 + 0x3f);\n        }\n        iVar10 = (int)ppppppuVar6 >> 6;\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (extraout_v1_10 < iVar10) {\nLAB_001c9ce8:\n          (*pcVar23)(7);\n          iVar10 = extraout_v1_08;\n        }\n        goto LAB_001c9b14;\n      }\n      iVar11 = *(int *)(pcVar21 + 0x1defe4);\n    }\n    else {\n      uVar36 = (**(code **)(pcVar21 + 0x1df780))(7);\n      if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (1 < (uint)uVar36) goto LAB_001c9b00;\n        uVar36 = (*pcVar23)(7);\n        if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c9afc;\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (1 < (uint)uVar36) goto LAB_001c9b00;\n        iVar10 = 1;\n      }\n      else {\nLAB_001c9afc:\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\nLAB_001c9b00:\n        uVar36 = (*pcVar23)(7);\n        if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n           (pcVar23 = *(code **)(pcVar21 + 0x1df780), (uint)uVar36 < 2)) goto LAB_001c9ce8;\n        iVar10 = 2;\n      }\nLAB_001c9b14:\n      iVar11 = *(int *)(pcVar21 + 0x1defe4);\n    }\n    puStack_254 = &uStack_270;\n    iStack_250 = 1;\n    iStack_268 = iVar15;\n    iStack_264 = iVar14;\n    uStack_260 = uVar5;\n    uStack_25c = uVar4;\n    pppppppuStack_258 = pppppppuVar9;\n    (**(code **)(pcVar21 + 0x1df7dc))(iVar11 + 0x594c,&iStack_268,iVar10,0);\n    iVar14 = iStack_250;\n    (**(code **)(pcVar21 + 0x1df538))(uVar5);\n    (**(code **)(pcVar21 + 0x1df538))(uVar4);\n    pppppppuVar9[0xa8] = *(undefined4 *******)(iVar15 + 0x2a0);\n    if (ppppppuVar7 != (undefined4 ******)0x0) {\n      ppppppuVar19 = (undefined4 ******)\n                     ((int)ppppppuVar7 + (-(int)ppppppuVar19 - (int)pppppppuVar9[6]));\n    }\n    pppppppuVar9[0x8a] = ppppppuVar7;\n    pppppppuVar9[0x8b] = ppppppuVar22;\n    pppppppuVar9[0x8c] = ppppppuVar19;\n    pppppppuVar9[0x8d] = ppppppuVar2;\n    if (iVar14 == 0) {\n      pppppppuVar9 = (undefined4 *******)(**(code **)(pcVar21 + 0x1df590))(pppppppuVar9);\n    }\n  }" { (expression_statement "ppppppuVar2 = *(undefined4 *******)(iVar15 + 0x234);" (assignment_expression "ppppppuVar2 = *(undefined4 *******)(iVar15 + 0x234)" identifier = (pointer_expression "*(undefined4 *******)(iVar15 + 0x234)" * (cast_expression "(undefined4 *******)(iVar15 + 0x234)" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(iVar15 + 0x234)" ( (binary_expression "iVar15 + 0x234" identifier + number_literal) ))))) ;) (expression_statement "ppppppuVar7 = *(undefined4 *******)(iVar15 + 0x228);" (assignment_expression "ppppppuVar7 = *(undefined4 *******)(iVar15 + 0x228)" identifier = (pointer_expression "*(undefined4 *******)(iVar15 + 0x228)" * (cast_expression "(undefined4 *******)(iVar15 + 0x228)" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(iVar15 + 0x228)" ( (binary_expression "iVar15 + 0x228" identifier + number_literal) ))))) ;) (expression_statement "ppppppuVar22 = *(undefined4 *******)(iVar15 + 0x22c);" (assignment_expression "ppppppuVar22 = *(undefined4 *******)(iVar15 + 0x22c)" identifier = (pointer_expression "*(undefined4 *******)(iVar15 + 0x22c)" * (cast_expression "(undefined4 *******)(iVar15 + 0x22c)" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(iVar15 + 0x22c)" ( (binary_expression "iVar15 + 0x22c" identifier + number_literal) ))))) ;) (expression_statement "ppppppuVar19 = *(undefined4 *******)(iVar15 + 0x230);" (assignment_expression "ppppppuVar19 = *(undefined4 *******)(iVar15 + 0x230)" identifier = (pointer_expression "*(undefined4 *******)(iVar15 + 0x230)" * (cast_expression "(undefined4 *******)(iVar15 + 0x230)" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(iVar15 + 0x230)" ( (binary_expression "iVar15 + 0x230" identifier + number_literal) ))))) ;) (expression_statement "uStack_26c = 0;" (assignment_expression "uStack_26c = 0" identifier = number_literal) ;) (expression_statement "uStack_270 = 0;" (assignment_expression "uStack_270 = 0" identifier = number_literal) ;) (expression_statement "uVar4 = (**(code **)(pcVar21 + 0x1dfd98))(iVar15,iVar14);" (assignment_expression "uVar4 = (**(code **)(pcVar21 + 0x1dfd98))(iVar15,iVar14)" identifier = (call_expression "(**(code **)(pcVar21 + 0x1dfd98))(iVar15,iVar14)" (parenthesized_expression "(**(code **)(pcVar21 + 0x1dfd98))" ( (pointer_expression "**(code **)(pcVar21 + 0x1dfd98)" * (pointer_expression "*(code **)(pcVar21 + 0x1dfd98)" * (cast_expression "(code **)(pcVar21 + 0x1dfd98)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0x1dfd98)" ( (binary_expression "pcVar21 + 0x1dfd98" identifier + number_literal) ))))) )) (argument_list "(iVar15,iVar14)" ( identifier , identifier )))) ;) (expression_statement "uVar5 = (**(code **)(pcVar21 + 0x1df518))(pppppppuVar9,iVar14);" (assignment_expression "uVar5 = (**(code **)(pcVar21 + 0x1df518))(pppppppuVar9,iVar14)" identifier = (call_expression "(**(code **)(pcVar21 + 0x1df518))(pppppppuVar9,iVar14)" (parenthesized_expression "(**(code **)(pcVar21 + 0x1df518))" ( (pointer_expression "**(code **)(pcVar21 + 0x1df518)" * (pointer_expression "*(code **)(pcVar21 + 0x1df518)" * (cast_expression "(code **)(pcVar21 + 0x1df518)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0x1df518)" ( (binary_expression "pcVar21 + 0x1df518" identifier + number_literal) ))))) )) (argument_list "(pppppppuVar9,iVar14)" ( identifier , identifier )))) ;) (expression_statement "iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(iVar15);" (assignment_expression "iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(iVar15)" identifier = (call_expression "(**(code **)(pcVar21 + 0x1dfaf8))(iVar15)" (parenthesized_expression "(**(code **)(pcVar21 + 0x1dfaf8))" ( (pointer_expression "**(code **)(pcVar21 + 0x1dfaf8)" * (pointer_expression "*(code **)(pcVar21 + 0x1dfaf8)" * (cast_expression "(code **)(pcVar21 + 0x1dfaf8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0x1dfaf8)" ( (binary_expression "pcVar21 + 0x1dfaf8" identifier + number_literal) ))))) )) (argument_list "(iVar15)" ( identifier )))) ;) (if_statement "if (((iVar10 == 4) || (iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(iVar15), iVar10 == 3)) &&\n       ((iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(pppppppuVar9), iVar10 == 4 ||\n        (iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(pppppppuVar9), iVar10 == 3)))) {\n      (**(code **)(pcVar21 + 0x1df780))(7);\n      ppppppuVar6 = pppppppuVar9[7];\n      if ((int)ppppppuVar6 < 0) {\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (extraout_v1_07 < (int)ppppppuVar6 + 0x3f >> 6) goto LAB_001c9d10;\nLAB_001c9c58:\n        bVar1 = (int)ppppppuVar6 < 0x80;\n      }\n      else {\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if ((int)ppppppuVar6 >> 6 <= extraout_v1_07) goto LAB_001c9c58;\nLAB_001c9d10:\n        (*pcVar23)(7);\n        bVar1 = extraout_v1_09 < 2;\n      }\n      iVar10 = 1;\n      if ((bool)(bVar1 ^ 1)) {\n        (**(code **)(pcVar21 + 0x1df780))(7);\n        ppppppuVar6 = pppppppuVar9[7];\n        if ((int)ppppppuVar6 < 0) {\n          ppppppuVar6 = (undefined4 ******)((int)ppppppuVar6 + 0x3f);\n        }\n        iVar10 = (int)ppppppuVar6 >> 6;\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (extraout_v1_10 < iVar10) {\nLAB_001c9ce8:\n          (*pcVar23)(7);\n          iVar10 = extraout_v1_08;\n        }\n        goto LAB_001c9b14;\n      }\n      iVar11 = *(int *)(pcVar21 + 0x1defe4);\n    }\n    else {\n      uVar36 = (**(code **)(pcVar21 + 0x1df780))(7);\n      if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (1 < (uint)uVar36) goto LAB_001c9b00;\n        uVar36 = (*pcVar23)(7);\n        if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c9afc;\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (1 < (uint)uVar36) goto LAB_001c9b00;\n        iVar10 = 1;\n      }\n      else {\nLAB_001c9afc:\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\nLAB_001c9b00:\n        uVar36 = (*pcVar23)(7);\n        if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n           (pcVar23 = *(code **)(pcVar21 + 0x1df780), (uint)uVar36 < 2)) goto LAB_001c9ce8;\n        iVar10 = 2;\n      }\nLAB_001c9b14:\n      iVar11 = *(int *)(pcVar21 + 0x1defe4);\n    }" if (parenthesized_expression "(((iVar10 == 4) || (iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(iVar15), iVar10 == 3)) &&\n       ((iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(pppppppuVar9), iVar10 == 4 ||\n        (iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(pppppppuVar9), iVar10 == 3))))" ( (binary_expression "((iVar10 == 4) || (iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(iVar15), iVar10 == 3)) &&\n       ((iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(pppppppuVar9), iVar10 == 4 ||\n        (iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(pppppppuVar9), iVar10 == 3)))" (parenthesized_expression "((iVar10 == 4) || (iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(iVar15), iVar10 == 3))" ( (binary_expression "(iVar10 == 4) || (iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(iVar15), iVar10 == 3)" (parenthesized_expression "(iVar10 == 4)" ( (binary_expression "iVar10 == 4" identifier == number_literal) )) || (parenthesized_expression "(iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(iVar15), iVar10 == 3)" ( (comma_expression "iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(iVar15), iVar10 == 3" (assignment_expression "iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(iVar15)" identifier = (call_expression "(**(code **)(pcVar21 + 0x1dfaf8))(iVar15)" (parenthesized_expression "(**(code **)(pcVar21 + 0x1dfaf8))" ( (pointer_expression "**(code **)(pcVar21 + 0x1dfaf8)" * (pointer_expression "*(code **)(pcVar21 + 0x1dfaf8)" * (cast_expression "(code **)(pcVar21 + 0x1dfaf8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0x1dfaf8)" ( (binary_expression "pcVar21 + 0x1dfaf8" identifier + number_literal) ))))) )) (argument_list "(iVar15)" ( identifier )))) , (binary_expression "iVar10 == 3" identifier == number_literal)) ))) )) && (parenthesized_expression "((iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(pppppppuVar9), iVar10 == 4 ||\n        (iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(pppppppuVar9), iVar10 == 3)))" ( (parenthesized_expression "(iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(pppppppuVar9), iVar10 == 4 ||\n        (iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(pppppppuVar9), iVar10 == 3))" ( (comma_expression "iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(pppppppuVar9), iVar10 == 4 ||\n        (iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(pppppppuVar9), iVar10 == 3)" (assignment_expression "iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(pppppppuVar9)" identifier = (call_expression "(**(code **)(pcVar21 + 0x1dfaf8))(pppppppuVar9)" (parenthesized_expression "(**(code **)(pcVar21 + 0x1dfaf8))" ( (pointer_expression "**(code **)(pcVar21 + 0x1dfaf8)" * (pointer_expression "*(code **)(pcVar21 + 0x1dfaf8)" * (cast_expression "(code **)(pcVar21 + 0x1dfaf8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0x1dfaf8)" ( (binary_expression "pcVar21 + 0x1dfaf8" identifier + number_literal) ))))) )) (argument_list "(pppppppuVar9)" ( identifier )))) , (binary_expression "iVar10 == 4 ||\n        (iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(pppppppuVar9), iVar10 == 3)" (binary_expression "iVar10 == 4" identifier == number_literal) || (parenthesized_expression "(iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(pppppppuVar9), iVar10 == 3)" ( (comma_expression "iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(pppppppuVar9), iVar10 == 3" (assignment_expression "iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(pppppppuVar9)" identifier = (call_expression "(**(code **)(pcVar21 + 0x1dfaf8))(pppppppuVar9)" (parenthesized_expression "(**(code **)(pcVar21 + 0x1dfaf8))" ( (pointer_expression "**(code **)(pcVar21 + 0x1dfaf8)" * (pointer_expression "*(code **)(pcVar21 + 0x1dfaf8)" * (cast_expression "(code **)(pcVar21 + 0x1dfaf8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0x1dfaf8)" ( (binary_expression "pcVar21 + 0x1dfaf8" identifier + number_literal) ))))) )) (argument_list "(pppppppuVar9)" ( identifier )))) , (binary_expression "iVar10 == 3" identifier == number_literal)) )))) )) ))) )) (compound_statement "{\n      (**(code **)(pcVar21 + 0x1df780))(7);\n      ppppppuVar6 = pppppppuVar9[7];\n      if ((int)ppppppuVar6 < 0) {\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (extraout_v1_07 < (int)ppppppuVar6 + 0x3f >> 6) goto LAB_001c9d10;\nLAB_001c9c58:\n        bVar1 = (int)ppppppuVar6 < 0x80;\n      }\n      else {\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if ((int)ppppppuVar6 >> 6 <= extraout_v1_07) goto LAB_001c9c58;\nLAB_001c9d10:\n        (*pcVar23)(7);\n        bVar1 = extraout_v1_09 < 2;\n      }\n      iVar10 = 1;\n      if ((bool)(bVar1 ^ 1)) {\n        (**(code **)(pcVar21 + 0x1df780))(7);\n        ppppppuVar6 = pppppppuVar9[7];\n        if ((int)ppppppuVar6 < 0) {\n          ppppppuVar6 = (undefined4 ******)((int)ppppppuVar6 + 0x3f);\n        }\n        iVar10 = (int)ppppppuVar6 >> 6;\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (extraout_v1_10 < iVar10) {\nLAB_001c9ce8:\n          (*pcVar23)(7);\n          iVar10 = extraout_v1_08;\n        }\n        goto LAB_001c9b14;\n      }\n      iVar11 = *(int *)(pcVar21 + 0x1defe4);\n    }" { (expression_statement "(**(code **)(pcVar21 + 0x1df780))(7);" (call_expression "(**(code **)(pcVar21 + 0x1df780))(7)" (parenthesized_expression "(**(code **)(pcVar21 + 0x1df780))" ( (pointer_expression "**(code **)(pcVar21 + 0x1df780)" * (pointer_expression "*(code **)(pcVar21 + 0x1df780)" * (cast_expression "(code **)(pcVar21 + 0x1df780)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0x1df780)" ( (binary_expression "pcVar21 + 0x1df780" identifier + number_literal) ))))) )) (argument_list "(7)" ( number_literal ))) ;) (expression_statement "ppppppuVar6 = pppppppuVar9[7];" (assignment_expression "ppppppuVar6 = pppppppuVar9[7]" identifier = (subscript_expression "pppppppuVar9[7]" identifier [ number_literal ])) ;) (if_statement "if ((int)ppppppuVar6 < 0) {\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (extraout_v1_07 < (int)ppppppuVar6 + 0x3f >> 6) goto LAB_001c9d10;\nLAB_001c9c58:\n        bVar1 = (int)ppppppuVar6 < 0x80;\n      }\n      else {\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if ((int)ppppppuVar6 >> 6 <= extraout_v1_07) goto LAB_001c9c58;\nLAB_001c9d10:\n        (*pcVar23)(7);\n        bVar1 = extraout_v1_09 < 2;\n      }" if (parenthesized_expression "((int)ppppppuVar6 < 0)" ( (binary_expression "(int)ppppppuVar6 < 0" (cast_expression "(int)ppppppuVar6" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (extraout_v1_07 < (int)ppppppuVar6 + 0x3f >> 6) goto LAB_001c9d10;\nLAB_001c9c58:\n        bVar1 = (int)ppppppuVar6 < 0x80;\n      }" { (expression_statement "pcVar23 = *(code **)(pcVar21 + 0x1df780);" (assignment_expression "pcVar23 = *(code **)(pcVar21 + 0x1df780)" identifier = (pointer_expression "*(code **)(pcVar21 + 0x1df780)" * (cast_expression "(code **)(pcVar21 + 0x1df780)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0x1df780)" ( (binary_expression "pcVar21 + 0x1df780" identifier + number_literal) ))))) ;) (if_statement "if (extraout_v1_07 < (int)ppppppuVar6 + 0x3f >> 6) goto LAB_001c9d10;" if (parenthesized_expression "(extraout_v1_07 < (int)ppppppuVar6 + 0x3f >> 6)" ( (binary_expression "extraout_v1_07 < (int)ppppppuVar6 + 0x3f >> 6" identifier < (binary_expression "(int)ppppppuVar6 + 0x3f >> 6" (binary_expression "(int)ppppppuVar6 + 0x3f" (cast_expression "(int)ppppppuVar6" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) >> number_literal)) )) (goto_statement "goto LAB_001c9d10;" goto statement_identifier ;)) (labeled_statement "LAB_001c9c58:\n        bVar1 = (int)ppppppuVar6 < 0x80;" statement_identifier : (expression_statement "bVar1 = (int)ppppppuVar6 < 0x80;" (assignment_expression "bVar1 = (int)ppppppuVar6 < 0x80" identifier = (binary_expression "(int)ppppppuVar6 < 0x80" (cast_expression "(int)ppppppuVar6" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal)) ;)) }) (else_clause "else {\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if ((int)ppppppuVar6 >> 6 <= extraout_v1_07) goto LAB_001c9c58;\nLAB_001c9d10:\n        (*pcVar23)(7);\n        bVar1 = extraout_v1_09 < 2;\n      }" else (compound_statement "{\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if ((int)ppppppuVar6 >> 6 <= extraout_v1_07) goto LAB_001c9c58;\nLAB_001c9d10:\n        (*pcVar23)(7);\n        bVar1 = extraout_v1_09 < 2;\n      }" { (expression_statement "pcVar23 = *(code **)(pcVar21 + 0x1df780);" (assignment_expression "pcVar23 = *(code **)(pcVar21 + 0x1df780)" identifier = (pointer_expression "*(code **)(pcVar21 + 0x1df780)" * (cast_expression "(code **)(pcVar21 + 0x1df780)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0x1df780)" ( (binary_expression "pcVar21 + 0x1df780" identifier + number_literal) ))))) ;) (if_statement "if ((int)ppppppuVar6 >> 6 <= extraout_v1_07) goto LAB_001c9c58;" if (parenthesized_expression "((int)ppppppuVar6 >> 6 <= extraout_v1_07)" ( (binary_expression "(int)ppppppuVar6 >> 6 <= extraout_v1_07" (binary_expression "(int)ppppppuVar6 >> 6" (cast_expression "(int)ppppppuVar6" ( (type_descriptor "int" primitive_type) ) identifier) >> number_literal) <= identifier) )) (goto_statement "goto LAB_001c9c58;" goto statement_identifier ;)) (labeled_statement "LAB_001c9d10:\n        (*pcVar23)(7);" statement_identifier : (expression_statement "(*pcVar23)(7);" (call_expression "(*pcVar23)(7)" (parenthesized_expression "(*pcVar23)" ( (pointer_expression "*pcVar23" * identifier) )) (argument_list "(7)" ( number_literal ))) ;)) (expression_statement "bVar1 = extraout_v1_09 < 2;" (assignment_expression "bVar1 = extraout_v1_09 < 2" identifier = (binary_expression "extraout_v1_09 < 2" identifier < number_literal)) ;) }))) (expression_statement "iVar10 = 1;" (assignment_expression "iVar10 = 1" identifier = number_literal) ;) (if_statement "if ((bool)(bVar1 ^ 1)) {\n        (**(code **)(pcVar21 + 0x1df780))(7);\n        ppppppuVar6 = pppppppuVar9[7];\n        if ((int)ppppppuVar6 < 0) {\n          ppppppuVar6 = (undefined4 ******)((int)ppppppuVar6 + 0x3f);\n        }\n        iVar10 = (int)ppppppuVar6 >> 6;\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (extraout_v1_10 < iVar10) {\nLAB_001c9ce8:\n          (*pcVar23)(7);\n          iVar10 = extraout_v1_08;\n        }\n        goto LAB_001c9b14;\n      }" if (parenthesized_expression "((bool)(bVar1 ^ 1))" ( (cast_expression "(bool)(bVar1 ^ 1)" ( (type_descriptor "bool" primitive_type) ) (parenthesized_expression "(bVar1 ^ 1)" ( (binary_expression "bVar1 ^ 1" identifier ^ number_literal) ))) )) (compound_statement "{\n        (**(code **)(pcVar21 + 0x1df780))(7);\n        ppppppuVar6 = pppppppuVar9[7];\n        if ((int)ppppppuVar6 < 0) {\n          ppppppuVar6 = (undefined4 ******)((int)ppppppuVar6 + 0x3f);\n        }\n        iVar10 = (int)ppppppuVar6 >> 6;\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (extraout_v1_10 < iVar10) {\nLAB_001c9ce8:\n          (*pcVar23)(7);\n          iVar10 = extraout_v1_08;\n        }\n        goto LAB_001c9b14;\n      }" { (expression_statement "(**(code **)(pcVar21 + 0x1df780))(7);" (call_expression "(**(code **)(pcVar21 + 0x1df780))(7)" (parenthesized_expression "(**(code **)(pcVar21 + 0x1df780))" ( (pointer_expression "**(code **)(pcVar21 + 0x1df780)" * (pointer_expression "*(code **)(pcVar21 + 0x1df780)" * (cast_expression "(code **)(pcVar21 + 0x1df780)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0x1df780)" ( (binary_expression "pcVar21 + 0x1df780" identifier + number_literal) ))))) )) (argument_list "(7)" ( number_literal ))) ;) (expression_statement "ppppppuVar6 = pppppppuVar9[7];" (assignment_expression "ppppppuVar6 = pppppppuVar9[7]" identifier = (subscript_expression "pppppppuVar9[7]" identifier [ number_literal ])) ;) (if_statement "if ((int)ppppppuVar6 < 0) {\n          ppppppuVar6 = (undefined4 ******)((int)ppppppuVar6 + 0x3f);\n        }" if (parenthesized_expression "((int)ppppppuVar6 < 0)" ( (binary_expression "(int)ppppppuVar6 < 0" (cast_expression "(int)ppppppuVar6" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n          ppppppuVar6 = (undefined4 ******)((int)ppppppuVar6 + 0x3f);\n        }" { (expression_statement "ppppppuVar6 = (undefined4 ******)((int)ppppppuVar6 + 0x3f);" (assignment_expression "ppppppuVar6 = (undefined4 ******)((int)ppppppuVar6 + 0x3f)" identifier = (cast_expression "(undefined4 ******)((int)ppppppuVar6 + 0x3f)" ( (type_descriptor "undefined4 ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (parenthesized_expression "((int)ppppppuVar6 + 0x3f)" ( (binary_expression "(int)ppppppuVar6 + 0x3f" (cast_expression "(int)ppppppuVar6" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) })) (expression_statement "iVar10 = (int)ppppppuVar6 >> 6;" (assignment_expression "iVar10 = (int)ppppppuVar6 >> 6" identifier = (binary_expression "(int)ppppppuVar6 >> 6" (cast_expression "(int)ppppppuVar6" ( (type_descriptor "int" primitive_type) ) identifier) >> number_literal)) ;) (expression_statement "pcVar23 = *(code **)(pcVar21 + 0x1df780);" (assignment_expression "pcVar23 = *(code **)(pcVar21 + 0x1df780)" identifier = (pointer_expression "*(code **)(pcVar21 + 0x1df780)" * (cast_expression "(code **)(pcVar21 + 0x1df780)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0x1df780)" ( (binary_expression "pcVar21 + 0x1df780" identifier + number_literal) ))))) ;) (if_statement "if (extraout_v1_10 < iVar10) {\nLAB_001c9ce8:\n          (*pcVar23)(7);\n          iVar10 = extraout_v1_08;\n        }" if (parenthesized_expression "(extraout_v1_10 < iVar10)" ( (binary_expression "extraout_v1_10 < iVar10" identifier < identifier) )) (compound_statement "{\nLAB_001c9ce8:\n          (*pcVar23)(7);\n          iVar10 = extraout_v1_08;\n        }" { (labeled_statement "LAB_001c9ce8:\n          (*pcVar23)(7);" statement_identifier : (expression_statement "(*pcVar23)(7);" (call_expression "(*pcVar23)(7)" (parenthesized_expression "(*pcVar23)" ( (pointer_expression "*pcVar23" * identifier) )) (argument_list "(7)" ( number_literal ))) ;)) (expression_statement "iVar10 = extraout_v1_08;" (assignment_expression "iVar10 = extraout_v1_08" identifier = identifier) ;) })) (goto_statement "goto LAB_001c9b14;" goto statement_identifier ;) })) (expression_statement "iVar11 = *(int *)(pcVar21 + 0x1defe4);" (assignment_expression "iVar11 = *(int *)(pcVar21 + 0x1defe4)" identifier = (pointer_expression "*(int *)(pcVar21 + 0x1defe4)" * (cast_expression "(int *)(pcVar21 + 0x1defe4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0x1defe4)" ( (binary_expression "pcVar21 + 0x1defe4" identifier + number_literal) ))))) ;) }) (else_clause "else {\n      uVar36 = (**(code **)(pcVar21 + 0x1df780))(7);\n      if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (1 < (uint)uVar36) goto LAB_001c9b00;\n        uVar36 = (*pcVar23)(7);\n        if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c9afc;\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (1 < (uint)uVar36) goto LAB_001c9b00;\n        iVar10 = 1;\n      }\n      else {\nLAB_001c9afc:\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\nLAB_001c9b00:\n        uVar36 = (*pcVar23)(7);\n        if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n           (pcVar23 = *(code **)(pcVar21 + 0x1df780), (uint)uVar36 < 2)) goto LAB_001c9ce8;\n        iVar10 = 2;\n      }\nLAB_001c9b14:\n      iVar11 = *(int *)(pcVar21 + 0x1defe4);\n    }" else (compound_statement "{\n      uVar36 = (**(code **)(pcVar21 + 0x1df780))(7);\n      if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (1 < (uint)uVar36) goto LAB_001c9b00;\n        uVar36 = (*pcVar23)(7);\n        if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c9afc;\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (1 < (uint)uVar36) goto LAB_001c9b00;\n        iVar10 = 1;\n      }\n      else {\nLAB_001c9afc:\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\nLAB_001c9b00:\n        uVar36 = (*pcVar23)(7);\n        if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n           (pcVar23 = *(code **)(pcVar21 + 0x1df780), (uint)uVar36 < 2)) goto LAB_001c9ce8;\n        iVar10 = 2;\n      }\nLAB_001c9b14:\n      iVar11 = *(int *)(pcVar21 + 0x1defe4);\n    }" { (expression_statement "uVar36 = (**(code **)(pcVar21 + 0x1df780))(7);" (assignment_expression "uVar36 = (**(code **)(pcVar21 + 0x1df780))(7)" identifier = (call_expression "(**(code **)(pcVar21 + 0x1df780))(7)" (parenthesized_expression "(**(code **)(pcVar21 + 0x1df780))" ( (pointer_expression "**(code **)(pcVar21 + 0x1df780)" * (pointer_expression "*(code **)(pcVar21 + 0x1df780)" * (cast_expression "(code **)(pcVar21 + 0x1df780)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0x1df780)" ( (binary_expression "pcVar21 + 0x1df780" identifier + number_literal) ))))) )) (argument_list "(7)" ( number_literal )))) ;) (if_statement "if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (1 < (uint)uVar36) goto LAB_001c9b00;\n        uVar36 = (*pcVar23)(7);\n        if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c9afc;\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (1 < (uint)uVar36) goto LAB_001c9b00;\n        iVar10 = 1;\n      }\n      else {\nLAB_001c9afc:\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\nLAB_001c9b00:\n        uVar36 = (*pcVar23)(7);\n        if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n           (pcVar23 = *(code **)(pcVar21 + 0x1df780), (uint)uVar36 < 2)) goto LAB_001c9ce8;\n        iVar10 = 2;\n      }" if (parenthesized_expression "((int)((ulonglong)uVar36 >> 0x20) == 0)" ( (binary_expression "(int)((ulonglong)uVar36 >> 0x20) == 0" (cast_expression "(int)((ulonglong)uVar36 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)uVar36 >> 0x20)" ( (binary_expression "(ulonglong)uVar36 >> 0x20" (cast_expression "(ulonglong)uVar36" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) ))) == number_literal) )) (compound_statement "{\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (1 < (uint)uVar36) goto LAB_001c9b00;\n        uVar36 = (*pcVar23)(7);\n        if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c9afc;\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (1 < (uint)uVar36) goto LAB_001c9b00;\n        iVar10 = 1;\n      }" { (expression_statement "pcVar23 = *(code **)(pcVar21 + 0x1df780);" (assignment_expression "pcVar23 = *(code **)(pcVar21 + 0x1df780)" identifier = (pointer_expression "*(code **)(pcVar21 + 0x1df780)" * (cast_expression "(code **)(pcVar21 + 0x1df780)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0x1df780)" ( (binary_expression "pcVar21 + 0x1df780" identifier + number_literal) ))))) ;) (if_statement "if (1 < (uint)uVar36) goto LAB_001c9b00;" if (parenthesized_expression "(1 < (uint)uVar36)" ( (binary_expression "1 < (uint)uVar36" number_literal < (cast_expression "(uint)uVar36" ( (type_descriptor "uint" type_identifier) ) identifier)) )) (goto_statement "goto LAB_001c9b00;" goto statement_identifier ;)) (expression_statement "uVar36 = (*pcVar23)(7);" (assignment_expression "uVar36 = (*pcVar23)(7)" identifier = (call_expression "(*pcVar23)(7)" (parenthesized_expression "(*pcVar23)" ( (pointer_expression "*pcVar23" * identifier) )) (argument_list "(7)" ( number_literal )))) ;) (if_statement "if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c9afc;" if (parenthesized_expression "((int)((ulonglong)uVar36 >> 0x20) != 0)" ( (binary_expression "(int)((ulonglong)uVar36 >> 0x20) != 0" (cast_expression "(int)((ulonglong)uVar36 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)uVar36 >> 0x20)" ( (binary_expression "(ulonglong)uVar36 >> 0x20" (cast_expression "(ulonglong)uVar36" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) ))) != number_literal) )) (goto_statement "goto LAB_001c9afc;" goto statement_identifier ;)) (expression_statement "pcVar23 = *(code **)(pcVar21 + 0x1df780);" (assignment_expression "pcVar23 = *(code **)(pcVar21 + 0x1df780)" identifier = (pointer_expression "*(code **)(pcVar21 + 0x1df780)" * (cast_expression "(code **)(pcVar21 + 0x1df780)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0x1df780)" ( (binary_expression "pcVar21 + 0x1df780" identifier + number_literal) ))))) ;) (if_statement "if (1 < (uint)uVar36) goto LAB_001c9b00;" if (parenthesized_expression "(1 < (uint)uVar36)" ( (binary_expression "1 < (uint)uVar36" number_literal < (cast_expression "(uint)uVar36" ( (type_descriptor "uint" type_identifier) ) identifier)) )) (goto_statement "goto LAB_001c9b00;" goto statement_identifier ;)) (expression_statement "iVar10 = 1;" (assignment_expression "iVar10 = 1" identifier = number_literal) ;) }) (else_clause "else {\nLAB_001c9afc:\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\nLAB_001c9b00:\n        uVar36 = (*pcVar23)(7);\n        if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n           (pcVar23 = *(code **)(pcVar21 + 0x1df780), (uint)uVar36 < 2)) goto LAB_001c9ce8;\n        iVar10 = 2;\n      }" else (compound_statement "{\nLAB_001c9afc:\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\nLAB_001c9b00:\n        uVar36 = (*pcVar23)(7);\n        if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n           (pcVar23 = *(code **)(pcVar21 + 0x1df780), (uint)uVar36 < 2)) goto LAB_001c9ce8;\n        iVar10 = 2;\n      }" { (labeled_statement "LAB_001c9afc:\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);" statement_identifier : (expression_statement "pcVar23 = *(code **)(pcVar21 + 0x1df780);" (assignment_expression "pcVar23 = *(code **)(pcVar21 + 0x1df780)" identifier = (pointer_expression "*(code **)(pcVar21 + 0x1df780)" * (cast_expression "(code **)(pcVar21 + 0x1df780)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0x1df780)" ( (binary_expression "pcVar21 + 0x1df780" identifier + number_literal) ))))) ;)) (labeled_statement "LAB_001c9b00:\n        uVar36 = (*pcVar23)(7);" statement_identifier : (expression_statement "uVar36 = (*pcVar23)(7);" (assignment_expression "uVar36 = (*pcVar23)(7)" identifier = (call_expression "(*pcVar23)(7)" (parenthesized_expression "(*pcVar23)" ( (pointer_expression "*pcVar23" * identifier) )) (argument_list "(7)" ( number_literal )))) ;)) (if_statement "if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n           (pcVar23 = *(code **)(pcVar21 + 0x1df780), (uint)uVar36 < 2)) goto LAB_001c9ce8;" if (parenthesized_expression "(((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n           (pcVar23 = *(code **)(pcVar21 + 0x1df780), (uint)uVar36 < 2))" ( (binary_expression "((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n           (pcVar23 = *(code **)(pcVar21 + 0x1df780), (uint)uVar36 < 2)" (parenthesized_expression "((int)((ulonglong)uVar36 >> 0x20) == 0)" ( (binary_expression "(int)((ulonglong)uVar36 >> 0x20) == 0" (cast_expression "(int)((ulonglong)uVar36 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)uVar36 >> 0x20)" ( (binary_expression "(ulonglong)uVar36 >> 0x20" (cast_expression "(ulonglong)uVar36" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) ))) == number_literal) )) && (parenthesized_expression "(pcVar23 = *(code **)(pcVar21 + 0x1df780), (uint)uVar36 < 2)" ( (comma_expression "pcVar23 = *(code **)(pcVar21 + 0x1df780), (uint)uVar36 < 2" (assignment_expression "pcVar23 = *(code **)(pcVar21 + 0x1df780)" identifier = (pointer_expression "*(code **)(pcVar21 + 0x1df780)" * (cast_expression "(code **)(pcVar21 + 0x1df780)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0x1df780)" ( (binary_expression "pcVar21 + 0x1df780" identifier + number_literal) ))))) , (binary_expression "(uint)uVar36 < 2" (cast_expression "(uint)uVar36" ( (type_descriptor "uint" type_identifier) ) identifier) < number_literal)) ))) )) (goto_statement "goto LAB_001c9ce8;" goto statement_identifier ;)) (expression_statement "iVar10 = 2;" (assignment_expression "iVar10 = 2" identifier = number_literal) ;) }))) (labeled_statement "LAB_001c9b14:\n      iVar11 = *(int *)(pcVar21 + 0x1defe4);" statement_identifier : (expression_statement "iVar11 = *(int *)(pcVar21 + 0x1defe4);" (assignment_expression "iVar11 = *(int *)(pcVar21 + 0x1defe4)" identifier = (pointer_expression "*(int *)(pcVar21 + 0x1defe4)" * (cast_expression "(int *)(pcVar21 + 0x1defe4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0x1defe4)" ( (binary_expression "pcVar21 + 0x1defe4" identifier + number_literal) ))))) ;)) }))) (expression_statement "puStack_254 = &uStack_270;" (assignment_expression "puStack_254 = &uStack_270" identifier = (pointer_expression "&uStack_270" & identifier)) ;) (expression_statement "iStack_250 = 1;" (assignment_expression "iStack_250 = 1" identifier = number_literal) ;) (expression_statement "iStack_268 = iVar15;" (assignment_expression "iStack_268 = iVar15" identifier = identifier) ;) (expression_statement "iStack_264 = iVar14;" (assignment_expression "iStack_264 = iVar14" identifier = identifier) ;) (expression_statement "uStack_260 = uVar5;" (assignment_expression "uStack_260 = uVar5" identifier = identifier) ;) (expression_statement "uStack_25c = uVar4;" (assignment_expression "uStack_25c = uVar4" identifier = identifier) ;) (expression_statement "pppppppuStack_258 = pppppppuVar9;" (assignment_expression "pppppppuStack_258 = pppppppuVar9" identifier = identifier) ;) (expression_statement "(**(code **)(pcVar21 + 0x1df7dc))(iVar11 + 0x594c,&iStack_268,iVar10,0);" (call_expression "(**(code **)(pcVar21 + 0x1df7dc))(iVar11 + 0x594c,&iStack_268,iVar10,0)" (parenthesized_expression "(**(code **)(pcVar21 + 0x1df7dc))" ( (pointer_expression "**(code **)(pcVar21 + 0x1df7dc)" * (pointer_expression "*(code **)(pcVar21 + 0x1df7dc)" * (cast_expression "(code **)(pcVar21 + 0x1df7dc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0x1df7dc)" ( (binary_expression "pcVar21 + 0x1df7dc" identifier + number_literal) ))))) )) (argument_list "(iVar11 + 0x594c,&iStack_268,iVar10,0)" ( (binary_expression "iVar11 + 0x594c" identifier + number_literal) , (pointer_expression "&iStack_268" & identifier) , identifier , number_literal ))) ;) (expression_statement "iVar14 = iStack_250;" (assignment_expression "iVar14 = iStack_250" identifier = identifier) ;) (expression_statement "(**(code **)(pcVar21 + 0x1df538))(uVar5);" (call_expression "(**(code **)(pcVar21 + 0x1df538))(uVar5)" (parenthesized_expression "(**(code **)(pcVar21 + 0x1df538))" ( (pointer_expression "**(code **)(pcVar21 + 0x1df538)" * (pointer_expression "*(code **)(pcVar21 + 0x1df538)" * (cast_expression "(code **)(pcVar21 + 0x1df538)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0x1df538)" ( (binary_expression "pcVar21 + 0x1df538" identifier + number_literal) ))))) )) (argument_list "(uVar5)" ( identifier ))) ;) (expression_statement "(**(code **)(pcVar21 + 0x1df538))(uVar4);" (call_expression "(**(code **)(pcVar21 + 0x1df538))(uVar4)" (parenthesized_expression "(**(code **)(pcVar21 + 0x1df538))" ( (pointer_expression "**(code **)(pcVar21 + 0x1df538)" * (pointer_expression "*(code **)(pcVar21 + 0x1df538)" * (cast_expression "(code **)(pcVar21 + 0x1df538)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0x1df538)" ( (binary_expression "pcVar21 + 0x1df538" identifier + number_literal) ))))) )) (argument_list "(uVar4)" ( identifier ))) ;) (expression_statement "pppppppuVar9[0xa8] = *(undefined4 *******)(iVar15 + 0x2a0);" (assignment_expression "pppppppuVar9[0xa8] = *(undefined4 *******)(iVar15 + 0x2a0)" (subscript_expression "pppppppuVar9[0xa8]" identifier [ number_literal ]) = (pointer_expression "*(undefined4 *******)(iVar15 + 0x2a0)" * (cast_expression "(undefined4 *******)(iVar15 + 0x2a0)" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(iVar15 + 0x2a0)" ( (binary_expression "iVar15 + 0x2a0" identifier + number_literal) ))))) ;) (if_statement "if (ppppppuVar7 != (undefined4 ******)0x0) {\n      ppppppuVar19 = (undefined4 ******)\n                     ((int)ppppppuVar7 + (-(int)ppppppuVar19 - (int)pppppppuVar9[6]));\n    }" if (parenthesized_expression "(ppppppuVar7 != (undefined4 ******)0x0)" ( (binary_expression "ppppppuVar7 != (undefined4 ******)0x0" identifier != (cast_expression "(undefined4 ******)0x0" ( (type_descriptor "undefined4 ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n      ppppppuVar19 = (undefined4 ******)\n                     ((int)ppppppuVar7 + (-(int)ppppppuVar19 - (int)pppppppuVar9[6]));\n    }" { (expression_statement "ppppppuVar19 = (undefined4 ******)\n                     ((int)ppppppuVar7 + (-(int)ppppppuVar19 - (int)pppppppuVar9[6]));" (assignment_expression "ppppppuVar19 = (undefined4 ******)\n                     ((int)ppppppuVar7 + (-(int)ppppppuVar19 - (int)pppppppuVar9[6]))" identifier = (cast_expression "(undefined4 ******)\n                     ((int)ppppppuVar7 + (-(int)ppppppuVar19 - (int)pppppppuVar9[6]))" ( (type_descriptor "undefined4 ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (parenthesized_expression "((int)ppppppuVar7 + (-(int)ppppppuVar19 - (int)pppppppuVar9[6]))" ( (binary_expression "(int)ppppppuVar7 + (-(int)ppppppuVar19 - (int)pppppppuVar9[6])" (cast_expression "(int)ppppppuVar7" ( (type_descriptor "int" primitive_type) ) identifier) + (parenthesized_expression "(-(int)ppppppuVar19 - (int)pppppppuVar9[6])" ( (binary_expression "-(int)ppppppuVar19 - (int)pppppppuVar9[6]" (unary_expression "-(int)ppppppuVar19" - (cast_expression "(int)ppppppuVar19" ( (type_descriptor "int" primitive_type) ) identifier)) - (cast_expression "(int)pppppppuVar9[6]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "pppppppuVar9[6]" identifier [ number_literal ]))) ))) )))) ;) })) (expression_statement "pppppppuVar9[0x8a] = ppppppuVar7;" (assignment_expression "pppppppuVar9[0x8a] = ppppppuVar7" (subscript_expression "pppppppuVar9[0x8a]" identifier [ number_literal ]) = identifier) ;) (expression_statement "pppppppuVar9[0x8b] = ppppppuVar22;" (assignment_expression "pppppppuVar9[0x8b] = ppppppuVar22" (subscript_expression "pppppppuVar9[0x8b]" identifier [ number_literal ]) = identifier) ;) (expression_statement "pppppppuVar9[0x8c] = ppppppuVar19;" (assignment_expression "pppppppuVar9[0x8c] = ppppppuVar19" (subscript_expression "pppppppuVar9[0x8c]" identifier [ number_literal ]) = identifier) ;) (expression_statement "pppppppuVar9[0x8d] = ppppppuVar2;" (assignment_expression "pppppppuVar9[0x8d] = ppppppuVar2" (subscript_expression "pppppppuVar9[0x8d]" identifier [ number_literal ]) = identifier) ;) (if_statement "if (iVar14 == 0) {\n      pppppppuVar9 = (undefined4 *******)(**(code **)(pcVar21 + 0x1df590))(pppppppuVar9);\n    }" if (parenthesized_expression "(iVar14 == 0)" ( (binary_expression "iVar14 == 0" identifier == number_literal) )) (compound_statement "{\n      pppppppuVar9 = (undefined4 *******)(**(code **)(pcVar21 + 0x1df590))(pppppppuVar9);\n    }" { (expression_statement "pppppppuVar9 = (undefined4 *******)(**(code **)(pcVar21 + 0x1df590))(pppppppuVar9);" (assignment_expression "pppppppuVar9 = (undefined4 *******)(**(code **)(pcVar21 + 0x1df590))(pppppppuVar9)" identifier = (cast_expression "(undefined4 *******)(**(code **)(pcVar21 + 0x1df590))(pppppppuVar9)" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(**(code **)(pcVar21 + 0x1df590))(pppppppuVar9)" (parenthesized_expression "(**(code **)(pcVar21 + 0x1df590))" ( (pointer_expression "**(code **)(pcVar21 + 0x1df590)" * (pointer_expression "*(code **)(pcVar21 + 0x1df590)" * (cast_expression "(code **)(pcVar21 + 0x1df590)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0x1df590)" ( (binary_expression "pcVar21 + 0x1df590" identifier + number_literal) ))))) )) (argument_list "(pppppppuVar9)" ( identifier ))))) ;) })) })) (if_statement "if (iStack_24c == *piVar17) {\n    return pppppppuVar9;\n  }" if (parenthesized_expression "(iStack_24c == *piVar17)" ( (binary_expression "iStack_24c == *piVar17" identifier == (pointer_expression "*piVar17" * identifier)) )) (compound_statement "{\n    return pppppppuVar9;\n  }" { (return_statement "return pppppppuVar9;" return identifier ;) })) (expression_statement "(**(code **)(pcVar21 + 0x1df6a8))();" (call_expression "(**(code **)(pcVar21 + 0x1df6a8))()" (parenthesized_expression "(**(code **)(pcVar21 + 0x1df6a8))" ( (pointer_expression "**(code **)(pcVar21 + 0x1df6a8)" * (pointer_expression "*(code **)(pcVar21 + 0x1df6a8)" * (cast_expression "(code **)(pcVar21 + 0x1df6a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0x1df6a8)" ( (binary_expression "pcVar21 + 0x1df6a8" identifier + number_literal) ))))) )) (argument_list "()" ( ))) ;) (labeled_statement "LAB_001c9db0:\n  pppppppuVar9 = (undefined4 *******)\n                 (**(code **)(pcVar21 + 0x1dfc4c))\n                           (*(int *)(pcVar21 + 0x1def24) + 0x294c,\n                            *(int *)(pcVar21 + 0x1def30) + -0x288c,0x548,\n                            *(int *)(pcVar21 + 0x1def30) + -0x26f8);" statement_identifier : (expression_statement "pppppppuVar9 = (undefined4 *******)\n                 (**(code **)(pcVar21 + 0x1dfc4c))\n                           (*(int *)(pcVar21 + 0x1def24) + 0x294c,\n                            *(int *)(pcVar21 + 0x1def30) + -0x288c,0x548,\n                            *(int *)(pcVar21 + 0x1def30) + -0x26f8);" (assignment_expression "pppppppuVar9 = (undefined4 *******)\n                 (**(code **)(pcVar21 + 0x1dfc4c))\n                           (*(int *)(pcVar21 + 0x1def24) + 0x294c,\n                            *(int *)(pcVar21 + 0x1def30) + -0x288c,0x548,\n                            *(int *)(pcVar21 + 0x1def30) + -0x26f8)" identifier = (cast_expression "(undefined4 *******)\n                 (**(code **)(pcVar21 + 0x1dfc4c))\n                           (*(int *)(pcVar21 + 0x1def24) + 0x294c,\n                            *(int *)(pcVar21 + 0x1def30) + -0x288c,0x548,\n                            *(int *)(pcVar21 + 0x1def30) + -0x26f8)" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(**(code **)(pcVar21 + 0x1dfc4c))\n                           (*(int *)(pcVar21 + 0x1def24) + 0x294c,\n                            *(int *)(pcVar21 + 0x1def30) + -0x288c,0x548,\n                            *(int *)(pcVar21 + 0x1def30) + -0x26f8)" (parenthesized_expression "(**(code **)(pcVar21 + 0x1dfc4c))" ( (pointer_expression "**(code **)(pcVar21 + 0x1dfc4c)" * (pointer_expression "*(code **)(pcVar21 + 0x1dfc4c)" * (cast_expression "(code **)(pcVar21 + 0x1dfc4c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0x1dfc4c)" ( (binary_expression "pcVar21 + 0x1dfc4c" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar21 + 0x1def24) + 0x294c,\n                            *(int *)(pcVar21 + 0x1def30) + -0x288c,0x548,\n                            *(int *)(pcVar21 + 0x1def30) + -0x26f8)" ( (binary_expression "*(int *)(pcVar21 + 0x1def24) + 0x294c" (pointer_expression "*(int *)(pcVar21 + 0x1def24)" * (cast_expression "(int *)(pcVar21 + 0x1def24)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0x1def24)" ( (binary_expression "pcVar21 + 0x1def24" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar21 + 0x1def30) + -0x288c" (pointer_expression "*(int *)(pcVar21 + 0x1def30)" * (cast_expression "(int *)(pcVar21 + 0x1def30)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0x1def30)" ( (binary_expression "pcVar21 + 0x1def30" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar21 + 0x1def30) + -0x26f8" (pointer_expression "*(int *)(pcVar21 + 0x1def30)" * (cast_expression "(int *)(pcVar21 + 0x1def30)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0x1def30)" ( (binary_expression "pcVar21 + 0x1def30" identifier + number_literal) )))) + number_literal) ))))) ;)) (return_statement "return pppppppuVar9;" 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\nImage * CropImageToTiles(Image *image,char *crop_geometry,ExceptionInfo *exception)\n\n{\n  bool bVar1;\n  int iVar2;\n  uint uVar3;\n  int iVar4;\n  ssize_t sVar5;\n  undefined4 uVar6;\n  undefined4 uVar7;\n  size_t sVar8;\n  size_t sVar9;\n  int extraout_v1;\n  int extraout_v1_00;\n  int extraout_v1_01;\n  int extraout_v1_02;\n  int extraout_v1_03;\n  int extraout_v1_04;\n  int extraout_v1_05;\n  int extraout_v1_06;\n  int extraout_v1_07;\n  int extraout_v1_08;\n  int extraout_v1_09;\n  int extraout_v1_10;\n  int iVar10;\n  Image *pIVar11;\n  Image *pIVar12;\n  int iVar13;\n  RectangleInfo *pRVar14;\n  Image *pIVar15;\n  ExceptionInfo *pEVar16;\n  Image *unaff_s0;\n  Image *unaff_s1;\n  ExceptionInfo *unaff_s2;\n  RectangleInfo *unaff_s3;\n  int *piVar17;\n  int *piVar18;\n  size_t unaff_s4;\n  int *piVar19;\n  undefined *unaff_s5;\n  Image *unaff_s6;\n  ssize_t sVar20;\n  Image *unaff_s7;\n  undefined *puVar21;\n  code *pcVar22;\n  undefined *puVar23;\n  Image **unaff_s8;\n  size_t sVar24;\n  code *pcVar25;\n  code *pcVar26;\n  double dVar27;\n  double dVar28;\n  double dVar29;\n  double dVar30;\n  double dVar31;\n  double dVar32;\n  double dVar33;\n  double dVar34;\n  double dVar35;\n  double dVar36;\n  double dVar37;\n  undefined8 uVar38;\n  undefined4 uStack_270;\n  undefined4 uStack_26c;\n  int iStack_268;\n  int iStack_264;\n  undefined4 uStack_260;\n  undefined4 uStack_25c;\n  Image *pIStack_258;\n  undefined4 *puStack_254;\n  int iStack_250;\n  int iStack_24c;\n  Image *pIStack_248;\n  Image *pIStack_244;\n  ExceptionInfo *pEStack_240;\n  int *piStack_23c;\n  int *piStack_238;\n  undefined *puStack_234;\n  Image *pIStack_230;\n  Image *pIStack_22c;\n  Image **ppIStack_228;\n  code *pcStack_224;\n  Image *pIStack_210;\n  char *pcStack_20c;\n  code *pcStack_208;\n  ssize_t sStack_1fc;\n  undefined4 uStack_1f8;\n  undefined4 uStack_1f4;\n  Image *pIStack_1f0;\n  Image *pIStack_1ec;\n  undefined *puStack_1e8;\n  int *piStack_1e4;\n  Image *pIStack_1e0;\n  undefined4 *puStack_1dc;\n  Image *pIStack_1d8;\n  int iStack_1d4;\n  Image *pIStack_1d0;\n  Image *pIStack_1cc;\n  ExceptionInfo *pEStack_1c8;\n  RectangleInfo *pRStack_1c4;\n  int *piStack_1c0;\n  undefined *puStack_1bc;\n  Image *pIStack_1b8;\n  Image *pIStack_1b4;\n  Image **ppIStack_1b0;\n  code *pcStack_1ac;\n  ExceptionInfo *pEStack_198;\n  char *pcStack_194;\n  ExceptionInfo *pEStack_190;\n  code *pcStack_188;\n  Image *pIStack_17c;\n  Image *pIStack_178;\n  ExceptionInfo *pEStack_174;\n  RectangleInfo *pRStack_170;\n  code *pcStack_16c;\n  ExceptionInfo *pEStack_158;\n  char *pcStack_154;\n  undefined *puStack_150;\n  undefined4 uStack_148;\n  undefined4 uStack_144;\n  Image *pIStack_13c;\n  RectangleInfo *pRStack_138;\n  ExceptionInfo *pEStack_134;\n  Image *pIStack_130;\n  undefined *puStack_12c;\n  Image *pIStack_128;\n  ExceptionInfo *pEStack_124;\n  undefined4 *puStack_120;\n  int iStack_11c;\n  Image *pIStack_118;\n  Image *pIStack_114;\n  ExceptionInfo *pEStack_110;\n  RectangleInfo *pRStack_10c;\n  uint uStack_108;\n  undefined *puStack_104;\n  Image *pIStack_100;\n  code *pcStack_fc;\n  ExceptionInfo *local_e8;\n  char *local_e4;\n  double local_c8;\n  double local_a0;\n  Image *crop_image;\n  RectangleInfo geometry;\n  RectangleInfo crop;\n  \n  puVar21 = PTR___stack_chk_guard_003a9230;\n  iVar2 = *(int *)PTR___stack_chk_guard_003a9230;\n  if (image == (Image *)0x0) {\nLAB_001c8ef8:\n    image = unaff_s1;\n    (*(code *)PTR___assert_fail_003a9608)\n              (PTR_LAB_003a88e0 + 0xdd0,PTR_s_courses_003a88ec + -0x288c,0x322,\n               PTR_s_courses_003a88ec + -0x2688);\n  }\n  else if (image->signature == 0xabacadab) {\n    if (image->debug != MagickFalse) {\n      local_e4 = image->filename;\n      local_e8 = (ExceptionInfo *)(PTR_s_t_to_left_003a88e4 + -0x62ac);\n      (*(code *)PTR_LogMagickEvent_003a91e0)\n                (0x8000,PTR_s_courses_003a88ec + -0x288c,PTR_s_courses_003a88ec + -0x269c,0x325);\n    }\n    unaff_s6 = (Image *)(*(code *)PTR_NewImageList_003a8e84)();\n    crop_image = unaff_s6;\n    uVar3 = (*(code *)PTR_ParseGravityGeometry_003a97fc)(image,crop_geometry,&geometry,exception);\n    unaff_s4 = geometry.height;\n    unaff_s0 = (Image *)geometry.width;\n    unaff_s3 = (RectangleInfo *)PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;\n    if ((int)(uVar3 << 0xe) < 0) {\n      sVar9 = image->rows;\n      if (geometry.width == 0) {\n        geometry.width = 1;\n        dVar37 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n      }\n      else {\n        dVar37 = (double)(int)geometry.width;\n        if ((int)geometry.width < 0) {\n          dVar37 = dVar37 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n      }\n      if (geometry.height == 0) {\n        dVar32 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n        geometry.height = 1;\n        if ((uVar3 & 0x2000) != 0) goto LAB_001c8e14;\nLAB_001c8484:\n        iVar10 = geometry.x;\n        if (geometry.x < 0) {\n          iVar10 = -geometry.x;\n        }\n        iVar10 = image->columns - iVar10;\n        iVar4 = geometry.y;\n        if (geometry.y < 0) {\n          iVar4 = -geometry.y;\n        }\n        iVar4 = sVar9 - iVar4;\n      }\n      else {\n        dVar32 = (double)(int)geometry.height;\n        if ((int)geometry.height < 0) {\n          dVar32 = dVar32 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n        if ((uVar3 & 0x2000) == 0) goto LAB_001c8484;\nLAB_001c8e14:\n        iVar10 = geometry.x;\n        if (geometry.x < 0) {\n          iVar10 = -geometry.x;\n        }\n        iVar10 = iVar10 + image->columns;\n        if (geometry.y < 0) {\n          iVar4 = sVar9 - geometry.y;\n        }\n        else {\n          iVar4 = geometry.y + sVar9;\n        }\n      }\n      unaff_s4 = uVar3 & 0x2000;\n      dVar36 = (double)iVar10;\n      if (iVar10 < 0) {\n        dVar36 = dVar36 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n      }\n      dVar37 = dVar36 / dVar37;\n      local_c8 = (double)iVar4;\n      if (iVar4 < 0) {\n        local_c8 = local_c8 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n      }\n      dVar27 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n      local_a0 = dVar27;\n      if (dVar37 < dVar27) {\n        local_a0 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n        dVar37 = dVar27;\n      }\n      if (local_a0 <= local_c8 / dVar32) {\n        local_a0 = local_c8 / dVar32;\n      }\n      dVar32 = 0.0;\n      unaff_s7 = (Image *)geometry.y;\n      if (0.0 < local_c8) {\n        dVar27 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4780);\n        dVar33 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4788);\n        if (unaff_s4 != 0) goto LAB_001c8b70;\nLAB_001c854c:\n        unaff_s7 = (Image *)geometry.y;\n        dVar34 = dVar32;\n        if (geometry.y < 1) {\n          dVar34 = dVar32 - (double)geometry.y;\n        }\n        dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar34);\n        dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar34);\n        if (dVar34 - dVar28 < dVar29 - dVar34) {\n          dVar28 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar25 = (code *)PTR_floor_003a9670;\n          if (dVar34 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d7c;\n        }\n        else {\n          if (dVar34 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d7c:\n            iVar10 = -0x7ffffdff;\n            goto joined_r0x001c8cbc;\n          }\n          dVar28 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar25 = (code *)PTR_ceil_003a8c20;\n        }\n        if (dVar28 < dVar34) {\n          iVar10 = 0x7ffffdff;\n        }\n        else {\n          dVar34 = (double)(*pcVar25)(dVar34);\n          iVar10 = (int)dVar34;\n        }\njoined_r0x001c8cbc:\n        dVar32 = dVar32 + local_a0;\n        if ((int)unaff_s7 < 0) {\n          dVar34 = 0.0;\n        }\n        else {\n          dVar34 = (double)(int)unaff_s7;\n        }\n        dVar34 = dVar32 + dVar34;\n        dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar34);\n        dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar34);\n        if (dVar34 - dVar28 < dVar29 - dVar34) {\n          if (*(double *)((int)unaff_s3 + 0x4780) <= dVar34) {\n            if (dVar34 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8630;\n            goto LAB_001c8cec;\n          }\n        }\n        else if (*(double *)((int)unaff_s3 + 0x4780) <= dVar34) {\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar34) goto LAB_001c8cec;\n          goto LAB_001c8d18;\n        }\nLAB_001c8c88:\n        iVar4 = -0x7ffffdff;\nLAB_001c8644:\n        do {\n          unaff_s8 = (Image **)(iVar4 - iVar10);\n          crop_geometry = (char *)((image->page).y + iVar10);\n          dVar34 = 0.0;\n          crop.height = (size_t)unaff_s8;\n          crop.y = (ssize_t)crop_geometry;\n          if (0.0 < dVar36) {\n            dVar28 = *(double *)((int)unaff_s3 + 0x4788);\n            unaff_s6 = (Image *)&crop;\n            dVar29 = *(double *)((int)unaff_s3 + 0x4780);\n            do {\n              unaff_s7 = (Image *)geometry.x;\n              if (unaff_s4 == 0) {\n                dVar35 = dVar34;\n                if (geometry.x < 1) {\n                  dVar35 = dVar34 - (double)geometry.x;\n                }\n                dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                if (dVar35 - dVar30 < dVar31 - dVar35) {\n                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar35) {\n                    pcVar25 = (code *)PTR_floor_003a9670;\n                    if (dVar35 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar10 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }\nLAB_001c8b04:\n                  dVar34 = dVar34 + dVar37;\n                  iVar10 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;\nLAB_001c8708:\n                  dVar35 = (double)(int)unaff_s7;\n                }\n                else {\n                  if (dVar35 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar25 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar35) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar35 = (double)(*pcVar25)(dVar35);\n                  iVar10 = (int)dVar35;\nLAB_001c8700:\n                  dVar34 = dVar34 + dVar37;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar35 = 0.0;\n                }\n                dVar35 = dVar34 + dVar35;\n                dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                if (dVar35 - dVar30 < dVar31 - dVar35) {\n                  if (dVar35 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar35) goto LAB_001c88b8;\nLAB_001c8768:\n                  dVar35 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                  iVar4 = (int)dVar35;\n                }\n                else {\n                  if (dVar35 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar35) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar35 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                  iVar4 = (int)dVar35;\n                }\n              }\n              else {\n                dVar35 = dVar34;\n                if (0 < geometry.x) {\n                  dVar35 = dVar34 - (double)geometry.x;\n                }\n                dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                if (dVar35 - dVar30 < dVar31 - dVar35) {\n                  if (dVar29 <= dVar35) {\n                    pcVar25 = (code *)PTR_floor_003a9670;\n                    if (dVar35 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar10 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar34 = dVar34 + dVar37;\n                  iVar10 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar35 = 0.0;\n                }\n                else {\n                  if (dVar35 < dVar29) goto LAB_001c8b24;\n                  pcVar25 = (code *)PTR_ceil_003a8c20;\n                  if (dVar28 < dVar35) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar35 = (double)(*pcVar25)(dVar35);\n                  iVar10 = (int)dVar35;\nLAB_001c8850:\n                  dVar34 = dVar34 + dVar37;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar35 = (double)(int)unaff_s7;\n                }\n                dVar35 = dVar34 + dVar35;\n                dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                if (dVar35 - dVar30 < dVar31 - dVar35) {\n                  if (dVar35 < dVar27) goto LAB_001c8a44;\n                  if (dVar35 <= dVar28) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar4 = 0x7ffffdff;\n                }\n                else if (dVar27 <= dVar35) {\n                  if (dVar35 <= dVar33) goto LAB_001c8abc;\n                  iVar4 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar4 = -0x7ffffdff;\n                }\n              }\n              unaff_s8 = (Image **)(iVar4 - iVar10);\n              crop_geometry = (char *)((image->page).x + iVar10);\n              crop.width = (size_t)unaff_s8;\n              crop.x = (ssize_t)crop_geometry;\n              iVar10 = (*(code *)PTR_CropImage_003a90b8)(image,unaff_s6,exception);\n              if (iVar10 != 0) {\n                (*(code *)PTR_AppendImageToList_003a9880)(&crop_image,iVar10);\n              }\n            } while (dVar34 < dVar36);\n          }\n          unaff_s5 = (undefined *)unaff_s3;\n          if (local_c8 <= dVar32) break;\n          if (unaff_s4 == 0) goto LAB_001c854c;\nLAB_001c8b70:\n          unaff_s7 = (Image *)geometry.y;\n          dVar34 = dVar32;\n          if (0 < geometry.y) {\n            dVar34 = dVar32 - (double)geometry.y;\n          }\n          dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar34);\n          dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar34);\n          if (dVar34 - dVar28 < dVar29 - dVar34) {\n            if (dVar34 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d8c;\n            pcVar25 = (code *)PTR_floor_003a9670;\n            if (*(double *)((int)unaff_s3 + 0x4788) < dVar34) goto LAB_001c8d50;\nLAB_001c8bd8:\n            dVar34 = (double)(*pcVar25)(dVar34);\n            iVar10 = (int)dVar34;\nLAB_001c8bf0:\n            dVar32 = dVar32 + local_a0;\n            if (-2 < (int)unaff_s7) goto LAB_001c8c00;\nLAB_001c8d6c:\n            dVar34 = (double)(int)unaff_s7;\n          }\n          else {\n            if (dVar34 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d8c:\n              iVar10 = -0x7ffffdff;\n              goto LAB_001c8bf0;\n            }\n            pcVar25 = (code *)PTR_ceil_003a8c20;\n            if (dVar34 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8bd8;\nLAB_001c8d50:\n            iVar10 = 0x7ffffdff;\n            dVar32 = dVar32 + local_a0;\n            if ((int)unaff_s7 < -1) goto LAB_001c8d6c;\nLAB_001c8c00:\n            dVar34 = 0.0;\n          }\n          dVar34 = dVar32 + dVar34;\n          dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar34);\n          dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar34);\n          if (dVar34 - dVar28 < dVar29 - dVar34) {\n            if (*(double *)((int)unaff_s3 + 0x4780) <= dVar34) {\n              if (*(double *)((int)unaff_s3 + 0x4788) < dVar34) {\nLAB_001c8cec:\n                iVar4 = 0x7ffffdff;\n              }\n              else {\nLAB_001c8630:\n                dVar34 = (double)(*(code *)PTR_floor_003a9670)(dVar34);\n                iVar4 = (int)dVar34;\n              }\n              goto LAB_001c8644;\n            }\n            goto LAB_001c8c88;\n          }\n          if (dVar34 < dVar27) goto LAB_001c8c88;\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar34) goto LAB_001c8cec;\nLAB_001c8d18:\n          dVar34 = (double)(*(code *)PTR_ceil_003a8c20)(dVar34);\n          iVar4 = (int)dVar34;\n        } while( true );\n      }\n      (*(code *)PTR_ClearMagickException_003a90f8)(exception);\n      pIVar11 = crop_image;\n      unaff_s0 = (Image *)crop_geometry;\n    }\n    else {\n      unaff_s3 = &geometry;\n      if (((geometry.width == 0) && (geometry.height == 0)) || ((uVar3 & 3) != 0)) {\n        crop_image = (Image *)(*(code *)PTR_CropImage_003a90b8)(image,&geometry,exception);\n        pIVar11 = crop_image;\n        unaff_s4 = uVar3;\n        if ((crop_image != (Image *)0x0) && (unaff_s4 = uVar3 & 0x2000, unaff_s4 != 0)) {\n          (crop_image->page).x = (crop_image->page).x - geometry.x;\n          (crop_image->page).y = (crop_image->page).y - geometry.y;\n          (crop_image->page).width = geometry.width;\n          (crop_image->page).height = geometry.height;\n        }\n      }\n      else {\n        unaff_s7 = (Image *)image->columns;\n        if ((geometry.width < unaff_s7) || (geometry.height < image->rows)) {\n          pIVar11 = (Image *)(image->page).width;\n          uVar3 = (image->page).height;\n          if (pIVar11 != (Image *)0x0) {\n            unaff_s7 = pIVar11;\n          }\n          if (uVar3 == 0) {\n            uVar3 = image->rows;\n          }\n          if (geometry.width == 0) {\n            unaff_s0 = unaff_s7;\n          }\n          if (geometry.height == 0) {\n            unaff_s4 = uVar3;\n          }\n          pIVar11 = crop_image;\n          if (0 < (int)uVar3) {\n            unaff_s3 = (RectangleInfo *)0x0;\n            unaff_s8 = &crop_image;\n            do {\n              unaff_s5 = (undefined *)0x0;\n              if ((int)unaff_s7 < 1) {\n                pIVar11 = crop_image;\n                if (unaff_s6 == (Image *)0x0) break;\n              }\n              else {\n                do {\n                  geometry.width = (size_t)unaff_s0;\n                  geometry.height = unaff_s4;\n                  geometry.x = (ssize_t)unaff_s5;\n                  geometry.y = (ssize_t)unaff_s3;\n                  unaff_s6 = (Image *)(*(code *)PTR_CropImage_003a90b8)(image,&geometry,exception);\n                  pIVar11 = crop_image;\n                  if (unaff_s6 == (Image *)0x0) goto LAB_001c8908;\n                  unaff_s5 = unaff_s5 + (int)unaff_s0;\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);\n              }\n              unaff_s3 = (RectangleInfo *)((int)&unaff_s3->width + unaff_s4);\n              pIVar11 = crop_image;\n            } while ((int)unaff_s3 < (int)uVar3);\n          }\n        }\n        else {\n          local_e8 = exception;\n          pIVar11 = (Image *)(*(code *)PTR_CloneImage_003a9830)(image,0,0,1);\n        }\n      }\n    }\nLAB_001c8908:\n    if (iVar2 == *(int *)puVar21) {\n      return pIVar11;\n    }\n    (*(code *)PTR___stack_chk_fail_003a9064)();\n    unaff_s1 = image;\n    unaff_s2 = exception;\n    goto LAB_001c8ef8;\n  }\n  pEVar16 = (ExceptionInfo *)0x323;\n  pRVar14 = (RectangleInfo *)(PTR_s_courses_003a88ec + -0x288c);\n  pcVar25 = ExcerptImage;\n  pIVar11 = (Image *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3784);\n  puVar21 = PTR___assert_fail_003a9608;\n  (*(code *)PTR___assert_fail_003a9608)();\n  puVar23 = puVar21 + 0x1e7970;\n  piVar19 = *(int **)(puVar21 + 0x1e02f0);\n  iStack_11c = *piVar19;\n  puStack_150 = puVar23;\n  pIStack_118 = unaff_s0;\n  pIStack_114 = image;\n  pEStack_110 = unaff_s2;\n  pRStack_10c = unaff_s3;\n  uStack_108 = unaff_s4;\n  puStack_104 = unaff_s5;\n  pIStack_100 = unaff_s6;\n  pcStack_fc = pcVar25;\n  if (pIVar11 == (Image *)0x0) {\n    iVar2 = *(int *)(puVar21 + 0x1df9ac) + -0x26ac;\n    (**(code **)(puVar21 + 0x1e06c8))\n              (*(int *)(puVar21 + 0x1df9a8) + -0x37b0,*(int *)(puVar21 + 0x1df9ac) + -0x288c,0x3f4,\n               iVar2);\nLAB_001c92d4:\n    iVar2 = iVar2 + -0x26ac;\n    (**(code **)(puVar23 + -0x72a8))\n              (*(int *)(puVar23 + -0x7fd0) + 0x294c,*(int *)(puVar23 + -0x7fc4) + -0x288c,0x3fa,\n               iVar2);\n    pEVar16 = unaff_s2;\nLAB_001c92f4:\n    iVar2 = iVar2 + -0x26ac;\n    (**(code **)(puVar23 + -0x72a8))\n              (*(int *)(puVar23 + -0x7fd0) + 0x1cac,*(int *)(puVar23 + -0x7fc4) + -0x288c,0x3f9,\n               iVar2);\nLAB_001c9314:\n    (**(code **)(puVar23 + -0x784c))();\n    pIVar11 = unaff_s0;\nLAB_001c9320:\n    (**(code **)(puVar23 + -0x72a8))\n              (*(int *)(puVar23 + -0x7fc4) + -0x2850,*(int *)(puVar23 + -0x7fc4) + -0x288c,0x3f8,\n               iVar2 + -0x26ac);\n    unaff_s2 = pEVar16;\n  }\n  else if (pIVar11->signature == 0xabacadab) {\n    if (pIVar11->debug != MagickFalse) {\n      pcStack_154 = pIVar11->filename;\n      pEStack_158 = (ExceptionInfo *)(*(int *)(puVar21 + 0x1df9a4) - 0x62ac);\n      (**(code **)(puVar21 + 0x1e02a0))\n                (0x8000,*(int *)(puVar21 + 0x1df9ac) + -0x288c,\n                 *(int *)(puVar21 + 0x1df9ac) + -0x26bc,0x3f7);\n    }\n    iVar2 = *(int *)(puStack_150 + -0x7fc4);\n    unaff_s3 = pRVar14;\n    puVar23 = puStack_150;\n    if (pRVar14 != (RectangleInfo *)0x0) {\n      unaff_s0 = pIVar11;\n      if (pEVar16 == (ExceptionInfo *)0x0) goto LAB_001c92f4;\n      unaff_s2 = pEVar16;\n      if (pEVar16->signature != 0xabacadab) goto LAB_001c92d4;\n      iVar2 = 1;\n      pEStack_158 = pEVar16;\n      image = (Image *)(**(code **)(puStack_150 + -0x7080))\n                                 (pIVar11,pRVar14->width,pRVar14->height,1);\n      if (image != (Image *)0x0) {\n        uStack_144 = 0;\n        uStack_148 = 0;\n        unaff_s5 = (undefined *)(**(code **)(puStack_150 + -0x715c))(pIVar11,pEVar16);\n        unaff_s6 = (Image *)(**(code **)(puStack_150 + -0x79dc))(image,pEVar16);\n        iVar2 = (**(code **)(puStack_150 + -0x73fc))(pIVar11);\n        if (((iVar2 == 4) || (iVar2 = (**(code **)(puStack_150 + -0x73fc))(pIVar11), iVar2 == 3)) &&\n           ((iVar2 = (**(code **)(puStack_150 + -0x73fc))(image), iVar2 == 4 ||\n            (iVar2 = (**(code **)(puStack_150 + -0x73fc))(image), iVar2 == 3)))) {\n          (**(code **)(puStack_150 + -0x7774))(7);\n          sVar9 = image->rows;\n          if ((int)sVar9 < 0) {\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1 < (int)(sVar9 + 0x3f) >> 6) goto LAB_001c9298;\nLAB_001c91a4:\n            bVar1 = (int)sVar9 < 0x80;\n          }\n          else {\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\n            if ((int)sVar9 >> 6 <= extraout_v1) goto LAB_001c91a4;\nLAB_001c9298:\n            (*pcVar25)(7);\n            bVar1 = extraout_v1_02 < 2;\n          }\n          iVar10 = 1;\n          if ((bool)(bVar1 ^ 1)) {\n            (**(code **)(puStack_150 + -0x7774))(7);\n            sVar9 = image->rows;\n            if ((int)sVar9 < 0) {\n              sVar9 = sVar9 + 0x3f;\n            }\n            iVar10 = (int)sVar9 >> 6;\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1_01 < iVar10) {\nLAB_001c9234:\n              (*pcVar25)(7);\n              iVar10 = extraout_v1_00;\n            }\n            goto LAB_001c9088;\n          }\n          iVar4 = *(int *)(puStack_150 + -0x7f10);\n        }\n        else {\n          uVar38 = (**(code **)(puStack_150 + -0x7774))(7);\n          if ((int)((ulonglong)uVar38 >> 0x20) == 0) {\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar38) goto LAB_001c9074;\n            uVar38 = (*pcVar25)(7);\n            if ((int)((ulonglong)uVar38 >> 0x20) != 0) goto LAB_001c9070;\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar38) goto LAB_001c9074;\n            iVar10 = 1;\n          }\n          else {\nLAB_001c9070:\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\nLAB_001c9074:\n            uVar38 = (*pcVar25)(7);\n            if (((int)((ulonglong)uVar38 >> 0x20) == 0) &&\n               (pcVar25 = *(code **)(puStack_150 + -0x7774), (uint)uVar38 < 2)) goto LAB_001c9234;\n            iVar10 = 2;\n          }\nLAB_001c9088:\n          iVar4 = *(int *)(puStack_150 + -0x7f10);\n        }\n        iVar2 = 0;\n        pEStack_124 = (ExceptionInfo *)0x1;\n        puStack_120 = &uStack_148;\n        pIStack_13c = pIVar11;\n        pRStack_138 = pRVar14;\n        pEStack_134 = pEVar16;\n        pIStack_130 = unaff_s6;\n        puStack_12c = unaff_s5;\n        pIStack_128 = image;\n        (**(code **)(puStack_150 + -0x7718))(iVar4 + 0x5428,&pIStack_13c,iVar10,0);\n        pEVar16 = pEStack_124;\n        (**(code **)(puStack_150 + -0x79bc))(unaff_s6);\n        (**(code **)(puStack_150 + -0x79bc))(unaff_s5);\n        image->type = pIVar11->type;\n        if (pEVar16 == (ExceptionInfo *)0x0) {\n          image = (Image *)(**(code **)(puStack_150 + -0x7964))(image);\n        }\n      }\n      puVar23 = puStack_150;\n      if (iStack_11c == *piVar19) {\n        return image;\n      }\n      goto LAB_001c9314;\n    }\n    goto LAB_001c9320;\n  }\n  pEVar16 = (ExceptionInfo *)0x3f5;\n  pcVar22 = *(code **)(puVar23 + -0x72a8);\n  pIVar15 = (Image *)(*(int *)(puVar23 + -0x7fc4) + -0x288c);\n  pcVar26 = ExtentImage;\n  pIVar12 = (Image *)(*(int *)(puVar23 + -0x7fc8) + -0x3784);\n  (*pcVar22)();\n  pcVar25 = pcVar22 + 0x1e754c;\n  pcStack_188 = pcVar25;\n  pIStack_17c = pIVar11;\n  pIStack_178 = image;\n  pEStack_174 = unaff_s2;\n  pRStack_170 = unaff_s3;\n  pcStack_16c = pcVar26;\n  if (pIVar12 == (Image *)0x0) {\n    iVar2 = *(int *)(pcVar22 + 0x1df588) + -0x26c8;\n    (**(code **)(pcVar22 + 0x1e02a4))\n              (*(int *)(pcVar22 + 0x1df584) + -0x37b0,*(int *)(pcVar22 + 0x1df588) + -0x288c,0x474,\n               iVar2);\nLAB_001c94fc:\n    iVar2 = iVar2 + -0x26c8;\n    (**(code **)(pcVar25 + -0x72a8))\n              (*(int *)(pcVar25 + -0x7fc4) + -0x2850,*(int *)(pcVar25 + -0x7fc4) + -0x288c,0x478,\n               iVar2);\nLAB_001c951c:\n    iVar2 = iVar2 + -0x26c8;\n    (**(code **)(pcVar25 + -0x72a8))\n              (*(int *)(pcVar25 + -0x7fd0) + 0x294c,*(int *)(pcVar25 + -0x7fc4) + -0x288c,0x47a,\n               iVar2);\n    pIVar12 = pIVar11;\nLAB_001c953c:\n    (**(code **)(pcVar25 + -0x72a8))\n              (*(int *)(pcVar25 + -0x7fd0) + 0x1cac,*(int *)(pcVar25 + -0x7fc4) + -0x288c,0x479,\n               iVar2 + -0x26c8);\n  }\n  else if (pIVar12->signature == 0xabacadab) {\n    if (pIVar12->debug != MagickFalse) {\n      pcStack_194 = pIVar12->filename;\n      pEStack_198 = (ExceptionInfo *)(*(int *)(pcVar22 + 0x1df580) + -0x62ac);\n      (**(code **)(pcVar22 + 0x1dfe7c))\n                (0x8000,*(int *)(pcVar22 + 0x1df588) + -0x288c,\n                 *(int *)(pcVar22 + 0x1df588) + -0x26d4,0x477);\n    }\n    iVar2 = *(int *)(pcStack_188 + -0x7fc4);\n    pIVar11 = pIVar12;\n    image = pIVar15;\n    unaff_s2 = pEVar16;\n    pcVar25 = pcStack_188;\n    if (pIVar15 == (Image *)0x0) goto LAB_001c94fc;\n    if (pEVar16 != (ExceptionInfo *)0x0) {\n      if (pEVar16->signature == 0xabacadab) {\n        pEStack_198 = pEVar16;\n        pIVar11 = (Image *)(**(code **)(pcStack_188 + -0x7080))\n                                     (pIVar12,pIVar15->storage_class,pIVar15->colorspace,1);\n        if (pIVar11 != (Image *)0x0) {\n          iVar2 = (**(code **)(pcStack_188 + -0x7a20))(pIVar11,pEVar16);\n          if (iVar2 == 0) {\n            (**(code **)(pcStack_188 + -0x7964))(pIVar11);\n            pIVar11 = (Image *)0x0;\n          }\n          else {\n            pcStack_194 = (char *)-pIVar15->quality;\n            pEStack_198 = (ExceptionInfo *)-pIVar15->compression;\n            pEStack_190 = pEVar16;\n            iVar2 = (**(code **)(pcStack_188 + -0x7bec))(pIVar11,pIVar12,pIVar12->compose,1);\n            if (iVar2 != 0) {\n              (**(code **)(pcStack_188 + -0x7d18))(pIVar11,pIVar12->columns,pIVar12->rows,pIVar15);\n            }\n          }\n        }\n        return pIVar11;\n      }\n      goto LAB_001c951c;\n    }\n    goto LAB_001c953c;\n  }\n  pcVar22 = *(code **)(pcVar25 + -0x72a8);\n  pIVar11 = (Image *)(*(int *)(pcVar25 + -0x7fc4) + -0x288c);\n  pcVar26 = FlipImage;\n  pIVar15 = (Image *)(*(int *)(pcVar25 + -0x7fc8) + -0x3784);\n  (*pcVar22)(pIVar15,pIVar11,0x475,*(int *)(pcVar25 + -0x7fc4) + -0x26c8);\n  pcVar25 = pcVar22 + 0x1e7330;\n  piVar17 = *(int **)(pcVar22 + 0x1dfcb0);\n  iStack_1d4 = *piVar17;\n  pcStack_208 = pcVar25;\n  pIStack_1d0 = pIVar12;\n  pIStack_1cc = image;\n  pEStack_1c8 = unaff_s2;\n  pRStack_1c4 = unaff_s3;\n  piStack_1c0 = piVar19;\n  puStack_1bc = unaff_s5;\n  pIStack_1b8 = unaff_s6;\n  pIStack_1b4 = unaff_s7;\n  ppIStack_1b0 = unaff_s8;\n  pcStack_1ac = pcVar26;\n  if (pIVar15 == (Image *)0x0) {\n    (**(code **)(pcVar22 + 0x1e0088))\n              (*(int *)(pcVar22 + 0x1df368) + -0x37b0,*(int *)(pcVar22 + 0x1df36c) + -0x288c,0x4bc,\n               *(int *)(pcVar22 + 0x1df36c) + -0x26e0);\n    pIVar11 = image;\nLAB_001c9944:\n    (**(code **)(pcVar25 + -0x72a8))\n              (*(int *)(pcVar25 + -0x7fd0) + 0x1cac,*(int *)(pcVar25 + -0x7fc4) + -0x288c,0x4c0,\n               *(int *)(pcVar25 + -0x7fc4) + -0x26e0);\nLAB_001c9968:\n    (**(code **)(pcVar25 + -0x784c))();\n    pIVar15 = unaff_s7;\nLAB_001c9974:\n    (**(code **)(pcVar25 + -0x72a8))\n              (*(int *)(pcVar25 + -0x7fd0) + 0x294c,*(int *)(pcVar25 + -0x7fc4) + -0x288c,0x4c1,\n               *(int *)(pcVar25 + -0x7fc4) + -0x26e0);\n    pIStack_244 = pIVar11;\n  }\n  else {\n    pIStack_244 = image;\n    if (pIVar15->signature == 0xabacadab) {\n      if (pIVar15->debug != MagickFalse) {\n        pcStack_20c = pIVar15->filename;\n        pIStack_210 = (Image *)(*(int *)(pcVar22 + 0x1df364) + -0x62ac);\n        (**(code **)(pcVar22 + 0x1dfc60))\n                  (0x8000,*(int *)(pcVar22 + 0x1df36c) + -0x288c,\n                   *(int *)(pcVar22 + 0x1df36c) + -0x26ec,0x4bf);\n      }\n      unaff_s7 = pIVar15;\n      pcVar25 = pcStack_208;\n      if (pIVar11 == (Image *)0x0) goto LAB_001c9944;\n      if (pIVar11->rows == 0xabacadab) {\n        pIStack_210 = pIVar11;\n        pIVar12 = (Image *)(**(code **)(pcStack_208 + -0x7080))(pIVar15,0,0,1);\n        if (pIVar12 != (Image *)0x0) {\n          sStack_1fc = (pIVar15->page).x;\n          unaff_s8 = (Image **)(pIVar15->page).width;\n          unaff_s2 = (ExceptionInfo *)(pIVar15->page).height;\n          unaff_s6 = (Image *)(pIVar15->page).y;\n          uStack_1f4 = 0;\n          uStack_1f8 = 0;\n          piVar19 = (int *)(**(code **)(pcStack_208 + -0x715c))(pIVar15,pIVar11);\n          unaff_s5 = (undefined *)(**(code **)(pcStack_208 + -0x79dc))(pIVar12,pIVar11);\n          iVar2 = (**(code **)(pcStack_208 + -0x73fc))(pIVar15);\n          if (((iVar2 == 4) || (iVar2 = (**(code **)(pcStack_208 + -0x73fc))(pIVar15), iVar2 == 3))\n             && ((iVar2 = (**(code **)(pcStack_208 + -0x73fc))(pIVar12), iVar2 == 4 ||\n                 (iVar2 = (**(code **)(pcStack_208 + -0x73fc))(pIVar12), iVar2 == 3)))) {\n            (**(code **)(pcStack_208 + -0x7774))(7);\n            sVar9 = pIVar12->rows;\n            if ((int)sVar9 < 0) {\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_03 < (int)(sVar9 + 0x3f) >> 6) goto LAB_001c98d4;\nLAB_001c981c:\n              bVar1 = (int)sVar9 < 0x80;\n            }\n            else {\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\n              if ((int)sVar9 >> 6 <= extraout_v1_03) goto LAB_001c981c;\nLAB_001c98d4:\n              (*pcVar25)(7);\n              bVar1 = extraout_v1_05 < 2;\n            }\n            iVar2 = 1;\n            if ((bool)(bVar1 ^ 1)) {\n              (**(code **)(pcStack_208 + -0x7774))(7);\n              sVar9 = pIVar12->rows;\n              if ((int)sVar9 < 0) {\n                sVar9 = sVar9 + 0x3f;\n              }\n              iVar2 = (int)sVar9 >> 6;\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_06 < iVar2) {\nLAB_001c98ac:\n                (*pcVar25)(7);\n                iVar2 = extraout_v1_04;\n              }\n              goto LAB_001c96d8;\n            }\n            iVar10 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          else {\n            uVar38 = (**(code **)(pcStack_208 + -0x7774))(7);\n            if ((int)((ulonglong)uVar38 >> 0x20) == 0) {\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar38) goto LAB_001c96c4;\n              uVar38 = (*pcVar25)(7);\n              if ((int)((ulonglong)uVar38 >> 0x20) != 0) goto LAB_001c96c0;\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar38) goto LAB_001c96c4;\n              iVar2 = 1;\n            }\n            else {\nLAB_001c96c0:\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\nLAB_001c96c4:\n              uVar38 = (*pcVar25)(7);\n              if (((int)((ulonglong)uVar38 >> 0x20) == 0) &&\n                 (pcVar25 = *(code **)(pcStack_208 + -0x7774), (uint)uVar38 < 2)) goto LAB_001c98ac;\n              iVar2 = 2;\n            }\nLAB_001c96d8:\n            iVar10 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          puStack_1dc = &uStack_1f8;\n          pIStack_1d8 = (Image *)0x1;\n          pIStack_1f0 = pIVar15;\n          pIStack_1ec = pIVar11;\n          puStack_1e8 = unaff_s5;\n          piStack_1e4 = piVar19;\n          pIStack_1e0 = pIVar12;\n          (**(code **)(pcStack_208 + -0x7718))(iVar10 + 0x56bc,&pIStack_1f0,iVar2,0);\n          pIVar11 = pIStack_1d8;\n          (**(code **)(pcStack_208 + -0x79bc))(unaff_s5);\n          (**(code **)(pcStack_208 + -0x79bc))(piVar19);\n          pIVar12->type = pIVar15->type;\n          if (unaff_s2 != (ExceptionInfo *)0x0) {\n            unaff_s6 = (Image *)((int)unaff_s2 + (-(int)unaff_s6 - pIVar12->rows));\n          }\n          (pIVar12->page).width = (size_t)unaff_s8;\n          (pIVar12->page).height = (size_t)unaff_s2;\n          (pIVar12->page).x = sStack_1fc;\n          (pIVar12->page).y = (ssize_t)unaff_s6;\n          if (pIVar11 == (Image *)0x0) {\n            pIVar12 = (Image *)(**(code **)(pcStack_208 + -0x7964))(pIVar12);\n          }\n        }\n        pcVar25 = pcStack_208;\n        if (iStack_1d4 == *piVar17) {\n          return pIVar12;\n        }\n        goto LAB_001c9968;\n      }\n      goto LAB_001c9974;\n    }\n  }\n  pcVar22 = *(code **)(pcVar25 + -0x72a8);\n  iVar10 = *(int *)(pcVar25 + -0x7fc4) + -0x288c;\n  pcVar26 = FlopImage;\n  iVar2 = *(int *)(pcVar25 + -0x7fc8) + -0x3784;\n  (*pcVar22)(iVar2,iVar10,0x4bd,*(int *)(pcVar25 + -0x7fc4) + -0x26e0);\n  piVar18 = *(int **)(pcVar22 + 0x1df874);\n  iStack_24c = *piVar18;\n  pIStack_248 = pIVar12;\n  pEStack_240 = unaff_s2;\n  piStack_23c = piVar17;\n  piStack_238 = piVar19;\n  puStack_234 = unaff_s5;\n  pIStack_230 = unaff_s6;\n  pIStack_22c = pIVar15;\n  ppIStack_228 = unaff_s8;\n  pcStack_224 = pcVar26;\n  if (iVar2 == 0) {\n    pIVar11 = (Image *)(**(code **)(pcVar22 + 0x1dfc4c))\n                                 (*(int *)(pcVar22 + 0x1def2c) + -0x37b0,\n                                  *(int *)(pcVar22 + 0x1def30) + -0x288c,0x543,\n                                  *(int *)(pcVar22 + 0x1def30) + -0x26f8);\n    return pIVar11;\n  }\n  if (*(int *)(iVar2 + 0x336c) != -0x54535255) {\n    pIVar11 = (Image *)(**(code **)(pcVar22 + 0x1dfc4c))\n                                 (*(int *)(pcVar22 + 0x1def2c) + -0x3784,\n                                  *(int *)(pcVar22 + 0x1def30) + -0x288c,0x544,\n                                  *(int *)(pcVar22 + 0x1def30) + -0x26f8);\n    return pIVar11;\n  }\n  if (*(int *)(iVar2 + 0x3350) != 0) {\n    (**(code **)(pcVar22 + 0x1df824))\n              (0x8000,*(int *)(pcVar22 + 0x1def30) + -0x288c,*(int *)(pcVar22 + 0x1def30) + -0x2704,\n               0x546,*(int *)(pcVar22 + 0x1def28) + -0x62ac,iVar2 + 0x340);\n  }\n  if (iVar10 == 0) {\n    pIVar11 = (Image *)(**(code **)(pcVar22 + 0x1dfc4c))\n                                 (*(int *)(pcVar22 + 0x1def24) + 0x1cac,\n                                  *(int *)(pcVar22 + 0x1def30) + -0x288c,0x547,\n                                  *(int *)(pcVar22 + 0x1def30) + -0x26f8);\n    return pIVar11;\n  }\n  if (*(int *)(iVar10 + 0x1c) != -0x54535255) goto LAB_001c9db0;\n  pIVar11 = (Image *)(**(code **)(pcVar22 + 0x1dfe74))(iVar2,0,0,1,iVar10);\n  if (pIVar11 != (Image *)0x0) {\n    sVar5 = *(ssize_t *)(iVar2 + 0x234);\n    sVar9 = *(size_t *)(iVar2 + 0x228);\n    sVar24 = *(size_t *)(iVar2 + 0x22c);\n    sVar20 = *(int *)(iVar2 + 0x230);\n    uStack_26c = 0;\n    uStack_270 = 0;\n    uVar6 = (**(code **)(pcVar22 + 0x1dfd98))(iVar2,iVar10);\n    uVar7 = (**(code **)(pcVar22 + 0x1df518))(pIVar11,iVar10);\n    iVar4 = (**(code **)(pcVar22 + 0x1dfaf8))(iVar2);\n    if (((iVar4 == 4) || (iVar4 = (**(code **)(pcVar22 + 0x1dfaf8))(iVar2), iVar4 == 3)) &&\n       ((iVar4 = (**(code **)(pcVar22 + 0x1dfaf8))(pIVar11), iVar4 == 4 ||\n        (iVar4 = (**(code **)(pcVar22 + 0x1dfaf8))(pIVar11), iVar4 == 3)))) {\n      (**(code **)(pcVar22 + 0x1df780))(7);\n      sVar8 = pIVar11->rows;\n      if ((int)sVar8 < 0) {\n        pcVar25 = *(code **)(pcVar22 + 0x1df780);\n        if (extraout_v1_07 < (int)(sVar8 + 0x3f) >> 6) goto LAB_001c9d10;\nLAB_001c9c58:\n        bVar1 = (int)sVar8 < 0x80;\n      }\n      else {\n        pcVar25 = *(code **)(pcVar22 + 0x1df780);\n        if ((int)sVar8 >> 6 <= extraout_v1_07) goto LAB_001c9c58;\nLAB_001c9d10:\n        (*pcVar25)(7);\n        bVar1 = extraout_v1_09 < 2;\n      }\n      iVar4 = 1;\n      if ((bool)(bVar1 ^ 1)) {\n        (**(code **)(pcVar22 + 0x1df780))(7);\n        sVar8 = pIVar11->rows;\n        if ((int)sVar8 < 0) {\n          sVar8 = sVar8 + 0x3f;\n        }\n        iVar4 = (int)sVar8 >> 6;\n        pcVar25 = *(code **)(pcVar22 + 0x1df780);\n        if (extraout_v1_10 < iVar4) {\nLAB_001c9ce8:\n          (*pcVar25)(7);\n          iVar4 = extraout_v1_08;\n        }\n        goto LAB_001c9b14;\n      }\n      iVar13 = *(int *)(pcVar22 + 0x1defe4);\n    }\n    else {\n      uVar38 = (**(code **)(pcVar22 + 0x1df780))(7);\n      if ((int)((ulonglong)uVar38 >> 0x20) == 0) {\n        pcVar25 = *(code **)(pcVar22 + 0x1df780);\n        if (1 < (uint)uVar38) goto LAB_001c9b00;\n        uVar38 = (*pcVar25)(7);\n        if ((int)((ulonglong)uVar38 >> 0x20) != 0) goto LAB_001c9afc;\n        pcVar25 = *(code **)(pcVar22 + 0x1df780);\n        if (1 < (uint)uVar38) goto LAB_001c9b00;\n        iVar4 = 1;\n      }\n      else {\nLAB_001c9afc:\n        pcVar25 = *(code **)(pcVar22 + 0x1df780);\nLAB_001c9b00:\n        uVar38 = (*pcVar25)(7);\n        if (((int)((ulonglong)uVar38 >> 0x20) == 0) &&\n           (pcVar25 = *(code **)(pcVar22 + 0x1df780), (uint)uVar38 < 2)) goto LAB_001c9ce8;\n        iVar4 = 2;\n      }\nLAB_001c9b14:\n      iVar13 = *(int *)(pcVar22 + 0x1defe4);\n    }\n    puStack_254 = &uStack_270;\n    iStack_250 = 1;\n    iStack_268 = iVar2;\n    iStack_264 = iVar10;\n    uStack_260 = uVar7;\n    uStack_25c = uVar6;\n    pIStack_258 = pIVar11;\n    (**(code **)(pcVar22 + 0x1df7dc))(iVar13 + 0x594c,&iStack_268,iVar4,0);\n    iVar10 = iStack_250;\n    (**(code **)(pcVar22 + 0x1df538))(uVar7);\n    (**(code **)(pcVar22 + 0x1df538))(uVar6);\n    pIVar11->type = *(ImageType *)(iVar2 + 0x2a0);\n    if (sVar9 != 0) {\n      sVar20 = (sVar9 - pIVar11->columns) - sVar20;\n    }\n    (pIVar11->page).width = sVar9;\n    (pIVar11->page).height = sVar24;\n    (pIVar11->page).x = sVar20;\n    (pIVar11->page).y = sVar5;\n    if (iVar10 == 0) {\n      pIVar11 = (Image *)(**(code **)(pcVar22 + 0x1df590))(pIVar11);\n    }\n  }\n  if (iStack_24c == *piVar18) {\n    return pIVar11;\n  }\n  (**(code **)(pcVar22 + 0x1df6a8))();\nLAB_001c9db0:\n  pIVar11 = (Image *)(**(code **)(pcVar22 + 0x1dfc4c))\n                               (*(int *)(pcVar22 + 0x1def24) + 0x294c,\n                                *(int *)(pcVar22 + 0x1def30) + -0x288c,0x548,\n                                *(int *)(pcVar22 + 0x1def30) + -0x26f8);\n  return pIVar11;\n}\n\n" comment comment comment comment comment (function_definition "Image * CropImageToTiles(Image *image,char *crop_geometry,ExceptionInfo *exception)\n\n{\n  bool bVar1;\n  int iVar2;\n  uint uVar3;\n  int iVar4;\n  ssize_t sVar5;\n  undefined4 uVar6;\n  undefined4 uVar7;\n  size_t sVar8;\n  size_t sVar9;\n  int extraout_v1;\n  int extraout_v1_00;\n  int extraout_v1_01;\n  int extraout_v1_02;\n  int extraout_v1_03;\n  int extraout_v1_04;\n  int extraout_v1_05;\n  int extraout_v1_06;\n  int extraout_v1_07;\n  int extraout_v1_08;\n  int extraout_v1_09;\n  int extraout_v1_10;\n  int iVar10;\n  Image *pIVar11;\n  Image *pIVar12;\n  int iVar13;\n  RectangleInfo *pRVar14;\n  Image *pIVar15;\n  ExceptionInfo *pEVar16;\n  Image *unaff_s0;\n  Image *unaff_s1;\n  ExceptionInfo *unaff_s2;\n  RectangleInfo *unaff_s3;\n  int *piVar17;\n  int *piVar18;\n  size_t unaff_s4;\n  int *piVar19;\n  undefined *unaff_s5;\n  Image *unaff_s6;\n  ssize_t sVar20;\n  Image *unaff_s7;\n  undefined *puVar21;\n  code *pcVar22;\n  undefined *puVar23;\n  Image **unaff_s8;\n  size_t sVar24;\n  code *pcVar25;\n  code *pcVar26;\n  double dVar27;\n  double dVar28;\n  double dVar29;\n  double dVar30;\n  double dVar31;\n  double dVar32;\n  double dVar33;\n  double dVar34;\n  double dVar35;\n  double dVar36;\n  double dVar37;\n  undefined8 uVar38;\n  undefined4 uStack_270;\n  undefined4 uStack_26c;\n  int iStack_268;\n  int iStack_264;\n  undefined4 uStack_260;\n  undefined4 uStack_25c;\n  Image *pIStack_258;\n  undefined4 *puStack_254;\n  int iStack_250;\n  int iStack_24c;\n  Image *pIStack_248;\n  Image *pIStack_244;\n  ExceptionInfo *pEStack_240;\n  int *piStack_23c;\n  int *piStack_238;\n  undefined *puStack_234;\n  Image *pIStack_230;\n  Image *pIStack_22c;\n  Image **ppIStack_228;\n  code *pcStack_224;\n  Image *pIStack_210;\n  char *pcStack_20c;\n  code *pcStack_208;\n  ssize_t sStack_1fc;\n  undefined4 uStack_1f8;\n  undefined4 uStack_1f4;\n  Image *pIStack_1f0;\n  Image *pIStack_1ec;\n  undefined *puStack_1e8;\n  int *piStack_1e4;\n  Image *pIStack_1e0;\n  undefined4 *puStack_1dc;\n  Image *pIStack_1d8;\n  int iStack_1d4;\n  Image *pIStack_1d0;\n  Image *pIStack_1cc;\n  ExceptionInfo *pEStack_1c8;\n  RectangleInfo *pRStack_1c4;\n  int *piStack_1c0;\n  undefined *puStack_1bc;\n  Image *pIStack_1b8;\n  Image *pIStack_1b4;\n  Image **ppIStack_1b0;\n  code *pcStack_1ac;\n  ExceptionInfo *pEStack_198;\n  char *pcStack_194;\n  ExceptionInfo *pEStack_190;\n  code *pcStack_188;\n  Image *pIStack_17c;\n  Image *pIStack_178;\n  ExceptionInfo *pEStack_174;\n  RectangleInfo *pRStack_170;\n  code *pcStack_16c;\n  ExceptionInfo *pEStack_158;\n  char *pcStack_154;\n  undefined *puStack_150;\n  undefined4 uStack_148;\n  undefined4 uStack_144;\n  Image *pIStack_13c;\n  RectangleInfo *pRStack_138;\n  ExceptionInfo *pEStack_134;\n  Image *pIStack_130;\n  undefined *puStack_12c;\n  Image *pIStack_128;\n  ExceptionInfo *pEStack_124;\n  undefined4 *puStack_120;\n  int iStack_11c;\n  Image *pIStack_118;\n  Image *pIStack_114;\n  ExceptionInfo *pEStack_110;\n  RectangleInfo *pRStack_10c;\n  uint uStack_108;\n  undefined *puStack_104;\n  Image *pIStack_100;\n  code *pcStack_fc;\n  ExceptionInfo *local_e8;\n  char *local_e4;\n  double local_c8;\n  double local_a0;\n  Image *crop_image;\n  RectangleInfo geometry;\n  RectangleInfo crop;\n  \n  puVar21 = PTR___stack_chk_guard_003a9230;\n  iVar2 = *(int *)PTR___stack_chk_guard_003a9230;\n  if (image == (Image *)0x0) {\nLAB_001c8ef8:\n    image = unaff_s1;\n    (*(code *)PTR___assert_fail_003a9608)\n              (PTR_LAB_003a88e0 + 0xdd0,PTR_s_courses_003a88ec + -0x288c,0x322,\n               PTR_s_courses_003a88ec + -0x2688);\n  }\n  else if (image->signature == 0xabacadab) {\n    if (image->debug != MagickFalse) {\n      local_e4 = image->filename;\n      local_e8 = (ExceptionInfo *)(PTR_s_t_to_left_003a88e4 + -0x62ac);\n      (*(code *)PTR_LogMagickEvent_003a91e0)\n                (0x8000,PTR_s_courses_003a88ec + -0x288c,PTR_s_courses_003a88ec + -0x269c,0x325);\n    }\n    unaff_s6 = (Image *)(*(code *)PTR_NewImageList_003a8e84)();\n    crop_image = unaff_s6;\n    uVar3 = (*(code *)PTR_ParseGravityGeometry_003a97fc)(image,crop_geometry,&geometry,exception);\n    unaff_s4 = geometry.height;\n    unaff_s0 = (Image *)geometry.width;\n    unaff_s3 = (RectangleInfo *)PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;\n    if ((int)(uVar3 << 0xe) < 0) {\n      sVar9 = image->rows;\n      if (geometry.width == 0) {\n        geometry.width = 1;\n        dVar37 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n      }\n      else {\n        dVar37 = (double)(int)geometry.width;\n        if ((int)geometry.width < 0) {\n          dVar37 = dVar37 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n      }\n      if (geometry.height == 0) {\n        dVar32 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n        geometry.height = 1;\n        if ((uVar3 & 0x2000) != 0) goto LAB_001c8e14;\nLAB_001c8484:\n        iVar10 = geometry.x;\n        if (geometry.x < 0) {\n          iVar10 = -geometry.x;\n        }\n        iVar10 = image->columns - iVar10;\n        iVar4 = geometry.y;\n        if (geometry.y < 0) {\n          iVar4 = -geometry.y;\n        }\n        iVar4 = sVar9 - iVar4;\n      }\n      else {\n        dVar32 = (double)(int)geometry.height;\n        if ((int)geometry.height < 0) {\n          dVar32 = dVar32 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n        if ((uVar3 & 0x2000) == 0) goto LAB_001c8484;\nLAB_001c8e14:\n        iVar10 = geometry.x;\n        if (geometry.x < 0) {\n          iVar10 = -geometry.x;\n        }\n        iVar10 = iVar10 + image->columns;\n        if (geometry.y < 0) {\n          iVar4 = sVar9 - geometry.y;\n        }\n        else {\n          iVar4 = geometry.y + sVar9;\n        }\n      }\n      unaff_s4 = uVar3 & 0x2000;\n      dVar36 = (double)iVar10;\n      if (iVar10 < 0) {\n        dVar36 = dVar36 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n      }\n      dVar37 = dVar36 / dVar37;\n      local_c8 = (double)iVar4;\n      if (iVar4 < 0) {\n        local_c8 = local_c8 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n      }\n      dVar27 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n      local_a0 = dVar27;\n      if (dVar37 < dVar27) {\n        local_a0 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n        dVar37 = dVar27;\n      }\n      if (local_a0 <= local_c8 / dVar32) {\n        local_a0 = local_c8 / dVar32;\n      }\n      dVar32 = 0.0;\n      unaff_s7 = (Image *)geometry.y;\n      if (0.0 < local_c8) {\n        dVar27 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4780);\n        dVar33 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4788);\n        if (unaff_s4 != 0) goto LAB_001c8b70;\nLAB_001c854c:\n        unaff_s7 = (Image *)geometry.y;\n        dVar34 = dVar32;\n        if (geometry.y < 1) {\n          dVar34 = dVar32 - (double)geometry.y;\n        }\n        dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar34);\n        dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar34);\n        if (dVar34 - dVar28 < dVar29 - dVar34) {\n          dVar28 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar25 = (code *)PTR_floor_003a9670;\n          if (dVar34 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d7c;\n        }\n        else {\n          if (dVar34 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d7c:\n            iVar10 = -0x7ffffdff;\n            goto joined_r0x001c8cbc;\n          }\n          dVar28 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar25 = (code *)PTR_ceil_003a8c20;\n        }\n        if (dVar28 < dVar34) {\n          iVar10 = 0x7ffffdff;\n        }\n        else {\n          dVar34 = (double)(*pcVar25)(dVar34);\n          iVar10 = (int)dVar34;\n        }\njoined_r0x001c8cbc:\n        dVar32 = dVar32 + local_a0;\n        if ((int)unaff_s7 < 0) {\n          dVar34 = 0.0;\n        }\n        else {\n          dVar34 = (double)(int)unaff_s7;\n        }\n        dVar34 = dVar32 + dVar34;\n        dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar34);\n        dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar34);\n        if (dVar34 - dVar28 < dVar29 - dVar34) {\n          if (*(double *)((int)unaff_s3 + 0x4780) <= dVar34) {\n            if (dVar34 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8630;\n            goto LAB_001c8cec;\n          }\n        }\n        else if (*(double *)((int)unaff_s3 + 0x4780) <= dVar34) {\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar34) goto LAB_001c8cec;\n          goto LAB_001c8d18;\n        }\nLAB_001c8c88:\n        iVar4 = -0x7ffffdff;\nLAB_001c8644:\n        do {\n          unaff_s8 = (Image **)(iVar4 - iVar10);\n          crop_geometry = (char *)((image->page).y + iVar10);\n          dVar34 = 0.0;\n          crop.height = (size_t)unaff_s8;\n          crop.y = (ssize_t)crop_geometry;\n          if (0.0 < dVar36) {\n            dVar28 = *(double *)((int)unaff_s3 + 0x4788);\n            unaff_s6 = (Image *)&crop;\n            dVar29 = *(double *)((int)unaff_s3 + 0x4780);\n            do {\n              unaff_s7 = (Image *)geometry.x;\n              if (unaff_s4 == 0) {\n                dVar35 = dVar34;\n                if (geometry.x < 1) {\n                  dVar35 = dVar34 - (double)geometry.x;\n                }\n                dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                if (dVar35 - dVar30 < dVar31 - dVar35) {\n                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar35) {\n                    pcVar25 = (code *)PTR_floor_003a9670;\n                    if (dVar35 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar10 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }\nLAB_001c8b04:\n                  dVar34 = dVar34 + dVar37;\n                  iVar10 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;\nLAB_001c8708:\n                  dVar35 = (double)(int)unaff_s7;\n                }\n                else {\n                  if (dVar35 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar25 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar35) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar35 = (double)(*pcVar25)(dVar35);\n                  iVar10 = (int)dVar35;\nLAB_001c8700:\n                  dVar34 = dVar34 + dVar37;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar35 = 0.0;\n                }\n                dVar35 = dVar34 + dVar35;\n                dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                if (dVar35 - dVar30 < dVar31 - dVar35) {\n                  if (dVar35 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar35) goto LAB_001c88b8;\nLAB_001c8768:\n                  dVar35 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                  iVar4 = (int)dVar35;\n                }\n                else {\n                  if (dVar35 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar35) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar35 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                  iVar4 = (int)dVar35;\n                }\n              }\n              else {\n                dVar35 = dVar34;\n                if (0 < geometry.x) {\n                  dVar35 = dVar34 - (double)geometry.x;\n                }\n                dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                if (dVar35 - dVar30 < dVar31 - dVar35) {\n                  if (dVar29 <= dVar35) {\n                    pcVar25 = (code *)PTR_floor_003a9670;\n                    if (dVar35 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar10 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar34 = dVar34 + dVar37;\n                  iVar10 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar35 = 0.0;\n                }\n                else {\n                  if (dVar35 < dVar29) goto LAB_001c8b24;\n                  pcVar25 = (code *)PTR_ceil_003a8c20;\n                  if (dVar28 < dVar35) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar35 = (double)(*pcVar25)(dVar35);\n                  iVar10 = (int)dVar35;\nLAB_001c8850:\n                  dVar34 = dVar34 + dVar37;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar35 = (double)(int)unaff_s7;\n                }\n                dVar35 = dVar34 + dVar35;\n                dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                if (dVar35 - dVar30 < dVar31 - dVar35) {\n                  if (dVar35 < dVar27) goto LAB_001c8a44;\n                  if (dVar35 <= dVar28) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar4 = 0x7ffffdff;\n                }\n                else if (dVar27 <= dVar35) {\n                  if (dVar35 <= dVar33) goto LAB_001c8abc;\n                  iVar4 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar4 = -0x7ffffdff;\n                }\n              }\n              unaff_s8 = (Image **)(iVar4 - iVar10);\n              crop_geometry = (char *)((image->page).x + iVar10);\n              crop.width = (size_t)unaff_s8;\n              crop.x = (ssize_t)crop_geometry;\n              iVar10 = (*(code *)PTR_CropImage_003a90b8)(image,unaff_s6,exception);\n              if (iVar10 != 0) {\n                (*(code *)PTR_AppendImageToList_003a9880)(&crop_image,iVar10);\n              }\n            } while (dVar34 < dVar36);\n          }\n          unaff_s5 = (undefined *)unaff_s3;\n          if (local_c8 <= dVar32) break;\n          if (unaff_s4 == 0) goto LAB_001c854c;\nLAB_001c8b70:\n          unaff_s7 = (Image *)geometry.y;\n          dVar34 = dVar32;\n          if (0 < geometry.y) {\n            dVar34 = dVar32 - (double)geometry.y;\n          }\n          dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar34);\n          dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar34);\n          if (dVar34 - dVar28 < dVar29 - dVar34) {\n            if (dVar34 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d8c;\n            pcVar25 = (code *)PTR_floor_003a9670;\n            if (*(double *)((int)unaff_s3 + 0x4788) < dVar34) goto LAB_001c8d50;\nLAB_001c8bd8:\n            dVar34 = (double)(*pcVar25)(dVar34);\n            iVar10 = (int)dVar34;\nLAB_001c8bf0:\n            dVar32 = dVar32 + local_a0;\n            if (-2 < (int)unaff_s7) goto LAB_001c8c00;\nLAB_001c8d6c:\n            dVar34 = (double)(int)unaff_s7;\n          }\n          else {\n            if (dVar34 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d8c:\n              iVar10 = -0x7ffffdff;\n              goto LAB_001c8bf0;\n            }\n            pcVar25 = (code *)PTR_ceil_003a8c20;\n            if (dVar34 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8bd8;\nLAB_001c8d50:\n            iVar10 = 0x7ffffdff;\n            dVar32 = dVar32 + local_a0;\n            if ((int)unaff_s7 < -1) goto LAB_001c8d6c;\nLAB_001c8c00:\n            dVar34 = 0.0;\n          }\n          dVar34 = dVar32 + dVar34;\n          dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar34);\n          dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar34);\n          if (dVar34 - dVar28 < dVar29 - dVar34) {\n            if (*(double *)((int)unaff_s3 + 0x4780) <= dVar34) {\n              if (*(double *)((int)unaff_s3 + 0x4788) < dVar34) {\nLAB_001c8cec:\n                iVar4 = 0x7ffffdff;\n              }\n              else {\nLAB_001c8630:\n                dVar34 = (double)(*(code *)PTR_floor_003a9670)(dVar34);\n                iVar4 = (int)dVar34;\n              }\n              goto LAB_001c8644;\n            }\n            goto LAB_001c8c88;\n          }\n          if (dVar34 < dVar27) goto LAB_001c8c88;\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar34) goto LAB_001c8cec;\nLAB_001c8d18:\n          dVar34 = (double)(*(code *)PTR_ceil_003a8c20)(dVar34);\n          iVar4 = (int)dVar34;\n        } while( true );\n      }\n      (*(code *)PTR_ClearMagickException_003a90f8)(exception);\n      pIVar11 = crop_image;\n      unaff_s0 = (Image *)crop_geometry;\n    }\n    else {\n      unaff_s3 = &geometry;\n      if (((geometry.width == 0) && (geometry.height == 0)) || ((uVar3 & 3) != 0)) {\n        crop_image = (Image *)(*(code *)PTR_CropImage_003a90b8)(image,&geometry,exception);\n        pIVar11 = crop_image;\n        unaff_s4 = uVar3;\n        if ((crop_image != (Image *)0x0) && (unaff_s4 = uVar3 & 0x2000, unaff_s4 != 0)) {\n          (crop_image->page).x = (crop_image->page).x - geometry.x;\n          (crop_image->page).y = (crop_image->page).y - geometry.y;\n          (crop_image->page).width = geometry.width;\n          (crop_image->page).height = geometry.height;\n        }\n      }\n      else {\n        unaff_s7 = (Image *)image->columns;\n        if ((geometry.width < unaff_s7) || (geometry.height < image->rows)) {\n          pIVar11 = (Image *)(image->page).width;\n          uVar3 = (image->page).height;\n          if (pIVar11 != (Image *)0x0) {\n            unaff_s7 = pIVar11;\n          }\n          if (uVar3 == 0) {\n            uVar3 = image->rows;\n          }\n          if (geometry.width == 0) {\n            unaff_s0 = unaff_s7;\n          }\n          if (geometry.height == 0) {\n            unaff_s4 = uVar3;\n          }\n          pIVar11 = crop_image;\n          if (0 < (int)uVar3) {\n            unaff_s3 = (RectangleInfo *)0x0;\n            unaff_s8 = &crop_image;\n            do {\n              unaff_s5 = (undefined *)0x0;\n              if ((int)unaff_s7 < 1) {\n                pIVar11 = crop_image;\n                if (unaff_s6 == (Image *)0x0) break;\n              }\n              else {\n                do {\n                  geometry.width = (size_t)unaff_s0;\n                  geometry.height = unaff_s4;\n                  geometry.x = (ssize_t)unaff_s5;\n                  geometry.y = (ssize_t)unaff_s3;\n                  unaff_s6 = (Image *)(*(code *)PTR_CropImage_003a90b8)(image,&geometry,exception);\n                  pIVar11 = crop_image;\n                  if (unaff_s6 == (Image *)0x0) goto LAB_001c8908;\n                  unaff_s5 = unaff_s5 + (int)unaff_s0;\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);\n              }\n              unaff_s3 = (RectangleInfo *)((int)&unaff_s3->width + unaff_s4);\n              pIVar11 = crop_image;\n            } while ((int)unaff_s3 < (int)uVar3);\n          }\n        }\n        else {\n          local_e8 = exception;\n          pIVar11 = (Image *)(*(code *)PTR_CloneImage_003a9830)(image,0,0,1);\n        }\n      }\n    }\nLAB_001c8908:\n    if (iVar2 == *(int *)puVar21) {\n      return pIVar11;\n    }\n    (*(code *)PTR___stack_chk_fail_003a9064)();\n    unaff_s1 = image;\n    unaff_s2 = exception;\n    goto LAB_001c8ef8;\n  }\n  pEVar16 = (ExceptionInfo *)0x323;\n  pRVar14 = (RectangleInfo *)(PTR_s_courses_003a88ec + -0x288c);\n  pcVar25 = ExcerptImage;\n  pIVar11 = (Image *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3784);\n  puVar21 = PTR___assert_fail_003a9608;\n  (*(code *)PTR___assert_fail_003a9608)();\n  puVar23 = puVar21 + 0x1e7970;\n  piVar19 = *(int **)(puVar21 + 0x1e02f0);\n  iStack_11c = *piVar19;\n  puStack_150 = puVar23;\n  pIStack_118 = unaff_s0;\n  pIStack_114 = image;\n  pEStack_110 = unaff_s2;\n  pRStack_10c = unaff_s3;\n  uStack_108 = unaff_s4;\n  puStack_104 = unaff_s5;\n  pIStack_100 = unaff_s6;\n  pcStack_fc = pcVar25;\n  if (pIVar11 == (Image *)0x0) {\n    iVar2 = *(int *)(puVar21 + 0x1df9ac) + -0x26ac;\n    (**(code **)(puVar21 + 0x1e06c8))\n              (*(int *)(puVar21 + 0x1df9a8) + -0x37b0,*(int *)(puVar21 + 0x1df9ac) + -0x288c,0x3f4,\n               iVar2);\nLAB_001c92d4:\n    iVar2 = iVar2 + -0x26ac;\n    (**(code **)(puVar23 + -0x72a8))\n              (*(int *)(puVar23 + -0x7fd0) + 0x294c,*(int *)(puVar23 + -0x7fc4) + -0x288c,0x3fa,\n               iVar2);\n    pEVar16 = unaff_s2;\nLAB_001c92f4:\n    iVar2 = iVar2 + -0x26ac;\n    (**(code **)(puVar23 + -0x72a8))\n              (*(int *)(puVar23 + -0x7fd0) + 0x1cac,*(int *)(puVar23 + -0x7fc4) + -0x288c,0x3f9,\n               iVar2);\nLAB_001c9314:\n    (**(code **)(puVar23 + -0x784c))();\n    pIVar11 = unaff_s0;\nLAB_001c9320:\n    (**(code **)(puVar23 + -0x72a8))\n              (*(int *)(puVar23 + -0x7fc4) + -0x2850,*(int *)(puVar23 + -0x7fc4) + -0x288c,0x3f8,\n               iVar2 + -0x26ac);\n    unaff_s2 = pEVar16;\n  }\n  else if (pIVar11->signature == 0xabacadab) {\n    if (pIVar11->debug != MagickFalse) {\n      pcStack_154 = pIVar11->filename;\n      pEStack_158 = (ExceptionInfo *)(*(int *)(puVar21 + 0x1df9a4) - 0x62ac);\n      (**(code **)(puVar21 + 0x1e02a0))\n                (0x8000,*(int *)(puVar21 + 0x1df9ac) + -0x288c,\n                 *(int *)(puVar21 + 0x1df9ac) + -0x26bc,0x3f7);\n    }\n    iVar2 = *(int *)(puStack_150 + -0x7fc4);\n    unaff_s3 = pRVar14;\n    puVar23 = puStack_150;\n    if (pRVar14 != (RectangleInfo *)0x0) {\n      unaff_s0 = pIVar11;\n      if (pEVar16 == (ExceptionInfo *)0x0) goto LAB_001c92f4;\n      unaff_s2 = pEVar16;\n      if (pEVar16->signature != 0xabacadab) goto LAB_001c92d4;\n      iVar2 = 1;\n      pEStack_158 = pEVar16;\n      image = (Image *)(**(code **)(puStack_150 + -0x7080))\n                                 (pIVar11,pRVar14->width,pRVar14->height,1);\n      if (image != (Image *)0x0) {\n        uStack_144 = 0;\n        uStack_148 = 0;\n        unaff_s5 = (undefined *)(**(code **)(puStack_150 + -0x715c))(pIVar11,pEVar16);\n        unaff_s6 = (Image *)(**(code **)(puStack_150 + -0x79dc))(image,pEVar16);\n        iVar2 = (**(code **)(puStack_150 + -0x73fc))(pIVar11);\n        if (((iVar2 == 4) || (iVar2 = (**(code **)(puStack_150 + -0x73fc))(pIVar11), iVar2 == 3)) &&\n           ((iVar2 = (**(code **)(puStack_150 + -0x73fc))(image), iVar2 == 4 ||\n            (iVar2 = (**(code **)(puStack_150 + -0x73fc))(image), iVar2 == 3)))) {\n          (**(code **)(puStack_150 + -0x7774))(7);\n          sVar9 = image->rows;\n          if ((int)sVar9 < 0) {\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1 < (int)(sVar9 + 0x3f) >> 6) goto LAB_001c9298;\nLAB_001c91a4:\n            bVar1 = (int)sVar9 < 0x80;\n          }\n          else {\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\n            if ((int)sVar9 >> 6 <= extraout_v1) goto LAB_001c91a4;\nLAB_001c9298:\n            (*pcVar25)(7);\n            bVar1 = extraout_v1_02 < 2;\n          }\n          iVar10 = 1;\n          if ((bool)(bVar1 ^ 1)) {\n            (**(code **)(puStack_150 + -0x7774))(7);\n            sVar9 = image->rows;\n            if ((int)sVar9 < 0) {\n              sVar9 = sVar9 + 0x3f;\n            }\n            iVar10 = (int)sVar9 >> 6;\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1_01 < iVar10) {\nLAB_001c9234:\n              (*pcVar25)(7);\n              iVar10 = extraout_v1_00;\n            }\n            goto LAB_001c9088;\n          }\n          iVar4 = *(int *)(puStack_150 + -0x7f10);\n        }\n        else {\n          uVar38 = (**(code **)(puStack_150 + -0x7774))(7);\n          if ((int)((ulonglong)uVar38 >> 0x20) == 0) {\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar38) goto LAB_001c9074;\n            uVar38 = (*pcVar25)(7);\n            if ((int)((ulonglong)uVar38 >> 0x20) != 0) goto LAB_001c9070;\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar38) goto LAB_001c9074;\n            iVar10 = 1;\n          }\n          else {\nLAB_001c9070:\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\nLAB_001c9074:\n            uVar38 = (*pcVar25)(7);\n            if (((int)((ulonglong)uVar38 >> 0x20) == 0) &&\n               (pcVar25 = *(code **)(puStack_150 + -0x7774), (uint)uVar38 < 2)) goto LAB_001c9234;\n            iVar10 = 2;\n          }\nLAB_001c9088:\n          iVar4 = *(int *)(puStack_150 + -0x7f10);\n        }\n        iVar2 = 0;\n        pEStack_124 = (ExceptionInfo *)0x1;\n        puStack_120 = &uStack_148;\n        pIStack_13c = pIVar11;\n        pRStack_138 = pRVar14;\n        pEStack_134 = pEVar16;\n        pIStack_130 = unaff_s6;\n        puStack_12c = unaff_s5;\n        pIStack_128 = image;\n        (**(code **)(puStack_150 + -0x7718))(iVar4 + 0x5428,&pIStack_13c,iVar10,0);\n        pEVar16 = pEStack_124;\n        (**(code **)(puStack_150 + -0x79bc))(unaff_s6);\n        (**(code **)(puStack_150 + -0x79bc))(unaff_s5);\n        image->type = pIVar11->type;\n        if (pEVar16 == (ExceptionInfo *)0x0) {\n          image = (Image *)(**(code **)(puStack_150 + -0x7964))(image);\n        }\n      }\n      puVar23 = puStack_150;\n      if (iStack_11c == *piVar19) {\n        return image;\n      }\n      goto LAB_001c9314;\n    }\n    goto LAB_001c9320;\n  }\n  pEVar16 = (ExceptionInfo *)0x3f5;\n  pcVar22 = *(code **)(puVar23 + -0x72a8);\n  pIVar15 = (Image *)(*(int *)(puVar23 + -0x7fc4) + -0x288c);\n  pcVar26 = ExtentImage;\n  pIVar12 = (Image *)(*(int *)(puVar23 + -0x7fc8) + -0x3784);\n  (*pcVar22)();\n  pcVar25 = pcVar22 + 0x1e754c;\n  pcStack_188 = pcVar25;\n  pIStack_17c = pIVar11;\n  pIStack_178 = image;\n  pEStack_174 = unaff_s2;\n  pRStack_170 = unaff_s3;\n  pcStack_16c = pcVar26;\n  if (pIVar12 == (Image *)0x0) {\n    iVar2 = *(int *)(pcVar22 + 0x1df588) + -0x26c8;\n    (**(code **)(pcVar22 + 0x1e02a4))\n              (*(int *)(pcVar22 + 0x1df584) + -0x37b0,*(int *)(pcVar22 + 0x1df588) + -0x288c,0x474,\n               iVar2);\nLAB_001c94fc:\n    iVar2 = iVar2 + -0x26c8;\n    (**(code **)(pcVar25 + -0x72a8))\n              (*(int *)(pcVar25 + -0x7fc4) + -0x2850,*(int *)(pcVar25 + -0x7fc4) + -0x288c,0x478,\n               iVar2);\nLAB_001c951c:\n    iVar2 = iVar2 + -0x26c8;\n    (**(code **)(pcVar25 + -0x72a8))\n              (*(int *)(pcVar25 + -0x7fd0) + 0x294c,*(int *)(pcVar25 + -0x7fc4) + -0x288c,0x47a,\n               iVar2);\n    pIVar12 = pIVar11;\nLAB_001c953c:\n    (**(code **)(pcVar25 + -0x72a8))\n              (*(int *)(pcVar25 + -0x7fd0) + 0x1cac,*(int *)(pcVar25 + -0x7fc4) + -0x288c,0x479,\n               iVar2 + -0x26c8);\n  }\n  else if (pIVar12->signature == 0xabacadab) {\n    if (pIVar12->debug != MagickFalse) {\n      pcStack_194 = pIVar12->filename;\n      pEStack_198 = (ExceptionInfo *)(*(int *)(pcVar22 + 0x1df580) + -0x62ac);\n      (**(code **)(pcVar22 + 0x1dfe7c))\n                (0x8000,*(int *)(pcVar22 + 0x1df588) + -0x288c,\n                 *(int *)(pcVar22 + 0x1df588) + -0x26d4,0x477);\n    }\n    iVar2 = *(int *)(pcStack_188 + -0x7fc4);\n    pIVar11 = pIVar12;\n    image = pIVar15;\n    unaff_s2 = pEVar16;\n    pcVar25 = pcStack_188;\n    if (pIVar15 == (Image *)0x0) goto LAB_001c94fc;\n    if (pEVar16 != (ExceptionInfo *)0x0) {\n      if (pEVar16->signature == 0xabacadab) {\n        pEStack_198 = pEVar16;\n        pIVar11 = (Image *)(**(code **)(pcStack_188 + -0x7080))\n                                     (pIVar12,pIVar15->storage_class,pIVar15->colorspace,1);\n        if (pIVar11 != (Image *)0x0) {\n          iVar2 = (**(code **)(pcStack_188 + -0x7a20))(pIVar11,pEVar16);\n          if (iVar2 == 0) {\n            (**(code **)(pcStack_188 + -0x7964))(pIVar11);\n            pIVar11 = (Image *)0x0;\n          }\n          else {\n            pcStack_194 = (char *)-pIVar15->quality;\n            pEStack_198 = (ExceptionInfo *)-pIVar15->compression;\n            pEStack_190 = pEVar16;\n            iVar2 = (**(code **)(pcStack_188 + -0x7bec))(pIVar11,pIVar12,pIVar12->compose,1);\n            if (iVar2 != 0) {\n              (**(code **)(pcStack_188 + -0x7d18))(pIVar11,pIVar12->columns,pIVar12->rows,pIVar15);\n            }\n          }\n        }\n        return pIVar11;\n      }\n      goto LAB_001c951c;\n    }\n    goto LAB_001c953c;\n  }\n  pcVar22 = *(code **)(pcVar25 + -0x72a8);\n  pIVar11 = (Image *)(*(int *)(pcVar25 + -0x7fc4) + -0x288c);\n  pcVar26 = FlipImage;\n  pIVar15 = (Image *)(*(int *)(pcVar25 + -0x7fc8) + -0x3784);\n  (*pcVar22)(pIVar15,pIVar11,0x475,*(int *)(pcVar25 + -0x7fc4) + -0x26c8);\n  pcVar25 = pcVar22 + 0x1e7330;\n  piVar17 = *(int **)(pcVar22 + 0x1dfcb0);\n  iStack_1d4 = *piVar17;\n  pcStack_208 = pcVar25;\n  pIStack_1d0 = pIVar12;\n  pIStack_1cc = image;\n  pEStack_1c8 = unaff_s2;\n  pRStack_1c4 = unaff_s3;\n  piStack_1c0 = piVar19;\n  puStack_1bc = unaff_s5;\n  pIStack_1b8 = unaff_s6;\n  pIStack_1b4 = unaff_s7;\n  ppIStack_1b0 = unaff_s8;\n  pcStack_1ac = pcVar26;\n  if (pIVar15 == (Image *)0x0) {\n    (**(code **)(pcVar22 + 0x1e0088))\n              (*(int *)(pcVar22 + 0x1df368) + -0x37b0,*(int *)(pcVar22 + 0x1df36c) + -0x288c,0x4bc,\n               *(int *)(pcVar22 + 0x1df36c) + -0x26e0);\n    pIVar11 = image;\nLAB_001c9944:\n    (**(code **)(pcVar25 + -0x72a8))\n              (*(int *)(pcVar25 + -0x7fd0) + 0x1cac,*(int *)(pcVar25 + -0x7fc4) + -0x288c,0x4c0,\n               *(int *)(pcVar25 + -0x7fc4) + -0x26e0);\nLAB_001c9968:\n    (**(code **)(pcVar25 + -0x784c))();\n    pIVar15 = unaff_s7;\nLAB_001c9974:\n    (**(code **)(pcVar25 + -0x72a8))\n              (*(int *)(pcVar25 + -0x7fd0) + 0x294c,*(int *)(pcVar25 + -0x7fc4) + -0x288c,0x4c1,\n               *(int *)(pcVar25 + -0x7fc4) + -0x26e0);\n    pIStack_244 = pIVar11;\n  }\n  else {\n    pIStack_244 = image;\n    if (pIVar15->signature == 0xabacadab) {\n      if (pIVar15->debug != MagickFalse) {\n        pcStack_20c = pIVar15->filename;\n        pIStack_210 = (Image *)(*(int *)(pcVar22 + 0x1df364) + -0x62ac);\n        (**(code **)(pcVar22 + 0x1dfc60))\n                  (0x8000,*(int *)(pcVar22 + 0x1df36c) + -0x288c,\n                   *(int *)(pcVar22 + 0x1df36c) + -0x26ec,0x4bf);\n      }\n      unaff_s7 = pIVar15;\n      pcVar25 = pcStack_208;\n      if (pIVar11 == (Image *)0x0) goto LAB_001c9944;\n      if (pIVar11->rows == 0xabacadab) {\n        pIStack_210 = pIVar11;\n        pIVar12 = (Image *)(**(code **)(pcStack_208 + -0x7080))(pIVar15,0,0,1);\n        if (pIVar12 != (Image *)0x0) {\n          sStack_1fc = (pIVar15->page).x;\n          unaff_s8 = (Image **)(pIVar15->page).width;\n          unaff_s2 = (ExceptionInfo *)(pIVar15->page).height;\n          unaff_s6 = (Image *)(pIVar15->page).y;\n          uStack_1f4 = 0;\n          uStack_1f8 = 0;\n          piVar19 = (int *)(**(code **)(pcStack_208 + -0x715c))(pIVar15,pIVar11);\n          unaff_s5 = (undefined *)(**(code **)(pcStack_208 + -0x79dc))(pIVar12,pIVar11);\n          iVar2 = (**(code **)(pcStack_208 + -0x73fc))(pIVar15);\n          if (((iVar2 == 4) || (iVar2 = (**(code **)(pcStack_208 + -0x73fc))(pIVar15), iVar2 == 3))\n             && ((iVar2 = (**(code **)(pcStack_208 + -0x73fc))(pIVar12), iVar2 == 4 ||\n                 (iVar2 = (**(code **)(pcStack_208 + -0x73fc))(pIVar12), iVar2 == 3)))) {\n            (**(code **)(pcStack_208 + -0x7774))(7);\n            sVar9 = pIVar12->rows;\n            if ((int)sVar9 < 0) {\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_03 < (int)(sVar9 + 0x3f) >> 6) goto LAB_001c98d4;\nLAB_001c981c:\n              bVar1 = (int)sVar9 < 0x80;\n            }\n            else {\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\n              if ((int)sVar9 >> 6 <= extraout_v1_03) goto LAB_001c981c;\nLAB_001c98d4:\n              (*pcVar25)(7);\n              bVar1 = extraout_v1_05 < 2;\n            }\n            iVar2 = 1;\n            if ((bool)(bVar1 ^ 1)) {\n              (**(code **)(pcStack_208 + -0x7774))(7);\n              sVar9 = pIVar12->rows;\n              if ((int)sVar9 < 0) {\n                sVar9 = sVar9 + 0x3f;\n              }\n              iVar2 = (int)sVar9 >> 6;\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_06 < iVar2) {\nLAB_001c98ac:\n                (*pcVar25)(7);\n                iVar2 = extraout_v1_04;\n              }\n              goto LAB_001c96d8;\n            }\n            iVar10 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          else {\n            uVar38 = (**(code **)(pcStack_208 + -0x7774))(7);\n            if ((int)((ulonglong)uVar38 >> 0x20) == 0) {\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar38) goto LAB_001c96c4;\n              uVar38 = (*pcVar25)(7);\n              if ((int)((ulonglong)uVar38 >> 0x20) != 0) goto LAB_001c96c0;\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar38) goto LAB_001c96c4;\n              iVar2 = 1;\n            }\n            else {\nLAB_001c96c0:\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\nLAB_001c96c4:\n              uVar38 = (*pcVar25)(7);\n              if (((int)((ulonglong)uVar38 >> 0x20) == 0) &&\n                 (pcVar25 = *(code **)(pcStack_208 + -0x7774), (uint)uVar38 < 2)) goto LAB_001c98ac;\n              iVar2 = 2;\n            }\nLAB_001c96d8:\n            iVar10 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          puStack_1dc = &uStack_1f8;\n          pIStack_1d8 = (Image *)0x1;\n          pIStack_1f0 = pIVar15;\n          pIStack_1ec = pIVar11;\n          puStack_1e8 = unaff_s5;\n          piStack_1e4 = piVar19;\n          pIStack_1e0 = pIVar12;\n          (**(code **)(pcStack_208 + -0x7718))(iVar10 + 0x56bc,&pIStack_1f0,iVar2,0);\n          pIVar11 = pIStack_1d8;\n          (**(code **)(pcStack_208 + -0x79bc))(unaff_s5);\n          (**(code **)(pcStack_208 + -0x79bc))(piVar19);\n          pIVar12->type = pIVar15->type;\n          if (unaff_s2 != (ExceptionInfo *)0x0) {\n            unaff_s6 = (Image *)((int)unaff_s2 + (-(int)unaff_s6 - pIVar12->rows));\n          }\n          (pIVar12->page).width = (size_t)unaff_s8;\n          (pIVar12->page).height = (size_t)unaff_s2;\n          (pIVar12->page).x = sStack_1fc;\n          (pIVar12->page).y = (ssize_t)unaff_s6;\n          if (pIVar11 == (Image *)0x0) {\n            pIVar12 = (Image *)(**(code **)(pcStack_208 + -0x7964))(pIVar12);\n          }\n        }\n        pcVar25 = pcStack_208;\n        if (iStack_1d4 == *piVar17) {\n          return pIVar12;\n        }\n        goto LAB_001c9968;\n      }\n      goto LAB_001c9974;\n    }\n  }\n  pcVar22 = *(code **)(pcVar25 + -0x72a8);\n  iVar10 = *(int *)(pcVar25 + -0x7fc4) + -0x288c;\n  pcVar26 = FlopImage;\n  iVar2 = *(int *)(pcVar25 + -0x7fc8) + -0x3784;\n  (*pcVar22)(iVar2,iVar10,0x4bd,*(int *)(pcVar25 + -0x7fc4) + -0x26e0);\n  piVar18 = *(int **)(pcVar22 + 0x1df874);\n  iStack_24c = *piVar18;\n  pIStack_248 = pIVar12;\n  pEStack_240 = unaff_s2;\n  piStack_23c = piVar17;\n  piStack_238 = piVar19;\n  puStack_234 = unaff_s5;\n  pIStack_230 = unaff_s6;\n  pIStack_22c = pIVar15;\n  ppIStack_228 = unaff_s8;\n  pcStack_224 = pcVar26;\n  if (iVar2 == 0) {\n    pIVar11 = (Image *)(**(code **)(pcVar22 + 0x1dfc4c))\n                                 (*(int *)(pcVar22 + 0x1def2c) + -0x37b0,\n                                  *(int *)(pcVar22 + 0x1def30) + -0x288c,0x543,\n                                  *(int *)(pcVar22 + 0x1def30) + -0x26f8);\n    return pIVar11;\n  }\n  if (*(int *)(iVar2 + 0x336c) != -0x54535255) {\n    pIVar11 = (Image *)(**(code **)(pcVar22 + 0x1dfc4c))\n                                 (*(int *)(pcVar22 + 0x1def2c) + -0x3784,\n                                  *(int *)(pcVar22 + 0x1def30) + -0x288c,0x544,\n                                  *(int *)(pcVar22 + 0x1def30) + -0x26f8);\n    return pIVar11;\n  }\n  if (*(int *)(iVar2 + 0x3350) != 0) {\n    (**(code **)(pcVar22 + 0x1df824))\n              (0x8000,*(int *)(pcVar22 + 0x1def30) + -0x288c,*(int *)(pcVar22 + 0x1def30) + -0x2704,\n               0x546,*(int *)(pcVar22 + 0x1def28) + -0x62ac,iVar2 + 0x340);\n  }\n  if (iVar10 == 0) {\n    pIVar11 = (Image *)(**(code **)(pcVar22 + 0x1dfc4c))\n                                 (*(int *)(pcVar22 + 0x1def24) + 0x1cac,\n                                  *(int *)(pcVar22 + 0x1def30) + -0x288c,0x547,\n                                  *(int *)(pcVar22 + 0x1def30) + -0x26f8);\n    return pIVar11;\n  }\n  if (*(int *)(iVar10 + 0x1c) != -0x54535255) goto LAB_001c9db0;\n  pIVar11 = (Image *)(**(code **)(pcVar22 + 0x1dfe74))(iVar2,0,0,1,iVar10);\n  if (pIVar11 != (Image *)0x0) {\n    sVar5 = *(ssize_t *)(iVar2 + 0x234);\n    sVar9 = *(size_t *)(iVar2 + 0x228);\n    sVar24 = *(size_t *)(iVar2 + 0x22c);\n    sVar20 = *(int *)(iVar2 + 0x230);\n    uStack_26c = 0;\n    uStack_270 = 0;\n    uVar6 = (**(code **)(pcVar22 + 0x1dfd98))(iVar2,iVar10);\n    uVar7 = (**(code **)(pcVar22 + 0x1df518))(pIVar11,iVar10);\n    iVar4 = (**(code **)(pcVar22 + 0x1dfaf8))(iVar2);\n    if (((iVar4 == 4) || (iVar4 = (**(code **)(pcVar22 + 0x1dfaf8))(iVar2), iVar4 == 3)) &&\n       ((iVar4 = (**(code **)(pcVar22 + 0x1dfaf8))(pIVar11), iVar4 == 4 ||\n        (iVar4 = (**(code **)(pcVar22 + 0x1dfaf8))(pIVar11), iVar4 == 3)))) {\n      (**(code **)(pcVar22 + 0x1df780))(7);\n      sVar8 = pIVar11->rows;\n      if ((int)sVar8 < 0) {\n        pcVar25 = *(code **)(pcVar22 + 0x1df780);\n        if (extraout_v1_07 < (int)(sVar8 + 0x3f) >> 6) goto LAB_001c9d10;\nLAB_001c9c58:\n        bVar1 = (int)sVar8 < 0x80;\n      }\n      else {\n        pcVar25 = *(code **)(pcVar22 + 0x1df780);\n        if ((int)sVar8 >> 6 <= extraout_v1_07) goto LAB_001c9c58;\nLAB_001c9d10:\n        (*pcVar25)(7);\n        bVar1 = extraout_v1_09 < 2;\n      }\n      iVar4 = 1;\n      if ((bool)(bVar1 ^ 1)) {\n        (**(code **)(pcVar22 + 0x1df780))(7);\n        sVar8 = pIVar11->rows;\n        if ((int)sVar8 < 0) {\n          sVar8 = sVar8 + 0x3f;\n        }\n        iVar4 = (int)sVar8 >> 6;\n        pcVar25 = *(code **)(pcVar22 + 0x1df780);\n        if (extraout_v1_10 < iVar4) {\nLAB_001c9ce8:\n          (*pcVar25)(7);\n          iVar4 = extraout_v1_08;\n        }\n        goto LAB_001c9b14;\n      }\n      iVar13 = *(int *)(pcVar22 + 0x1defe4);\n    }\n    else {\n      uVar38 = (**(code **)(pcVar22 + 0x1df780))(7);\n      if ((int)((ulonglong)uVar38 >> 0x20) == 0) {\n        pcVar25 = *(code **)(pcVar22 + 0x1df780);\n        if (1 < (uint)uVar38) goto LAB_001c9b00;\n        uVar38 = (*pcVar25)(7);\n        if ((int)((ulonglong)uVar38 >> 0x20) != 0) goto LAB_001c9afc;\n        pcVar25 = *(code **)(pcVar22 + 0x1df780);\n        if (1 < (uint)uVar38) goto LAB_001c9b00;\n        iVar4 = 1;\n      }\n      else {\nLAB_001c9afc:\n        pcVar25 = *(code **)(pcVar22 + 0x1df780);\nLAB_001c9b00:\n        uVar38 = (*pcVar25)(7);\n        if (((int)((ulonglong)uVar38 >> 0x20) == 0) &&\n           (pcVar25 = *(code **)(pcVar22 + 0x1df780), (uint)uVar38 < 2)) goto LAB_001c9ce8;\n        iVar4 = 2;\n      }\nLAB_001c9b14:\n      iVar13 = *(int *)(pcVar22 + 0x1defe4);\n    }\n    puStack_254 = &uStack_270;\n    iStack_250 = 1;\n    iStack_268 = iVar2;\n    iStack_264 = iVar10;\n    uStack_260 = uVar7;\n    uStack_25c = uVar6;\n    pIStack_258 = pIVar11;\n    (**(code **)(pcVar22 + 0x1df7dc))(iVar13 + 0x594c,&iStack_268,iVar4,0);\n    iVar10 = iStack_250;\n    (**(code **)(pcVar22 + 0x1df538))(uVar7);\n    (**(code **)(pcVar22 + 0x1df538))(uVar6);\n    pIVar11->type = *(ImageType *)(iVar2 + 0x2a0);\n    if (sVar9 != 0) {\n      sVar20 = (sVar9 - pIVar11->columns) - sVar20;\n    }\n    (pIVar11->page).width = sVar9;\n    (pIVar11->page).height = sVar24;\n    (pIVar11->page).x = sVar20;\n    (pIVar11->page).y = sVar5;\n    if (iVar10 == 0) {\n      pIVar11 = (Image *)(**(code **)(pcVar22 + 0x1df590))(pIVar11);\n    }\n  }\n  if (iStack_24c == *piVar18) {\n    return pIVar11;\n  }\n  (**(code **)(pcVar22 + 0x1df6a8))();\nLAB_001c9db0:\n  pIVar11 = (Image *)(**(code **)(pcVar22 + 0x1dfc4c))\n                               (*(int *)(pcVar22 + 0x1def24) + 0x294c,\n                                *(int *)(pcVar22 + 0x1def30) + -0x288c,0x548,\n                                *(int *)(pcVar22 + 0x1def30) + -0x26f8);\n  return pIVar11;\n}" type_identifier (pointer_declarator "* CropImageToTiles(Image *image,char *crop_geometry,ExceptionInfo *exception)" * (function_declarator "CropImageToTiles(Image *image,char *crop_geometry,ExceptionInfo *exception)" identifier (parameter_list "(Image *image,char *crop_geometry,ExceptionInfo *exception)" ( (parameter_declaration "Image *image" type_identifier (pointer_declarator "*image" * identifier)) , (parameter_declaration "char *crop_geometry" primitive_type (pointer_declarator "*crop_geometry" * identifier)) , (parameter_declaration "ExceptionInfo *exception" type_identifier (pointer_declarator "*exception" * identifier)) )))) (compound_statement "{\n  bool bVar1;\n  int iVar2;\n  uint uVar3;\n  int iVar4;\n  ssize_t sVar5;\n  undefined4 uVar6;\n  undefined4 uVar7;\n  size_t sVar8;\n  size_t sVar9;\n  int extraout_v1;\n  int extraout_v1_00;\n  int extraout_v1_01;\n  int extraout_v1_02;\n  int extraout_v1_03;\n  int extraout_v1_04;\n  int extraout_v1_05;\n  int extraout_v1_06;\n  int extraout_v1_07;\n  int extraout_v1_08;\n  int extraout_v1_09;\n  int extraout_v1_10;\n  int iVar10;\n  Image *pIVar11;\n  Image *pIVar12;\n  int iVar13;\n  RectangleInfo *pRVar14;\n  Image *pIVar15;\n  ExceptionInfo *pEVar16;\n  Image *unaff_s0;\n  Image *unaff_s1;\n  ExceptionInfo *unaff_s2;\n  RectangleInfo *unaff_s3;\n  int *piVar17;\n  int *piVar18;\n  size_t unaff_s4;\n  int *piVar19;\n  undefined *unaff_s5;\n  Image *unaff_s6;\n  ssize_t sVar20;\n  Image *unaff_s7;\n  undefined *puVar21;\n  code *pcVar22;\n  undefined *puVar23;\n  Image **unaff_s8;\n  size_t sVar24;\n  code *pcVar25;\n  code *pcVar26;\n  double dVar27;\n  double dVar28;\n  double dVar29;\n  double dVar30;\n  double dVar31;\n  double dVar32;\n  double dVar33;\n  double dVar34;\n  double dVar35;\n  double dVar36;\n  double dVar37;\n  undefined8 uVar38;\n  undefined4 uStack_270;\n  undefined4 uStack_26c;\n  int iStack_268;\n  int iStack_264;\n  undefined4 uStack_260;\n  undefined4 uStack_25c;\n  Image *pIStack_258;\n  undefined4 *puStack_254;\n  int iStack_250;\n  int iStack_24c;\n  Image *pIStack_248;\n  Image *pIStack_244;\n  ExceptionInfo *pEStack_240;\n  int *piStack_23c;\n  int *piStack_238;\n  undefined *puStack_234;\n  Image *pIStack_230;\n  Image *pIStack_22c;\n  Image **ppIStack_228;\n  code *pcStack_224;\n  Image *pIStack_210;\n  char *pcStack_20c;\n  code *pcStack_208;\n  ssize_t sStack_1fc;\n  undefined4 uStack_1f8;\n  undefined4 uStack_1f4;\n  Image *pIStack_1f0;\n  Image *pIStack_1ec;\n  undefined *puStack_1e8;\n  int *piStack_1e4;\n  Image *pIStack_1e0;\n  undefined4 *puStack_1dc;\n  Image *pIStack_1d8;\n  int iStack_1d4;\n  Image *pIStack_1d0;\n  Image *pIStack_1cc;\n  ExceptionInfo *pEStack_1c8;\n  RectangleInfo *pRStack_1c4;\n  int *piStack_1c0;\n  undefined *puStack_1bc;\n  Image *pIStack_1b8;\n  Image *pIStack_1b4;\n  Image **ppIStack_1b0;\n  code *pcStack_1ac;\n  ExceptionInfo *pEStack_198;\n  char *pcStack_194;\n  ExceptionInfo *pEStack_190;\n  code *pcStack_188;\n  Image *pIStack_17c;\n  Image *pIStack_178;\n  ExceptionInfo *pEStack_174;\n  RectangleInfo *pRStack_170;\n  code *pcStack_16c;\n  ExceptionInfo *pEStack_158;\n  char *pcStack_154;\n  undefined *puStack_150;\n  undefined4 uStack_148;\n  undefined4 uStack_144;\n  Image *pIStack_13c;\n  RectangleInfo *pRStack_138;\n  ExceptionInfo *pEStack_134;\n  Image *pIStack_130;\n  undefined *puStack_12c;\n  Image *pIStack_128;\n  ExceptionInfo *pEStack_124;\n  undefined4 *puStack_120;\n  int iStack_11c;\n  Image *pIStack_118;\n  Image *pIStack_114;\n  ExceptionInfo *pEStack_110;\n  RectangleInfo *pRStack_10c;\n  uint uStack_108;\n  undefined *puStack_104;\n  Image *pIStack_100;\n  code *pcStack_fc;\n  ExceptionInfo *local_e8;\n  char *local_e4;\n  double local_c8;\n  double local_a0;\n  Image *crop_image;\n  RectangleInfo geometry;\n  RectangleInfo crop;\n  \n  puVar21 = PTR___stack_chk_guard_003a9230;\n  iVar2 = *(int *)PTR___stack_chk_guard_003a9230;\n  if (image == (Image *)0x0) {\nLAB_001c8ef8:\n    image = unaff_s1;\n    (*(code *)PTR___assert_fail_003a9608)\n              (PTR_LAB_003a88e0 + 0xdd0,PTR_s_courses_003a88ec + -0x288c,0x322,\n               PTR_s_courses_003a88ec + -0x2688);\n  }\n  else if (image->signature == 0xabacadab) {\n    if (image->debug != MagickFalse) {\n      local_e4 = image->filename;\n      local_e8 = (ExceptionInfo *)(PTR_s_t_to_left_003a88e4 + -0x62ac);\n      (*(code *)PTR_LogMagickEvent_003a91e0)\n                (0x8000,PTR_s_courses_003a88ec + -0x288c,PTR_s_courses_003a88ec + -0x269c,0x325);\n    }\n    unaff_s6 = (Image *)(*(code *)PTR_NewImageList_003a8e84)();\n    crop_image = unaff_s6;\n    uVar3 = (*(code *)PTR_ParseGravityGeometry_003a97fc)(image,crop_geometry,&geometry,exception);\n    unaff_s4 = geometry.height;\n    unaff_s0 = (Image *)geometry.width;\n    unaff_s3 = (RectangleInfo *)PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;\n    if ((int)(uVar3 << 0xe) < 0) {\n      sVar9 = image->rows;\n      if (geometry.width == 0) {\n        geometry.width = 1;\n        dVar37 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n      }\n      else {\n        dVar37 = (double)(int)geometry.width;\n        if ((int)geometry.width < 0) {\n          dVar37 = dVar37 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n      }\n      if (geometry.height == 0) {\n        dVar32 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n        geometry.height = 1;\n        if ((uVar3 & 0x2000) != 0) goto LAB_001c8e14;\nLAB_001c8484:\n        iVar10 = geometry.x;\n        if (geometry.x < 0) {\n          iVar10 = -geometry.x;\n        }\n        iVar10 = image->columns - iVar10;\n        iVar4 = geometry.y;\n        if (geometry.y < 0) {\n          iVar4 = -geometry.y;\n        }\n        iVar4 = sVar9 - iVar4;\n      }\n      else {\n        dVar32 = (double)(int)geometry.height;\n        if ((int)geometry.height < 0) {\n          dVar32 = dVar32 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n        if ((uVar3 & 0x2000) == 0) goto LAB_001c8484;\nLAB_001c8e14:\n        iVar10 = geometry.x;\n        if (geometry.x < 0) {\n          iVar10 = -geometry.x;\n        }\n        iVar10 = iVar10 + image->columns;\n        if (geometry.y < 0) {\n          iVar4 = sVar9 - geometry.y;\n        }\n        else {\n          iVar4 = geometry.y + sVar9;\n        }\n      }\n      unaff_s4 = uVar3 & 0x2000;\n      dVar36 = (double)iVar10;\n      if (iVar10 < 0) {\n        dVar36 = dVar36 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n      }\n      dVar37 = dVar36 / dVar37;\n      local_c8 = (double)iVar4;\n      if (iVar4 < 0) {\n        local_c8 = local_c8 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n      }\n      dVar27 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n      local_a0 = dVar27;\n      if (dVar37 < dVar27) {\n        local_a0 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n        dVar37 = dVar27;\n      }\n      if (local_a0 <= local_c8 / dVar32) {\n        local_a0 = local_c8 / dVar32;\n      }\n      dVar32 = 0.0;\n      unaff_s7 = (Image *)geometry.y;\n      if (0.0 < local_c8) {\n        dVar27 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4780);\n        dVar33 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4788);\n        if (unaff_s4 != 0) goto LAB_001c8b70;\nLAB_001c854c:\n        unaff_s7 = (Image *)geometry.y;\n        dVar34 = dVar32;\n        if (geometry.y < 1) {\n          dVar34 = dVar32 - (double)geometry.y;\n        }\n        dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar34);\n        dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar34);\n        if (dVar34 - dVar28 < dVar29 - dVar34) {\n          dVar28 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar25 = (code *)PTR_floor_003a9670;\n          if (dVar34 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d7c;\n        }\n        else {\n          if (dVar34 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d7c:\n            iVar10 = -0x7ffffdff;\n            goto joined_r0x001c8cbc;\n          }\n          dVar28 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar25 = (code *)PTR_ceil_003a8c20;\n        }\n        if (dVar28 < dVar34) {\n          iVar10 = 0x7ffffdff;\n        }\n        else {\n          dVar34 = (double)(*pcVar25)(dVar34);\n          iVar10 = (int)dVar34;\n        }\njoined_r0x001c8cbc:\n        dVar32 = dVar32 + local_a0;\n        if ((int)unaff_s7 < 0) {\n          dVar34 = 0.0;\n        }\n        else {\n          dVar34 = (double)(int)unaff_s7;\n        }\n        dVar34 = dVar32 + dVar34;\n        dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar34);\n        dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar34);\n        if (dVar34 - dVar28 < dVar29 - dVar34) {\n          if (*(double *)((int)unaff_s3 + 0x4780) <= dVar34) {\n            if (dVar34 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8630;\n            goto LAB_001c8cec;\n          }\n        }\n        else if (*(double *)((int)unaff_s3 + 0x4780) <= dVar34) {\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar34) goto LAB_001c8cec;\n          goto LAB_001c8d18;\n        }\nLAB_001c8c88:\n        iVar4 = -0x7ffffdff;\nLAB_001c8644:\n        do {\n          unaff_s8 = (Image **)(iVar4 - iVar10);\n          crop_geometry = (char *)((image->page).y + iVar10);\n          dVar34 = 0.0;\n          crop.height = (size_t)unaff_s8;\n          crop.y = (ssize_t)crop_geometry;\n          if (0.0 < dVar36) {\n            dVar28 = *(double *)((int)unaff_s3 + 0x4788);\n            unaff_s6 = (Image *)&crop;\n            dVar29 = *(double *)((int)unaff_s3 + 0x4780);\n            do {\n              unaff_s7 = (Image *)geometry.x;\n              if (unaff_s4 == 0) {\n                dVar35 = dVar34;\n                if (geometry.x < 1) {\n                  dVar35 = dVar34 - (double)geometry.x;\n                }\n                dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                if (dVar35 - dVar30 < dVar31 - dVar35) {\n                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar35) {\n                    pcVar25 = (code *)PTR_floor_003a9670;\n                    if (dVar35 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar10 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }\nLAB_001c8b04:\n                  dVar34 = dVar34 + dVar37;\n                  iVar10 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;\nLAB_001c8708:\n                  dVar35 = (double)(int)unaff_s7;\n                }\n                else {\n                  if (dVar35 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar25 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar35) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar35 = (double)(*pcVar25)(dVar35);\n                  iVar10 = (int)dVar35;\nLAB_001c8700:\n                  dVar34 = dVar34 + dVar37;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar35 = 0.0;\n                }\n                dVar35 = dVar34 + dVar35;\n                dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                if (dVar35 - dVar30 < dVar31 - dVar35) {\n                  if (dVar35 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar35) goto LAB_001c88b8;\nLAB_001c8768:\n                  dVar35 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                  iVar4 = (int)dVar35;\n                }\n                else {\n                  if (dVar35 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar35) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar35 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                  iVar4 = (int)dVar35;\n                }\n              }\n              else {\n                dVar35 = dVar34;\n                if (0 < geometry.x) {\n                  dVar35 = dVar34 - (double)geometry.x;\n                }\n                dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                if (dVar35 - dVar30 < dVar31 - dVar35) {\n                  if (dVar29 <= dVar35) {\n                    pcVar25 = (code *)PTR_floor_003a9670;\n                    if (dVar35 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar10 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar34 = dVar34 + dVar37;\n                  iVar10 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar35 = 0.0;\n                }\n                else {\n                  if (dVar35 < dVar29) goto LAB_001c8b24;\n                  pcVar25 = (code *)PTR_ceil_003a8c20;\n                  if (dVar28 < dVar35) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar35 = (double)(*pcVar25)(dVar35);\n                  iVar10 = (int)dVar35;\nLAB_001c8850:\n                  dVar34 = dVar34 + dVar37;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar35 = (double)(int)unaff_s7;\n                }\n                dVar35 = dVar34 + dVar35;\n                dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                if (dVar35 - dVar30 < dVar31 - dVar35) {\n                  if (dVar35 < dVar27) goto LAB_001c8a44;\n                  if (dVar35 <= dVar28) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar4 = 0x7ffffdff;\n                }\n                else if (dVar27 <= dVar35) {\n                  if (dVar35 <= dVar33) goto LAB_001c8abc;\n                  iVar4 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar4 = -0x7ffffdff;\n                }\n              }\n              unaff_s8 = (Image **)(iVar4 - iVar10);\n              crop_geometry = (char *)((image->page).x + iVar10);\n              crop.width = (size_t)unaff_s8;\n              crop.x = (ssize_t)crop_geometry;\n              iVar10 = (*(code *)PTR_CropImage_003a90b8)(image,unaff_s6,exception);\n              if (iVar10 != 0) {\n                (*(code *)PTR_AppendImageToList_003a9880)(&crop_image,iVar10);\n              }\n            } while (dVar34 < dVar36);\n          }\n          unaff_s5 = (undefined *)unaff_s3;\n          if (local_c8 <= dVar32) break;\n          if (unaff_s4 == 0) goto LAB_001c854c;\nLAB_001c8b70:\n          unaff_s7 = (Image *)geometry.y;\n          dVar34 = dVar32;\n          if (0 < geometry.y) {\n            dVar34 = dVar32 - (double)geometry.y;\n          }\n          dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar34);\n          dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar34);\n          if (dVar34 - dVar28 < dVar29 - dVar34) {\n            if (dVar34 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d8c;\n            pcVar25 = (code *)PTR_floor_003a9670;\n            if (*(double *)((int)unaff_s3 + 0x4788) < dVar34) goto LAB_001c8d50;\nLAB_001c8bd8:\n            dVar34 = (double)(*pcVar25)(dVar34);\n            iVar10 = (int)dVar34;\nLAB_001c8bf0:\n            dVar32 = dVar32 + local_a0;\n            if (-2 < (int)unaff_s7) goto LAB_001c8c00;\nLAB_001c8d6c:\n            dVar34 = (double)(int)unaff_s7;\n          }\n          else {\n            if (dVar34 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d8c:\n              iVar10 = -0x7ffffdff;\n              goto LAB_001c8bf0;\n            }\n            pcVar25 = (code *)PTR_ceil_003a8c20;\n            if (dVar34 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8bd8;\nLAB_001c8d50:\n            iVar10 = 0x7ffffdff;\n            dVar32 = dVar32 + local_a0;\n            if ((int)unaff_s7 < -1) goto LAB_001c8d6c;\nLAB_001c8c00:\n            dVar34 = 0.0;\n          }\n          dVar34 = dVar32 + dVar34;\n          dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar34);\n          dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar34);\n          if (dVar34 - dVar28 < dVar29 - dVar34) {\n            if (*(double *)((int)unaff_s3 + 0x4780) <= dVar34) {\n              if (*(double *)((int)unaff_s3 + 0x4788) < dVar34) {\nLAB_001c8cec:\n                iVar4 = 0x7ffffdff;\n              }\n              else {\nLAB_001c8630:\n                dVar34 = (double)(*(code *)PTR_floor_003a9670)(dVar34);\n                iVar4 = (int)dVar34;\n              }\n              goto LAB_001c8644;\n            }\n            goto LAB_001c8c88;\n          }\n          if (dVar34 < dVar27) goto LAB_001c8c88;\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar34) goto LAB_001c8cec;\nLAB_001c8d18:\n          dVar34 = (double)(*(code *)PTR_ceil_003a8c20)(dVar34);\n          iVar4 = (int)dVar34;\n        } while( true );\n      }\n      (*(code *)PTR_ClearMagickException_003a90f8)(exception);\n      pIVar11 = crop_image;\n      unaff_s0 = (Image *)crop_geometry;\n    }\n    else {\n      unaff_s3 = &geometry;\n      if (((geometry.width == 0) && (geometry.height == 0)) || ((uVar3 & 3) != 0)) {\n        crop_image = (Image *)(*(code *)PTR_CropImage_003a90b8)(image,&geometry,exception);\n        pIVar11 = crop_image;\n        unaff_s4 = uVar3;\n        if ((crop_image != (Image *)0x0) && (unaff_s4 = uVar3 & 0x2000, unaff_s4 != 0)) {\n          (crop_image->page).x = (crop_image->page).x - geometry.x;\n          (crop_image->page).y = (crop_image->page).y - geometry.y;\n          (crop_image->page).width = geometry.width;\n          (crop_image->page).height = geometry.height;\n        }\n      }\n      else {\n        unaff_s7 = (Image *)image->columns;\n        if ((geometry.width < unaff_s7) || (geometry.height < image->rows)) {\n          pIVar11 = (Image *)(image->page).width;\n          uVar3 = (image->page).height;\n          if (pIVar11 != (Image *)0x0) {\n            unaff_s7 = pIVar11;\n          }\n          if (uVar3 == 0) {\n            uVar3 = image->rows;\n          }\n          if (geometry.width == 0) {\n            unaff_s0 = unaff_s7;\n          }\n          if (geometry.height == 0) {\n            unaff_s4 = uVar3;\n          }\n          pIVar11 = crop_image;\n          if (0 < (int)uVar3) {\n            unaff_s3 = (RectangleInfo *)0x0;\n            unaff_s8 = &crop_image;\n            do {\n              unaff_s5 = (undefined *)0x0;\n              if ((int)unaff_s7 < 1) {\n                pIVar11 = crop_image;\n                if (unaff_s6 == (Image *)0x0) break;\n              }\n              else {\n                do {\n                  geometry.width = (size_t)unaff_s0;\n                  geometry.height = unaff_s4;\n                  geometry.x = (ssize_t)unaff_s5;\n                  geometry.y = (ssize_t)unaff_s3;\n                  unaff_s6 = (Image *)(*(code *)PTR_CropImage_003a90b8)(image,&geometry,exception);\n                  pIVar11 = crop_image;\n                  if (unaff_s6 == (Image *)0x0) goto LAB_001c8908;\n                  unaff_s5 = unaff_s5 + (int)unaff_s0;\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);\n              }\n              unaff_s3 = (RectangleInfo *)((int)&unaff_s3->width + unaff_s4);\n              pIVar11 = crop_image;\n            } while ((int)unaff_s3 < (int)uVar3);\n          }\n        }\n        else {\n          local_e8 = exception;\n          pIVar11 = (Image *)(*(code *)PTR_CloneImage_003a9830)(image,0,0,1);\n        }\n      }\n    }\nLAB_001c8908:\n    if (iVar2 == *(int *)puVar21) {\n      return pIVar11;\n    }\n    (*(code *)PTR___stack_chk_fail_003a9064)();\n    unaff_s1 = image;\n    unaff_s2 = exception;\n    goto LAB_001c8ef8;\n  }\n  pEVar16 = (ExceptionInfo *)0x323;\n  pRVar14 = (RectangleInfo *)(PTR_s_courses_003a88ec + -0x288c);\n  pcVar25 = ExcerptImage;\n  pIVar11 = (Image *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3784);\n  puVar21 = PTR___assert_fail_003a9608;\n  (*(code *)PTR___assert_fail_003a9608)();\n  puVar23 = puVar21 + 0x1e7970;\n  piVar19 = *(int **)(puVar21 + 0x1e02f0);\n  iStack_11c = *piVar19;\n  puStack_150 = puVar23;\n  pIStack_118 = unaff_s0;\n  pIStack_114 = image;\n  pEStack_110 = unaff_s2;\n  pRStack_10c = unaff_s3;\n  uStack_108 = unaff_s4;\n  puStack_104 = unaff_s5;\n  pIStack_100 = unaff_s6;\n  pcStack_fc = pcVar25;\n  if (pIVar11 == (Image *)0x0) {\n    iVar2 = *(int *)(puVar21 + 0x1df9ac) + -0x26ac;\n    (**(code **)(puVar21 + 0x1e06c8))\n              (*(int *)(puVar21 + 0x1df9a8) + -0x37b0,*(int *)(puVar21 + 0x1df9ac) + -0x288c,0x3f4,\n               iVar2);\nLAB_001c92d4:\n    iVar2 = iVar2 + -0x26ac;\n    (**(code **)(puVar23 + -0x72a8))\n              (*(int *)(puVar23 + -0x7fd0) + 0x294c,*(int *)(puVar23 + -0x7fc4) + -0x288c,0x3fa,\n               iVar2);\n    pEVar16 = unaff_s2;\nLAB_001c92f4:\n    iVar2 = iVar2 + -0x26ac;\n    (**(code **)(puVar23 + -0x72a8))\n              (*(int *)(puVar23 + -0x7fd0) + 0x1cac,*(int *)(puVar23 + -0x7fc4) + -0x288c,0x3f9,\n               iVar2);\nLAB_001c9314:\n    (**(code **)(puVar23 + -0x784c))();\n    pIVar11 = unaff_s0;\nLAB_001c9320:\n    (**(code **)(puVar23 + -0x72a8))\n              (*(int *)(puVar23 + -0x7fc4) + -0x2850,*(int *)(puVar23 + -0x7fc4) + -0x288c,0x3f8,\n               iVar2 + -0x26ac);\n    unaff_s2 = pEVar16;\n  }\n  else if (pIVar11->signature == 0xabacadab) {\n    if (pIVar11->debug != MagickFalse) {\n      pcStack_154 = pIVar11->filename;\n      pEStack_158 = (ExceptionInfo *)(*(int *)(puVar21 + 0x1df9a4) - 0x62ac);\n      (**(code **)(puVar21 + 0x1e02a0))\n                (0x8000,*(int *)(puVar21 + 0x1df9ac) + -0x288c,\n                 *(int *)(puVar21 + 0x1df9ac) + -0x26bc,0x3f7);\n    }\n    iVar2 = *(int *)(puStack_150 + -0x7fc4);\n    unaff_s3 = pRVar14;\n    puVar23 = puStack_150;\n    if (pRVar14 != (RectangleInfo *)0x0) {\n      unaff_s0 = pIVar11;\n      if (pEVar16 == (ExceptionInfo *)0x0) goto LAB_001c92f4;\n      unaff_s2 = pEVar16;\n      if (pEVar16->signature != 0xabacadab) goto LAB_001c92d4;\n      iVar2 = 1;\n      pEStack_158 = pEVar16;\n      image = (Image *)(**(code **)(puStack_150 + -0x7080))\n                                 (pIVar11,pRVar14->width,pRVar14->height,1);\n      if (image != (Image *)0x0) {\n        uStack_144 = 0;\n        uStack_148 = 0;\n        unaff_s5 = (undefined *)(**(code **)(puStack_150 + -0x715c))(pIVar11,pEVar16);\n        unaff_s6 = (Image *)(**(code **)(puStack_150 + -0x79dc))(image,pEVar16);\n        iVar2 = (**(code **)(puStack_150 + -0x73fc))(pIVar11);\n        if (((iVar2 == 4) || (iVar2 = (**(code **)(puStack_150 + -0x73fc))(pIVar11), iVar2 == 3)) &&\n           ((iVar2 = (**(code **)(puStack_150 + -0x73fc))(image), iVar2 == 4 ||\n            (iVar2 = (**(code **)(puStack_150 + -0x73fc))(image), iVar2 == 3)))) {\n          (**(code **)(puStack_150 + -0x7774))(7);\n          sVar9 = image->rows;\n          if ((int)sVar9 < 0) {\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1 < (int)(sVar9 + 0x3f) >> 6) goto LAB_001c9298;\nLAB_001c91a4:\n            bVar1 = (int)sVar9 < 0x80;\n          }\n          else {\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\n            if ((int)sVar9 >> 6 <= extraout_v1) goto LAB_001c91a4;\nLAB_001c9298:\n            (*pcVar25)(7);\n            bVar1 = extraout_v1_02 < 2;\n          }\n          iVar10 = 1;\n          if ((bool)(bVar1 ^ 1)) {\n            (**(code **)(puStack_150 + -0x7774))(7);\n            sVar9 = image->rows;\n            if ((int)sVar9 < 0) {\n              sVar9 = sVar9 + 0x3f;\n            }\n            iVar10 = (int)sVar9 >> 6;\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1_01 < iVar10) {\nLAB_001c9234:\n              (*pcVar25)(7);\n              iVar10 = extraout_v1_00;\n            }\n            goto LAB_001c9088;\n          }\n          iVar4 = *(int *)(puStack_150 + -0x7f10);\n        }\n        else {\n          uVar38 = (**(code **)(puStack_150 + -0x7774))(7);\n          if ((int)((ulonglong)uVar38 >> 0x20) == 0) {\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar38) goto LAB_001c9074;\n            uVar38 = (*pcVar25)(7);\n            if ((int)((ulonglong)uVar38 >> 0x20) != 0) goto LAB_001c9070;\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar38) goto LAB_001c9074;\n            iVar10 = 1;\n          }\n          else {\nLAB_001c9070:\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\nLAB_001c9074:\n            uVar38 = (*pcVar25)(7);\n            if (((int)((ulonglong)uVar38 >> 0x20) == 0) &&\n               (pcVar25 = *(code **)(puStack_150 + -0x7774), (uint)uVar38 < 2)) goto LAB_001c9234;\n            iVar10 = 2;\n          }\nLAB_001c9088:\n          iVar4 = *(int *)(puStack_150 + -0x7f10);\n        }\n        iVar2 = 0;\n        pEStack_124 = (ExceptionInfo *)0x1;\n        puStack_120 = &uStack_148;\n        pIStack_13c = pIVar11;\n        pRStack_138 = pRVar14;\n        pEStack_134 = pEVar16;\n        pIStack_130 = unaff_s6;\n        puStack_12c = unaff_s5;\n        pIStack_128 = image;\n        (**(code **)(puStack_150 + -0x7718))(iVar4 + 0x5428,&pIStack_13c,iVar10,0);\n        pEVar16 = pEStack_124;\n        (**(code **)(puStack_150 + -0x79bc))(unaff_s6);\n        (**(code **)(puStack_150 + -0x79bc))(unaff_s5);\n        image->type = pIVar11->type;\n        if (pEVar16 == (ExceptionInfo *)0x0) {\n          image = (Image *)(**(code **)(puStack_150 + -0x7964))(image);\n        }\n      }\n      puVar23 = puStack_150;\n      if (iStack_11c == *piVar19) {\n        return image;\n      }\n      goto LAB_001c9314;\n    }\n    goto LAB_001c9320;\n  }\n  pEVar16 = (ExceptionInfo *)0x3f5;\n  pcVar22 = *(code **)(puVar23 + -0x72a8);\n  pIVar15 = (Image *)(*(int *)(puVar23 + -0x7fc4) + -0x288c);\n  pcVar26 = ExtentImage;\n  pIVar12 = (Image *)(*(int *)(puVar23 + -0x7fc8) + -0x3784);\n  (*pcVar22)();\n  pcVar25 = pcVar22 + 0x1e754c;\n  pcStack_188 = pcVar25;\n  pIStack_17c = pIVar11;\n  pIStack_178 = image;\n  pEStack_174 = unaff_s2;\n  pRStack_170 = unaff_s3;\n  pcStack_16c = pcVar26;\n  if (pIVar12 == (Image *)0x0) {\n    iVar2 = *(int *)(pcVar22 + 0x1df588) + -0x26c8;\n    (**(code **)(pcVar22 + 0x1e02a4))\n              (*(int *)(pcVar22 + 0x1df584) + -0x37b0,*(int *)(pcVar22 + 0x1df588) + -0x288c,0x474,\n               iVar2);\nLAB_001c94fc:\n    iVar2 = iVar2 + -0x26c8;\n    (**(code **)(pcVar25 + -0x72a8))\n              (*(int *)(pcVar25 + -0x7fc4) + -0x2850,*(int *)(pcVar25 + -0x7fc4) + -0x288c,0x478,\n               iVar2);\nLAB_001c951c:\n    iVar2 = iVar2 + -0x26c8;\n    (**(code **)(pcVar25 + -0x72a8))\n              (*(int *)(pcVar25 + -0x7fd0) + 0x294c,*(int *)(pcVar25 + -0x7fc4) + -0x288c,0x47a,\n               iVar2);\n    pIVar12 = pIVar11;\nLAB_001c953c:\n    (**(code **)(pcVar25 + -0x72a8))\n              (*(int *)(pcVar25 + -0x7fd0) + 0x1cac,*(int *)(pcVar25 + -0x7fc4) + -0x288c,0x479,\n               iVar2 + -0x26c8);\n  }\n  else if (pIVar12->signature == 0xabacadab) {\n    if (pIVar12->debug != MagickFalse) {\n      pcStack_194 = pIVar12->filename;\n      pEStack_198 = (ExceptionInfo *)(*(int *)(pcVar22 + 0x1df580) + -0x62ac);\n      (**(code **)(pcVar22 + 0x1dfe7c))\n                (0x8000,*(int *)(pcVar22 + 0x1df588) + -0x288c,\n                 *(int *)(pcVar22 + 0x1df588) + -0x26d4,0x477);\n    }\n    iVar2 = *(int *)(pcStack_188 + -0x7fc4);\n    pIVar11 = pIVar12;\n    image = pIVar15;\n    unaff_s2 = pEVar16;\n    pcVar25 = pcStack_188;\n    if (pIVar15 == (Image *)0x0) goto LAB_001c94fc;\n    if (pEVar16 != (ExceptionInfo *)0x0) {\n      if (pEVar16->signature == 0xabacadab) {\n        pEStack_198 = pEVar16;\n        pIVar11 = (Image *)(**(code **)(pcStack_188 + -0x7080))\n                                     (pIVar12,pIVar15->storage_class,pIVar15->colorspace,1);\n        if (pIVar11 != (Image *)0x0) {\n          iVar2 = (**(code **)(pcStack_188 + -0x7a20))(pIVar11,pEVar16);\n          if (iVar2 == 0) {\n            (**(code **)(pcStack_188 + -0x7964))(pIVar11);\n            pIVar11 = (Image *)0x0;\n          }\n          else {\n            pcStack_194 = (char *)-pIVar15->quality;\n            pEStack_198 = (ExceptionInfo *)-pIVar15->compression;\n            pEStack_190 = pEVar16;\n            iVar2 = (**(code **)(pcStack_188 + -0x7bec))(pIVar11,pIVar12,pIVar12->compose,1);\n            if (iVar2 != 0) {\n              (**(code **)(pcStack_188 + -0x7d18))(pIVar11,pIVar12->columns,pIVar12->rows,pIVar15);\n            }\n          }\n        }\n        return pIVar11;\n      }\n      goto LAB_001c951c;\n    }\n    goto LAB_001c953c;\n  }\n  pcVar22 = *(code **)(pcVar25 + -0x72a8);\n  pIVar11 = (Image *)(*(int *)(pcVar25 + -0x7fc4) + -0x288c);\n  pcVar26 = FlipImage;\n  pIVar15 = (Image *)(*(int *)(pcVar25 + -0x7fc8) + -0x3784);\n  (*pcVar22)(pIVar15,pIVar11,0x475,*(int *)(pcVar25 + -0x7fc4) + -0x26c8);\n  pcVar25 = pcVar22 + 0x1e7330;\n  piVar17 = *(int **)(pcVar22 + 0x1dfcb0);\n  iStack_1d4 = *piVar17;\n  pcStack_208 = pcVar25;\n  pIStack_1d0 = pIVar12;\n  pIStack_1cc = image;\n  pEStack_1c8 = unaff_s2;\n  pRStack_1c4 = unaff_s3;\n  piStack_1c0 = piVar19;\n  puStack_1bc = unaff_s5;\n  pIStack_1b8 = unaff_s6;\n  pIStack_1b4 = unaff_s7;\n  ppIStack_1b0 = unaff_s8;\n  pcStack_1ac = pcVar26;\n  if (pIVar15 == (Image *)0x0) {\n    (**(code **)(pcVar22 + 0x1e0088))\n              (*(int *)(pcVar22 + 0x1df368) + -0x37b0,*(int *)(pcVar22 + 0x1df36c) + -0x288c,0x4bc,\n               *(int *)(pcVar22 + 0x1df36c) + -0x26e0);\n    pIVar11 = image;\nLAB_001c9944:\n    (**(code **)(pcVar25 + -0x72a8))\n              (*(int *)(pcVar25 + -0x7fd0) + 0x1cac,*(int *)(pcVar25 + -0x7fc4) + -0x288c,0x4c0,\n               *(int *)(pcVar25 + -0x7fc4) + -0x26e0);\nLAB_001c9968:\n    (**(code **)(pcVar25 + -0x784c))();\n    pIVar15 = unaff_s7;\nLAB_001c9974:\n    (**(code **)(pcVar25 + -0x72a8))\n              (*(int *)(pcVar25 + -0x7fd0) + 0x294c,*(int *)(pcVar25 + -0x7fc4) + -0x288c,0x4c1,\n               *(int *)(pcVar25 + -0x7fc4) + -0x26e0);\n    pIStack_244 = pIVar11;\n  }\n  else {\n    pIStack_244 = image;\n    if (pIVar15->signature == 0xabacadab) {\n      if (pIVar15->debug != MagickFalse) {\n        pcStack_20c = pIVar15->filename;\n        pIStack_210 = (Image *)(*(int *)(pcVar22 + 0x1df364) + -0x62ac);\n        (**(code **)(pcVar22 + 0x1dfc60))\n                  (0x8000,*(int *)(pcVar22 + 0x1df36c) + -0x288c,\n                   *(int *)(pcVar22 + 0x1df36c) + -0x26ec,0x4bf);\n      }\n      unaff_s7 = pIVar15;\n      pcVar25 = pcStack_208;\n      if (pIVar11 == (Image *)0x0) goto LAB_001c9944;\n      if (pIVar11->rows == 0xabacadab) {\n        pIStack_210 = pIVar11;\n        pIVar12 = (Image *)(**(code **)(pcStack_208 + -0x7080))(pIVar15,0,0,1);\n        if (pIVar12 != (Image *)0x0) {\n          sStack_1fc = (pIVar15->page).x;\n          unaff_s8 = (Image **)(pIVar15->page).width;\n          unaff_s2 = (ExceptionInfo *)(pIVar15->page).height;\n          unaff_s6 = (Image *)(pIVar15->page).y;\n          uStack_1f4 = 0;\n          uStack_1f8 = 0;\n          piVar19 = (int *)(**(code **)(pcStack_208 + -0x715c))(pIVar15,pIVar11);\n          unaff_s5 = (undefined *)(**(code **)(pcStack_208 + -0x79dc))(pIVar12,pIVar11);\n          iVar2 = (**(code **)(pcStack_208 + -0x73fc))(pIVar15);\n          if (((iVar2 == 4) || (iVar2 = (**(code **)(pcStack_208 + -0x73fc))(pIVar15), iVar2 == 3))\n             && ((iVar2 = (**(code **)(pcStack_208 + -0x73fc))(pIVar12), iVar2 == 4 ||\n                 (iVar2 = (**(code **)(pcStack_208 + -0x73fc))(pIVar12), iVar2 == 3)))) {\n            (**(code **)(pcStack_208 + -0x7774))(7);\n            sVar9 = pIVar12->rows;\n            if ((int)sVar9 < 0) {\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_03 < (int)(sVar9 + 0x3f) >> 6) goto LAB_001c98d4;\nLAB_001c981c:\n              bVar1 = (int)sVar9 < 0x80;\n            }\n            else {\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\n              if ((int)sVar9 >> 6 <= extraout_v1_03) goto LAB_001c981c;\nLAB_001c98d4:\n              (*pcVar25)(7);\n              bVar1 = extraout_v1_05 < 2;\n            }\n            iVar2 = 1;\n            if ((bool)(bVar1 ^ 1)) {\n              (**(code **)(pcStack_208 + -0x7774))(7);\n              sVar9 = pIVar12->rows;\n              if ((int)sVar9 < 0) {\n                sVar9 = sVar9 + 0x3f;\n              }\n              iVar2 = (int)sVar9 >> 6;\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_06 < iVar2) {\nLAB_001c98ac:\n                (*pcVar25)(7);\n                iVar2 = extraout_v1_04;\n              }\n              goto LAB_001c96d8;\n            }\n            iVar10 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          else {\n            uVar38 = (**(code **)(pcStack_208 + -0x7774))(7);\n            if ((int)((ulonglong)uVar38 >> 0x20) == 0) {\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar38) goto LAB_001c96c4;\n              uVar38 = (*pcVar25)(7);\n              if ((int)((ulonglong)uVar38 >> 0x20) != 0) goto LAB_001c96c0;\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar38) goto LAB_001c96c4;\n              iVar2 = 1;\n            }\n            else {\nLAB_001c96c0:\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\nLAB_001c96c4:\n              uVar38 = (*pcVar25)(7);\n              if (((int)((ulonglong)uVar38 >> 0x20) == 0) &&\n                 (pcVar25 = *(code **)(pcStack_208 + -0x7774), (uint)uVar38 < 2)) goto LAB_001c98ac;\n              iVar2 = 2;\n            }\nLAB_001c96d8:\n            iVar10 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          puStack_1dc = &uStack_1f8;\n          pIStack_1d8 = (Image *)0x1;\n          pIStack_1f0 = pIVar15;\n          pIStack_1ec = pIVar11;\n          puStack_1e8 = unaff_s5;\n          piStack_1e4 = piVar19;\n          pIStack_1e0 = pIVar12;\n          (**(code **)(pcStack_208 + -0x7718))(iVar10 + 0x56bc,&pIStack_1f0,iVar2,0);\n          pIVar11 = pIStack_1d8;\n          (**(code **)(pcStack_208 + -0x79bc))(unaff_s5);\n          (**(code **)(pcStack_208 + -0x79bc))(piVar19);\n          pIVar12->type = pIVar15->type;\n          if (unaff_s2 != (ExceptionInfo *)0x0) {\n            unaff_s6 = (Image *)((int)unaff_s2 + (-(int)unaff_s6 - pIVar12->rows));\n          }\n          (pIVar12->page).width = (size_t)unaff_s8;\n          (pIVar12->page).height = (size_t)unaff_s2;\n          (pIVar12->page).x = sStack_1fc;\n          (pIVar12->page).y = (ssize_t)unaff_s6;\n          if (pIVar11 == (Image *)0x0) {\n            pIVar12 = (Image *)(**(code **)(pcStack_208 + -0x7964))(pIVar12);\n          }\n        }\n        pcVar25 = pcStack_208;\n        if (iStack_1d4 == *piVar17) {\n          return pIVar12;\n        }\n        goto LAB_001c9968;\n      }\n      goto LAB_001c9974;\n    }\n  }\n  pcVar22 = *(code **)(pcVar25 + -0x72a8);\n  iVar10 = *(int *)(pcVar25 + -0x7fc4) + -0x288c;\n  pcVar26 = FlopImage;\n  iVar2 = *(int *)(pcVar25 + -0x7fc8) + -0x3784;\n  (*pcVar22)(iVar2,iVar10,0x4bd,*(int *)(pcVar25 + -0x7fc4) + -0x26e0);\n  piVar18 = *(int **)(pcVar22 + 0x1df874);\n  iStack_24c = *piVar18;\n  pIStack_248 = pIVar12;\n  pEStack_240 = unaff_s2;\n  piStack_23c = piVar17;\n  piStack_238 = piVar19;\n  puStack_234 = unaff_s5;\n  pIStack_230 = unaff_s6;\n  pIStack_22c = pIVar15;\n  ppIStack_228 = unaff_s8;\n  pcStack_224 = pcVar26;\n  if (iVar2 == 0) {\n    pIVar11 = (Image *)(**(code **)(pcVar22 + 0x1dfc4c))\n                                 (*(int *)(pcVar22 + 0x1def2c) + -0x37b0,\n                                  *(int *)(pcVar22 + 0x1def30) + -0x288c,0x543,\n                                  *(int *)(pcVar22 + 0x1def30) + -0x26f8);\n    return pIVar11;\n  }\n  if (*(int *)(iVar2 + 0x336c) != -0x54535255) {\n    pIVar11 = (Image *)(**(code **)(pcVar22 + 0x1dfc4c))\n                                 (*(int *)(pcVar22 + 0x1def2c) + -0x3784,\n                                  *(int *)(pcVar22 + 0x1def30) + -0x288c,0x544,\n                                  *(int *)(pcVar22 + 0x1def30) + -0x26f8);\n    return pIVar11;\n  }\n  if (*(int *)(iVar2 + 0x3350) != 0) {\n    (**(code **)(pcVar22 + 0x1df824))\n              (0x8000,*(int *)(pcVar22 + 0x1def30) + -0x288c,*(int *)(pcVar22 + 0x1def30) + -0x2704,\n               0x546,*(int *)(pcVar22 + 0x1def28) + -0x62ac,iVar2 + 0x340);\n  }\n  if (iVar10 == 0) {\n    pIVar11 = (Image *)(**(code **)(pcVar22 + 0x1dfc4c))\n                                 (*(int *)(pcVar22 + 0x1def24) + 0x1cac,\n                                  *(int *)(pcVar22 + 0x1def30) + -0x288c,0x547,\n                                  *(int *)(pcVar22 + 0x1def30) + -0x26f8);\n    return pIVar11;\n  }\n  if (*(int *)(iVar10 + 0x1c) != -0x54535255) goto LAB_001c9db0;\n  pIVar11 = (Image *)(**(code **)(pcVar22 + 0x1dfe74))(iVar2,0,0,1,iVar10);\n  if (pIVar11 != (Image *)0x0) {\n    sVar5 = *(ssize_t *)(iVar2 + 0x234);\n    sVar9 = *(size_t *)(iVar2 + 0x228);\n    sVar24 = *(size_t *)(iVar2 + 0x22c);\n    sVar20 = *(int *)(iVar2 + 0x230);\n    uStack_26c = 0;\n    uStack_270 = 0;\n    uVar6 = (**(code **)(pcVar22 + 0x1dfd98))(iVar2,iVar10);\n    uVar7 = (**(code **)(pcVar22 + 0x1df518))(pIVar11,iVar10);\n    iVar4 = (**(code **)(pcVar22 + 0x1dfaf8))(iVar2);\n    if (((iVar4 == 4) || (iVar4 = (**(code **)(pcVar22 + 0x1dfaf8))(iVar2), iVar4 == 3)) &&\n       ((iVar4 = (**(code **)(pcVar22 + 0x1dfaf8))(pIVar11), iVar4 == 4 ||\n        (iVar4 = (**(code **)(pcVar22 + 0x1dfaf8))(pIVar11), iVar4 == 3)))) {\n      (**(code **)(pcVar22 + 0x1df780))(7);\n      sVar8 = pIVar11->rows;\n      if ((int)sVar8 < 0) {\n        pcVar25 = *(code **)(pcVar22 + 0x1df780);\n        if (extraout_v1_07 < (int)(sVar8 + 0x3f) >> 6) goto LAB_001c9d10;\nLAB_001c9c58:\n        bVar1 = (int)sVar8 < 0x80;\n      }\n      else {\n        pcVar25 = *(code **)(pcVar22 + 0x1df780);\n        if ((int)sVar8 >> 6 <= extraout_v1_07) goto LAB_001c9c58;\nLAB_001c9d10:\n        (*pcVar25)(7);\n        bVar1 = extraout_v1_09 < 2;\n      }\n      iVar4 = 1;\n      if ((bool)(bVar1 ^ 1)) {\n        (**(code **)(pcVar22 + 0x1df780))(7);\n        sVar8 = pIVar11->rows;\n        if ((int)sVar8 < 0) {\n          sVar8 = sVar8 + 0x3f;\n        }\n        iVar4 = (int)sVar8 >> 6;\n        pcVar25 = *(code **)(pcVar22 + 0x1df780);\n        if (extraout_v1_10 < iVar4) {\nLAB_001c9ce8:\n          (*pcVar25)(7);\n          iVar4 = extraout_v1_08;\n        }\n        goto LAB_001c9b14;\n      }\n      iVar13 = *(int *)(pcVar22 + 0x1defe4);\n    }\n    else {\n      uVar38 = (**(code **)(pcVar22 + 0x1df780))(7);\n      if ((int)((ulonglong)uVar38 >> 0x20) == 0) {\n        pcVar25 = *(code **)(pcVar22 + 0x1df780);\n        if (1 < (uint)uVar38) goto LAB_001c9b00;\n        uVar38 = (*pcVar25)(7);\n        if ((int)((ulonglong)uVar38 >> 0x20) != 0) goto LAB_001c9afc;\n        pcVar25 = *(code **)(pcVar22 + 0x1df780);\n        if (1 < (uint)uVar38) goto LAB_001c9b00;\n        iVar4 = 1;\n      }\n      else {\nLAB_001c9afc:\n        pcVar25 = *(code **)(pcVar22 + 0x1df780);\nLAB_001c9b00:\n        uVar38 = (*pcVar25)(7);\n        if (((int)((ulonglong)uVar38 >> 0x20) == 0) &&\n           (pcVar25 = *(code **)(pcVar22 + 0x1df780), (uint)uVar38 < 2)) goto LAB_001c9ce8;\n        iVar4 = 2;\n      }\nLAB_001c9b14:\n      iVar13 = *(int *)(pcVar22 + 0x1defe4);\n    }\n    puStack_254 = &uStack_270;\n    iStack_250 = 1;\n    iStack_268 = iVar2;\n    iStack_264 = iVar10;\n    uStack_260 = uVar7;\n    uStack_25c = uVar6;\n    pIStack_258 = pIVar11;\n    (**(code **)(pcVar22 + 0x1df7dc))(iVar13 + 0x594c,&iStack_268,iVar4,0);\n    iVar10 = iStack_250;\n    (**(code **)(pcVar22 + 0x1df538))(uVar7);\n    (**(code **)(pcVar22 + 0x1df538))(uVar6);\n    pIVar11->type = *(ImageType *)(iVar2 + 0x2a0);\n    if (sVar9 != 0) {\n      sVar20 = (sVar9 - pIVar11->columns) - sVar20;\n    }\n    (pIVar11->page).width = sVar9;\n    (pIVar11->page).height = sVar24;\n    (pIVar11->page).x = sVar20;\n    (pIVar11->page).y = sVar5;\n    if (iVar10 == 0) {\n      pIVar11 = (Image *)(**(code **)(pcVar22 + 0x1df590))(pIVar11);\n    }\n  }\n  if (iStack_24c == *piVar18) {\n    return pIVar11;\n  }\n  (**(code **)(pcVar22 + 0x1df6a8))();\nLAB_001c9db0:\n  pIVar11 = (Image *)(**(code **)(pcVar22 + 0x1dfc4c))\n                               (*(int *)(pcVar22 + 0x1def24) + 0x294c,\n                                *(int *)(pcVar22 + 0x1def30) + -0x288c,0x548,\n                                *(int *)(pcVar22 + 0x1def30) + -0x26f8);\n  return pIVar11;\n}" { (declaration "bool bVar1;" primitive_type identifier ;) (declaration "int iVar2;" primitive_type identifier ;) (declaration "uint uVar3;" type_identifier identifier ;) (declaration "int iVar4;" primitive_type identifier ;) (declaration "ssize_t sVar5;" primitive_type identifier ;) (declaration "undefined4 uVar6;" type_identifier identifier ;) (declaration "undefined4 uVar7;" type_identifier identifier ;) (declaration "size_t sVar8;" primitive_type identifier ;) (declaration "size_t sVar9;" primitive_type identifier ;) (declaration "int extraout_v1;" primitive_type identifier ;) (declaration "int extraout_v1_00;" primitive_type identifier ;) (declaration "int extraout_v1_01;" primitive_type identifier ;) (declaration "int extraout_v1_02;" primitive_type identifier ;) (declaration "int extraout_v1_03;" primitive_type identifier ;) (declaration "int extraout_v1_04;" primitive_type identifier ;) (declaration "int extraout_v1_05;" primitive_type identifier ;) (declaration "int extraout_v1_06;" primitive_type identifier ;) (declaration "int extraout_v1_07;" primitive_type identifier ;) (declaration "int extraout_v1_08;" primitive_type identifier ;) (declaration "int extraout_v1_09;" primitive_type identifier ;) (declaration "int extraout_v1_10;" primitive_type identifier ;) (declaration "int iVar10;" primitive_type identifier ;) (declaration "Image *pIVar11;" type_identifier (pointer_declarator "*pIVar11" * identifier) ;) (declaration "Image *pIVar12;" type_identifier (pointer_declarator "*pIVar12" * identifier) ;) (declaration "int iVar13;" primitive_type identifier ;) (declaration "RectangleInfo *pRVar14;" type_identifier (pointer_declarator "*pRVar14" * identifier) ;) (declaration "Image *pIVar15;" type_identifier (pointer_declarator "*pIVar15" * identifier) ;) (declaration "ExceptionInfo *pEVar16;" type_identifier (pointer_declarator "*pEVar16" * identifier) ;) (declaration "Image *unaff_s0;" type_identifier (pointer_declarator "*unaff_s0" * identifier) ;) (declaration "Image *unaff_s1;" type_identifier (pointer_declarator "*unaff_s1" * identifier) ;) (declaration "ExceptionInfo *unaff_s2;" type_identifier (pointer_declarator "*unaff_s2" * identifier) ;) (declaration "RectangleInfo *unaff_s3;" type_identifier (pointer_declarator "*unaff_s3" * identifier) ;) (declaration "int *piVar17;" primitive_type (pointer_declarator "*piVar17" * identifier) ;) (declaration "int *piVar18;" primitive_type (pointer_declarator "*piVar18" * identifier) ;) (declaration "size_t unaff_s4;" primitive_type identifier ;) (declaration "int *piVar19;" primitive_type (pointer_declarator "*piVar19" * identifier) ;) (declaration "undefined *unaff_s5;" type_identifier (pointer_declarator "*unaff_s5" * identifier) ;) (declaration "Image *unaff_s6;" type_identifier (pointer_declarator "*unaff_s6" * identifier) ;) (declaration "ssize_t sVar20;" primitive_type identifier ;) (declaration "Image *unaff_s7;" type_identifier (pointer_declarator "*unaff_s7" * identifier) ;) (declaration "undefined *puVar21;" type_identifier (pointer_declarator "*puVar21" * identifier) ;) (declaration "code *pcVar22;" type_identifier (pointer_declarator "*pcVar22" * identifier) ;) (declaration "undefined *puVar23;" type_identifier (pointer_declarator "*puVar23" * identifier) ;) (declaration "Image **unaff_s8;" type_identifier (pointer_declarator "**unaff_s8" * (pointer_declarator "*unaff_s8" * identifier)) ;) (declaration "size_t sVar24;" primitive_type identifier ;) (declaration "code *pcVar25;" type_identifier (pointer_declarator "*pcVar25" * identifier) ;) (declaration "code *pcVar26;" type_identifier (pointer_declarator "*pcVar26" * identifier) ;) (declaration "double dVar27;" primitive_type identifier ;) (declaration "double dVar28;" primitive_type identifier ;) (declaration "double dVar29;" primitive_type identifier ;) (declaration "double dVar30;" primitive_type identifier ;) (declaration "double dVar31;" primitive_type identifier ;) (declaration "double dVar32;" primitive_type identifier ;) (declaration "double dVar33;" primitive_type identifier ;) (declaration "double dVar34;" primitive_type identifier ;) (declaration "double dVar35;" primitive_type identifier ;) (declaration "double dVar36;" primitive_type identifier ;) (declaration "double dVar37;" primitive_type identifier ;) (declaration "undefined8 uVar38;" type_identifier identifier ;) (declaration "undefined4 uStack_270;" type_identifier identifier ;) (declaration "undefined4 uStack_26c;" type_identifier identifier ;) (declaration "int iStack_268;" primitive_type identifier ;) (declaration "int iStack_264;" primitive_type identifier ;) (declaration "undefined4 uStack_260;" type_identifier identifier ;) (declaration "undefined4 uStack_25c;" type_identifier identifier ;) (declaration "Image *pIStack_258;" type_identifier (pointer_declarator "*pIStack_258" * identifier) ;) (declaration "undefined4 *puStack_254;" type_identifier (pointer_declarator "*puStack_254" * identifier) ;) (declaration "int iStack_250;" primitive_type identifier ;) (declaration "int iStack_24c;" primitive_type identifier ;) (declaration "Image *pIStack_248;" type_identifier (pointer_declarator "*pIStack_248" * identifier) ;) (declaration "Image *pIStack_244;" type_identifier (pointer_declarator "*pIStack_244" * identifier) ;) (declaration "ExceptionInfo *pEStack_240;" type_identifier (pointer_declarator "*pEStack_240" * identifier) ;) (declaration "int *piStack_23c;" primitive_type (pointer_declarator "*piStack_23c" * identifier) ;) (declaration "int *piStack_238;" primitive_type (pointer_declarator "*piStack_238" * identifier) ;) (declaration "undefined *puStack_234;" type_identifier (pointer_declarator "*puStack_234" * identifier) ;) (declaration "Image *pIStack_230;" type_identifier (pointer_declarator "*pIStack_230" * identifier) ;) (declaration "Image *pIStack_22c;" type_identifier (pointer_declarator "*pIStack_22c" * identifier) ;) (declaration "Image **ppIStack_228;" type_identifier (pointer_declarator "**ppIStack_228" * (pointer_declarator "*ppIStack_228" * identifier)) ;) (declaration "code *pcStack_224;" type_identifier (pointer_declarator "*pcStack_224" * identifier) ;) (declaration "Image *pIStack_210;" type_identifier (pointer_declarator "*pIStack_210" * identifier) ;) (declaration "char *pcStack_20c;" primitive_type (pointer_declarator "*pcStack_20c" * identifier) ;) (declaration "code *pcStack_208;" type_identifier (pointer_declarator "*pcStack_208" * identifier) ;) (declaration "ssize_t sStack_1fc;" primitive_type identifier ;) (declaration "undefined4 uStack_1f8;" type_identifier identifier ;) (declaration "undefined4 uStack_1f4;" type_identifier identifier ;) (declaration "Image *pIStack_1f0;" type_identifier (pointer_declarator "*pIStack_1f0" * identifier) ;) (declaration "Image *pIStack_1ec;" type_identifier (pointer_declarator "*pIStack_1ec" * identifier) ;) (declaration "undefined *puStack_1e8;" type_identifier (pointer_declarator "*puStack_1e8" * identifier) ;) (declaration "int *piStack_1e4;" primitive_type (pointer_declarator "*piStack_1e4" * identifier) ;) (declaration "Image *pIStack_1e0;" type_identifier (pointer_declarator "*pIStack_1e0" * identifier) ;) (declaration "undefined4 *puStack_1dc;" type_identifier (pointer_declarator "*puStack_1dc" * identifier) ;) (declaration "Image *pIStack_1d8;" type_identifier (pointer_declarator "*pIStack_1d8" * identifier) ;) (declaration "int iStack_1d4;" primitive_type identifier ;) (declaration "Image *pIStack_1d0;" type_identifier (pointer_declarator "*pIStack_1d0" * identifier) ;) (declaration "Image *pIStack_1cc;" type_identifier (pointer_declarator "*pIStack_1cc" * identifier) ;) (declaration "ExceptionInfo *pEStack_1c8;" type_identifier (pointer_declarator "*pEStack_1c8" * identifier) ;) (declaration "RectangleInfo *pRStack_1c4;" type_identifier (pointer_declarator "*pRStack_1c4" * identifier) ;) (declaration "int *piStack_1c0;" primitive_type (pointer_declarator "*piStack_1c0" * identifier) ;) (declaration "undefined *puStack_1bc;" type_identifier (pointer_declarator "*puStack_1bc" * identifier) ;) (declaration "Image *pIStack_1b8;" type_identifier (pointer_declarator "*pIStack_1b8" * identifier) ;) (declaration "Image *pIStack_1b4;" type_identifier (pointer_declarator "*pIStack_1b4" * identifier) ;) (declaration "Image **ppIStack_1b0;" type_identifier (pointer_declarator "**ppIStack_1b0" * (pointer_declarator "*ppIStack_1b0" * identifier)) ;) (declaration "code *pcStack_1ac;" type_identifier (pointer_declarator "*pcStack_1ac" * identifier) ;) (declaration "ExceptionInfo *pEStack_198;" type_identifier (pointer_declarator "*pEStack_198" * identifier) ;) (declaration "char *pcStack_194;" primitive_type (pointer_declarator "*pcStack_194" * identifier) ;) (declaration "ExceptionInfo *pEStack_190;" type_identifier (pointer_declarator "*pEStack_190" * identifier) ;) (declaration "code *pcStack_188;" type_identifier (pointer_declarator "*pcStack_188" * identifier) ;) (declaration "Image *pIStack_17c;" type_identifier (pointer_declarator "*pIStack_17c" * identifier) ;) (declaration "Image *pIStack_178;" type_identifier (pointer_declarator "*pIStack_178" * identifier) ;) (declaration "ExceptionInfo *pEStack_174;" type_identifier (pointer_declarator "*pEStack_174" * identifier) ;) (declaration "RectangleInfo *pRStack_170;" type_identifier (pointer_declarator "*pRStack_170" * identifier) ;) (declaration "code *pcStack_16c;" type_identifier (pointer_declarator "*pcStack_16c" * identifier) ;) (declaration "ExceptionInfo *pEStack_158;" type_identifier (pointer_declarator "*pEStack_158" * identifier) ;) (declaration "char *pcStack_154;" primitive_type (pointer_declarator "*pcStack_154" * identifier) ;) (declaration "undefined *puStack_150;" type_identifier (pointer_declarator "*puStack_150" * identifier) ;) (declaration "undefined4 uStack_148;" type_identifier identifier ;) (declaration "undefined4 uStack_144;" type_identifier identifier ;) (declaration "Image *pIStack_13c;" type_identifier (pointer_declarator "*pIStack_13c" * identifier) ;) (declaration "RectangleInfo *pRStack_138;" type_identifier (pointer_declarator "*pRStack_138" * identifier) ;) (declaration "ExceptionInfo *pEStack_134;" type_identifier (pointer_declarator "*pEStack_134" * identifier) ;) (declaration "Image *pIStack_130;" type_identifier (pointer_declarator "*pIStack_130" * identifier) ;) (declaration "undefined *puStack_12c;" type_identifier (pointer_declarator "*puStack_12c" * identifier) ;) (declaration "Image *pIStack_128;" type_identifier (pointer_declarator "*pIStack_128" * identifier) ;) (declaration "ExceptionInfo *pEStack_124;" type_identifier (pointer_declarator "*pEStack_124" * identifier) ;) (declaration "undefined4 *puStack_120;" type_identifier (pointer_declarator "*puStack_120" * identifier) ;) (declaration "int iStack_11c;" primitive_type identifier ;) (declaration "Image *pIStack_118;" type_identifier (pointer_declarator "*pIStack_118" * identifier) ;) (declaration "Image *pIStack_114;" type_identifier (pointer_declarator "*pIStack_114" * identifier) ;) (declaration "ExceptionInfo *pEStack_110;" type_identifier (pointer_declarator "*pEStack_110" * identifier) ;) (declaration "RectangleInfo *pRStack_10c;" type_identifier (pointer_declarator "*pRStack_10c" * identifier) ;) (declaration "uint uStack_108;" type_identifier identifier ;) (declaration "undefined *puStack_104;" type_identifier (pointer_declarator "*puStack_104" * identifier) ;) (declaration "Image *pIStack_100;" type_identifier (pointer_declarator "*pIStack_100" * identifier) ;) (declaration "code *pcStack_fc;" type_identifier (pointer_declarator "*pcStack_fc" * identifier) ;) (declaration "ExceptionInfo *local_e8;" type_identifier (pointer_declarator "*local_e8" * identifier) ;) (declaration "char *local_e4;" primitive_type (pointer_declarator "*local_e4" * identifier) ;) (declaration "double local_c8;" primitive_type identifier ;) (declaration "double local_a0;" primitive_type identifier ;) (declaration "Image *crop_image;" type_identifier (pointer_declarator "*crop_image" * identifier) ;) (declaration "RectangleInfo geometry;" type_identifier identifier ;) (declaration "RectangleInfo crop;" type_identifier identifier ;) (expression_statement "puVar21 = PTR___stack_chk_guard_003a9230;" (assignment_expression "puVar21 = PTR___stack_chk_guard_003a9230" identifier = identifier) ;) (expression_statement "iVar2 = *(int *)PTR___stack_chk_guard_003a9230;" (assignment_expression "iVar2 = *(int *)PTR___stack_chk_guard_003a9230" identifier = (pointer_expression "*(int *)PTR___stack_chk_guard_003a9230" * (cast_expression "(int *)PTR___stack_chk_guard_003a9230" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;) (if_statement "if (image == (Image *)0x0) {\nLAB_001c8ef8:\n    image = unaff_s1;\n    (*(code *)PTR___assert_fail_003a9608)\n              (PTR_LAB_003a88e0 + 0xdd0,PTR_s_courses_003a88ec + -0x288c,0x322,\n               PTR_s_courses_003a88ec + -0x2688);\n  }\n  else if (image->signature == 0xabacadab) {\n    if (image->debug != MagickFalse) {\n      local_e4 = image->filename;\n      local_e8 = (ExceptionInfo *)(PTR_s_t_to_left_003a88e4 + -0x62ac);\n      (*(code *)PTR_LogMagickEvent_003a91e0)\n                (0x8000,PTR_s_courses_003a88ec + -0x288c,PTR_s_courses_003a88ec + -0x269c,0x325);\n    }\n    unaff_s6 = (Image *)(*(code *)PTR_NewImageList_003a8e84)();\n    crop_image = unaff_s6;\n    uVar3 = (*(code *)PTR_ParseGravityGeometry_003a97fc)(image,crop_geometry,&geometry,exception);\n    unaff_s4 = geometry.height;\n    unaff_s0 = (Image *)geometry.width;\n    unaff_s3 = (RectangleInfo *)PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;\n    if ((int)(uVar3 << 0xe) < 0) {\n      sVar9 = image->rows;\n      if (geometry.width == 0) {\n        geometry.width = 1;\n        dVar37 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n      }\n      else {\n        dVar37 = (double)(int)geometry.width;\n        if ((int)geometry.width < 0) {\n          dVar37 = dVar37 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n      }\n      if (geometry.height == 0) {\n        dVar32 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n        geometry.height = 1;\n        if ((uVar3 & 0x2000) != 0) goto LAB_001c8e14;\nLAB_001c8484:\n        iVar10 = geometry.x;\n        if (geometry.x < 0) {\n          iVar10 = -geometry.x;\n        }\n        iVar10 = image->columns - iVar10;\n        iVar4 = geometry.y;\n        if (geometry.y < 0) {\n          iVar4 = -geometry.y;\n        }\n        iVar4 = sVar9 - iVar4;\n      }\n      else {\n        dVar32 = (double)(int)geometry.height;\n        if ((int)geometry.height < 0) {\n          dVar32 = dVar32 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n        if ((uVar3 & 0x2000) == 0) goto LAB_001c8484;\nLAB_001c8e14:\n        iVar10 = geometry.x;\n        if (geometry.x < 0) {\n          iVar10 = -geometry.x;\n        }\n        iVar10 = iVar10 + image->columns;\n        if (geometry.y < 0) {\n          iVar4 = sVar9 - geometry.y;\n        }\n        else {\n          iVar4 = geometry.y + sVar9;\n        }\n      }\n      unaff_s4 = uVar3 & 0x2000;\n      dVar36 = (double)iVar10;\n      if (iVar10 < 0) {\n        dVar36 = dVar36 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n      }\n      dVar37 = dVar36 / dVar37;\n      local_c8 = (double)iVar4;\n      if (iVar4 < 0) {\n        local_c8 = local_c8 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n      }\n      dVar27 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n      local_a0 = dVar27;\n      if (dVar37 < dVar27) {\n        local_a0 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n        dVar37 = dVar27;\n      }\n      if (local_a0 <= local_c8 / dVar32) {\n        local_a0 = local_c8 / dVar32;\n      }\n      dVar32 = 0.0;\n      unaff_s7 = (Image *)geometry.y;\n      if (0.0 < local_c8) {\n        dVar27 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4780);\n        dVar33 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4788);\n        if (unaff_s4 != 0) goto LAB_001c8b70;\nLAB_001c854c:\n        unaff_s7 = (Image *)geometry.y;\n        dVar34 = dVar32;\n        if (geometry.y < 1) {\n          dVar34 = dVar32 - (double)geometry.y;\n        }\n        dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar34);\n        dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar34);\n        if (dVar34 - dVar28 < dVar29 - dVar34) {\n          dVar28 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar25 = (code *)PTR_floor_003a9670;\n          if (dVar34 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d7c;\n        }\n        else {\n          if (dVar34 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d7c:\n            iVar10 = -0x7ffffdff;\n            goto joined_r0x001c8cbc;\n          }\n          dVar28 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar25 = (code *)PTR_ceil_003a8c20;\n        }\n        if (dVar28 < dVar34) {\n          iVar10 = 0x7ffffdff;\n        }\n        else {\n          dVar34 = (double)(*pcVar25)(dVar34);\n          iVar10 = (int)dVar34;\n        }\njoined_r0x001c8cbc:\n        dVar32 = dVar32 + local_a0;\n        if ((int)unaff_s7 < 0) {\n          dVar34 = 0.0;\n        }\n        else {\n          dVar34 = (double)(int)unaff_s7;\n        }\n        dVar34 = dVar32 + dVar34;\n        dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar34);\n        dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar34);\n        if (dVar34 - dVar28 < dVar29 - dVar34) {\n          if (*(double *)((int)unaff_s3 + 0x4780) <= dVar34) {\n            if (dVar34 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8630;\n            goto LAB_001c8cec;\n          }\n        }\n        else if (*(double *)((int)unaff_s3 + 0x4780) <= dVar34) {\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar34) goto LAB_001c8cec;\n          goto LAB_001c8d18;\n        }\nLAB_001c8c88:\n        iVar4 = -0x7ffffdff;\nLAB_001c8644:\n        do {\n          unaff_s8 = (Image **)(iVar4 - iVar10);\n          crop_geometry = (char *)((image->page).y + iVar10);\n          dVar34 = 0.0;\n          crop.height = (size_t)unaff_s8;\n          crop.y = (ssize_t)crop_geometry;\n          if (0.0 < dVar36) {\n            dVar28 = *(double *)((int)unaff_s3 + 0x4788);\n            unaff_s6 = (Image *)&crop;\n            dVar29 = *(double *)((int)unaff_s3 + 0x4780);\n            do {\n              unaff_s7 = (Image *)geometry.x;\n              if (unaff_s4 == 0) {\n                dVar35 = dVar34;\n                if (geometry.x < 1) {\n                  dVar35 = dVar34 - (double)geometry.x;\n                }\n                dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                if (dVar35 - dVar30 < dVar31 - dVar35) {\n                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar35) {\n                    pcVar25 = (code *)PTR_floor_003a9670;\n                    if (dVar35 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar10 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }\nLAB_001c8b04:\n                  dVar34 = dVar34 + dVar37;\n                  iVar10 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;\nLAB_001c8708:\n                  dVar35 = (double)(int)unaff_s7;\n                }\n                else {\n                  if (dVar35 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar25 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar35) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar35 = (double)(*pcVar25)(dVar35);\n                  iVar10 = (int)dVar35;\nLAB_001c8700:\n                  dVar34 = dVar34 + dVar37;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar35 = 0.0;\n                }\n                dVar35 = dVar34 + dVar35;\n                dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                if (dVar35 - dVar30 < dVar31 - dVar35) {\n                  if (dVar35 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar35) goto LAB_001c88b8;\nLAB_001c8768:\n                  dVar35 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                  iVar4 = (int)dVar35;\n                }\n                else {\n                  if (dVar35 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar35) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar35 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                  iVar4 = (int)dVar35;\n                }\n              }\n              else {\n                dVar35 = dVar34;\n                if (0 < geometry.x) {\n                  dVar35 = dVar34 - (double)geometry.x;\n                }\n                dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                if (dVar35 - dVar30 < dVar31 - dVar35) {\n                  if (dVar29 <= dVar35) {\n                    pcVar25 = (code *)PTR_floor_003a9670;\n                    if (dVar35 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar10 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar34 = dVar34 + dVar37;\n                  iVar10 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar35 = 0.0;\n                }\n                else {\n                  if (dVar35 < dVar29) goto LAB_001c8b24;\n                  pcVar25 = (code *)PTR_ceil_003a8c20;\n                  if (dVar28 < dVar35) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar35 = (double)(*pcVar25)(dVar35);\n                  iVar10 = (int)dVar35;\nLAB_001c8850:\n                  dVar34 = dVar34 + dVar37;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar35 = (double)(int)unaff_s7;\n                }\n                dVar35 = dVar34 + dVar35;\n                dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                if (dVar35 - dVar30 < dVar31 - dVar35) {\n                  if (dVar35 < dVar27) goto LAB_001c8a44;\n                  if (dVar35 <= dVar28) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar4 = 0x7ffffdff;\n                }\n                else if (dVar27 <= dVar35) {\n                  if (dVar35 <= dVar33) goto LAB_001c8abc;\n                  iVar4 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar4 = -0x7ffffdff;\n                }\n              }\n              unaff_s8 = (Image **)(iVar4 - iVar10);\n              crop_geometry = (char *)((image->page).x + iVar10);\n              crop.width = (size_t)unaff_s8;\n              crop.x = (ssize_t)crop_geometry;\n              iVar10 = (*(code *)PTR_CropImage_003a90b8)(image,unaff_s6,exception);\n              if (iVar10 != 0) {\n                (*(code *)PTR_AppendImageToList_003a9880)(&crop_image,iVar10);\n              }\n            } while (dVar34 < dVar36);\n          }\n          unaff_s5 = (undefined *)unaff_s3;\n          if (local_c8 <= dVar32) break;\n          if (unaff_s4 == 0) goto LAB_001c854c;\nLAB_001c8b70:\n          unaff_s7 = (Image *)geometry.y;\n          dVar34 = dVar32;\n          if (0 < geometry.y) {\n            dVar34 = dVar32 - (double)geometry.y;\n          }\n          dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar34);\n          dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar34);\n          if (dVar34 - dVar28 < dVar29 - dVar34) {\n            if (dVar34 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d8c;\n            pcVar25 = (code *)PTR_floor_003a9670;\n            if (*(double *)((int)unaff_s3 + 0x4788) < dVar34) goto LAB_001c8d50;\nLAB_001c8bd8:\n            dVar34 = (double)(*pcVar25)(dVar34);\n            iVar10 = (int)dVar34;\nLAB_001c8bf0:\n            dVar32 = dVar32 + local_a0;\n            if (-2 < (int)unaff_s7) goto LAB_001c8c00;\nLAB_001c8d6c:\n            dVar34 = (double)(int)unaff_s7;\n          }\n          else {\n            if (dVar34 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d8c:\n              iVar10 = -0x7ffffdff;\n              goto LAB_001c8bf0;\n            }\n            pcVar25 = (code *)PTR_ceil_003a8c20;\n            if (dVar34 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8bd8;\nLAB_001c8d50:\n            iVar10 = 0x7ffffdff;\n            dVar32 = dVar32 + local_a0;\n            if ((int)unaff_s7 < -1) goto LAB_001c8d6c;\nLAB_001c8c00:\n            dVar34 = 0.0;\n          }\n          dVar34 = dVar32 + dVar34;\n          dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar34);\n          dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar34);\n          if (dVar34 - dVar28 < dVar29 - dVar34) {\n            if (*(double *)((int)unaff_s3 + 0x4780) <= dVar34) {\n              if (*(double *)((int)unaff_s3 + 0x4788) < dVar34) {\nLAB_001c8cec:\n                iVar4 = 0x7ffffdff;\n              }\n              else {\nLAB_001c8630:\n                dVar34 = (double)(*(code *)PTR_floor_003a9670)(dVar34);\n                iVar4 = (int)dVar34;\n              }\n              goto LAB_001c8644;\n            }\n            goto LAB_001c8c88;\n          }\n          if (dVar34 < dVar27) goto LAB_001c8c88;\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar34) goto LAB_001c8cec;\nLAB_001c8d18:\n          dVar34 = (double)(*(code *)PTR_ceil_003a8c20)(dVar34);\n          iVar4 = (int)dVar34;\n        } while( true );\n      }\n      (*(code *)PTR_ClearMagickException_003a90f8)(exception);\n      pIVar11 = crop_image;\n      unaff_s0 = (Image *)crop_geometry;\n    }\n    else {\n      unaff_s3 = &geometry;\n      if (((geometry.width == 0) && (geometry.height == 0)) || ((uVar3 & 3) != 0)) {\n        crop_image = (Image *)(*(code *)PTR_CropImage_003a90b8)(image,&geometry,exception);\n        pIVar11 = crop_image;\n        unaff_s4 = uVar3;\n        if ((crop_image != (Image *)0x0) && (unaff_s4 = uVar3 & 0x2000, unaff_s4 != 0)) {\n          (crop_image->page).x = (crop_image->page).x - geometry.x;\n          (crop_image->page).y = (crop_image->page).y - geometry.y;\n          (crop_image->page).width = geometry.width;\n          (crop_image->page).height = geometry.height;\n        }\n      }\n      else {\n        unaff_s7 = (Image *)image->columns;\n        if ((geometry.width < unaff_s7) || (geometry.height < image->rows)) {\n          pIVar11 = (Image *)(image->page).width;\n          uVar3 = (image->page).height;\n          if (pIVar11 != (Image *)0x0) {\n            unaff_s7 = pIVar11;\n          }\n          if (uVar3 == 0) {\n            uVar3 = image->rows;\n          }\n          if (geometry.width == 0) {\n            unaff_s0 = unaff_s7;\n          }\n          if (geometry.height == 0) {\n            unaff_s4 = uVar3;\n          }\n          pIVar11 = crop_image;\n          if (0 < (int)uVar3) {\n            unaff_s3 = (RectangleInfo *)0x0;\n            unaff_s8 = &crop_image;\n            do {\n              unaff_s5 = (undefined *)0x0;\n              if ((int)unaff_s7 < 1) {\n                pIVar11 = crop_image;\n                if (unaff_s6 == (Image *)0x0) break;\n              }\n              else {\n                do {\n                  geometry.width = (size_t)unaff_s0;\n                  geometry.height = unaff_s4;\n                  geometry.x = (ssize_t)unaff_s5;\n                  geometry.y = (ssize_t)unaff_s3;\n                  unaff_s6 = (Image *)(*(code *)PTR_CropImage_003a90b8)(image,&geometry,exception);\n                  pIVar11 = crop_image;\n                  if (unaff_s6 == (Image *)0x0) goto LAB_001c8908;\n                  unaff_s5 = unaff_s5 + (int)unaff_s0;\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);\n              }\n              unaff_s3 = (RectangleInfo *)((int)&unaff_s3->width + unaff_s4);\n              pIVar11 = crop_image;\n            } while ((int)unaff_s3 < (int)uVar3);\n          }\n        }\n        else {\n          local_e8 = exception;\n          pIVar11 = (Image *)(*(code *)PTR_CloneImage_003a9830)(image,0,0,1);\n        }\n      }\n    }\nLAB_001c8908:\n    if (iVar2 == *(int *)puVar21) {\n      return pIVar11;\n    }\n    (*(code *)PTR___stack_chk_fail_003a9064)();\n    unaff_s1 = image;\n    unaff_s2 = exception;\n    goto LAB_001c8ef8;\n  }" if (parenthesized_expression "(image == (Image *)0x0)" ( (binary_expression "image == (Image *)0x0" identifier == (cast_expression "(Image *)0x0" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\nLAB_001c8ef8:\n    image = unaff_s1;\n    (*(code *)PTR___assert_fail_003a9608)\n              (PTR_LAB_003a88e0 + 0xdd0,PTR_s_courses_003a88ec + -0x288c,0x322,\n               PTR_s_courses_003a88ec + -0x2688);\n  }" { (labeled_statement "LAB_001c8ef8:\n    image = unaff_s1;" statement_identifier : (expression_statement "image = unaff_s1;" (assignment_expression "image = unaff_s1" identifier = identifier) ;)) (expression_statement "(*(code *)PTR___assert_fail_003a9608)\n              (PTR_LAB_003a88e0 + 0xdd0,PTR_s_courses_003a88ec + -0x288c,0x322,\n               PTR_s_courses_003a88ec + -0x2688);" (call_expression "(*(code *)PTR___assert_fail_003a9608)\n              (PTR_LAB_003a88e0 + 0xdd0,PTR_s_courses_003a88ec + -0x288c,0x322,\n               PTR_s_courses_003a88ec + -0x2688)" (parenthesized_expression "(*(code *)PTR___assert_fail_003a9608)" ( (pointer_expression "*(code *)PTR___assert_fail_003a9608" * (cast_expression "(code *)PTR___assert_fail_003a9608" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(PTR_LAB_003a88e0 + 0xdd0,PTR_s_courses_003a88ec + -0x288c,0x322,\n               PTR_s_courses_003a88ec + -0x2688)" ( (binary_expression "PTR_LAB_003a88e0 + 0xdd0" identifier + number_literal) , (binary_expression "PTR_s_courses_003a88ec + -0x288c" identifier + number_literal) , number_literal , (binary_expression "PTR_s_courses_003a88ec + -0x2688" identifier + number_literal) ))) ;) }) (else_clause "else if (image->signature == 0xabacadab) {\n    if (image->debug != MagickFalse) {\n      local_e4 = image->filename;\n      local_e8 = (ExceptionInfo *)(PTR_s_t_to_left_003a88e4 + -0x62ac);\n      (*(code *)PTR_LogMagickEvent_003a91e0)\n                (0x8000,PTR_s_courses_003a88ec + -0x288c,PTR_s_courses_003a88ec + -0x269c,0x325);\n    }\n    unaff_s6 = (Image *)(*(code *)PTR_NewImageList_003a8e84)();\n    crop_image = unaff_s6;\n    uVar3 = (*(code *)PTR_ParseGravityGeometry_003a97fc)(image,crop_geometry,&geometry,exception);\n    unaff_s4 = geometry.height;\n    unaff_s0 = (Image *)geometry.width;\n    unaff_s3 = (RectangleInfo *)PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;\n    if ((int)(uVar3 << 0xe) < 0) {\n      sVar9 = image->rows;\n      if (geometry.width == 0) {\n        geometry.width = 1;\n        dVar37 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n      }\n      else {\n        dVar37 = (double)(int)geometry.width;\n        if ((int)geometry.width < 0) {\n          dVar37 = dVar37 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n      }\n      if (geometry.height == 0) {\n        dVar32 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n        geometry.height = 1;\n        if ((uVar3 & 0x2000) != 0) goto LAB_001c8e14;\nLAB_001c8484:\n        iVar10 = geometry.x;\n        if (geometry.x < 0) {\n          iVar10 = -geometry.x;\n        }\n        iVar10 = image->columns - iVar10;\n        iVar4 = geometry.y;\n        if (geometry.y < 0) {\n          iVar4 = -geometry.y;\n        }\n        iVar4 = sVar9 - iVar4;\n      }\n      else {\n        dVar32 = (double)(int)geometry.height;\n        if ((int)geometry.height < 0) {\n          dVar32 = dVar32 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n        if ((uVar3 & 0x2000) == 0) goto LAB_001c8484;\nLAB_001c8e14:\n        iVar10 = geometry.x;\n        if (geometry.x < 0) {\n          iVar10 = -geometry.x;\n        }\n        iVar10 = iVar10 + image->columns;\n        if (geometry.y < 0) {\n          iVar4 = sVar9 - geometry.y;\n        }\n        else {\n          iVar4 = geometry.y + sVar9;\n        }\n      }\n      unaff_s4 = uVar3 & 0x2000;\n      dVar36 = (double)iVar10;\n      if (iVar10 < 0) {\n        dVar36 = dVar36 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n      }\n      dVar37 = dVar36 / dVar37;\n      local_c8 = (double)iVar4;\n      if (iVar4 < 0) {\n        local_c8 = local_c8 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n      }\n      dVar27 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n      local_a0 = dVar27;\n      if (dVar37 < dVar27) {\n        local_a0 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n        dVar37 = dVar27;\n      }\n      if (local_a0 <= local_c8 / dVar32) {\n        local_a0 = local_c8 / dVar32;\n      }\n      dVar32 = 0.0;\n      unaff_s7 = (Image *)geometry.y;\n      if (0.0 < local_c8) {\n        dVar27 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4780);\n        dVar33 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4788);\n        if (unaff_s4 != 0) goto LAB_001c8b70;\nLAB_001c854c:\n        unaff_s7 = (Image *)geometry.y;\n        dVar34 = dVar32;\n        if (geometry.y < 1) {\n          dVar34 = dVar32 - (double)geometry.y;\n        }\n        dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar34);\n        dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar34);\n        if (dVar34 - dVar28 < dVar29 - dVar34) {\n          dVar28 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar25 = (code *)PTR_floor_003a9670;\n          if (dVar34 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d7c;\n        }\n        else {\n          if (dVar34 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d7c:\n            iVar10 = -0x7ffffdff;\n            goto joined_r0x001c8cbc;\n          }\n          dVar28 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar25 = (code *)PTR_ceil_003a8c20;\n        }\n        if (dVar28 < dVar34) {\n          iVar10 = 0x7ffffdff;\n        }\n        else {\n          dVar34 = (double)(*pcVar25)(dVar34);\n          iVar10 = (int)dVar34;\n        }\njoined_r0x001c8cbc:\n        dVar32 = dVar32 + local_a0;\n        if ((int)unaff_s7 < 0) {\n          dVar34 = 0.0;\n        }\n        else {\n          dVar34 = (double)(int)unaff_s7;\n        }\n        dVar34 = dVar32 + dVar34;\n        dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar34);\n        dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar34);\n        if (dVar34 - dVar28 < dVar29 - dVar34) {\n          if (*(double *)((int)unaff_s3 + 0x4780) <= dVar34) {\n            if (dVar34 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8630;\n            goto LAB_001c8cec;\n          }\n        }\n        else if (*(double *)((int)unaff_s3 + 0x4780) <= dVar34) {\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar34) goto LAB_001c8cec;\n          goto LAB_001c8d18;\n        }\nLAB_001c8c88:\n        iVar4 = -0x7ffffdff;\nLAB_001c8644:\n        do {\n          unaff_s8 = (Image **)(iVar4 - iVar10);\n          crop_geometry = (char *)((image->page).y + iVar10);\n          dVar34 = 0.0;\n          crop.height = (size_t)unaff_s8;\n          crop.y = (ssize_t)crop_geometry;\n          if (0.0 < dVar36) {\n            dVar28 = *(double *)((int)unaff_s3 + 0x4788);\n            unaff_s6 = (Image *)&crop;\n            dVar29 = *(double *)((int)unaff_s3 + 0x4780);\n            do {\n              unaff_s7 = (Image *)geometry.x;\n              if (unaff_s4 == 0) {\n                dVar35 = dVar34;\n                if (geometry.x < 1) {\n                  dVar35 = dVar34 - (double)geometry.x;\n                }\n                dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                if (dVar35 - dVar30 < dVar31 - dVar35) {\n                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar35) {\n                    pcVar25 = (code *)PTR_floor_003a9670;\n                    if (dVar35 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar10 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }\nLAB_001c8b04:\n                  dVar34 = dVar34 + dVar37;\n                  iVar10 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;\nLAB_001c8708:\n                  dVar35 = (double)(int)unaff_s7;\n                }\n                else {\n                  if (dVar35 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar25 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar35) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar35 = (double)(*pcVar25)(dVar35);\n                  iVar10 = (int)dVar35;\nLAB_001c8700:\n                  dVar34 = dVar34 + dVar37;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar35 = 0.0;\n                }\n                dVar35 = dVar34 + dVar35;\n                dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                if (dVar35 - dVar30 < dVar31 - dVar35) {\n                  if (dVar35 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar35) goto LAB_001c88b8;\nLAB_001c8768:\n                  dVar35 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                  iVar4 = (int)dVar35;\n                }\n                else {\n                  if (dVar35 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar35) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar35 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                  iVar4 = (int)dVar35;\n                }\n              }\n              else {\n                dVar35 = dVar34;\n                if (0 < geometry.x) {\n                  dVar35 = dVar34 - (double)geometry.x;\n                }\n                dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                if (dVar35 - dVar30 < dVar31 - dVar35) {\n                  if (dVar29 <= dVar35) {\n                    pcVar25 = (code *)PTR_floor_003a9670;\n                    if (dVar35 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar10 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar34 = dVar34 + dVar37;\n                  iVar10 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar35 = 0.0;\n                }\n                else {\n                  if (dVar35 < dVar29) goto LAB_001c8b24;\n                  pcVar25 = (code *)PTR_ceil_003a8c20;\n                  if (dVar28 < dVar35) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar35 = (double)(*pcVar25)(dVar35);\n                  iVar10 = (int)dVar35;\nLAB_001c8850:\n                  dVar34 = dVar34 + dVar37;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar35 = (double)(int)unaff_s7;\n                }\n                dVar35 = dVar34 + dVar35;\n                dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                if (dVar35 - dVar30 < dVar31 - dVar35) {\n                  if (dVar35 < dVar27) goto LAB_001c8a44;\n                  if (dVar35 <= dVar28) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar4 = 0x7ffffdff;\n                }\n                else if (dVar27 <= dVar35) {\n                  if (dVar35 <= dVar33) goto LAB_001c8abc;\n                  iVar4 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar4 = -0x7ffffdff;\n                }\n              }\n              unaff_s8 = (Image **)(iVar4 - iVar10);\n              crop_geometry = (char *)((image->page).x + iVar10);\n              crop.width = (size_t)unaff_s8;\n              crop.x = (ssize_t)crop_geometry;\n              iVar10 = (*(code *)PTR_CropImage_003a90b8)(image,unaff_s6,exception);\n              if (iVar10 != 0) {\n                (*(code *)PTR_AppendImageToList_003a9880)(&crop_image,iVar10);\n              }\n            } while (dVar34 < dVar36);\n          }\n          unaff_s5 = (undefined *)unaff_s3;\n          if (local_c8 <= dVar32) break;\n          if (unaff_s4 == 0) goto LAB_001c854c;\nLAB_001c8b70:\n          unaff_s7 = (Image *)geometry.y;\n          dVar34 = dVar32;\n          if (0 < geometry.y) {\n            dVar34 = dVar32 - (double)geometry.y;\n          }\n          dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar34);\n          dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar34);\n          if (dVar34 - dVar28 < dVar29 - dVar34) {\n            if (dVar34 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d8c;\n            pcVar25 = (code *)PTR_floor_003a9670;\n            if (*(double *)((int)unaff_s3 + 0x4788) < dVar34) goto LAB_001c8d50;\nLAB_001c8bd8:\n            dVar34 = (double)(*pcVar25)(dVar34);\n            iVar10 = (int)dVar34;\nLAB_001c8bf0:\n            dVar32 = dVar32 + local_a0;\n            if (-2 < (int)unaff_s7) goto LAB_001c8c00;\nLAB_001c8d6c:\n            dVar34 = (double)(int)unaff_s7;\n          }\n          else {\n            if (dVar34 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d8c:\n              iVar10 = -0x7ffffdff;\n              goto LAB_001c8bf0;\n            }\n            pcVar25 = (code *)PTR_ceil_003a8c20;\n            if (dVar34 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8bd8;\nLAB_001c8d50:\n            iVar10 = 0x7ffffdff;\n            dVar32 = dVar32 + local_a0;\n            if ((int)unaff_s7 < -1) goto LAB_001c8d6c;\nLAB_001c8c00:\n            dVar34 = 0.0;\n          }\n          dVar34 = dVar32 + dVar34;\n          dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar34);\n          dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar34);\n          if (dVar34 - dVar28 < dVar29 - dVar34) {\n            if (*(double *)((int)unaff_s3 + 0x4780) <= dVar34) {\n              if (*(double *)((int)unaff_s3 + 0x4788) < dVar34) {\nLAB_001c8cec:\n                iVar4 = 0x7ffffdff;\n              }\n              else {\nLAB_001c8630:\n                dVar34 = (double)(*(code *)PTR_floor_003a9670)(dVar34);\n                iVar4 = (int)dVar34;\n              }\n              goto LAB_001c8644;\n            }\n            goto LAB_001c8c88;\n          }\n          if (dVar34 < dVar27) goto LAB_001c8c88;\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar34) goto LAB_001c8cec;\nLAB_001c8d18:\n          dVar34 = (double)(*(code *)PTR_ceil_003a8c20)(dVar34);\n          iVar4 = (int)dVar34;\n        } while( true );\n      }\n      (*(code *)PTR_ClearMagickException_003a90f8)(exception);\n      pIVar11 = crop_image;\n      unaff_s0 = (Image *)crop_geometry;\n    }\n    else {\n      unaff_s3 = &geometry;\n      if (((geometry.width == 0) && (geometry.height == 0)) || ((uVar3 & 3) != 0)) {\n        crop_image = (Image *)(*(code *)PTR_CropImage_003a90b8)(image,&geometry,exception);\n        pIVar11 = crop_image;\n        unaff_s4 = uVar3;\n        if ((crop_image != (Image *)0x0) && (unaff_s4 = uVar3 & 0x2000, unaff_s4 != 0)) {\n          (crop_image->page).x = (crop_image->page).x - geometry.x;\n          (crop_image->page).y = (crop_image->page).y - geometry.y;\n          (crop_image->page).width = geometry.width;\n          (crop_image->page).height = geometry.height;\n        }\n      }\n      else {\n        unaff_s7 = (Image *)image->columns;\n        if ((geometry.width < unaff_s7) || (geometry.height < image->rows)) {\n          pIVar11 = (Image *)(image->page).width;\n          uVar3 = (image->page).height;\n          if (pIVar11 != (Image *)0x0) {\n            unaff_s7 = pIVar11;\n          }\n          if (uVar3 == 0) {\n            uVar3 = image->rows;\n          }\n          if (geometry.width == 0) {\n            unaff_s0 = unaff_s7;\n          }\n          if (geometry.height == 0) {\n            unaff_s4 = uVar3;\n          }\n          pIVar11 = crop_image;\n          if (0 < (int)uVar3) {\n            unaff_s3 = (RectangleInfo *)0x0;\n            unaff_s8 = &crop_image;\n            do {\n              unaff_s5 = (undefined *)0x0;\n              if ((int)unaff_s7 < 1) {\n                pIVar11 = crop_image;\n                if (unaff_s6 == (Image *)0x0) break;\n              }\n              else {\n                do {\n                  geometry.width = (size_t)unaff_s0;\n                  geometry.height = unaff_s4;\n                  geometry.x = (ssize_t)unaff_s5;\n                  geometry.y = (ssize_t)unaff_s3;\n                  unaff_s6 = (Image *)(*(code *)PTR_CropImage_003a90b8)(image,&geometry,exception);\n                  pIVar11 = crop_image;\n                  if (unaff_s6 == (Image *)0x0) goto LAB_001c8908;\n                  unaff_s5 = unaff_s5 + (int)unaff_s0;\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);\n              }\n              unaff_s3 = (RectangleInfo *)((int)&unaff_s3->width + unaff_s4);\n              pIVar11 = crop_image;\n            } while ((int)unaff_s3 < (int)uVar3);\n          }\n        }\n        else {\n          local_e8 = exception;\n          pIVar11 = (Image *)(*(code *)PTR_CloneImage_003a9830)(image,0,0,1);\n        }\n      }\n    }\nLAB_001c8908:\n    if (iVar2 == *(int *)puVar21) {\n      return pIVar11;\n    }\n    (*(code *)PTR___stack_chk_fail_003a9064)();\n    unaff_s1 = image;\n    unaff_s2 = exception;\n    goto LAB_001c8ef8;\n  }" else (if_statement "if (image->signature == 0xabacadab) {\n    if (image->debug != MagickFalse) {\n      local_e4 = image->filename;\n      local_e8 = (ExceptionInfo *)(PTR_s_t_to_left_003a88e4 + -0x62ac);\n      (*(code *)PTR_LogMagickEvent_003a91e0)\n                (0x8000,PTR_s_courses_003a88ec + -0x288c,PTR_s_courses_003a88ec + -0x269c,0x325);\n    }\n    unaff_s6 = (Image *)(*(code *)PTR_NewImageList_003a8e84)();\n    crop_image = unaff_s6;\n    uVar3 = (*(code *)PTR_ParseGravityGeometry_003a97fc)(image,crop_geometry,&geometry,exception);\n    unaff_s4 = geometry.height;\n    unaff_s0 = (Image *)geometry.width;\n    unaff_s3 = (RectangleInfo *)PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;\n    if ((int)(uVar3 << 0xe) < 0) {\n      sVar9 = image->rows;\n      if (geometry.width == 0) {\n        geometry.width = 1;\n        dVar37 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n      }\n      else {\n        dVar37 = (double)(int)geometry.width;\n        if ((int)geometry.width < 0) {\n          dVar37 = dVar37 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n      }\n      if (geometry.height == 0) {\n        dVar32 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n        geometry.height = 1;\n        if ((uVar3 & 0x2000) != 0) goto LAB_001c8e14;\nLAB_001c8484:\n        iVar10 = geometry.x;\n        if (geometry.x < 0) {\n          iVar10 = -geometry.x;\n        }\n        iVar10 = image->columns - iVar10;\n        iVar4 = geometry.y;\n        if (geometry.y < 0) {\n          iVar4 = -geometry.y;\n        }\n        iVar4 = sVar9 - iVar4;\n      }\n      else {\n        dVar32 = (double)(int)geometry.height;\n        if ((int)geometry.height < 0) {\n          dVar32 = dVar32 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n        if ((uVar3 & 0x2000) == 0) goto LAB_001c8484;\nLAB_001c8e14:\n        iVar10 = geometry.x;\n        if (geometry.x < 0) {\n          iVar10 = -geometry.x;\n        }\n        iVar10 = iVar10 + image->columns;\n        if (geometry.y < 0) {\n          iVar4 = sVar9 - geometry.y;\n        }\n        else {\n          iVar4 = geometry.y + sVar9;\n        }\n      }\n      unaff_s4 = uVar3 & 0x2000;\n      dVar36 = (double)iVar10;\n      if (iVar10 < 0) {\n        dVar36 = dVar36 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n      }\n      dVar37 = dVar36 / dVar37;\n      local_c8 = (double)iVar4;\n      if (iVar4 < 0) {\n        local_c8 = local_c8 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n      }\n      dVar27 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n      local_a0 = dVar27;\n      if (dVar37 < dVar27) {\n        local_a0 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n        dVar37 = dVar27;\n      }\n      if (local_a0 <= local_c8 / dVar32) {\n        local_a0 = local_c8 / dVar32;\n      }\n      dVar32 = 0.0;\n      unaff_s7 = (Image *)geometry.y;\n      if (0.0 < local_c8) {\n        dVar27 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4780);\n        dVar33 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4788);\n        if (unaff_s4 != 0) goto LAB_001c8b70;\nLAB_001c854c:\n        unaff_s7 = (Image *)geometry.y;\n        dVar34 = dVar32;\n        if (geometry.y < 1) {\n          dVar34 = dVar32 - (double)geometry.y;\n        }\n        dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar34);\n        dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar34);\n        if (dVar34 - dVar28 < dVar29 - dVar34) {\n          dVar28 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar25 = (code *)PTR_floor_003a9670;\n          if (dVar34 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d7c;\n        }\n        else {\n          if (dVar34 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d7c:\n            iVar10 = -0x7ffffdff;\n            goto joined_r0x001c8cbc;\n          }\n          dVar28 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar25 = (code *)PTR_ceil_003a8c20;\n        }\n        if (dVar28 < dVar34) {\n          iVar10 = 0x7ffffdff;\n        }\n        else {\n          dVar34 = (double)(*pcVar25)(dVar34);\n          iVar10 = (int)dVar34;\n        }\njoined_r0x001c8cbc:\n        dVar32 = dVar32 + local_a0;\n        if ((int)unaff_s7 < 0) {\n          dVar34 = 0.0;\n        }\n        else {\n          dVar34 = (double)(int)unaff_s7;\n        }\n        dVar34 = dVar32 + dVar34;\n        dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar34);\n        dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar34);\n        if (dVar34 - dVar28 < dVar29 - dVar34) {\n          if (*(double *)((int)unaff_s3 + 0x4780) <= dVar34) {\n            if (dVar34 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8630;\n            goto LAB_001c8cec;\n          }\n        }\n        else if (*(double *)((int)unaff_s3 + 0x4780) <= dVar34) {\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar34) goto LAB_001c8cec;\n          goto LAB_001c8d18;\n        }\nLAB_001c8c88:\n        iVar4 = -0x7ffffdff;\nLAB_001c8644:\n        do {\n          unaff_s8 = (Image **)(iVar4 - iVar10);\n          crop_geometry = (char *)((image->page).y + iVar10);\n          dVar34 = 0.0;\n          crop.height = (size_t)unaff_s8;\n          crop.y = (ssize_t)crop_geometry;\n          if (0.0 < dVar36) {\n            dVar28 = *(double *)((int)unaff_s3 + 0x4788);\n            unaff_s6 = (Image *)&crop;\n            dVar29 = *(double *)((int)unaff_s3 + 0x4780);\n            do {\n              unaff_s7 = (Image *)geometry.x;\n              if (unaff_s4 == 0) {\n                dVar35 = dVar34;\n                if (geometry.x < 1) {\n                  dVar35 = dVar34 - (double)geometry.x;\n                }\n                dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                if (dVar35 - dVar30 < dVar31 - dVar35) {\n                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar35) {\n                    pcVar25 = (code *)PTR_floor_003a9670;\n                    if (dVar35 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar10 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }\nLAB_001c8b04:\n                  dVar34 = dVar34 + dVar37;\n                  iVar10 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;\nLAB_001c8708:\n                  dVar35 = (double)(int)unaff_s7;\n                }\n                else {\n                  if (dVar35 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar25 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar35) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar35 = (double)(*pcVar25)(dVar35);\n                  iVar10 = (int)dVar35;\nLAB_001c8700:\n                  dVar34 = dVar34 + dVar37;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar35 = 0.0;\n                }\n                dVar35 = dVar34 + dVar35;\n                dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                if (dVar35 - dVar30 < dVar31 - dVar35) {\n                  if (dVar35 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar35) goto LAB_001c88b8;\nLAB_001c8768:\n                  dVar35 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                  iVar4 = (int)dVar35;\n                }\n                else {\n                  if (dVar35 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar35) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar35 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                  iVar4 = (int)dVar35;\n                }\n              }\n              else {\n                dVar35 = dVar34;\n                if (0 < geometry.x) {\n                  dVar35 = dVar34 - (double)geometry.x;\n                }\n                dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                if (dVar35 - dVar30 < dVar31 - dVar35) {\n                  if (dVar29 <= dVar35) {\n                    pcVar25 = (code *)PTR_floor_003a9670;\n                    if (dVar35 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar10 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar34 = dVar34 + dVar37;\n                  iVar10 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar35 = 0.0;\n                }\n                else {\n                  if (dVar35 < dVar29) goto LAB_001c8b24;\n                  pcVar25 = (code *)PTR_ceil_003a8c20;\n                  if (dVar28 < dVar35) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar35 = (double)(*pcVar25)(dVar35);\n                  iVar10 = (int)dVar35;\nLAB_001c8850:\n                  dVar34 = dVar34 + dVar37;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar35 = (double)(int)unaff_s7;\n                }\n                dVar35 = dVar34 + dVar35;\n                dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                if (dVar35 - dVar30 < dVar31 - dVar35) {\n                  if (dVar35 < dVar27) goto LAB_001c8a44;\n                  if (dVar35 <= dVar28) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar4 = 0x7ffffdff;\n                }\n                else if (dVar27 <= dVar35) {\n                  if (dVar35 <= dVar33) goto LAB_001c8abc;\n                  iVar4 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar4 = -0x7ffffdff;\n                }\n              }\n              unaff_s8 = (Image **)(iVar4 - iVar10);\n              crop_geometry = (char *)((image->page).x + iVar10);\n              crop.width = (size_t)unaff_s8;\n              crop.x = (ssize_t)crop_geometry;\n              iVar10 = (*(code *)PTR_CropImage_003a90b8)(image,unaff_s6,exception);\n              if (iVar10 != 0) {\n                (*(code *)PTR_AppendImageToList_003a9880)(&crop_image,iVar10);\n              }\n            } while (dVar34 < dVar36);\n          }\n          unaff_s5 = (undefined *)unaff_s3;\n          if (local_c8 <= dVar32) break;\n          if (unaff_s4 == 0) goto LAB_001c854c;\nLAB_001c8b70:\n          unaff_s7 = (Image *)geometry.y;\n          dVar34 = dVar32;\n          if (0 < geometry.y) {\n            dVar34 = dVar32 - (double)geometry.y;\n          }\n          dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar34);\n          dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar34);\n          if (dVar34 - dVar28 < dVar29 - dVar34) {\n            if (dVar34 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d8c;\n            pcVar25 = (code *)PTR_floor_003a9670;\n            if (*(double *)((int)unaff_s3 + 0x4788) < dVar34) goto LAB_001c8d50;\nLAB_001c8bd8:\n            dVar34 = (double)(*pcVar25)(dVar34);\n            iVar10 = (int)dVar34;\nLAB_001c8bf0:\n            dVar32 = dVar32 + local_a0;\n            if (-2 < (int)unaff_s7) goto LAB_001c8c00;\nLAB_001c8d6c:\n            dVar34 = (double)(int)unaff_s7;\n          }\n          else {\n            if (dVar34 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d8c:\n              iVar10 = -0x7ffffdff;\n              goto LAB_001c8bf0;\n            }\n            pcVar25 = (code *)PTR_ceil_003a8c20;\n            if (dVar34 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8bd8;\nLAB_001c8d50:\n            iVar10 = 0x7ffffdff;\n            dVar32 = dVar32 + local_a0;\n            if ((int)unaff_s7 < -1) goto LAB_001c8d6c;\nLAB_001c8c00:\n            dVar34 = 0.0;\n          }\n          dVar34 = dVar32 + dVar34;\n          dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar34);\n          dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar34);\n          if (dVar34 - dVar28 < dVar29 - dVar34) {\n            if (*(double *)((int)unaff_s3 + 0x4780) <= dVar34) {\n              if (*(double *)((int)unaff_s3 + 0x4788) < dVar34) {\nLAB_001c8cec:\n                iVar4 = 0x7ffffdff;\n              }\n              else {\nLAB_001c8630:\n                dVar34 = (double)(*(code *)PTR_floor_003a9670)(dVar34);\n                iVar4 = (int)dVar34;\n              }\n              goto LAB_001c8644;\n            }\n            goto LAB_001c8c88;\n          }\n          if (dVar34 < dVar27) goto LAB_001c8c88;\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar34) goto LAB_001c8cec;\nLAB_001c8d18:\n          dVar34 = (double)(*(code *)PTR_ceil_003a8c20)(dVar34);\n          iVar4 = (int)dVar34;\n        } while( true );\n      }\n      (*(code *)PTR_ClearMagickException_003a90f8)(exception);\n      pIVar11 = crop_image;\n      unaff_s0 = (Image *)crop_geometry;\n    }\n    else {\n      unaff_s3 = &geometry;\n      if (((geometry.width == 0) && (geometry.height == 0)) || ((uVar3 & 3) != 0)) {\n        crop_image = (Image *)(*(code *)PTR_CropImage_003a90b8)(image,&geometry,exception);\n        pIVar11 = crop_image;\n        unaff_s4 = uVar3;\n        if ((crop_image != (Image *)0x0) && (unaff_s4 = uVar3 & 0x2000, unaff_s4 != 0)) {\n          (crop_image->page).x = (crop_image->page).x - geometry.x;\n          (crop_image->page).y = (crop_image->page).y - geometry.y;\n          (crop_image->page).width = geometry.width;\n          (crop_image->page).height = geometry.height;\n        }\n      }\n      else {\n        unaff_s7 = (Image *)image->columns;\n        if ((geometry.width < unaff_s7) || (geometry.height < image->rows)) {\n          pIVar11 = (Image *)(image->page).width;\n          uVar3 = (image->page).height;\n          if (pIVar11 != (Image *)0x0) {\n            unaff_s7 = pIVar11;\n          }\n          if (uVar3 == 0) {\n            uVar3 = image->rows;\n          }\n          if (geometry.width == 0) {\n            unaff_s0 = unaff_s7;\n          }\n          if (geometry.height == 0) {\n            unaff_s4 = uVar3;\n          }\n          pIVar11 = crop_image;\n          if (0 < (int)uVar3) {\n            unaff_s3 = (RectangleInfo *)0x0;\n            unaff_s8 = &crop_image;\n            do {\n              unaff_s5 = (undefined *)0x0;\n              if ((int)unaff_s7 < 1) {\n                pIVar11 = crop_image;\n                if (unaff_s6 == (Image *)0x0) break;\n              }\n              else {\n                do {\n                  geometry.width = (size_t)unaff_s0;\n                  geometry.height = unaff_s4;\n                  geometry.x = (ssize_t)unaff_s5;\n                  geometry.y = (ssize_t)unaff_s3;\n                  unaff_s6 = (Image *)(*(code *)PTR_CropImage_003a90b8)(image,&geometry,exception);\n                  pIVar11 = crop_image;\n                  if (unaff_s6 == (Image *)0x0) goto LAB_001c8908;\n                  unaff_s5 = unaff_s5 + (int)unaff_s0;\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);\n              }\n              unaff_s3 = (RectangleInfo *)((int)&unaff_s3->width + unaff_s4);\n              pIVar11 = crop_image;\n            } while ((int)unaff_s3 < (int)uVar3);\n          }\n        }\n        else {\n          local_e8 = exception;\n          pIVar11 = (Image *)(*(code *)PTR_CloneImage_003a9830)(image,0,0,1);\n        }\n      }\n    }\nLAB_001c8908:\n    if (iVar2 == *(int *)puVar21) {\n      return pIVar11;\n    }\n    (*(code *)PTR___stack_chk_fail_003a9064)();\n    unaff_s1 = image;\n    unaff_s2 = exception;\n    goto LAB_001c8ef8;\n  }" if (parenthesized_expression "(image->signature == 0xabacadab)" ( (binary_expression "image->signature == 0xabacadab" (field_expression "image->signature" identifier -> field_identifier) == number_literal) )) (compound_statement "{\n    if (image->debug != MagickFalse) {\n      local_e4 = image->filename;\n      local_e8 = (ExceptionInfo *)(PTR_s_t_to_left_003a88e4 + -0x62ac);\n      (*(code *)PTR_LogMagickEvent_003a91e0)\n                (0x8000,PTR_s_courses_003a88ec + -0x288c,PTR_s_courses_003a88ec + -0x269c,0x325);\n    }\n    unaff_s6 = (Image *)(*(code *)PTR_NewImageList_003a8e84)();\n    crop_image = unaff_s6;\n    uVar3 = (*(code *)PTR_ParseGravityGeometry_003a97fc)(image,crop_geometry,&geometry,exception);\n    unaff_s4 = geometry.height;\n    unaff_s0 = (Image *)geometry.width;\n    unaff_s3 = (RectangleInfo *)PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;\n    if ((int)(uVar3 << 0xe) < 0) {\n      sVar9 = image->rows;\n      if (geometry.width == 0) {\n        geometry.width = 1;\n        dVar37 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n      }\n      else {\n        dVar37 = (double)(int)geometry.width;\n        if ((int)geometry.width < 0) {\n          dVar37 = dVar37 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n      }\n      if (geometry.height == 0) {\n        dVar32 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n        geometry.height = 1;\n        if ((uVar3 & 0x2000) != 0) goto LAB_001c8e14;\nLAB_001c8484:\n        iVar10 = geometry.x;\n        if (geometry.x < 0) {\n          iVar10 = -geometry.x;\n        }\n        iVar10 = image->columns - iVar10;\n        iVar4 = geometry.y;\n        if (geometry.y < 0) {\n          iVar4 = -geometry.y;\n        }\n        iVar4 = sVar9 - iVar4;\n      }\n      else {\n        dVar32 = (double)(int)geometry.height;\n        if ((int)geometry.height < 0) {\n          dVar32 = dVar32 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n        if ((uVar3 & 0x2000) == 0) goto LAB_001c8484;\nLAB_001c8e14:\n        iVar10 = geometry.x;\n        if (geometry.x < 0) {\n          iVar10 = -geometry.x;\n        }\n        iVar10 = iVar10 + image->columns;\n        if (geometry.y < 0) {\n          iVar4 = sVar9 - geometry.y;\n        }\n        else {\n          iVar4 = geometry.y + sVar9;\n        }\n      }\n      unaff_s4 = uVar3 & 0x2000;\n      dVar36 = (double)iVar10;\n      if (iVar10 < 0) {\n        dVar36 = dVar36 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n      }\n      dVar37 = dVar36 / dVar37;\n      local_c8 = (double)iVar4;\n      if (iVar4 < 0) {\n        local_c8 = local_c8 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n      }\n      dVar27 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n      local_a0 = dVar27;\n      if (dVar37 < dVar27) {\n        local_a0 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n        dVar37 = dVar27;\n      }\n      if (local_a0 <= local_c8 / dVar32) {\n        local_a0 = local_c8 / dVar32;\n      }\n      dVar32 = 0.0;\n      unaff_s7 = (Image *)geometry.y;\n      if (0.0 < local_c8) {\n        dVar27 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4780);\n        dVar33 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4788);\n        if (unaff_s4 != 0) goto LAB_001c8b70;\nLAB_001c854c:\n        unaff_s7 = (Image *)geometry.y;\n        dVar34 = dVar32;\n        if (geometry.y < 1) {\n          dVar34 = dVar32 - (double)geometry.y;\n        }\n        dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar34);\n        dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar34);\n        if (dVar34 - dVar28 < dVar29 - dVar34) {\n          dVar28 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar25 = (code *)PTR_floor_003a9670;\n          if (dVar34 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d7c;\n        }\n        else {\n          if (dVar34 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d7c:\n            iVar10 = -0x7ffffdff;\n            goto joined_r0x001c8cbc;\n          }\n          dVar28 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar25 = (code *)PTR_ceil_003a8c20;\n        }\n        if (dVar28 < dVar34) {\n          iVar10 = 0x7ffffdff;\n        }\n        else {\n          dVar34 = (double)(*pcVar25)(dVar34);\n          iVar10 = (int)dVar34;\n        }\njoined_r0x001c8cbc:\n        dVar32 = dVar32 + local_a0;\n        if ((int)unaff_s7 < 0) {\n          dVar34 = 0.0;\n        }\n        else {\n          dVar34 = (double)(int)unaff_s7;\n        }\n        dVar34 = dVar32 + dVar34;\n        dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar34);\n        dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar34);\n        if (dVar34 - dVar28 < dVar29 - dVar34) {\n          if (*(double *)((int)unaff_s3 + 0x4780) <= dVar34) {\n            if (dVar34 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8630;\n            goto LAB_001c8cec;\n          }\n        }\n        else if (*(double *)((int)unaff_s3 + 0x4780) <= dVar34) {\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar34) goto LAB_001c8cec;\n          goto LAB_001c8d18;\n        }\nLAB_001c8c88:\n        iVar4 = -0x7ffffdff;\nLAB_001c8644:\n        do {\n          unaff_s8 = (Image **)(iVar4 - iVar10);\n          crop_geometry = (char *)((image->page).y + iVar10);\n          dVar34 = 0.0;\n          crop.height = (size_t)unaff_s8;\n          crop.y = (ssize_t)crop_geometry;\n          if (0.0 < dVar36) {\n            dVar28 = *(double *)((int)unaff_s3 + 0x4788);\n            unaff_s6 = (Image *)&crop;\n            dVar29 = *(double *)((int)unaff_s3 + 0x4780);\n            do {\n              unaff_s7 = (Image *)geometry.x;\n              if (unaff_s4 == 0) {\n                dVar35 = dVar34;\n                if (geometry.x < 1) {\n                  dVar35 = dVar34 - (double)geometry.x;\n                }\n                dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                if (dVar35 - dVar30 < dVar31 - dVar35) {\n                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar35) {\n                    pcVar25 = (code *)PTR_floor_003a9670;\n                    if (dVar35 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar10 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }\nLAB_001c8b04:\n                  dVar34 = dVar34 + dVar37;\n                  iVar10 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;\nLAB_001c8708:\n                  dVar35 = (double)(int)unaff_s7;\n                }\n                else {\n                  if (dVar35 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar25 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar35) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar35 = (double)(*pcVar25)(dVar35);\n                  iVar10 = (int)dVar35;\nLAB_001c8700:\n                  dVar34 = dVar34 + dVar37;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar35 = 0.0;\n                }\n                dVar35 = dVar34 + dVar35;\n                dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                if (dVar35 - dVar30 < dVar31 - dVar35) {\n                  if (dVar35 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar35) goto LAB_001c88b8;\nLAB_001c8768:\n                  dVar35 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                  iVar4 = (int)dVar35;\n                }\n                else {\n                  if (dVar35 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar35) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar35 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                  iVar4 = (int)dVar35;\n                }\n              }\n              else {\n                dVar35 = dVar34;\n                if (0 < geometry.x) {\n                  dVar35 = dVar34 - (double)geometry.x;\n                }\n                dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                if (dVar35 - dVar30 < dVar31 - dVar35) {\n                  if (dVar29 <= dVar35) {\n                    pcVar25 = (code *)PTR_floor_003a9670;\n                    if (dVar35 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar10 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar34 = dVar34 + dVar37;\n                  iVar10 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar35 = 0.0;\n                }\n                else {\n                  if (dVar35 < dVar29) goto LAB_001c8b24;\n                  pcVar25 = (code *)PTR_ceil_003a8c20;\n                  if (dVar28 < dVar35) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar35 = (double)(*pcVar25)(dVar35);\n                  iVar10 = (int)dVar35;\nLAB_001c8850:\n                  dVar34 = dVar34 + dVar37;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar35 = (double)(int)unaff_s7;\n                }\n                dVar35 = dVar34 + dVar35;\n                dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                if (dVar35 - dVar30 < dVar31 - dVar35) {\n                  if (dVar35 < dVar27) goto LAB_001c8a44;\n                  if (dVar35 <= dVar28) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar4 = 0x7ffffdff;\n                }\n                else if (dVar27 <= dVar35) {\n                  if (dVar35 <= dVar33) goto LAB_001c8abc;\n                  iVar4 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar4 = -0x7ffffdff;\n                }\n              }\n              unaff_s8 = (Image **)(iVar4 - iVar10);\n              crop_geometry = (char *)((image->page).x + iVar10);\n              crop.width = (size_t)unaff_s8;\n              crop.x = (ssize_t)crop_geometry;\n              iVar10 = (*(code *)PTR_CropImage_003a90b8)(image,unaff_s6,exception);\n              if (iVar10 != 0) {\n                (*(code *)PTR_AppendImageToList_003a9880)(&crop_image,iVar10);\n              }\n            } while (dVar34 < dVar36);\n          }\n          unaff_s5 = (undefined *)unaff_s3;\n          if (local_c8 <= dVar32) break;\n          if (unaff_s4 == 0) goto LAB_001c854c;\nLAB_001c8b70:\n          unaff_s7 = (Image *)geometry.y;\n          dVar34 = dVar32;\n          if (0 < geometry.y) {\n            dVar34 = dVar32 - (double)geometry.y;\n          }\n          dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar34);\n          dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar34);\n          if (dVar34 - dVar28 < dVar29 - dVar34) {\n            if (dVar34 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d8c;\n            pcVar25 = (code *)PTR_floor_003a9670;\n            if (*(double *)((int)unaff_s3 + 0x4788) < dVar34) goto LAB_001c8d50;\nLAB_001c8bd8:\n            dVar34 = (double)(*pcVar25)(dVar34);\n            iVar10 = (int)dVar34;\nLAB_001c8bf0:\n            dVar32 = dVar32 + local_a0;\n            if (-2 < (int)unaff_s7) goto LAB_001c8c00;\nLAB_001c8d6c:\n            dVar34 = (double)(int)unaff_s7;\n          }\n          else {\n            if (dVar34 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d8c:\n              iVar10 = -0x7ffffdff;\n              goto LAB_001c8bf0;\n            }\n            pcVar25 = (code *)PTR_ceil_003a8c20;\n            if (dVar34 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8bd8;\nLAB_001c8d50:\n            iVar10 = 0x7ffffdff;\n            dVar32 = dVar32 + local_a0;\n            if ((int)unaff_s7 < -1) goto LAB_001c8d6c;\nLAB_001c8c00:\n            dVar34 = 0.0;\n          }\n          dVar34 = dVar32 + dVar34;\n          dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar34);\n          dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar34);\n          if (dVar34 - dVar28 < dVar29 - dVar34) {\n            if (*(double *)((int)unaff_s3 + 0x4780) <= dVar34) {\n              if (*(double *)((int)unaff_s3 + 0x4788) < dVar34) {\nLAB_001c8cec:\n                iVar4 = 0x7ffffdff;\n              }\n              else {\nLAB_001c8630:\n                dVar34 = (double)(*(code *)PTR_floor_003a9670)(dVar34);\n                iVar4 = (int)dVar34;\n              }\n              goto LAB_001c8644;\n            }\n            goto LAB_001c8c88;\n          }\n          if (dVar34 < dVar27) goto LAB_001c8c88;\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar34) goto LAB_001c8cec;\nLAB_001c8d18:\n          dVar34 = (double)(*(code *)PTR_ceil_003a8c20)(dVar34);\n          iVar4 = (int)dVar34;\n        } while( true );\n      }\n      (*(code *)PTR_ClearMagickException_003a90f8)(exception);\n      pIVar11 = crop_image;\n      unaff_s0 = (Image *)crop_geometry;\n    }\n    else {\n      unaff_s3 = &geometry;\n      if (((geometry.width == 0) && (geometry.height == 0)) || ((uVar3 & 3) != 0)) {\n        crop_image = (Image *)(*(code *)PTR_CropImage_003a90b8)(image,&geometry,exception);\n        pIVar11 = crop_image;\n        unaff_s4 = uVar3;\n        if ((crop_image != (Image *)0x0) && (unaff_s4 = uVar3 & 0x2000, unaff_s4 != 0)) {\n          (crop_image->page).x = (crop_image->page).x - geometry.x;\n          (crop_image->page).y = (crop_image->page).y - geometry.y;\n          (crop_image->page).width = geometry.width;\n          (crop_image->page).height = geometry.height;\n        }\n      }\n      else {\n        unaff_s7 = (Image *)image->columns;\n        if ((geometry.width < unaff_s7) || (geometry.height < image->rows)) {\n          pIVar11 = (Image *)(image->page).width;\n          uVar3 = (image->page).height;\n          if (pIVar11 != (Image *)0x0) {\n            unaff_s7 = pIVar11;\n          }\n          if (uVar3 == 0) {\n            uVar3 = image->rows;\n          }\n          if (geometry.width == 0) {\n            unaff_s0 = unaff_s7;\n          }\n          if (geometry.height == 0) {\n            unaff_s4 = uVar3;\n          }\n          pIVar11 = crop_image;\n          if (0 < (int)uVar3) {\n            unaff_s3 = (RectangleInfo *)0x0;\n            unaff_s8 = &crop_image;\n            do {\n              unaff_s5 = (undefined *)0x0;\n              if ((int)unaff_s7 < 1) {\n                pIVar11 = crop_image;\n                if (unaff_s6 == (Image *)0x0) break;\n              }\n              else {\n                do {\n                  geometry.width = (size_t)unaff_s0;\n                  geometry.height = unaff_s4;\n                  geometry.x = (ssize_t)unaff_s5;\n                  geometry.y = (ssize_t)unaff_s3;\n                  unaff_s6 = (Image *)(*(code *)PTR_CropImage_003a90b8)(image,&geometry,exception);\n                  pIVar11 = crop_image;\n                  if (unaff_s6 == (Image *)0x0) goto LAB_001c8908;\n                  unaff_s5 = unaff_s5 + (int)unaff_s0;\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);\n              }\n              unaff_s3 = (RectangleInfo *)((int)&unaff_s3->width + unaff_s4);\n              pIVar11 = crop_image;\n            } while ((int)unaff_s3 < (int)uVar3);\n          }\n        }\n        else {\n          local_e8 = exception;\n          pIVar11 = (Image *)(*(code *)PTR_CloneImage_003a9830)(image,0,0,1);\n        }\n      }\n    }\nLAB_001c8908:\n    if (iVar2 == *(int *)puVar21) {\n      return pIVar11;\n    }\n    (*(code *)PTR___stack_chk_fail_003a9064)();\n    unaff_s1 = image;\n    unaff_s2 = exception;\n    goto LAB_001c8ef8;\n  }" { (if_statement "if (image->debug != MagickFalse) {\n      local_e4 = image->filename;\n      local_e8 = (ExceptionInfo *)(PTR_s_t_to_left_003a88e4 + -0x62ac);\n      (*(code *)PTR_LogMagickEvent_003a91e0)\n                (0x8000,PTR_s_courses_003a88ec + -0x288c,PTR_s_courses_003a88ec + -0x269c,0x325);\n    }" if (parenthesized_expression "(image->debug != MagickFalse)" ( (binary_expression "image->debug != MagickFalse" (field_expression "image->debug" identifier -> field_identifier) != identifier) )) (compound_statement "{\n      local_e4 = image->filename;\n      local_e8 = (ExceptionInfo *)(PTR_s_t_to_left_003a88e4 + -0x62ac);\n      (*(code *)PTR_LogMagickEvent_003a91e0)\n                (0x8000,PTR_s_courses_003a88ec + -0x288c,PTR_s_courses_003a88ec + -0x269c,0x325);\n    }" { (expression_statement "local_e4 = image->filename;" (assignment_expression "local_e4 = image->filename" identifier = (field_expression "image->filename" identifier -> field_identifier)) ;) (expression_statement "local_e8 = (ExceptionInfo *)(PTR_s_t_to_left_003a88e4 + -0x62ac);" (assignment_expression "local_e8 = (ExceptionInfo *)(PTR_s_t_to_left_003a88e4 + -0x62ac)" identifier = (cast_expression "(ExceptionInfo *)(PTR_s_t_to_left_003a88e4 + -0x62ac)" ( (type_descriptor "ExceptionInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_s_t_to_left_003a88e4 + -0x62ac)" ( (binary_expression "PTR_s_t_to_left_003a88e4 + -0x62ac" identifier + number_literal) )))) ;) (expression_statement "(*(code *)PTR_LogMagickEvent_003a91e0)\n                (0x8000,PTR_s_courses_003a88ec + -0x288c,PTR_s_courses_003a88ec + -0x269c,0x325);" (call_expression "(*(code *)PTR_LogMagickEvent_003a91e0)\n                (0x8000,PTR_s_courses_003a88ec + -0x288c,PTR_s_courses_003a88ec + -0x269c,0x325)" (parenthesized_expression "(*(code *)PTR_LogMagickEvent_003a91e0)" ( (pointer_expression "*(code *)PTR_LogMagickEvent_003a91e0" * (cast_expression "(code *)PTR_LogMagickEvent_003a91e0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(0x8000,PTR_s_courses_003a88ec + -0x288c,PTR_s_courses_003a88ec + -0x269c,0x325)" ( number_literal , (binary_expression "PTR_s_courses_003a88ec + -0x288c" identifier + number_literal) , (binary_expression "PTR_s_courses_003a88ec + -0x269c" identifier + number_literal) , number_literal ))) ;) })) (expression_statement "unaff_s6 = (Image *)(*(code *)PTR_NewImageList_003a8e84)();" (assignment_expression "unaff_s6 = (Image *)(*(code *)PTR_NewImageList_003a8e84)()" identifier = (cast_expression "(Image *)(*(code *)PTR_NewImageList_003a8e84)()" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR_NewImageList_003a8e84)()" (parenthesized_expression "(*(code *)PTR_NewImageList_003a8e84)" ( (pointer_expression "*(code *)PTR_NewImageList_003a8e84" * (cast_expression "(code *)PTR_NewImageList_003a8e84" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))))) ;) (expression_statement "crop_image = unaff_s6;" (assignment_expression "crop_image = unaff_s6" identifier = identifier) ;) (expression_statement "uVar3 = (*(code *)PTR_ParseGravityGeometry_003a97fc)(image,crop_geometry,&geometry,exception);" (assignment_expression "uVar3 = (*(code *)PTR_ParseGravityGeometry_003a97fc)(image,crop_geometry,&geometry,exception)" identifier = (call_expression "(*(code *)PTR_ParseGravityGeometry_003a97fc)(image,crop_geometry,&geometry,exception)" (parenthesized_expression "(*(code *)PTR_ParseGravityGeometry_003a97fc)" ( (pointer_expression "*(code *)PTR_ParseGravityGeometry_003a97fc" * (cast_expression "(code *)PTR_ParseGravityGeometry_003a97fc" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(image,crop_geometry,&geometry,exception)" ( identifier , identifier , (pointer_expression "&geometry" & identifier) , identifier )))) ;) (expression_statement "unaff_s4 = geometry.height;" (assignment_expression "unaff_s4 = geometry.height" identifier = (field_expression "geometry.height" identifier . field_identifier)) ;) (expression_statement "unaff_s0 = (Image *)geometry.width;" (assignment_expression "unaff_s0 = (Image *)geometry.width" identifier = (cast_expression "(Image *)geometry.width" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "geometry.width" identifier . field_identifier))) ;) (expression_statement "unaff_s3 = (RectangleInfo *)PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;" (assignment_expression "unaff_s3 = (RectangleInfo *)PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8" identifier = (cast_expression "(RectangleInfo *)PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8" ( (type_descriptor "RectangleInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (if_statement "if ((int)(uVar3 << 0xe) < 0) {\n      sVar9 = image->rows;\n      if (geometry.width == 0) {\n        geometry.width = 1;\n        dVar37 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n      }\n      else {\n        dVar37 = (double)(int)geometry.width;\n        if ((int)geometry.width < 0) {\n          dVar37 = dVar37 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n      }\n      if (geometry.height == 0) {\n        dVar32 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n        geometry.height = 1;\n        if ((uVar3 & 0x2000) != 0) goto LAB_001c8e14;\nLAB_001c8484:\n        iVar10 = geometry.x;\n        if (geometry.x < 0) {\n          iVar10 = -geometry.x;\n        }\n        iVar10 = image->columns - iVar10;\n        iVar4 = geometry.y;\n        if (geometry.y < 0) {\n          iVar4 = -geometry.y;\n        }\n        iVar4 = sVar9 - iVar4;\n      }\n      else {\n        dVar32 = (double)(int)geometry.height;\n        if ((int)geometry.height < 0) {\n          dVar32 = dVar32 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n        if ((uVar3 & 0x2000) == 0) goto LAB_001c8484;\nLAB_001c8e14:\n        iVar10 = geometry.x;\n        if (geometry.x < 0) {\n          iVar10 = -geometry.x;\n        }\n        iVar10 = iVar10 + image->columns;\n        if (geometry.y < 0) {\n          iVar4 = sVar9 - geometry.y;\n        }\n        else {\n          iVar4 = geometry.y + sVar9;\n        }\n      }\n      unaff_s4 = uVar3 & 0x2000;\n      dVar36 = (double)iVar10;\n      if (iVar10 < 0) {\n        dVar36 = dVar36 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n      }\n      dVar37 = dVar36 / dVar37;\n      local_c8 = (double)iVar4;\n      if (iVar4 < 0) {\n        local_c8 = local_c8 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n      }\n      dVar27 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n      local_a0 = dVar27;\n      if (dVar37 < dVar27) {\n        local_a0 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n        dVar37 = dVar27;\n      }\n      if (local_a0 <= local_c8 / dVar32) {\n        local_a0 = local_c8 / dVar32;\n      }\n      dVar32 = 0.0;\n      unaff_s7 = (Image *)geometry.y;\n      if (0.0 < local_c8) {\n        dVar27 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4780);\n        dVar33 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4788);\n        if (unaff_s4 != 0) goto LAB_001c8b70;\nLAB_001c854c:\n        unaff_s7 = (Image *)geometry.y;\n        dVar34 = dVar32;\n        if (geometry.y < 1) {\n          dVar34 = dVar32 - (double)geometry.y;\n        }\n        dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar34);\n        dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar34);\n        if (dVar34 - dVar28 < dVar29 - dVar34) {\n          dVar28 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar25 = (code *)PTR_floor_003a9670;\n          if (dVar34 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d7c;\n        }\n        else {\n          if (dVar34 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d7c:\n            iVar10 = -0x7ffffdff;\n            goto joined_r0x001c8cbc;\n          }\n          dVar28 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar25 = (code *)PTR_ceil_003a8c20;\n        }\n        if (dVar28 < dVar34) {\n          iVar10 = 0x7ffffdff;\n        }\n        else {\n          dVar34 = (double)(*pcVar25)(dVar34);\n          iVar10 = (int)dVar34;\n        }\njoined_r0x001c8cbc:\n        dVar32 = dVar32 + local_a0;\n        if ((int)unaff_s7 < 0) {\n          dVar34 = 0.0;\n        }\n        else {\n          dVar34 = (double)(int)unaff_s7;\n        }\n        dVar34 = dVar32 + dVar34;\n        dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar34);\n        dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar34);\n        if (dVar34 - dVar28 < dVar29 - dVar34) {\n          if (*(double *)((int)unaff_s3 + 0x4780) <= dVar34) {\n            if (dVar34 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8630;\n            goto LAB_001c8cec;\n          }\n        }\n        else if (*(double *)((int)unaff_s3 + 0x4780) <= dVar34) {\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar34) goto LAB_001c8cec;\n          goto LAB_001c8d18;\n        }\nLAB_001c8c88:\n        iVar4 = -0x7ffffdff;\nLAB_001c8644:\n        do {\n          unaff_s8 = (Image **)(iVar4 - iVar10);\n          crop_geometry = (char *)((image->page).y + iVar10);\n          dVar34 = 0.0;\n          crop.height = (size_t)unaff_s8;\n          crop.y = (ssize_t)crop_geometry;\n          if (0.0 < dVar36) {\n            dVar28 = *(double *)((int)unaff_s3 + 0x4788);\n            unaff_s6 = (Image *)&crop;\n            dVar29 = *(double *)((int)unaff_s3 + 0x4780);\n            do {\n              unaff_s7 = (Image *)geometry.x;\n              if (unaff_s4 == 0) {\n                dVar35 = dVar34;\n                if (geometry.x < 1) {\n                  dVar35 = dVar34 - (double)geometry.x;\n                }\n                dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                if (dVar35 - dVar30 < dVar31 - dVar35) {\n                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar35) {\n                    pcVar25 = (code *)PTR_floor_003a9670;\n                    if (dVar35 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar10 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }\nLAB_001c8b04:\n                  dVar34 = dVar34 + dVar37;\n                  iVar10 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;\nLAB_001c8708:\n                  dVar35 = (double)(int)unaff_s7;\n                }\n                else {\n                  if (dVar35 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar25 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar35) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar35 = (double)(*pcVar25)(dVar35);\n                  iVar10 = (int)dVar35;\nLAB_001c8700:\n                  dVar34 = dVar34 + dVar37;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar35 = 0.0;\n                }\n                dVar35 = dVar34 + dVar35;\n                dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                if (dVar35 - dVar30 < dVar31 - dVar35) {\n                  if (dVar35 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar35) goto LAB_001c88b8;\nLAB_001c8768:\n                  dVar35 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                  iVar4 = (int)dVar35;\n                }\n                else {\n                  if (dVar35 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar35) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar35 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                  iVar4 = (int)dVar35;\n                }\n              }\n              else {\n                dVar35 = dVar34;\n                if (0 < geometry.x) {\n                  dVar35 = dVar34 - (double)geometry.x;\n                }\n                dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                if (dVar35 - dVar30 < dVar31 - dVar35) {\n                  if (dVar29 <= dVar35) {\n                    pcVar25 = (code *)PTR_floor_003a9670;\n                    if (dVar35 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar10 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar34 = dVar34 + dVar37;\n                  iVar10 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar35 = 0.0;\n                }\n                else {\n                  if (dVar35 < dVar29) goto LAB_001c8b24;\n                  pcVar25 = (code *)PTR_ceil_003a8c20;\n                  if (dVar28 < dVar35) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar35 = (double)(*pcVar25)(dVar35);\n                  iVar10 = (int)dVar35;\nLAB_001c8850:\n                  dVar34 = dVar34 + dVar37;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar35 = (double)(int)unaff_s7;\n                }\n                dVar35 = dVar34 + dVar35;\n                dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                if (dVar35 - dVar30 < dVar31 - dVar35) {\n                  if (dVar35 < dVar27) goto LAB_001c8a44;\n                  if (dVar35 <= dVar28) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar4 = 0x7ffffdff;\n                }\n                else if (dVar27 <= dVar35) {\n                  if (dVar35 <= dVar33) goto LAB_001c8abc;\n                  iVar4 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar4 = -0x7ffffdff;\n                }\n              }\n              unaff_s8 = (Image **)(iVar4 - iVar10);\n              crop_geometry = (char *)((image->page).x + iVar10);\n              crop.width = (size_t)unaff_s8;\n              crop.x = (ssize_t)crop_geometry;\n              iVar10 = (*(code *)PTR_CropImage_003a90b8)(image,unaff_s6,exception);\n              if (iVar10 != 0) {\n                (*(code *)PTR_AppendImageToList_003a9880)(&crop_image,iVar10);\n              }\n            } while (dVar34 < dVar36);\n          }\n          unaff_s5 = (undefined *)unaff_s3;\n          if (local_c8 <= dVar32) break;\n          if (unaff_s4 == 0) goto LAB_001c854c;\nLAB_001c8b70:\n          unaff_s7 = (Image *)geometry.y;\n          dVar34 = dVar32;\n          if (0 < geometry.y) {\n            dVar34 = dVar32 - (double)geometry.y;\n          }\n          dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar34);\n          dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar34);\n          if (dVar34 - dVar28 < dVar29 - dVar34) {\n            if (dVar34 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d8c;\n            pcVar25 = (code *)PTR_floor_003a9670;\n            if (*(double *)((int)unaff_s3 + 0x4788) < dVar34) goto LAB_001c8d50;\nLAB_001c8bd8:\n            dVar34 = (double)(*pcVar25)(dVar34);\n            iVar10 = (int)dVar34;\nLAB_001c8bf0:\n            dVar32 = dVar32 + local_a0;\n            if (-2 < (int)unaff_s7) goto LAB_001c8c00;\nLAB_001c8d6c:\n            dVar34 = (double)(int)unaff_s7;\n          }\n          else {\n            if (dVar34 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d8c:\n              iVar10 = -0x7ffffdff;\n              goto LAB_001c8bf0;\n            }\n            pcVar25 = (code *)PTR_ceil_003a8c20;\n            if (dVar34 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8bd8;\nLAB_001c8d50:\n            iVar10 = 0x7ffffdff;\n            dVar32 = dVar32 + local_a0;\n            if ((int)unaff_s7 < -1) goto LAB_001c8d6c;\nLAB_001c8c00:\n            dVar34 = 0.0;\n          }\n          dVar34 = dVar32 + dVar34;\n          dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar34);\n          dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar34);\n          if (dVar34 - dVar28 < dVar29 - dVar34) {\n            if (*(double *)((int)unaff_s3 + 0x4780) <= dVar34) {\n              if (*(double *)((int)unaff_s3 + 0x4788) < dVar34) {\nLAB_001c8cec:\n                iVar4 = 0x7ffffdff;\n              }\n              else {\nLAB_001c8630:\n                dVar34 = (double)(*(code *)PTR_floor_003a9670)(dVar34);\n                iVar4 = (int)dVar34;\n              }\n              goto LAB_001c8644;\n            }\n            goto LAB_001c8c88;\n          }\n          if (dVar34 < dVar27) goto LAB_001c8c88;\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar34) goto LAB_001c8cec;\nLAB_001c8d18:\n          dVar34 = (double)(*(code *)PTR_ceil_003a8c20)(dVar34);\n          iVar4 = (int)dVar34;\n        } while( true );\n      }\n      (*(code *)PTR_ClearMagickException_003a90f8)(exception);\n      pIVar11 = crop_image;\n      unaff_s0 = (Image *)crop_geometry;\n    }\n    else {\n      unaff_s3 = &geometry;\n      if (((geometry.width == 0) && (geometry.height == 0)) || ((uVar3 & 3) != 0)) {\n        crop_image = (Image *)(*(code *)PTR_CropImage_003a90b8)(image,&geometry,exception);\n        pIVar11 = crop_image;\n        unaff_s4 = uVar3;\n        if ((crop_image != (Image *)0x0) && (unaff_s4 = uVar3 & 0x2000, unaff_s4 != 0)) {\n          (crop_image->page).x = (crop_image->page).x - geometry.x;\n          (crop_image->page).y = (crop_image->page).y - geometry.y;\n          (crop_image->page).width = geometry.width;\n          (crop_image->page).height = geometry.height;\n        }\n      }\n      else {\n        unaff_s7 = (Image *)image->columns;\n        if ((geometry.width < unaff_s7) || (geometry.height < image->rows)) {\n          pIVar11 = (Image *)(image->page).width;\n          uVar3 = (image->page).height;\n          if (pIVar11 != (Image *)0x0) {\n            unaff_s7 = pIVar11;\n          }\n          if (uVar3 == 0) {\n            uVar3 = image->rows;\n          }\n          if (geometry.width == 0) {\n            unaff_s0 = unaff_s7;\n          }\n          if (geometry.height == 0) {\n            unaff_s4 = uVar3;\n          }\n          pIVar11 = crop_image;\n          if (0 < (int)uVar3) {\n            unaff_s3 = (RectangleInfo *)0x0;\n            unaff_s8 = &crop_image;\n            do {\n              unaff_s5 = (undefined *)0x0;\n              if ((int)unaff_s7 < 1) {\n                pIVar11 = crop_image;\n                if (unaff_s6 == (Image *)0x0) break;\n              }\n              else {\n                do {\n                  geometry.width = (size_t)unaff_s0;\n                  geometry.height = unaff_s4;\n                  geometry.x = (ssize_t)unaff_s5;\n                  geometry.y = (ssize_t)unaff_s3;\n                  unaff_s6 = (Image *)(*(code *)PTR_CropImage_003a90b8)(image,&geometry,exception);\n                  pIVar11 = crop_image;\n                  if (unaff_s6 == (Image *)0x0) goto LAB_001c8908;\n                  unaff_s5 = unaff_s5 + (int)unaff_s0;\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);\n              }\n              unaff_s3 = (RectangleInfo *)((int)&unaff_s3->width + unaff_s4);\n              pIVar11 = crop_image;\n            } while ((int)unaff_s3 < (int)uVar3);\n          }\n        }\n        else {\n          local_e8 = exception;\n          pIVar11 = (Image *)(*(code *)PTR_CloneImage_003a9830)(image,0,0,1);\n        }\n      }\n    }" if (parenthesized_expression "((int)(uVar3 << 0xe) < 0)" ( (binary_expression "(int)(uVar3 << 0xe) < 0" (cast_expression "(int)(uVar3 << 0xe)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(uVar3 << 0xe)" ( (binary_expression "uVar3 << 0xe" identifier << number_literal) ))) < number_literal) )) (compound_statement "{\n      sVar9 = image->rows;\n      if (geometry.width == 0) {\n        geometry.width = 1;\n        dVar37 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n      }\n      else {\n        dVar37 = (double)(int)geometry.width;\n        if ((int)geometry.width < 0) {\n          dVar37 = dVar37 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n      }\n      if (geometry.height == 0) {\n        dVar32 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n        geometry.height = 1;\n        if ((uVar3 & 0x2000) != 0) goto LAB_001c8e14;\nLAB_001c8484:\n        iVar10 = geometry.x;\n        if (geometry.x < 0) {\n          iVar10 = -geometry.x;\n        }\n        iVar10 = image->columns - iVar10;\n        iVar4 = geometry.y;\n        if (geometry.y < 0) {\n          iVar4 = -geometry.y;\n        }\n        iVar4 = sVar9 - iVar4;\n      }\n      else {\n        dVar32 = (double)(int)geometry.height;\n        if ((int)geometry.height < 0) {\n          dVar32 = dVar32 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n        if ((uVar3 & 0x2000) == 0) goto LAB_001c8484;\nLAB_001c8e14:\n        iVar10 = geometry.x;\n        if (geometry.x < 0) {\n          iVar10 = -geometry.x;\n        }\n        iVar10 = iVar10 + image->columns;\n        if (geometry.y < 0) {\n          iVar4 = sVar9 - geometry.y;\n        }\n        else {\n          iVar4 = geometry.y + sVar9;\n        }\n      }\n      unaff_s4 = uVar3 & 0x2000;\n      dVar36 = (double)iVar10;\n      if (iVar10 < 0) {\n        dVar36 = dVar36 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n      }\n      dVar37 = dVar36 / dVar37;\n      local_c8 = (double)iVar4;\n      if (iVar4 < 0) {\n        local_c8 = local_c8 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n      }\n      dVar27 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n      local_a0 = dVar27;\n      if (dVar37 < dVar27) {\n        local_a0 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n        dVar37 = dVar27;\n      }\n      if (local_a0 <= local_c8 / dVar32) {\n        local_a0 = local_c8 / dVar32;\n      }\n      dVar32 = 0.0;\n      unaff_s7 = (Image *)geometry.y;\n      if (0.0 < local_c8) {\n        dVar27 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4780);\n        dVar33 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4788);\n        if (unaff_s4 != 0) goto LAB_001c8b70;\nLAB_001c854c:\n        unaff_s7 = (Image *)geometry.y;\n        dVar34 = dVar32;\n        if (geometry.y < 1) {\n          dVar34 = dVar32 - (double)geometry.y;\n        }\n        dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar34);\n        dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar34);\n        if (dVar34 - dVar28 < dVar29 - dVar34) {\n          dVar28 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar25 = (code *)PTR_floor_003a9670;\n          if (dVar34 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d7c;\n        }\n        else {\n          if (dVar34 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d7c:\n            iVar10 = -0x7ffffdff;\n            goto joined_r0x001c8cbc;\n          }\n          dVar28 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar25 = (code *)PTR_ceil_003a8c20;\n        }\n        if (dVar28 < dVar34) {\n          iVar10 = 0x7ffffdff;\n        }\n        else {\n          dVar34 = (double)(*pcVar25)(dVar34);\n          iVar10 = (int)dVar34;\n        }\njoined_r0x001c8cbc:\n        dVar32 = dVar32 + local_a0;\n        if ((int)unaff_s7 < 0) {\n          dVar34 = 0.0;\n        }\n        else {\n          dVar34 = (double)(int)unaff_s7;\n        }\n        dVar34 = dVar32 + dVar34;\n        dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar34);\n        dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar34);\n        if (dVar34 - dVar28 < dVar29 - dVar34) {\n          if (*(double *)((int)unaff_s3 + 0x4780) <= dVar34) {\n            if (dVar34 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8630;\n            goto LAB_001c8cec;\n          }\n        }\n        else if (*(double *)((int)unaff_s3 + 0x4780) <= dVar34) {\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar34) goto LAB_001c8cec;\n          goto LAB_001c8d18;\n        }\nLAB_001c8c88:\n        iVar4 = -0x7ffffdff;\nLAB_001c8644:\n        do {\n          unaff_s8 = (Image **)(iVar4 - iVar10);\n          crop_geometry = (char *)((image->page).y + iVar10);\n          dVar34 = 0.0;\n          crop.height = (size_t)unaff_s8;\n          crop.y = (ssize_t)crop_geometry;\n          if (0.0 < dVar36) {\n            dVar28 = *(double *)((int)unaff_s3 + 0x4788);\n            unaff_s6 = (Image *)&crop;\n            dVar29 = *(double *)((int)unaff_s3 + 0x4780);\n            do {\n              unaff_s7 = (Image *)geometry.x;\n              if (unaff_s4 == 0) {\n                dVar35 = dVar34;\n                if (geometry.x < 1) {\n                  dVar35 = dVar34 - (double)geometry.x;\n                }\n                dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                if (dVar35 - dVar30 < dVar31 - dVar35) {\n                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar35) {\n                    pcVar25 = (code *)PTR_floor_003a9670;\n                    if (dVar35 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar10 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }\nLAB_001c8b04:\n                  dVar34 = dVar34 + dVar37;\n                  iVar10 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;\nLAB_001c8708:\n                  dVar35 = (double)(int)unaff_s7;\n                }\n                else {\n                  if (dVar35 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar25 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar35) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar35 = (double)(*pcVar25)(dVar35);\n                  iVar10 = (int)dVar35;\nLAB_001c8700:\n                  dVar34 = dVar34 + dVar37;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar35 = 0.0;\n                }\n                dVar35 = dVar34 + dVar35;\n                dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                if (dVar35 - dVar30 < dVar31 - dVar35) {\n                  if (dVar35 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar35) goto LAB_001c88b8;\nLAB_001c8768:\n                  dVar35 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                  iVar4 = (int)dVar35;\n                }\n                else {\n                  if (dVar35 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar35) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar35 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                  iVar4 = (int)dVar35;\n                }\n              }\n              else {\n                dVar35 = dVar34;\n                if (0 < geometry.x) {\n                  dVar35 = dVar34 - (double)geometry.x;\n                }\n                dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                if (dVar35 - dVar30 < dVar31 - dVar35) {\n                  if (dVar29 <= dVar35) {\n                    pcVar25 = (code *)PTR_floor_003a9670;\n                    if (dVar35 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar10 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar34 = dVar34 + dVar37;\n                  iVar10 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar35 = 0.0;\n                }\n                else {\n                  if (dVar35 < dVar29) goto LAB_001c8b24;\n                  pcVar25 = (code *)PTR_ceil_003a8c20;\n                  if (dVar28 < dVar35) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar35 = (double)(*pcVar25)(dVar35);\n                  iVar10 = (int)dVar35;\nLAB_001c8850:\n                  dVar34 = dVar34 + dVar37;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar35 = (double)(int)unaff_s7;\n                }\n                dVar35 = dVar34 + dVar35;\n                dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                if (dVar35 - dVar30 < dVar31 - dVar35) {\n                  if (dVar35 < dVar27) goto LAB_001c8a44;\n                  if (dVar35 <= dVar28) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar4 = 0x7ffffdff;\n                }\n                else if (dVar27 <= dVar35) {\n                  if (dVar35 <= dVar33) goto LAB_001c8abc;\n                  iVar4 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar4 = -0x7ffffdff;\n                }\n              }\n              unaff_s8 = (Image **)(iVar4 - iVar10);\n              crop_geometry = (char *)((image->page).x + iVar10);\n              crop.width = (size_t)unaff_s8;\n              crop.x = (ssize_t)crop_geometry;\n              iVar10 = (*(code *)PTR_CropImage_003a90b8)(image,unaff_s6,exception);\n              if (iVar10 != 0) {\n                (*(code *)PTR_AppendImageToList_003a9880)(&crop_image,iVar10);\n              }\n            } while (dVar34 < dVar36);\n          }\n          unaff_s5 = (undefined *)unaff_s3;\n          if (local_c8 <= dVar32) break;\n          if (unaff_s4 == 0) goto LAB_001c854c;\nLAB_001c8b70:\n          unaff_s7 = (Image *)geometry.y;\n          dVar34 = dVar32;\n          if (0 < geometry.y) {\n            dVar34 = dVar32 - (double)geometry.y;\n          }\n          dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar34);\n          dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar34);\n          if (dVar34 - dVar28 < dVar29 - dVar34) {\n            if (dVar34 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d8c;\n            pcVar25 = (code *)PTR_floor_003a9670;\n            if (*(double *)((int)unaff_s3 + 0x4788) < dVar34) goto LAB_001c8d50;\nLAB_001c8bd8:\n            dVar34 = (double)(*pcVar25)(dVar34);\n            iVar10 = (int)dVar34;\nLAB_001c8bf0:\n            dVar32 = dVar32 + local_a0;\n            if (-2 < (int)unaff_s7) goto LAB_001c8c00;\nLAB_001c8d6c:\n            dVar34 = (double)(int)unaff_s7;\n          }\n          else {\n            if (dVar34 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d8c:\n              iVar10 = -0x7ffffdff;\n              goto LAB_001c8bf0;\n            }\n            pcVar25 = (code *)PTR_ceil_003a8c20;\n            if (dVar34 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8bd8;\nLAB_001c8d50:\n            iVar10 = 0x7ffffdff;\n            dVar32 = dVar32 + local_a0;\n            if ((int)unaff_s7 < -1) goto LAB_001c8d6c;\nLAB_001c8c00:\n            dVar34 = 0.0;\n          }\n          dVar34 = dVar32 + dVar34;\n          dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar34);\n          dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar34);\n          if (dVar34 - dVar28 < dVar29 - dVar34) {\n            if (*(double *)((int)unaff_s3 + 0x4780) <= dVar34) {\n              if (*(double *)((int)unaff_s3 + 0x4788) < dVar34) {\nLAB_001c8cec:\n                iVar4 = 0x7ffffdff;\n              }\n              else {\nLAB_001c8630:\n                dVar34 = (double)(*(code *)PTR_floor_003a9670)(dVar34);\n                iVar4 = (int)dVar34;\n              }\n              goto LAB_001c8644;\n            }\n            goto LAB_001c8c88;\n          }\n          if (dVar34 < dVar27) goto LAB_001c8c88;\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar34) goto LAB_001c8cec;\nLAB_001c8d18:\n          dVar34 = (double)(*(code *)PTR_ceil_003a8c20)(dVar34);\n          iVar4 = (int)dVar34;\n        } while( true );\n      }\n      (*(code *)PTR_ClearMagickException_003a90f8)(exception);\n      pIVar11 = crop_image;\n      unaff_s0 = (Image *)crop_geometry;\n    }" { (expression_statement "sVar9 = image->rows;" (assignment_expression "sVar9 = image->rows" identifier = (field_expression "image->rows" identifier -> field_identifier)) ;) (if_statement "if (geometry.width == 0) {\n        geometry.width = 1;\n        dVar37 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n      }\n      else {\n        dVar37 = (double)(int)geometry.width;\n        if ((int)geometry.width < 0) {\n          dVar37 = dVar37 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n      }" if (parenthesized_expression "(geometry.width == 0)" ( (binary_expression "geometry.width == 0" (field_expression "geometry.width" identifier . field_identifier) == number_literal) )) (compound_statement "{\n        geometry.width = 1;\n        dVar37 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n      }" { (expression_statement "geometry.width = 1;" (assignment_expression "geometry.width = 1" (field_expression "geometry.width" identifier . field_identifier) = number_literal) ;) (expression_statement "dVar37 = *(double *)(PTR_LAB_003a88e0 + 0x1438);" (assignment_expression "dVar37 = *(double *)(PTR_LAB_003a88e0 + 0x1438)" identifier = (pointer_expression "*(double *)(PTR_LAB_003a88e0 + 0x1438)" * (cast_expression "(double *)(PTR_LAB_003a88e0 + 0x1438)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_003a88e0 + 0x1438)" ( (binary_expression "PTR_LAB_003a88e0 + 0x1438" identifier + number_literal) ))))) ;) }) (else_clause "else {\n        dVar37 = (double)(int)geometry.width;\n        if ((int)geometry.width < 0) {\n          dVar37 = dVar37 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n      }" else (compound_statement "{\n        dVar37 = (double)(int)geometry.width;\n        if ((int)geometry.width < 0) {\n          dVar37 = dVar37 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n      }" { (expression_statement "dVar37 = (double)(int)geometry.width;" (assignment_expression "dVar37 = (double)(int)geometry.width" identifier = (cast_expression "(double)(int)geometry.width" ( (type_descriptor "double" primitive_type) ) (cast_expression "(int)geometry.width" ( (type_descriptor "int" primitive_type) ) (field_expression "geometry.width" identifier . field_identifier)))) ;) (if_statement "if ((int)geometry.width < 0) {\n          dVar37 = dVar37 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }" if (parenthesized_expression "((int)geometry.width < 0)" ( (binary_expression "(int)geometry.width < 0" (cast_expression "(int)geometry.width" ( (type_descriptor "int" primitive_type) ) (field_expression "geometry.width" identifier . field_identifier)) < number_literal) )) (compound_statement "{\n          dVar37 = dVar37 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }" { (expression_statement "dVar37 = dVar37 + *(double *)(PTR_LAB_003a88e0 + 0x1418);" (assignment_expression "dVar37 = dVar37 + *(double *)(PTR_LAB_003a88e0 + 0x1418)" identifier = (binary_expression "dVar37 + *(double *)(PTR_LAB_003a88e0 + 0x1418)" identifier + (pointer_expression "*(double *)(PTR_LAB_003a88e0 + 0x1418)" * (cast_expression "(double *)(PTR_LAB_003a88e0 + 0x1418)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_003a88e0 + 0x1418)" ( (binary_expression "PTR_LAB_003a88e0 + 0x1418" identifier + number_literal) )))))) ;) })) }))) (if_statement "if (geometry.height == 0) {\n        dVar32 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n        geometry.height = 1;\n        if ((uVar3 & 0x2000) != 0) goto LAB_001c8e14;\nLAB_001c8484:\n        iVar10 = geometry.x;\n        if (geometry.x < 0) {\n          iVar10 = -geometry.x;\n        }\n        iVar10 = image->columns - iVar10;\n        iVar4 = geometry.y;\n        if (geometry.y < 0) {\n          iVar4 = -geometry.y;\n        }\n        iVar4 = sVar9 - iVar4;\n      }\n      else {\n        dVar32 = (double)(int)geometry.height;\n        if ((int)geometry.height < 0) {\n          dVar32 = dVar32 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n        if ((uVar3 & 0x2000) == 0) goto LAB_001c8484;\nLAB_001c8e14:\n        iVar10 = geometry.x;\n        if (geometry.x < 0) {\n          iVar10 = -geometry.x;\n        }\n        iVar10 = iVar10 + image->columns;\n        if (geometry.y < 0) {\n          iVar4 = sVar9 - geometry.y;\n        }\n        else {\n          iVar4 = geometry.y + sVar9;\n        }\n      }" if (parenthesized_expression "(geometry.height == 0)" ( (binary_expression "geometry.height == 0" (field_expression "geometry.height" identifier . field_identifier) == number_literal) )) (compound_statement "{\n        dVar32 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n        geometry.height = 1;\n        if ((uVar3 & 0x2000) != 0) goto LAB_001c8e14;\nLAB_001c8484:\n        iVar10 = geometry.x;\n        if (geometry.x < 0) {\n          iVar10 = -geometry.x;\n        }\n        iVar10 = image->columns - iVar10;\n        iVar4 = geometry.y;\n        if (geometry.y < 0) {\n          iVar4 = -geometry.y;\n        }\n        iVar4 = sVar9 - iVar4;\n      }" { (expression_statement "dVar32 = *(double *)(PTR_LAB_003a88e0 + 0x1438);" (assignment_expression "dVar32 = *(double *)(PTR_LAB_003a88e0 + 0x1438)" identifier = (pointer_expression "*(double *)(PTR_LAB_003a88e0 + 0x1438)" * (cast_expression "(double *)(PTR_LAB_003a88e0 + 0x1438)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_003a88e0 + 0x1438)" ( (binary_expression "PTR_LAB_003a88e0 + 0x1438" identifier + number_literal) ))))) ;) (expression_statement "geometry.height = 1;" (assignment_expression "geometry.height = 1" (field_expression "geometry.height" identifier . field_identifier) = number_literal) ;) (if_statement "if ((uVar3 & 0x2000) != 0) goto LAB_001c8e14;" if (parenthesized_expression "((uVar3 & 0x2000) != 0)" ( (binary_expression "(uVar3 & 0x2000) != 0" (parenthesized_expression "(uVar3 & 0x2000)" ( (binary_expression "uVar3 & 0x2000" identifier & number_literal) )) != number_literal) )) (goto_statement "goto LAB_001c8e14;" goto statement_identifier ;)) (labeled_statement "LAB_001c8484:\n        iVar10 = geometry.x;" statement_identifier : (expression_statement "iVar10 = geometry.x;" (assignment_expression "iVar10 = geometry.x" identifier = (field_expression "geometry.x" identifier . field_identifier)) ;)) (if_statement "if (geometry.x < 0) {\n          iVar10 = -geometry.x;\n        }" if (parenthesized_expression "(geometry.x < 0)" ( (binary_expression "geometry.x < 0" (field_expression "geometry.x" identifier . field_identifier) < number_literal) )) (compound_statement "{\n          iVar10 = -geometry.x;\n        }" { (expression_statement "iVar10 = -geometry.x;" (assignment_expression "iVar10 = -geometry.x" identifier = (unary_expression "-geometry.x" - (field_expression "geometry.x" identifier . field_identifier))) ;) })) (expression_statement "iVar10 = image->columns - iVar10;" (assignment_expression "iVar10 = image->columns - iVar10" identifier = (binary_expression "image->columns - iVar10" (field_expression "image->columns" identifier -> field_identifier) - identifier)) ;) (expression_statement "iVar4 = geometry.y;" (assignment_expression "iVar4 = geometry.y" identifier = (field_expression "geometry.y" identifier . field_identifier)) ;) (if_statement "if (geometry.y < 0) {\n          iVar4 = -geometry.y;\n        }" if (parenthesized_expression "(geometry.y < 0)" ( (binary_expression "geometry.y < 0" (field_expression "geometry.y" identifier . field_identifier) < number_literal) )) (compound_statement "{\n          iVar4 = -geometry.y;\n        }" { (expression_statement "iVar4 = -geometry.y;" (assignment_expression "iVar4 = -geometry.y" identifier = (unary_expression "-geometry.y" - (field_expression "geometry.y" identifier . field_identifier))) ;) })) (expression_statement "iVar4 = sVar9 - iVar4;" (assignment_expression "iVar4 = sVar9 - iVar4" identifier = (binary_expression "sVar9 - iVar4" identifier - identifier)) ;) }) (else_clause "else {\n        dVar32 = (double)(int)geometry.height;\n        if ((int)geometry.height < 0) {\n          dVar32 = dVar32 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n        if ((uVar3 & 0x2000) == 0) goto LAB_001c8484;\nLAB_001c8e14:\n        iVar10 = geometry.x;\n        if (geometry.x < 0) {\n          iVar10 = -geometry.x;\n        }\n        iVar10 = iVar10 + image->columns;\n        if (geometry.y < 0) {\n          iVar4 = sVar9 - geometry.y;\n        }\n        else {\n          iVar4 = geometry.y + sVar9;\n        }\n      }" else (compound_statement "{\n        dVar32 = (double)(int)geometry.height;\n        if ((int)geometry.height < 0) {\n          dVar32 = dVar32 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n        if ((uVar3 & 0x2000) == 0) goto LAB_001c8484;\nLAB_001c8e14:\n        iVar10 = geometry.x;\n        if (geometry.x < 0) {\n          iVar10 = -geometry.x;\n        }\n        iVar10 = iVar10 + image->columns;\n        if (geometry.y < 0) {\n          iVar4 = sVar9 - geometry.y;\n        }\n        else {\n          iVar4 = geometry.y + sVar9;\n        }\n      }" { (expression_statement "dVar32 = (double)(int)geometry.height;" (assignment_expression "dVar32 = (double)(int)geometry.height" identifier = (cast_expression "(double)(int)geometry.height" ( (type_descriptor "double" primitive_type) ) (cast_expression "(int)geometry.height" ( (type_descriptor "int" primitive_type) ) (field_expression "geometry.height" identifier . field_identifier)))) ;) (if_statement "if ((int)geometry.height < 0) {\n          dVar32 = dVar32 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }" if (parenthesized_expression "((int)geometry.height < 0)" ( (binary_expression "(int)geometry.height < 0" (cast_expression "(int)geometry.height" ( (type_descriptor "int" primitive_type) ) (field_expression "geometry.height" identifier . field_identifier)) < number_literal) )) (compound_statement "{\n          dVar32 = dVar32 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }" { (expression_statement "dVar32 = dVar32 + *(double *)(PTR_LAB_003a88e0 + 0x1418);" (assignment_expression "dVar32 = dVar32 + *(double *)(PTR_LAB_003a88e0 + 0x1418)" identifier = (binary_expression "dVar32 + *(double *)(PTR_LAB_003a88e0 + 0x1418)" identifier + (pointer_expression "*(double *)(PTR_LAB_003a88e0 + 0x1418)" * (cast_expression "(double *)(PTR_LAB_003a88e0 + 0x1418)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_003a88e0 + 0x1418)" ( (binary_expression "PTR_LAB_003a88e0 + 0x1418" identifier + number_literal) )))))) ;) })) (if_statement "if ((uVar3 & 0x2000) == 0) goto LAB_001c8484;" if (parenthesized_expression "((uVar3 & 0x2000) == 0)" ( (binary_expression "(uVar3 & 0x2000) == 0" (parenthesized_expression "(uVar3 & 0x2000)" ( (binary_expression "uVar3 & 0x2000" identifier & number_literal) )) == number_literal) )) (goto_statement "goto LAB_001c8484;" goto statement_identifier ;)) (labeled_statement "LAB_001c8e14:\n        iVar10 = geometry.x;" statement_identifier : (expression_statement "iVar10 = geometry.x;" (assignment_expression "iVar10 = geometry.x" identifier = (field_expression "geometry.x" identifier . field_identifier)) ;)) (if_statement "if (geometry.x < 0) {\n          iVar10 = -geometry.x;\n        }" if (parenthesized_expression "(geometry.x < 0)" ( (binary_expression "geometry.x < 0" (field_expression "geometry.x" identifier . field_identifier) < number_literal) )) (compound_statement "{\n          iVar10 = -geometry.x;\n        }" { (expression_statement "iVar10 = -geometry.x;" (assignment_expression "iVar10 = -geometry.x" identifier = (unary_expression "-geometry.x" - (field_expression "geometry.x" identifier . field_identifier))) ;) })) (expression_statement "iVar10 = iVar10 + image->columns;" (assignment_expression "iVar10 = iVar10 + image->columns" identifier = (binary_expression "iVar10 + image->columns" identifier + (field_expression "image->columns" identifier -> field_identifier))) ;) (if_statement "if (geometry.y < 0) {\n          iVar4 = sVar9 - geometry.y;\n        }\n        else {\n          iVar4 = geometry.y + sVar9;\n        }" if (parenthesized_expression "(geometry.y < 0)" ( (binary_expression "geometry.y < 0" (field_expression "geometry.y" identifier . field_identifier) < number_literal) )) (compound_statement "{\n          iVar4 = sVar9 - geometry.y;\n        }" { (expression_statement "iVar4 = sVar9 - geometry.y;" (assignment_expression "iVar4 = sVar9 - geometry.y" identifier = (binary_expression "sVar9 - geometry.y" identifier - (field_expression "geometry.y" identifier . field_identifier))) ;) }) (else_clause "else {\n          iVar4 = geometry.y + sVar9;\n        }" else (compound_statement "{\n          iVar4 = geometry.y + sVar9;\n        }" { (expression_statement "iVar4 = geometry.y + sVar9;" (assignment_expression "iVar4 = geometry.y + sVar9" identifier = (binary_expression "geometry.y + sVar9" (field_expression "geometry.y" identifier . field_identifier) + identifier)) ;) }))) }))) (expression_statement "unaff_s4 = uVar3 & 0x2000;" (assignment_expression "unaff_s4 = uVar3 & 0x2000" identifier = (binary_expression "uVar3 & 0x2000" identifier & number_literal)) ;) (expression_statement "dVar36 = (double)iVar10;" (assignment_expression "dVar36 = (double)iVar10" identifier = (cast_expression "(double)iVar10" ( (type_descriptor "double" primitive_type) ) identifier)) ;) (if_statement "if (iVar10 < 0) {\n        dVar36 = dVar36 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n      }" if (parenthesized_expression "(iVar10 < 0)" ( (binary_expression "iVar10 < 0" identifier < number_literal) )) (compound_statement "{\n        dVar36 = dVar36 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n      }" { (expression_statement "dVar36 = dVar36 + *(double *)(PTR_LAB_003a88e0 + 0x1418);" (assignment_expression "dVar36 = dVar36 + *(double *)(PTR_LAB_003a88e0 + 0x1418)" identifier = (binary_expression "dVar36 + *(double *)(PTR_LAB_003a88e0 + 0x1418)" identifier + (pointer_expression "*(double *)(PTR_LAB_003a88e0 + 0x1418)" * (cast_expression "(double *)(PTR_LAB_003a88e0 + 0x1418)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_003a88e0 + 0x1418)" ( (binary_expression "PTR_LAB_003a88e0 + 0x1418" identifier + number_literal) )))))) ;) })) (expression_statement "dVar37 = dVar36 / dVar37;" (assignment_expression "dVar37 = dVar36 / dVar37" identifier = (binary_expression "dVar36 / dVar37" identifier / identifier)) ;) (expression_statement "local_c8 = (double)iVar4;" (assignment_expression "local_c8 = (double)iVar4" identifier = (cast_expression "(double)iVar4" ( (type_descriptor "double" primitive_type) ) identifier)) ;) (if_statement "if (iVar4 < 0) {\n        local_c8 = local_c8 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n      }" if (parenthesized_expression "(iVar4 < 0)" ( (binary_expression "iVar4 < 0" identifier < number_literal) )) (compound_statement "{\n        local_c8 = local_c8 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n      }" { (expression_statement "local_c8 = local_c8 + *(double *)(PTR_LAB_003a88e0 + 0x1418);" (assignment_expression "local_c8 = local_c8 + *(double *)(PTR_LAB_003a88e0 + 0x1418)" identifier = (binary_expression "local_c8 + *(double *)(PTR_LAB_003a88e0 + 0x1418)" identifier + (pointer_expression "*(double *)(PTR_LAB_003a88e0 + 0x1418)" * (cast_expression "(double *)(PTR_LAB_003a88e0 + 0x1418)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_003a88e0 + 0x1418)" ( (binary_expression "PTR_LAB_003a88e0 + 0x1418" identifier + number_literal) )))))) ;) })) (expression_statement "dVar27 = *(double *)(PTR_LAB_003a88e0 + 0x1438);" (assignment_expression "dVar27 = *(double *)(PTR_LAB_003a88e0 + 0x1438)" identifier = (pointer_expression "*(double *)(PTR_LAB_003a88e0 + 0x1438)" * (cast_expression "(double *)(PTR_LAB_003a88e0 + 0x1438)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_003a88e0 + 0x1438)" ( (binary_expression "PTR_LAB_003a88e0 + 0x1438" identifier + number_literal) ))))) ;) (expression_statement "local_a0 = dVar27;" (assignment_expression "local_a0 = dVar27" identifier = identifier) ;) (if_statement "if (dVar37 < dVar27) {\n        local_a0 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n        dVar37 = dVar27;\n      }" if (parenthesized_expression "(dVar37 < dVar27)" ( (binary_expression "dVar37 < dVar27" identifier < identifier) )) (compound_statement "{\n        local_a0 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n        dVar37 = dVar27;\n      }" { (expression_statement "local_a0 = *(double *)(PTR_LAB_003a88e0 + 0x1438);" (assignment_expression "local_a0 = *(double *)(PTR_LAB_003a88e0 + 0x1438)" identifier = (pointer_expression "*(double *)(PTR_LAB_003a88e0 + 0x1438)" * (cast_expression "(double *)(PTR_LAB_003a88e0 + 0x1438)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_003a88e0 + 0x1438)" ( (binary_expression "PTR_LAB_003a88e0 + 0x1438" identifier + number_literal) ))))) ;) (expression_statement "dVar37 = dVar27;" (assignment_expression "dVar37 = dVar27" identifier = identifier) ;) })) (if_statement "if (local_a0 <= local_c8 / dVar32) {\n        local_a0 = local_c8 / dVar32;\n      }" if (parenthesized_expression "(local_a0 <= local_c8 / dVar32)" ( (binary_expression "local_a0 <= local_c8 / dVar32" identifier <= (binary_expression "local_c8 / dVar32" identifier / identifier)) )) (compound_statement "{\n        local_a0 = local_c8 / dVar32;\n      }" { (expression_statement "local_a0 = local_c8 / dVar32;" (assignment_expression "local_a0 = local_c8 / dVar32" identifier = (binary_expression "local_c8 / dVar32" identifier / identifier)) ;) })) (expression_statement "dVar32 = 0.0;" (assignment_expression "dVar32 = 0.0" identifier = number_literal) ;) (expression_statement "unaff_s7 = (Image *)geometry.y;" (assignment_expression "unaff_s7 = (Image *)geometry.y" identifier = (cast_expression "(Image *)geometry.y" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "geometry.y" identifier . field_identifier))) ;) (if_statement "if (0.0 < local_c8) {\n        dVar27 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4780);\n        dVar33 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4788);\n        if (unaff_s4 != 0) goto LAB_001c8b70;\nLAB_001c854c:\n        unaff_s7 = (Image *)geometry.y;\n        dVar34 = dVar32;\n        if (geometry.y < 1) {\n          dVar34 = dVar32 - (double)geometry.y;\n        }\n        dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar34);\n        dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar34);\n        if (dVar34 - dVar28 < dVar29 - dVar34) {\n          dVar28 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar25 = (code *)PTR_floor_003a9670;\n          if (dVar34 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d7c;\n        }\n        else {\n          if (dVar34 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d7c:\n            iVar10 = -0x7ffffdff;\n            goto joined_r0x001c8cbc;\n          }\n          dVar28 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar25 = (code *)PTR_ceil_003a8c20;\n        }\n        if (dVar28 < dVar34) {\n          iVar10 = 0x7ffffdff;\n        }\n        else {\n          dVar34 = (double)(*pcVar25)(dVar34);\n          iVar10 = (int)dVar34;\n        }\njoined_r0x001c8cbc:\n        dVar32 = dVar32 + local_a0;\n        if ((int)unaff_s7 < 0) {\n          dVar34 = 0.0;\n        }\n        else {\n          dVar34 = (double)(int)unaff_s7;\n        }\n        dVar34 = dVar32 + dVar34;\n        dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar34);\n        dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar34);\n        if (dVar34 - dVar28 < dVar29 - dVar34) {\n          if (*(double *)((int)unaff_s3 + 0x4780) <= dVar34) {\n            if (dVar34 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8630;\n            goto LAB_001c8cec;\n          }\n        }\n        else if (*(double *)((int)unaff_s3 + 0x4780) <= dVar34) {\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar34) goto LAB_001c8cec;\n          goto LAB_001c8d18;\n        }\nLAB_001c8c88:\n        iVar4 = -0x7ffffdff;\nLAB_001c8644:\n        do {\n          unaff_s8 = (Image **)(iVar4 - iVar10);\n          crop_geometry = (char *)((image->page).y + iVar10);\n          dVar34 = 0.0;\n          crop.height = (size_t)unaff_s8;\n          crop.y = (ssize_t)crop_geometry;\n          if (0.0 < dVar36) {\n            dVar28 = *(double *)((int)unaff_s3 + 0x4788);\n            unaff_s6 = (Image *)&crop;\n            dVar29 = *(double *)((int)unaff_s3 + 0x4780);\n            do {\n              unaff_s7 = (Image *)geometry.x;\n              if (unaff_s4 == 0) {\n                dVar35 = dVar34;\n                if (geometry.x < 1) {\n                  dVar35 = dVar34 - (double)geometry.x;\n                }\n                dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                if (dVar35 - dVar30 < dVar31 - dVar35) {\n                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar35) {\n                    pcVar25 = (code *)PTR_floor_003a9670;\n                    if (dVar35 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar10 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }\nLAB_001c8b04:\n                  dVar34 = dVar34 + dVar37;\n                  iVar10 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;\nLAB_001c8708:\n                  dVar35 = (double)(int)unaff_s7;\n                }\n                else {\n                  if (dVar35 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar25 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar35) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar35 = (double)(*pcVar25)(dVar35);\n                  iVar10 = (int)dVar35;\nLAB_001c8700:\n                  dVar34 = dVar34 + dVar37;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar35 = 0.0;\n                }\n                dVar35 = dVar34 + dVar35;\n                dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                if (dVar35 - dVar30 < dVar31 - dVar35) {\n                  if (dVar35 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar35) goto LAB_001c88b8;\nLAB_001c8768:\n                  dVar35 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                  iVar4 = (int)dVar35;\n                }\n                else {\n                  if (dVar35 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar35) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar35 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                  iVar4 = (int)dVar35;\n                }\n              }\n              else {\n                dVar35 = dVar34;\n                if (0 < geometry.x) {\n                  dVar35 = dVar34 - (double)geometry.x;\n                }\n                dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                if (dVar35 - dVar30 < dVar31 - dVar35) {\n                  if (dVar29 <= dVar35) {\n                    pcVar25 = (code *)PTR_floor_003a9670;\n                    if (dVar35 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar10 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar34 = dVar34 + dVar37;\n                  iVar10 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar35 = 0.0;\n                }\n                else {\n                  if (dVar35 < dVar29) goto LAB_001c8b24;\n                  pcVar25 = (code *)PTR_ceil_003a8c20;\n                  if (dVar28 < dVar35) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar35 = (double)(*pcVar25)(dVar35);\n                  iVar10 = (int)dVar35;\nLAB_001c8850:\n                  dVar34 = dVar34 + dVar37;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar35 = (double)(int)unaff_s7;\n                }\n                dVar35 = dVar34 + dVar35;\n                dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                if (dVar35 - dVar30 < dVar31 - dVar35) {\n                  if (dVar35 < dVar27) goto LAB_001c8a44;\n                  if (dVar35 <= dVar28) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar4 = 0x7ffffdff;\n                }\n                else if (dVar27 <= dVar35) {\n                  if (dVar35 <= dVar33) goto LAB_001c8abc;\n                  iVar4 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar4 = -0x7ffffdff;\n                }\n              }\n              unaff_s8 = (Image **)(iVar4 - iVar10);\n              crop_geometry = (char *)((image->page).x + iVar10);\n              crop.width = (size_t)unaff_s8;\n              crop.x = (ssize_t)crop_geometry;\n              iVar10 = (*(code *)PTR_CropImage_003a90b8)(image,unaff_s6,exception);\n              if (iVar10 != 0) {\n                (*(code *)PTR_AppendImageToList_003a9880)(&crop_image,iVar10);\n              }\n            } while (dVar34 < dVar36);\n          }\n          unaff_s5 = (undefined *)unaff_s3;\n          if (local_c8 <= dVar32) break;\n          if (unaff_s4 == 0) goto LAB_001c854c;\nLAB_001c8b70:\n          unaff_s7 = (Image *)geometry.y;\n          dVar34 = dVar32;\n          if (0 < geometry.y) {\n            dVar34 = dVar32 - (double)geometry.y;\n          }\n          dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar34);\n          dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar34);\n          if (dVar34 - dVar28 < dVar29 - dVar34) {\n            if (dVar34 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d8c;\n            pcVar25 = (code *)PTR_floor_003a9670;\n            if (*(double *)((int)unaff_s3 + 0x4788) < dVar34) goto LAB_001c8d50;\nLAB_001c8bd8:\n            dVar34 = (double)(*pcVar25)(dVar34);\n            iVar10 = (int)dVar34;\nLAB_001c8bf0:\n            dVar32 = dVar32 + local_a0;\n            if (-2 < (int)unaff_s7) goto LAB_001c8c00;\nLAB_001c8d6c:\n            dVar34 = (double)(int)unaff_s7;\n          }\n          else {\n            if (dVar34 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d8c:\n              iVar10 = -0x7ffffdff;\n              goto LAB_001c8bf0;\n            }\n            pcVar25 = (code *)PTR_ceil_003a8c20;\n            if (dVar34 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8bd8;\nLAB_001c8d50:\n            iVar10 = 0x7ffffdff;\n            dVar32 = dVar32 + local_a0;\n            if ((int)unaff_s7 < -1) goto LAB_001c8d6c;\nLAB_001c8c00:\n            dVar34 = 0.0;\n          }\n          dVar34 = dVar32 + dVar34;\n          dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar34);\n          dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar34);\n          if (dVar34 - dVar28 < dVar29 - dVar34) {\n            if (*(double *)((int)unaff_s3 + 0x4780) <= dVar34) {\n              if (*(double *)((int)unaff_s3 + 0x4788) < dVar34) {\nLAB_001c8cec:\n                iVar4 = 0x7ffffdff;\n              }\n              else {\nLAB_001c8630:\n                dVar34 = (double)(*(code *)PTR_floor_003a9670)(dVar34);\n                iVar4 = (int)dVar34;\n              }\n              goto LAB_001c8644;\n            }\n            goto LAB_001c8c88;\n          }\n          if (dVar34 < dVar27) goto LAB_001c8c88;\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar34) goto LAB_001c8cec;\nLAB_001c8d18:\n          dVar34 = (double)(*(code *)PTR_ceil_003a8c20)(dVar34);\n          iVar4 = (int)dVar34;\n        } while( true );\n      }" if (parenthesized_expression "(0.0 < local_c8)" ( (binary_expression "0.0 < local_c8" number_literal < identifier) )) (compound_statement "{\n        dVar27 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4780);\n        dVar33 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4788);\n        if (unaff_s4 != 0) goto LAB_001c8b70;\nLAB_001c854c:\n        unaff_s7 = (Image *)geometry.y;\n        dVar34 = dVar32;\n        if (geometry.y < 1) {\n          dVar34 = dVar32 - (double)geometry.y;\n        }\n        dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar34);\n        dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar34);\n        if (dVar34 - dVar28 < dVar29 - dVar34) {\n          dVar28 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar25 = (code *)PTR_floor_003a9670;\n          if (dVar34 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d7c;\n        }\n        else {\n          if (dVar34 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d7c:\n            iVar10 = -0x7ffffdff;\n            goto joined_r0x001c8cbc;\n          }\n          dVar28 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar25 = (code *)PTR_ceil_003a8c20;\n        }\n        if (dVar28 < dVar34) {\n          iVar10 = 0x7ffffdff;\n        }\n        else {\n          dVar34 = (double)(*pcVar25)(dVar34);\n          iVar10 = (int)dVar34;\n        }\njoined_r0x001c8cbc:\n        dVar32 = dVar32 + local_a0;\n        if ((int)unaff_s7 < 0) {\n          dVar34 = 0.0;\n        }\n        else {\n          dVar34 = (double)(int)unaff_s7;\n        }\n        dVar34 = dVar32 + dVar34;\n        dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar34);\n        dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar34);\n        if (dVar34 - dVar28 < dVar29 - dVar34) {\n          if (*(double *)((int)unaff_s3 + 0x4780) <= dVar34) {\n            if (dVar34 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8630;\n            goto LAB_001c8cec;\n          }\n        }\n        else if (*(double *)((int)unaff_s3 + 0x4780) <= dVar34) {\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar34) goto LAB_001c8cec;\n          goto LAB_001c8d18;\n        }\nLAB_001c8c88:\n        iVar4 = -0x7ffffdff;\nLAB_001c8644:\n        do {\n          unaff_s8 = (Image **)(iVar4 - iVar10);\n          crop_geometry = (char *)((image->page).y + iVar10);\n          dVar34 = 0.0;\n          crop.height = (size_t)unaff_s8;\n          crop.y = (ssize_t)crop_geometry;\n          if (0.0 < dVar36) {\n            dVar28 = *(double *)((int)unaff_s3 + 0x4788);\n            unaff_s6 = (Image *)&crop;\n            dVar29 = *(double *)((int)unaff_s3 + 0x4780);\n            do {\n              unaff_s7 = (Image *)geometry.x;\n              if (unaff_s4 == 0) {\n                dVar35 = dVar34;\n                if (geometry.x < 1) {\n                  dVar35 = dVar34 - (double)geometry.x;\n                }\n                dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                if (dVar35 - dVar30 < dVar31 - dVar35) {\n                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar35) {\n                    pcVar25 = (code *)PTR_floor_003a9670;\n                    if (dVar35 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar10 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }\nLAB_001c8b04:\n                  dVar34 = dVar34 + dVar37;\n                  iVar10 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;\nLAB_001c8708:\n                  dVar35 = (double)(int)unaff_s7;\n                }\n                else {\n                  if (dVar35 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar25 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar35) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar35 = (double)(*pcVar25)(dVar35);\n                  iVar10 = (int)dVar35;\nLAB_001c8700:\n                  dVar34 = dVar34 + dVar37;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar35 = 0.0;\n                }\n                dVar35 = dVar34 + dVar35;\n                dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                if (dVar35 - dVar30 < dVar31 - dVar35) {\n                  if (dVar35 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar35) goto LAB_001c88b8;\nLAB_001c8768:\n                  dVar35 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                  iVar4 = (int)dVar35;\n                }\n                else {\n                  if (dVar35 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar35) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar35 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                  iVar4 = (int)dVar35;\n                }\n              }\n              else {\n                dVar35 = dVar34;\n                if (0 < geometry.x) {\n                  dVar35 = dVar34 - (double)geometry.x;\n                }\n                dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                if (dVar35 - dVar30 < dVar31 - dVar35) {\n                  if (dVar29 <= dVar35) {\n                    pcVar25 = (code *)PTR_floor_003a9670;\n                    if (dVar35 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar10 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar34 = dVar34 + dVar37;\n                  iVar10 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar35 = 0.0;\n                }\n                else {\n                  if (dVar35 < dVar29) goto LAB_001c8b24;\n                  pcVar25 = (code *)PTR_ceil_003a8c20;\n                  if (dVar28 < dVar35) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar35 = (double)(*pcVar25)(dVar35);\n                  iVar10 = (int)dVar35;\nLAB_001c8850:\n                  dVar34 = dVar34 + dVar37;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar35 = (double)(int)unaff_s7;\n                }\n                dVar35 = dVar34 + dVar35;\n                dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                if (dVar35 - dVar30 < dVar31 - dVar35) {\n                  if (dVar35 < dVar27) goto LAB_001c8a44;\n                  if (dVar35 <= dVar28) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar4 = 0x7ffffdff;\n                }\n                else if (dVar27 <= dVar35) {\n                  if (dVar35 <= dVar33) goto LAB_001c8abc;\n                  iVar4 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar4 = -0x7ffffdff;\n                }\n              }\n              unaff_s8 = (Image **)(iVar4 - iVar10);\n              crop_geometry = (char *)((image->page).x + iVar10);\n              crop.width = (size_t)unaff_s8;\n              crop.x = (ssize_t)crop_geometry;\n              iVar10 = (*(code *)PTR_CropImage_003a90b8)(image,unaff_s6,exception);\n              if (iVar10 != 0) {\n                (*(code *)PTR_AppendImageToList_003a9880)(&crop_image,iVar10);\n              }\n            } while (dVar34 < dVar36);\n          }\n          unaff_s5 = (undefined *)unaff_s3;\n          if (local_c8 <= dVar32) break;\n          if (unaff_s4 == 0) goto LAB_001c854c;\nLAB_001c8b70:\n          unaff_s7 = (Image *)geometry.y;\n          dVar34 = dVar32;\n          if (0 < geometry.y) {\n            dVar34 = dVar32 - (double)geometry.y;\n          }\n          dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar34);\n          dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar34);\n          if (dVar34 - dVar28 < dVar29 - dVar34) {\n            if (dVar34 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d8c;\n            pcVar25 = (code *)PTR_floor_003a9670;\n            if (*(double *)((int)unaff_s3 + 0x4788) < dVar34) goto LAB_001c8d50;\nLAB_001c8bd8:\n            dVar34 = (double)(*pcVar25)(dVar34);\n            iVar10 = (int)dVar34;\nLAB_001c8bf0:\n            dVar32 = dVar32 + local_a0;\n            if (-2 < (int)unaff_s7) goto LAB_001c8c00;\nLAB_001c8d6c:\n            dVar34 = (double)(int)unaff_s7;\n          }\n          else {\n            if (dVar34 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d8c:\n              iVar10 = -0x7ffffdff;\n              goto LAB_001c8bf0;\n            }\n            pcVar25 = (code *)PTR_ceil_003a8c20;\n            if (dVar34 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8bd8;\nLAB_001c8d50:\n            iVar10 = 0x7ffffdff;\n            dVar32 = dVar32 + local_a0;\n            if ((int)unaff_s7 < -1) goto LAB_001c8d6c;\nLAB_001c8c00:\n            dVar34 = 0.0;\n          }\n          dVar34 = dVar32 + dVar34;\n          dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar34);\n          dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar34);\n          if (dVar34 - dVar28 < dVar29 - dVar34) {\n            if (*(double *)((int)unaff_s3 + 0x4780) <= dVar34) {\n              if (*(double *)((int)unaff_s3 + 0x4788) < dVar34) {\nLAB_001c8cec:\n                iVar4 = 0x7ffffdff;\n              }\n              else {\nLAB_001c8630:\n                dVar34 = (double)(*(code *)PTR_floor_003a9670)(dVar34);\n                iVar4 = (int)dVar34;\n              }\n              goto LAB_001c8644;\n            }\n            goto LAB_001c8c88;\n          }\n          if (dVar34 < dVar27) goto LAB_001c8c88;\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar34) goto LAB_001c8cec;\nLAB_001c8d18:\n          dVar34 = (double)(*(code *)PTR_ceil_003a8c20)(dVar34);\n          iVar4 = (int)dVar34;\n        } while( true );\n      }" { (expression_statement "dVar27 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4780);" (assignment_expression "dVar27 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4780)" identifier = (pointer_expression "*(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4780)" * (cast_expression "(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4780)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4780)" ( (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4780" identifier + number_literal) ))))) ;) (expression_statement "dVar33 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4788);" (assignment_expression "dVar33 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4788)" identifier = (pointer_expression "*(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4788)" * (cast_expression "(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4788)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4788)" ( (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4788" identifier + number_literal) ))))) ;) (if_statement "if (unaff_s4 != 0) goto LAB_001c8b70;" if (parenthesized_expression "(unaff_s4 != 0)" ( (binary_expression "unaff_s4 != 0" identifier != number_literal) )) (goto_statement "goto LAB_001c8b70;" goto statement_identifier ;)) (labeled_statement "LAB_001c854c:\n        unaff_s7 = (Image *)geometry.y;" statement_identifier : (expression_statement "unaff_s7 = (Image *)geometry.y;" (assignment_expression "unaff_s7 = (Image *)geometry.y" identifier = (cast_expression "(Image *)geometry.y" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "geometry.y" identifier . field_identifier))) ;)) (expression_statement "dVar34 = dVar32;" (assignment_expression "dVar34 = dVar32" identifier = identifier) ;) (if_statement "if (geometry.y < 1) {\n          dVar34 = dVar32 - (double)geometry.y;\n        }" if (parenthesized_expression "(geometry.y < 1)" ( (binary_expression "geometry.y < 1" (field_expression "geometry.y" identifier . field_identifier) < number_literal) )) (compound_statement "{\n          dVar34 = dVar32 - (double)geometry.y;\n        }" { (expression_statement "dVar34 = dVar32 - (double)geometry.y;" (assignment_expression "dVar34 = dVar32 - (double)geometry.y" identifier = (binary_expression "dVar32 - (double)geometry.y" identifier - (cast_expression "(double)geometry.y" ( (type_descriptor "double" primitive_type) ) (field_expression "geometry.y" identifier . field_identifier)))) ;) })) (expression_statement "dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar34);" (assignment_expression "dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar34)" identifier = (cast_expression "(double)(*(code *)PTR_floor_003a9670)(dVar34)" ( (type_descriptor "double" primitive_type) ) (call_expression "(*(code *)PTR_floor_003a9670)(dVar34)" (parenthesized_expression "(*(code *)PTR_floor_003a9670)" ( (pointer_expression "*(code *)PTR_floor_003a9670" * (cast_expression "(code *)PTR_floor_003a9670" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(dVar34)" ( identifier ))))) ;) (expression_statement "dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar34);" (assignment_expression "dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar34)" identifier = (cast_expression "(double)(*(code *)PTR_ceil_003a8c20)(dVar34)" ( (type_descriptor "double" primitive_type) ) (call_expression "(*(code *)PTR_ceil_003a8c20)(dVar34)" (parenthesized_expression "(*(code *)PTR_ceil_003a8c20)" ( (pointer_expression "*(code *)PTR_ceil_003a8c20" * (cast_expression "(code *)PTR_ceil_003a8c20" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(dVar34)" ( identifier ))))) ;) (if_statement "if (dVar34 - dVar28 < dVar29 - dVar34) {\n          dVar28 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar25 = (code *)PTR_floor_003a9670;\n          if (dVar34 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d7c;\n        }\n        else {\n          if (dVar34 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d7c:\n            iVar10 = -0x7ffffdff;\n            goto joined_r0x001c8cbc;\n          }\n          dVar28 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar25 = (code *)PTR_ceil_003a8c20;\n        }" if (parenthesized_expression "(dVar34 - dVar28 < dVar29 - dVar34)" ( (binary_expression "dVar34 - dVar28 < dVar29 - dVar34" (binary_expression "dVar34 - dVar28" identifier - identifier) < (binary_expression "dVar29 - dVar34" identifier - identifier)) )) (compound_statement "{\n          dVar28 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar25 = (code *)PTR_floor_003a9670;\n          if (dVar34 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d7c;\n        }" { (expression_statement "dVar28 = *(double *)((int)unaff_s3 + 0x4788);" (assignment_expression "dVar28 = *(double *)((int)unaff_s3 + 0x4788)" identifier = (pointer_expression "*(double *)((int)unaff_s3 + 0x4788)" * (cast_expression "(double *)((int)unaff_s3 + 0x4788)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s3 + 0x4788)" ( (binary_expression "(int)unaff_s3 + 0x4788" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) ;) (expression_statement "pcVar25 = (code *)PTR_floor_003a9670;" (assignment_expression "pcVar25 = (code *)PTR_floor_003a9670" identifier = (cast_expression "(code *)PTR_floor_003a9670" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (if_statement "if (dVar34 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d7c;" if (parenthesized_expression "(dVar34 < *(double *)((int)unaff_s3 + 0x4780))" ( (binary_expression "dVar34 < *(double *)((int)unaff_s3 + 0x4780)" identifier < (pointer_expression "*(double *)((int)unaff_s3 + 0x4780)" * (cast_expression "(double *)((int)unaff_s3 + 0x4780)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s3 + 0x4780)" ( (binary_expression "(int)unaff_s3 + 0x4780" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) )) (goto_statement "goto LAB_001c8d7c;" goto statement_identifier ;)) }) (else_clause "else {\n          if (dVar34 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d7c:\n            iVar10 = -0x7ffffdff;\n            goto joined_r0x001c8cbc;\n          }\n          dVar28 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar25 = (code *)PTR_ceil_003a8c20;\n        }" else (compound_statement "{\n          if (dVar34 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d7c:\n            iVar10 = -0x7ffffdff;\n            goto joined_r0x001c8cbc;\n          }\n          dVar28 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar25 = (code *)PTR_ceil_003a8c20;\n        }" { (if_statement "if (dVar34 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d7c:\n            iVar10 = -0x7ffffdff;\n            goto joined_r0x001c8cbc;\n          }" if (parenthesized_expression "(dVar34 < *(double *)((int)unaff_s3 + 0x4780))" ( (binary_expression "dVar34 < *(double *)((int)unaff_s3 + 0x4780)" identifier < (pointer_expression "*(double *)((int)unaff_s3 + 0x4780)" * (cast_expression "(double *)((int)unaff_s3 + 0x4780)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s3 + 0x4780)" ( (binary_expression "(int)unaff_s3 + 0x4780" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) )) (compound_statement "{\nLAB_001c8d7c:\n            iVar10 = -0x7ffffdff;\n            goto joined_r0x001c8cbc;\n          }" { (labeled_statement "LAB_001c8d7c:\n            iVar10 = -0x7ffffdff;" statement_identifier : (expression_statement "iVar10 = -0x7ffffdff;" (assignment_expression "iVar10 = -0x7ffffdff" identifier = number_literal) ;)) (goto_statement "goto joined_r0x001c8cbc;" goto statement_identifier ;) })) (expression_statement "dVar28 = *(double *)((int)unaff_s3 + 0x4788);" (assignment_expression "dVar28 = *(double *)((int)unaff_s3 + 0x4788)" identifier = (pointer_expression "*(double *)((int)unaff_s3 + 0x4788)" * (cast_expression "(double *)((int)unaff_s3 + 0x4788)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s3 + 0x4788)" ( (binary_expression "(int)unaff_s3 + 0x4788" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) ;) (expression_statement "pcVar25 = (code *)PTR_ceil_003a8c20;" (assignment_expression "pcVar25 = (code *)PTR_ceil_003a8c20" identifier = (cast_expression "(code *)PTR_ceil_003a8c20" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) }))) (if_statement "if (dVar28 < dVar34) {\n          iVar10 = 0x7ffffdff;\n        }\n        else {\n          dVar34 = (double)(*pcVar25)(dVar34);\n          iVar10 = (int)dVar34;\n        }" if (parenthesized_expression "(dVar28 < dVar34)" ( (binary_expression "dVar28 < dVar34" identifier < identifier) )) (compound_statement "{\n          iVar10 = 0x7ffffdff;\n        }" { (expression_statement "iVar10 = 0x7ffffdff;" (assignment_expression "iVar10 = 0x7ffffdff" identifier = number_literal) ;) }) (else_clause "else {\n          dVar34 = (double)(*pcVar25)(dVar34);\n          iVar10 = (int)dVar34;\n        }" else (compound_statement "{\n          dVar34 = (double)(*pcVar25)(dVar34);\n          iVar10 = (int)dVar34;\n        }" { (expression_statement "dVar34 = (double)(*pcVar25)(dVar34);" (assignment_expression "dVar34 = (double)(*pcVar25)(dVar34)" identifier = (cast_expression "(double)(*pcVar25)(dVar34)" ( (type_descriptor "double" primitive_type) ) (call_expression "(*pcVar25)(dVar34)" (parenthesized_expression "(*pcVar25)" ( (pointer_expression "*pcVar25" * identifier) )) (argument_list "(dVar34)" ( identifier ))))) ;) (expression_statement "iVar10 = (int)dVar34;" (assignment_expression "iVar10 = (int)dVar34" identifier = (cast_expression "(int)dVar34" ( (type_descriptor "int" primitive_type) ) identifier)) ;) }))) (labeled_statement "joined_r0x001c8cbc:\n        dVar32 = dVar32 + local_a0;" statement_identifier : (expression_statement "dVar32 = dVar32 + local_a0;" (assignment_expression "dVar32 = dVar32 + local_a0" identifier = (binary_expression "dVar32 + local_a0" identifier + identifier)) ;)) (if_statement "if ((int)unaff_s7 < 0) {\n          dVar34 = 0.0;\n        }\n        else {\n          dVar34 = (double)(int)unaff_s7;\n        }" if (parenthesized_expression "((int)unaff_s7 < 0)" ( (binary_expression "(int)unaff_s7 < 0" (cast_expression "(int)unaff_s7" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n          dVar34 = 0.0;\n        }" { (expression_statement "dVar34 = 0.0;" (assignment_expression "dVar34 = 0.0" identifier = number_literal) ;) }) (else_clause "else {\n          dVar34 = (double)(int)unaff_s7;\n        }" else (compound_statement "{\n          dVar34 = (double)(int)unaff_s7;\n        }" { (expression_statement "dVar34 = (double)(int)unaff_s7;" (assignment_expression "dVar34 = (double)(int)unaff_s7" identifier = (cast_expression "(double)(int)unaff_s7" ( (type_descriptor "double" primitive_type) ) (cast_expression "(int)unaff_s7" ( (type_descriptor "int" primitive_type) ) identifier))) ;) }))) (expression_statement "dVar34 = dVar32 + dVar34;" (assignment_expression "dVar34 = dVar32 + dVar34" identifier = (binary_expression "dVar32 + dVar34" identifier + identifier)) ;) (expression_statement "dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar34);" (assignment_expression "dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar34)" identifier = (cast_expression "(double)(*(code *)PTR_floor_003a9670)(dVar34)" ( (type_descriptor "double" primitive_type) ) (call_expression "(*(code *)PTR_floor_003a9670)(dVar34)" (parenthesized_expression "(*(code *)PTR_floor_003a9670)" ( (pointer_expression "*(code *)PTR_floor_003a9670" * (cast_expression "(code *)PTR_floor_003a9670" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(dVar34)" ( identifier ))))) ;) (expression_statement "dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar34);" (assignment_expression "dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar34)" identifier = (cast_expression "(double)(*(code *)PTR_ceil_003a8c20)(dVar34)" ( (type_descriptor "double" primitive_type) ) (call_expression "(*(code *)PTR_ceil_003a8c20)(dVar34)" (parenthesized_expression "(*(code *)PTR_ceil_003a8c20)" ( (pointer_expression "*(code *)PTR_ceil_003a8c20" * (cast_expression "(code *)PTR_ceil_003a8c20" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(dVar34)" ( identifier ))))) ;) (if_statement "if (dVar34 - dVar28 < dVar29 - dVar34) {\n          if (*(double *)((int)unaff_s3 + 0x4780) <= dVar34) {\n            if (dVar34 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8630;\n            goto LAB_001c8cec;\n          }\n        }\n        else if (*(double *)((int)unaff_s3 + 0x4780) <= dVar34) {\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar34) goto LAB_001c8cec;\n          goto LAB_001c8d18;\n        }" if (parenthesized_expression "(dVar34 - dVar28 < dVar29 - dVar34)" ( (binary_expression "dVar34 - dVar28 < dVar29 - dVar34" (binary_expression "dVar34 - dVar28" identifier - identifier) < (binary_expression "dVar29 - dVar34" identifier - identifier)) )) (compound_statement "{\n          if (*(double *)((int)unaff_s3 + 0x4780) <= dVar34) {\n            if (dVar34 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8630;\n            goto LAB_001c8cec;\n          }\n        }" { (if_statement "if (*(double *)((int)unaff_s3 + 0x4780) <= dVar34) {\n            if (dVar34 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8630;\n            goto LAB_001c8cec;\n          }" if (parenthesized_expression "(*(double *)((int)unaff_s3 + 0x4780) <= dVar34)" ( (binary_expression "*(double *)((int)unaff_s3 + 0x4780) <= dVar34" (pointer_expression "*(double *)((int)unaff_s3 + 0x4780)" * (cast_expression "(double *)((int)unaff_s3 + 0x4780)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s3 + 0x4780)" ( (binary_expression "(int)unaff_s3 + 0x4780" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) <= identifier) )) (compound_statement "{\n            if (dVar34 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8630;\n            goto LAB_001c8cec;\n          }" { (if_statement "if (dVar34 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8630;" if (parenthesized_expression "(dVar34 <= *(double *)((int)unaff_s3 + 0x4788))" ( (binary_expression "dVar34 <= *(double *)((int)unaff_s3 + 0x4788)" identifier <= (pointer_expression "*(double *)((int)unaff_s3 + 0x4788)" * (cast_expression "(double *)((int)unaff_s3 + 0x4788)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s3 + 0x4788)" ( (binary_expression "(int)unaff_s3 + 0x4788" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) )) (goto_statement "goto LAB_001c8630;" goto statement_identifier ;)) (goto_statement "goto LAB_001c8cec;" goto statement_identifier ;) })) }) (else_clause "else if (*(double *)((int)unaff_s3 + 0x4780) <= dVar34) {\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar34) goto LAB_001c8cec;\n          goto LAB_001c8d18;\n        }" else (if_statement "if (*(double *)((int)unaff_s3 + 0x4780) <= dVar34) {\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar34) goto LAB_001c8cec;\n          goto LAB_001c8d18;\n        }" if (parenthesized_expression "(*(double *)((int)unaff_s3 + 0x4780) <= dVar34)" ( (binary_expression "*(double *)((int)unaff_s3 + 0x4780) <= dVar34" (pointer_expression "*(double *)((int)unaff_s3 + 0x4780)" * (cast_expression "(double *)((int)unaff_s3 + 0x4780)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s3 + 0x4780)" ( (binary_expression "(int)unaff_s3 + 0x4780" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) <= identifier) )) (compound_statement "{\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar34) goto LAB_001c8cec;\n          goto LAB_001c8d18;\n        }" { (if_statement "if (*(double *)((int)unaff_s3 + 0x4788) < dVar34) goto LAB_001c8cec;" if (parenthesized_expression "(*(double *)((int)unaff_s3 + 0x4788) < dVar34)" ( (binary_expression "*(double *)((int)unaff_s3 + 0x4788) < dVar34" (pointer_expression "*(double *)((int)unaff_s3 + 0x4788)" * (cast_expression "(double *)((int)unaff_s3 + 0x4788)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s3 + 0x4788)" ( (binary_expression "(int)unaff_s3 + 0x4788" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) < identifier) )) (goto_statement "goto LAB_001c8cec;" goto statement_identifier ;)) (goto_statement "goto LAB_001c8d18;" goto statement_identifier ;) })))) (labeled_statement "LAB_001c8c88:\n        iVar4 = -0x7ffffdff;" statement_identifier : (expression_statement "iVar4 = -0x7ffffdff;" (assignment_expression "iVar4 = -0x7ffffdff" identifier = number_literal) ;)) (labeled_statement "LAB_001c8644:\n        do {\n          unaff_s8 = (Image **)(iVar4 - iVar10);\n          crop_geometry = (char *)((image->page).y + iVar10);\n          dVar34 = 0.0;\n          crop.height = (size_t)unaff_s8;\n          crop.y = (ssize_t)crop_geometry;\n          if (0.0 < dVar36) {\n            dVar28 = *(double *)((int)unaff_s3 + 0x4788);\n            unaff_s6 = (Image *)&crop;\n            dVar29 = *(double *)((int)unaff_s3 + 0x4780);\n            do {\n              unaff_s7 = (Image *)geometry.x;\n              if (unaff_s4 == 0) {\n                dVar35 = dVar34;\n                if (geometry.x < 1) {\n                  dVar35 = dVar34 - (double)geometry.x;\n                }\n                dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                if (dVar35 - dVar30 < dVar31 - dVar35) {\n                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar35) {\n                    pcVar25 = (code *)PTR_floor_003a9670;\n                    if (dVar35 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar10 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }\nLAB_001c8b04:\n                  dVar34 = dVar34 + dVar37;\n                  iVar10 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;\nLAB_001c8708:\n                  dVar35 = (double)(int)unaff_s7;\n                }\n                else {\n                  if (dVar35 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar25 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar35) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar35 = (double)(*pcVar25)(dVar35);\n                  iVar10 = (int)dVar35;\nLAB_001c8700:\n                  dVar34 = dVar34 + dVar37;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar35 = 0.0;\n                }\n                dVar35 = dVar34 + dVar35;\n                dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                if (dVar35 - dVar30 < dVar31 - dVar35) {\n                  if (dVar35 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar35) goto LAB_001c88b8;\nLAB_001c8768:\n                  dVar35 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                  iVar4 = (int)dVar35;\n                }\n                else {\n                  if (dVar35 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar35) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar35 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                  iVar4 = (int)dVar35;\n                }\n              }\n              else {\n                dVar35 = dVar34;\n                if (0 < geometry.x) {\n                  dVar35 = dVar34 - (double)geometry.x;\n                }\n                dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                if (dVar35 - dVar30 < dVar31 - dVar35) {\n                  if (dVar29 <= dVar35) {\n                    pcVar25 = (code *)PTR_floor_003a9670;\n                    if (dVar35 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar10 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar34 = dVar34 + dVar37;\n                  iVar10 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar35 = 0.0;\n                }\n                else {\n                  if (dVar35 < dVar29) goto LAB_001c8b24;\n                  pcVar25 = (code *)PTR_ceil_003a8c20;\n                  if (dVar28 < dVar35) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar35 = (double)(*pcVar25)(dVar35);\n                  iVar10 = (int)dVar35;\nLAB_001c8850:\n                  dVar34 = dVar34 + dVar37;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar35 = (double)(int)unaff_s7;\n                }\n                dVar35 = dVar34 + dVar35;\n                dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                if (dVar35 - dVar30 < dVar31 - dVar35) {\n                  if (dVar35 < dVar27) goto LAB_001c8a44;\n                  if (dVar35 <= dVar28) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar4 = 0x7ffffdff;\n                }\n                else if (dVar27 <= dVar35) {\n                  if (dVar35 <= dVar33) goto LAB_001c8abc;\n                  iVar4 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar4 = -0x7ffffdff;\n                }\n              }\n              unaff_s8 = (Image **)(iVar4 - iVar10);\n              crop_geometry = (char *)((image->page).x + iVar10);\n              crop.width = (size_t)unaff_s8;\n              crop.x = (ssize_t)crop_geometry;\n              iVar10 = (*(code *)PTR_CropImage_003a90b8)(image,unaff_s6,exception);\n              if (iVar10 != 0) {\n                (*(code *)PTR_AppendImageToList_003a9880)(&crop_image,iVar10);\n              }\n            } while (dVar34 < dVar36);\n          }\n          unaff_s5 = (undefined *)unaff_s3;\n          if (local_c8 <= dVar32) break;\n          if (unaff_s4 == 0) goto LAB_001c854c;\nLAB_001c8b70:\n          unaff_s7 = (Image *)geometry.y;\n          dVar34 = dVar32;\n          if (0 < geometry.y) {\n            dVar34 = dVar32 - (double)geometry.y;\n          }\n          dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar34);\n          dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar34);\n          if (dVar34 - dVar28 < dVar29 - dVar34) {\n            if (dVar34 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d8c;\n            pcVar25 = (code *)PTR_floor_003a9670;\n            if (*(double *)((int)unaff_s3 + 0x4788) < dVar34) goto LAB_001c8d50;\nLAB_001c8bd8:\n            dVar34 = (double)(*pcVar25)(dVar34);\n            iVar10 = (int)dVar34;\nLAB_001c8bf0:\n            dVar32 = dVar32 + local_a0;\n            if (-2 < (int)unaff_s7) goto LAB_001c8c00;\nLAB_001c8d6c:\n            dVar34 = (double)(int)unaff_s7;\n          }\n          else {\n            if (dVar34 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d8c:\n              iVar10 = -0x7ffffdff;\n              goto LAB_001c8bf0;\n            }\n            pcVar25 = (code *)PTR_ceil_003a8c20;\n            if (dVar34 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8bd8;\nLAB_001c8d50:\n            iVar10 = 0x7ffffdff;\n            dVar32 = dVar32 + local_a0;\n            if ((int)unaff_s7 < -1) goto LAB_001c8d6c;\nLAB_001c8c00:\n            dVar34 = 0.0;\n          }\n          dVar34 = dVar32 + dVar34;\n          dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar34);\n          dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar34);\n          if (dVar34 - dVar28 < dVar29 - dVar34) {\n            if (*(double *)((int)unaff_s3 + 0x4780) <= dVar34) {\n              if (*(double *)((int)unaff_s3 + 0x4788) < dVar34) {\nLAB_001c8cec:\n                iVar4 = 0x7ffffdff;\n              }\n              else {\nLAB_001c8630:\n                dVar34 = (double)(*(code *)PTR_floor_003a9670)(dVar34);\n                iVar4 = (int)dVar34;\n              }\n              goto LAB_001c8644;\n            }\n            goto LAB_001c8c88;\n          }\n          if (dVar34 < dVar27) goto LAB_001c8c88;\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar34) goto LAB_001c8cec;\nLAB_001c8d18:\n          dVar34 = (double)(*(code *)PTR_ceil_003a8c20)(dVar34);\n          iVar4 = (int)dVar34;\n        } while( true );" statement_identifier : (do_statement "do {\n          unaff_s8 = (Image **)(iVar4 - iVar10);\n          crop_geometry = (char *)((image->page).y + iVar10);\n          dVar34 = 0.0;\n          crop.height = (size_t)unaff_s8;\n          crop.y = (ssize_t)crop_geometry;\n          if (0.0 < dVar36) {\n            dVar28 = *(double *)((int)unaff_s3 + 0x4788);\n            unaff_s6 = (Image *)&crop;\n            dVar29 = *(double *)((int)unaff_s3 + 0x4780);\n            do {\n              unaff_s7 = (Image *)geometry.x;\n              if (unaff_s4 == 0) {\n                dVar35 = dVar34;\n                if (geometry.x < 1) {\n                  dVar35 = dVar34 - (double)geometry.x;\n                }\n                dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                if (dVar35 - dVar30 < dVar31 - dVar35) {\n                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar35) {\n                    pcVar25 = (code *)PTR_floor_003a9670;\n                    if (dVar35 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar10 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }\nLAB_001c8b04:\n                  dVar34 = dVar34 + dVar37;\n                  iVar10 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;\nLAB_001c8708:\n                  dVar35 = (double)(int)unaff_s7;\n                }\n                else {\n                  if (dVar35 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar25 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar35) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar35 = (double)(*pcVar25)(dVar35);\n                  iVar10 = (int)dVar35;\nLAB_001c8700:\n                  dVar34 = dVar34 + dVar37;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar35 = 0.0;\n                }\n                dVar35 = dVar34 + dVar35;\n                dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                if (dVar35 - dVar30 < dVar31 - dVar35) {\n                  if (dVar35 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar35) goto LAB_001c88b8;\nLAB_001c8768:\n                  dVar35 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                  iVar4 = (int)dVar35;\n                }\n                else {\n                  if (dVar35 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar35) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar35 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                  iVar4 = (int)dVar35;\n                }\n              }\n              else {\n                dVar35 = dVar34;\n                if (0 < geometry.x) {\n                  dVar35 = dVar34 - (double)geometry.x;\n                }\n                dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                if (dVar35 - dVar30 < dVar31 - dVar35) {\n                  if (dVar29 <= dVar35) {\n                    pcVar25 = (code *)PTR_floor_003a9670;\n                    if (dVar35 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar10 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar34 = dVar34 + dVar37;\n                  iVar10 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar35 = 0.0;\n                }\n                else {\n                  if (dVar35 < dVar29) goto LAB_001c8b24;\n                  pcVar25 = (code *)PTR_ceil_003a8c20;\n                  if (dVar28 < dVar35) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar35 = (double)(*pcVar25)(dVar35);\n                  iVar10 = (int)dVar35;\nLAB_001c8850:\n                  dVar34 = dVar34 + dVar37;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar35 = (double)(int)unaff_s7;\n                }\n                dVar35 = dVar34 + dVar35;\n                dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                if (dVar35 - dVar30 < dVar31 - dVar35) {\n                  if (dVar35 < dVar27) goto LAB_001c8a44;\n                  if (dVar35 <= dVar28) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar4 = 0x7ffffdff;\n                }\n                else if (dVar27 <= dVar35) {\n                  if (dVar35 <= dVar33) goto LAB_001c8abc;\n                  iVar4 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar4 = -0x7ffffdff;\n                }\n              }\n              unaff_s8 = (Image **)(iVar4 - iVar10);\n              crop_geometry = (char *)((image->page).x + iVar10);\n              crop.width = (size_t)unaff_s8;\n              crop.x = (ssize_t)crop_geometry;\n              iVar10 = (*(code *)PTR_CropImage_003a90b8)(image,unaff_s6,exception);\n              if (iVar10 != 0) {\n                (*(code *)PTR_AppendImageToList_003a9880)(&crop_image,iVar10);\n              }\n            } while (dVar34 < dVar36);\n          }\n          unaff_s5 = (undefined *)unaff_s3;\n          if (local_c8 <= dVar32) break;\n          if (unaff_s4 == 0) goto LAB_001c854c;\nLAB_001c8b70:\n          unaff_s7 = (Image *)geometry.y;\n          dVar34 = dVar32;\n          if (0 < geometry.y) {\n            dVar34 = dVar32 - (double)geometry.y;\n          }\n          dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar34);\n          dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar34);\n          if (dVar34 - dVar28 < dVar29 - dVar34) {\n            if (dVar34 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d8c;\n            pcVar25 = (code *)PTR_floor_003a9670;\n            if (*(double *)((int)unaff_s3 + 0x4788) < dVar34) goto LAB_001c8d50;\nLAB_001c8bd8:\n            dVar34 = (double)(*pcVar25)(dVar34);\n            iVar10 = (int)dVar34;\nLAB_001c8bf0:\n            dVar32 = dVar32 + local_a0;\n            if (-2 < (int)unaff_s7) goto LAB_001c8c00;\nLAB_001c8d6c:\n            dVar34 = (double)(int)unaff_s7;\n          }\n          else {\n            if (dVar34 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d8c:\n              iVar10 = -0x7ffffdff;\n              goto LAB_001c8bf0;\n            }\n            pcVar25 = (code *)PTR_ceil_003a8c20;\n            if (dVar34 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8bd8;\nLAB_001c8d50:\n            iVar10 = 0x7ffffdff;\n            dVar32 = dVar32 + local_a0;\n            if ((int)unaff_s7 < -1) goto LAB_001c8d6c;\nLAB_001c8c00:\n            dVar34 = 0.0;\n          }\n          dVar34 = dVar32 + dVar34;\n          dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar34);\n          dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar34);\n          if (dVar34 - dVar28 < dVar29 - dVar34) {\n            if (*(double *)((int)unaff_s3 + 0x4780) <= dVar34) {\n              if (*(double *)((int)unaff_s3 + 0x4788) < dVar34) {\nLAB_001c8cec:\n                iVar4 = 0x7ffffdff;\n              }\n              else {\nLAB_001c8630:\n                dVar34 = (double)(*(code *)PTR_floor_003a9670)(dVar34);\n                iVar4 = (int)dVar34;\n              }\n              goto LAB_001c8644;\n            }\n            goto LAB_001c8c88;\n          }\n          if (dVar34 < dVar27) goto LAB_001c8c88;\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar34) goto LAB_001c8cec;\nLAB_001c8d18:\n          dVar34 = (double)(*(code *)PTR_ceil_003a8c20)(dVar34);\n          iVar4 = (int)dVar34;\n        } while( true );" do (compound_statement "{\n          unaff_s8 = (Image **)(iVar4 - iVar10);\n          crop_geometry = (char *)((image->page).y + iVar10);\n          dVar34 = 0.0;\n          crop.height = (size_t)unaff_s8;\n          crop.y = (ssize_t)crop_geometry;\n          if (0.0 < dVar36) {\n            dVar28 = *(double *)((int)unaff_s3 + 0x4788);\n            unaff_s6 = (Image *)&crop;\n            dVar29 = *(double *)((int)unaff_s3 + 0x4780);\n            do {\n              unaff_s7 = (Image *)geometry.x;\n              if (unaff_s4 == 0) {\n                dVar35 = dVar34;\n                if (geometry.x < 1) {\n                  dVar35 = dVar34 - (double)geometry.x;\n                }\n                dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                if (dVar35 - dVar30 < dVar31 - dVar35) {\n                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar35) {\n                    pcVar25 = (code *)PTR_floor_003a9670;\n                    if (dVar35 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar10 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }\nLAB_001c8b04:\n                  dVar34 = dVar34 + dVar37;\n                  iVar10 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;\nLAB_001c8708:\n                  dVar35 = (double)(int)unaff_s7;\n                }\n                else {\n                  if (dVar35 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar25 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar35) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar35 = (double)(*pcVar25)(dVar35);\n                  iVar10 = (int)dVar35;\nLAB_001c8700:\n                  dVar34 = dVar34 + dVar37;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar35 = 0.0;\n                }\n                dVar35 = dVar34 + dVar35;\n                dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                if (dVar35 - dVar30 < dVar31 - dVar35) {\n                  if (dVar35 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar35) goto LAB_001c88b8;\nLAB_001c8768:\n                  dVar35 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                  iVar4 = (int)dVar35;\n                }\n                else {\n                  if (dVar35 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar35) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar35 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                  iVar4 = (int)dVar35;\n                }\n              }\n              else {\n                dVar35 = dVar34;\n                if (0 < geometry.x) {\n                  dVar35 = dVar34 - (double)geometry.x;\n                }\n                dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                if (dVar35 - dVar30 < dVar31 - dVar35) {\n                  if (dVar29 <= dVar35) {\n                    pcVar25 = (code *)PTR_floor_003a9670;\n                    if (dVar35 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar10 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar34 = dVar34 + dVar37;\n                  iVar10 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar35 = 0.0;\n                }\n                else {\n                  if (dVar35 < dVar29) goto LAB_001c8b24;\n                  pcVar25 = (code *)PTR_ceil_003a8c20;\n                  if (dVar28 < dVar35) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar35 = (double)(*pcVar25)(dVar35);\n                  iVar10 = (int)dVar35;\nLAB_001c8850:\n                  dVar34 = dVar34 + dVar37;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar35 = (double)(int)unaff_s7;\n                }\n                dVar35 = dVar34 + dVar35;\n                dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                if (dVar35 - dVar30 < dVar31 - dVar35) {\n                  if (dVar35 < dVar27) goto LAB_001c8a44;\n                  if (dVar35 <= dVar28) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar4 = 0x7ffffdff;\n                }\n                else if (dVar27 <= dVar35) {\n                  if (dVar35 <= dVar33) goto LAB_001c8abc;\n                  iVar4 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar4 = -0x7ffffdff;\n                }\n              }\n              unaff_s8 = (Image **)(iVar4 - iVar10);\n              crop_geometry = (char *)((image->page).x + iVar10);\n              crop.width = (size_t)unaff_s8;\n              crop.x = (ssize_t)crop_geometry;\n              iVar10 = (*(code *)PTR_CropImage_003a90b8)(image,unaff_s6,exception);\n              if (iVar10 != 0) {\n                (*(code *)PTR_AppendImageToList_003a9880)(&crop_image,iVar10);\n              }\n            } while (dVar34 < dVar36);\n          }\n          unaff_s5 = (undefined *)unaff_s3;\n          if (local_c8 <= dVar32) break;\n          if (unaff_s4 == 0) goto LAB_001c854c;\nLAB_001c8b70:\n          unaff_s7 = (Image *)geometry.y;\n          dVar34 = dVar32;\n          if (0 < geometry.y) {\n            dVar34 = dVar32 - (double)geometry.y;\n          }\n          dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar34);\n          dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar34);\n          if (dVar34 - dVar28 < dVar29 - dVar34) {\n            if (dVar34 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d8c;\n            pcVar25 = (code *)PTR_floor_003a9670;\n            if (*(double *)((int)unaff_s3 + 0x4788) < dVar34) goto LAB_001c8d50;\nLAB_001c8bd8:\n            dVar34 = (double)(*pcVar25)(dVar34);\n            iVar10 = (int)dVar34;\nLAB_001c8bf0:\n            dVar32 = dVar32 + local_a0;\n            if (-2 < (int)unaff_s7) goto LAB_001c8c00;\nLAB_001c8d6c:\n            dVar34 = (double)(int)unaff_s7;\n          }\n          else {\n            if (dVar34 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d8c:\n              iVar10 = -0x7ffffdff;\n              goto LAB_001c8bf0;\n            }\n            pcVar25 = (code *)PTR_ceil_003a8c20;\n            if (dVar34 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8bd8;\nLAB_001c8d50:\n            iVar10 = 0x7ffffdff;\n            dVar32 = dVar32 + local_a0;\n            if ((int)unaff_s7 < -1) goto LAB_001c8d6c;\nLAB_001c8c00:\n            dVar34 = 0.0;\n          }\n          dVar34 = dVar32 + dVar34;\n          dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar34);\n          dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar34);\n          if (dVar34 - dVar28 < dVar29 - dVar34) {\n            if (*(double *)((int)unaff_s3 + 0x4780) <= dVar34) {\n              if (*(double *)((int)unaff_s3 + 0x4788) < dVar34) {\nLAB_001c8cec:\n                iVar4 = 0x7ffffdff;\n              }\n              else {\nLAB_001c8630:\n                dVar34 = (double)(*(code *)PTR_floor_003a9670)(dVar34);\n                iVar4 = (int)dVar34;\n              }\n              goto LAB_001c8644;\n            }\n            goto LAB_001c8c88;\n          }\n          if (dVar34 < dVar27) goto LAB_001c8c88;\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar34) goto LAB_001c8cec;\nLAB_001c8d18:\n          dVar34 = (double)(*(code *)PTR_ceil_003a8c20)(dVar34);\n          iVar4 = (int)dVar34;\n        }" { (expression_statement "unaff_s8 = (Image **)(iVar4 - iVar10);" (assignment_expression "unaff_s8 = (Image **)(iVar4 - iVar10)" identifier = (cast_expression "(Image **)(iVar4 - iVar10)" ( (type_descriptor "Image **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar4 - iVar10)" ( (binary_expression "iVar4 - iVar10" identifier - identifier) )))) ;) (expression_statement "crop_geometry = (char *)((image->page).y + iVar10);" (assignment_expression "crop_geometry = (char *)((image->page).y + iVar10)" identifier = (cast_expression "(char *)((image->page).y + iVar10)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((image->page).y + iVar10)" ( (binary_expression "(image->page).y + iVar10" (field_expression "(image->page).y" (parenthesized_expression "(image->page)" ( (field_expression "image->page" identifier -> field_identifier) )) . field_identifier) + identifier) )))) ;) (expression_statement "dVar34 = 0.0;" (assignment_expression "dVar34 = 0.0" identifier = number_literal) ;) (expression_statement "crop.height = (size_t)unaff_s8;" (assignment_expression "crop.height = (size_t)unaff_s8" (field_expression "crop.height" identifier . field_identifier) = (cast_expression "(size_t)unaff_s8" ( (type_descriptor "size_t" primitive_type) ) identifier)) ;) (expression_statement "crop.y = (ssize_t)crop_geometry;" (assignment_expression "crop.y = (ssize_t)crop_geometry" (field_expression "crop.y" identifier . field_identifier) = (cast_expression "(ssize_t)crop_geometry" ( (type_descriptor "ssize_t" primitive_type) ) identifier)) ;) (if_statement "if (0.0 < dVar36) {\n            dVar28 = *(double *)((int)unaff_s3 + 0x4788);\n            unaff_s6 = (Image *)&crop;\n            dVar29 = *(double *)((int)unaff_s3 + 0x4780);\n            do {\n              unaff_s7 = (Image *)geometry.x;\n              if (unaff_s4 == 0) {\n                dVar35 = dVar34;\n                if (geometry.x < 1) {\n                  dVar35 = dVar34 - (double)geometry.x;\n                }\n                dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                if (dVar35 - dVar30 < dVar31 - dVar35) {\n                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar35) {\n                    pcVar25 = (code *)PTR_floor_003a9670;\n                    if (dVar35 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar10 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }\nLAB_001c8b04:\n                  dVar34 = dVar34 + dVar37;\n                  iVar10 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;\nLAB_001c8708:\n                  dVar35 = (double)(int)unaff_s7;\n                }\n                else {\n                  if (dVar35 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar25 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar35) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar35 = (double)(*pcVar25)(dVar35);\n                  iVar10 = (int)dVar35;\nLAB_001c8700:\n                  dVar34 = dVar34 + dVar37;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar35 = 0.0;\n                }\n                dVar35 = dVar34 + dVar35;\n                dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                if (dVar35 - dVar30 < dVar31 - dVar35) {\n                  if (dVar35 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar35) goto LAB_001c88b8;\nLAB_001c8768:\n                  dVar35 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                  iVar4 = (int)dVar35;\n                }\n                else {\n                  if (dVar35 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar35) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar35 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                  iVar4 = (int)dVar35;\n                }\n              }\n              else {\n                dVar35 = dVar34;\n                if (0 < geometry.x) {\n                  dVar35 = dVar34 - (double)geometry.x;\n                }\n                dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                if (dVar35 - dVar30 < dVar31 - dVar35) {\n                  if (dVar29 <= dVar35) {\n                    pcVar25 = (code *)PTR_floor_003a9670;\n                    if (dVar35 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar10 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar34 = dVar34 + dVar37;\n                  iVar10 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar35 = 0.0;\n                }\n                else {\n                  if (dVar35 < dVar29) goto LAB_001c8b24;\n                  pcVar25 = (code *)PTR_ceil_003a8c20;\n                  if (dVar28 < dVar35) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar35 = (double)(*pcVar25)(dVar35);\n                  iVar10 = (int)dVar35;\nLAB_001c8850:\n                  dVar34 = dVar34 + dVar37;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar35 = (double)(int)unaff_s7;\n                }\n                dVar35 = dVar34 + dVar35;\n                dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                if (dVar35 - dVar30 < dVar31 - dVar35) {\n                  if (dVar35 < dVar27) goto LAB_001c8a44;\n                  if (dVar35 <= dVar28) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar4 = 0x7ffffdff;\n                }\n                else if (dVar27 <= dVar35) {\n                  if (dVar35 <= dVar33) goto LAB_001c8abc;\n                  iVar4 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar4 = -0x7ffffdff;\n                }\n              }\n              unaff_s8 = (Image **)(iVar4 - iVar10);\n              crop_geometry = (char *)((image->page).x + iVar10);\n              crop.width = (size_t)unaff_s8;\n              crop.x = (ssize_t)crop_geometry;\n              iVar10 = (*(code *)PTR_CropImage_003a90b8)(image,unaff_s6,exception);\n              if (iVar10 != 0) {\n                (*(code *)PTR_AppendImageToList_003a9880)(&crop_image,iVar10);\n              }\n            } while (dVar34 < dVar36);\n          }" if (parenthesized_expression "(0.0 < dVar36)" ( (binary_expression "0.0 < dVar36" number_literal < identifier) )) (compound_statement "{\n            dVar28 = *(double *)((int)unaff_s3 + 0x4788);\n            unaff_s6 = (Image *)&crop;\n            dVar29 = *(double *)((int)unaff_s3 + 0x4780);\n            do {\n              unaff_s7 = (Image *)geometry.x;\n              if (unaff_s4 == 0) {\n                dVar35 = dVar34;\n                if (geometry.x < 1) {\n                  dVar35 = dVar34 - (double)geometry.x;\n                }\n                dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                if (dVar35 - dVar30 < dVar31 - dVar35) {\n                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar35) {\n                    pcVar25 = (code *)PTR_floor_003a9670;\n                    if (dVar35 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar10 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }\nLAB_001c8b04:\n                  dVar34 = dVar34 + dVar37;\n                  iVar10 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;\nLAB_001c8708:\n                  dVar35 = (double)(int)unaff_s7;\n                }\n                else {\n                  if (dVar35 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar25 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar35) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar35 = (double)(*pcVar25)(dVar35);\n                  iVar10 = (int)dVar35;\nLAB_001c8700:\n                  dVar34 = dVar34 + dVar37;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar35 = 0.0;\n                }\n                dVar35 = dVar34 + dVar35;\n                dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                if (dVar35 - dVar30 < dVar31 - dVar35) {\n                  if (dVar35 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar35) goto LAB_001c88b8;\nLAB_001c8768:\n                  dVar35 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                  iVar4 = (int)dVar35;\n                }\n                else {\n                  if (dVar35 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar35) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar35 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                  iVar4 = (int)dVar35;\n                }\n              }\n              else {\n                dVar35 = dVar34;\n                if (0 < geometry.x) {\n                  dVar35 = dVar34 - (double)geometry.x;\n                }\n                dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                if (dVar35 - dVar30 < dVar31 - dVar35) {\n                  if (dVar29 <= dVar35) {\n                    pcVar25 = (code *)PTR_floor_003a9670;\n                    if (dVar35 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar10 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar34 = dVar34 + dVar37;\n                  iVar10 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar35 = 0.0;\n                }\n                else {\n                  if (dVar35 < dVar29) goto LAB_001c8b24;\n                  pcVar25 = (code *)PTR_ceil_003a8c20;\n                  if (dVar28 < dVar35) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar35 = (double)(*pcVar25)(dVar35);\n                  iVar10 = (int)dVar35;\nLAB_001c8850:\n                  dVar34 = dVar34 + dVar37;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar35 = (double)(int)unaff_s7;\n                }\n                dVar35 = dVar34 + dVar35;\n                dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                if (dVar35 - dVar30 < dVar31 - dVar35) {\n                  if (dVar35 < dVar27) goto LAB_001c8a44;\n                  if (dVar35 <= dVar28) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar4 = 0x7ffffdff;\n                }\n                else if (dVar27 <= dVar35) {\n                  if (dVar35 <= dVar33) goto LAB_001c8abc;\n                  iVar4 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar4 = -0x7ffffdff;\n                }\n              }\n              unaff_s8 = (Image **)(iVar4 - iVar10);\n              crop_geometry = (char *)((image->page).x + iVar10);\n              crop.width = (size_t)unaff_s8;\n              crop.x = (ssize_t)crop_geometry;\n              iVar10 = (*(code *)PTR_CropImage_003a90b8)(image,unaff_s6,exception);\n              if (iVar10 != 0) {\n                (*(code *)PTR_AppendImageToList_003a9880)(&crop_image,iVar10);\n              }\n            } while (dVar34 < dVar36);\n          }" { (expression_statement "dVar28 = *(double *)((int)unaff_s3 + 0x4788);" (assignment_expression "dVar28 = *(double *)((int)unaff_s3 + 0x4788)" identifier = (pointer_expression "*(double *)((int)unaff_s3 + 0x4788)" * (cast_expression "(double *)((int)unaff_s3 + 0x4788)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s3 + 0x4788)" ( (binary_expression "(int)unaff_s3 + 0x4788" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) ;) (expression_statement "unaff_s6 = (Image *)&crop;" (assignment_expression "unaff_s6 = (Image *)&crop" identifier = (cast_expression "(Image *)&crop" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&crop" & identifier))) ;) (expression_statement "dVar29 = *(double *)((int)unaff_s3 + 0x4780);" (assignment_expression "dVar29 = *(double *)((int)unaff_s3 + 0x4780)" identifier = (pointer_expression "*(double *)((int)unaff_s3 + 0x4780)" * (cast_expression "(double *)((int)unaff_s3 + 0x4780)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s3 + 0x4780)" ( (binary_expression "(int)unaff_s3 + 0x4780" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) ;) (do_statement "do {\n              unaff_s7 = (Image *)geometry.x;\n              if (unaff_s4 == 0) {\n                dVar35 = dVar34;\n                if (geometry.x < 1) {\n                  dVar35 = dVar34 - (double)geometry.x;\n                }\n                dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                if (dVar35 - dVar30 < dVar31 - dVar35) {\n                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar35) {\n                    pcVar25 = (code *)PTR_floor_003a9670;\n                    if (dVar35 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar10 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }\nLAB_001c8b04:\n                  dVar34 = dVar34 + dVar37;\n                  iVar10 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;\nLAB_001c8708:\n                  dVar35 = (double)(int)unaff_s7;\n                }\n                else {\n                  if (dVar35 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar25 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar35) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar35 = (double)(*pcVar25)(dVar35);\n                  iVar10 = (int)dVar35;\nLAB_001c8700:\n                  dVar34 = dVar34 + dVar37;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar35 = 0.0;\n                }\n                dVar35 = dVar34 + dVar35;\n                dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                if (dVar35 - dVar30 < dVar31 - dVar35) {\n                  if (dVar35 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar35) goto LAB_001c88b8;\nLAB_001c8768:\n                  dVar35 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                  iVar4 = (int)dVar35;\n                }\n                else {\n                  if (dVar35 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar35) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar35 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                  iVar4 = (int)dVar35;\n                }\n              }\n              else {\n                dVar35 = dVar34;\n                if (0 < geometry.x) {\n                  dVar35 = dVar34 - (double)geometry.x;\n                }\n                dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                if (dVar35 - dVar30 < dVar31 - dVar35) {\n                  if (dVar29 <= dVar35) {\n                    pcVar25 = (code *)PTR_floor_003a9670;\n                    if (dVar35 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar10 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar34 = dVar34 + dVar37;\n                  iVar10 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar35 = 0.0;\n                }\n                else {\n                  if (dVar35 < dVar29) goto LAB_001c8b24;\n                  pcVar25 = (code *)PTR_ceil_003a8c20;\n                  if (dVar28 < dVar35) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar35 = (double)(*pcVar25)(dVar35);\n                  iVar10 = (int)dVar35;\nLAB_001c8850:\n                  dVar34 = dVar34 + dVar37;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar35 = (double)(int)unaff_s7;\n                }\n                dVar35 = dVar34 + dVar35;\n                dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                if (dVar35 - dVar30 < dVar31 - dVar35) {\n                  if (dVar35 < dVar27) goto LAB_001c8a44;\n                  if (dVar35 <= dVar28) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar4 = 0x7ffffdff;\n                }\n                else if (dVar27 <= dVar35) {\n                  if (dVar35 <= dVar33) goto LAB_001c8abc;\n                  iVar4 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar4 = -0x7ffffdff;\n                }\n              }\n              unaff_s8 = (Image **)(iVar4 - iVar10);\n              crop_geometry = (char *)((image->page).x + iVar10);\n              crop.width = (size_t)unaff_s8;\n              crop.x = (ssize_t)crop_geometry;\n              iVar10 = (*(code *)PTR_CropImage_003a90b8)(image,unaff_s6,exception);\n              if (iVar10 != 0) {\n                (*(code *)PTR_AppendImageToList_003a9880)(&crop_image,iVar10);\n              }\n            } while (dVar34 < dVar36);" do (compound_statement "{\n              unaff_s7 = (Image *)geometry.x;\n              if (unaff_s4 == 0) {\n                dVar35 = dVar34;\n                if (geometry.x < 1) {\n                  dVar35 = dVar34 - (double)geometry.x;\n                }\n                dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                if (dVar35 - dVar30 < dVar31 - dVar35) {\n                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar35) {\n                    pcVar25 = (code *)PTR_floor_003a9670;\n                    if (dVar35 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar10 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }\nLAB_001c8b04:\n                  dVar34 = dVar34 + dVar37;\n                  iVar10 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;\nLAB_001c8708:\n                  dVar35 = (double)(int)unaff_s7;\n                }\n                else {\n                  if (dVar35 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar25 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar35) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar35 = (double)(*pcVar25)(dVar35);\n                  iVar10 = (int)dVar35;\nLAB_001c8700:\n                  dVar34 = dVar34 + dVar37;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar35 = 0.0;\n                }\n                dVar35 = dVar34 + dVar35;\n                dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                if (dVar35 - dVar30 < dVar31 - dVar35) {\n                  if (dVar35 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar35) goto LAB_001c88b8;\nLAB_001c8768:\n                  dVar35 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                  iVar4 = (int)dVar35;\n                }\n                else {\n                  if (dVar35 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar35) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar35 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                  iVar4 = (int)dVar35;\n                }\n              }\n              else {\n                dVar35 = dVar34;\n                if (0 < geometry.x) {\n                  dVar35 = dVar34 - (double)geometry.x;\n                }\n                dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                if (dVar35 - dVar30 < dVar31 - dVar35) {\n                  if (dVar29 <= dVar35) {\n                    pcVar25 = (code *)PTR_floor_003a9670;\n                    if (dVar35 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar10 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar34 = dVar34 + dVar37;\n                  iVar10 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar35 = 0.0;\n                }\n                else {\n                  if (dVar35 < dVar29) goto LAB_001c8b24;\n                  pcVar25 = (code *)PTR_ceil_003a8c20;\n                  if (dVar28 < dVar35) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar35 = (double)(*pcVar25)(dVar35);\n                  iVar10 = (int)dVar35;\nLAB_001c8850:\n                  dVar34 = dVar34 + dVar37;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar35 = (double)(int)unaff_s7;\n                }\n                dVar35 = dVar34 + dVar35;\n                dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                if (dVar35 - dVar30 < dVar31 - dVar35) {\n                  if (dVar35 < dVar27) goto LAB_001c8a44;\n                  if (dVar35 <= dVar28) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar4 = 0x7ffffdff;\n                }\n                else if (dVar27 <= dVar35) {\n                  if (dVar35 <= dVar33) goto LAB_001c8abc;\n                  iVar4 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar4 = -0x7ffffdff;\n                }\n              }\n              unaff_s8 = (Image **)(iVar4 - iVar10);\n              crop_geometry = (char *)((image->page).x + iVar10);\n              crop.width = (size_t)unaff_s8;\n              crop.x = (ssize_t)crop_geometry;\n              iVar10 = (*(code *)PTR_CropImage_003a90b8)(image,unaff_s6,exception);\n              if (iVar10 != 0) {\n                (*(code *)PTR_AppendImageToList_003a9880)(&crop_image,iVar10);\n              }\n            }" { (expression_statement "unaff_s7 = (Image *)geometry.x;" (assignment_expression "unaff_s7 = (Image *)geometry.x" identifier = (cast_expression "(Image *)geometry.x" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "geometry.x" identifier . field_identifier))) ;) (if_statement "if (unaff_s4 == 0) {\n                dVar35 = dVar34;\n                if (geometry.x < 1) {\n                  dVar35 = dVar34 - (double)geometry.x;\n                }\n                dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                if (dVar35 - dVar30 < dVar31 - dVar35) {\n                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar35) {\n                    pcVar25 = (code *)PTR_floor_003a9670;\n                    if (dVar35 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar10 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }\nLAB_001c8b04:\n                  dVar34 = dVar34 + dVar37;\n                  iVar10 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;\nLAB_001c8708:\n                  dVar35 = (double)(int)unaff_s7;\n                }\n                else {\n                  if (dVar35 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar25 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar35) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar35 = (double)(*pcVar25)(dVar35);\n                  iVar10 = (int)dVar35;\nLAB_001c8700:\n                  dVar34 = dVar34 + dVar37;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar35 = 0.0;\n                }\n                dVar35 = dVar34 + dVar35;\n                dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                if (dVar35 - dVar30 < dVar31 - dVar35) {\n                  if (dVar35 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar35) goto LAB_001c88b8;\nLAB_001c8768:\n                  dVar35 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                  iVar4 = (int)dVar35;\n                }\n                else {\n                  if (dVar35 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar35) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar35 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                  iVar4 = (int)dVar35;\n                }\n              }\n              else {\n                dVar35 = dVar34;\n                if (0 < geometry.x) {\n                  dVar35 = dVar34 - (double)geometry.x;\n                }\n                dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                if (dVar35 - dVar30 < dVar31 - dVar35) {\n                  if (dVar29 <= dVar35) {\n                    pcVar25 = (code *)PTR_floor_003a9670;\n                    if (dVar35 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar10 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar34 = dVar34 + dVar37;\n                  iVar10 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar35 = 0.0;\n                }\n                else {\n                  if (dVar35 < dVar29) goto LAB_001c8b24;\n                  pcVar25 = (code *)PTR_ceil_003a8c20;\n                  if (dVar28 < dVar35) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar35 = (double)(*pcVar25)(dVar35);\n                  iVar10 = (int)dVar35;\nLAB_001c8850:\n                  dVar34 = dVar34 + dVar37;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar35 = (double)(int)unaff_s7;\n                }\n                dVar35 = dVar34 + dVar35;\n                dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                if (dVar35 - dVar30 < dVar31 - dVar35) {\n                  if (dVar35 < dVar27) goto LAB_001c8a44;\n                  if (dVar35 <= dVar28) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar4 = 0x7ffffdff;\n                }\n                else if (dVar27 <= dVar35) {\n                  if (dVar35 <= dVar33) goto LAB_001c8abc;\n                  iVar4 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar4 = -0x7ffffdff;\n                }\n              }" if (parenthesized_expression "(unaff_s4 == 0)" ( (binary_expression "unaff_s4 == 0" identifier == number_literal) )) (compound_statement "{\n                dVar35 = dVar34;\n                if (geometry.x < 1) {\n                  dVar35 = dVar34 - (double)geometry.x;\n                }\n                dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                if (dVar35 - dVar30 < dVar31 - dVar35) {\n                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar35) {\n                    pcVar25 = (code *)PTR_floor_003a9670;\n                    if (dVar35 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar10 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }\nLAB_001c8b04:\n                  dVar34 = dVar34 + dVar37;\n                  iVar10 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;\nLAB_001c8708:\n                  dVar35 = (double)(int)unaff_s7;\n                }\n                else {\n                  if (dVar35 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar25 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar35) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar35 = (double)(*pcVar25)(dVar35);\n                  iVar10 = (int)dVar35;\nLAB_001c8700:\n                  dVar34 = dVar34 + dVar37;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar35 = 0.0;\n                }\n                dVar35 = dVar34 + dVar35;\n                dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                if (dVar35 - dVar30 < dVar31 - dVar35) {\n                  if (dVar35 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar35) goto LAB_001c88b8;\nLAB_001c8768:\n                  dVar35 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                  iVar4 = (int)dVar35;\n                }\n                else {\n                  if (dVar35 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar35) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar35 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                  iVar4 = (int)dVar35;\n                }\n              }" { (expression_statement "dVar35 = dVar34;" (assignment_expression "dVar35 = dVar34" identifier = identifier) ;) (if_statement "if (geometry.x < 1) {\n                  dVar35 = dVar34 - (double)geometry.x;\n                }" if (parenthesized_expression "(geometry.x < 1)" ( (binary_expression "geometry.x < 1" (field_expression "geometry.x" identifier . field_identifier) < number_literal) )) (compound_statement "{\n                  dVar35 = dVar34 - (double)geometry.x;\n                }" { (expression_statement "dVar35 = dVar34 - (double)geometry.x;" (assignment_expression "dVar35 = dVar34 - (double)geometry.x" identifier = (binary_expression "dVar34 - (double)geometry.x" identifier - (cast_expression "(double)geometry.x" ( (type_descriptor "double" primitive_type) ) (field_expression "geometry.x" identifier . field_identifier)))) ;) })) (expression_statement "dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);" (assignment_expression "dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35)" identifier = (cast_expression "(double)(*(code *)PTR_floor_003a9670)(dVar35)" ( (type_descriptor "double" primitive_type) ) (call_expression "(*(code *)PTR_floor_003a9670)(dVar35)" (parenthesized_expression "(*(code *)PTR_floor_003a9670)" ( (pointer_expression "*(code *)PTR_floor_003a9670" * (cast_expression "(code *)PTR_floor_003a9670" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(dVar35)" ( identifier ))))) ;) (expression_statement "dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);" (assignment_expression "dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35)" identifier = (cast_expression "(double)(*(code *)PTR_ceil_003a8c20)(dVar35)" ( (type_descriptor "double" primitive_type) ) (call_expression "(*(code *)PTR_ceil_003a8c20)(dVar35)" (parenthesized_expression "(*(code *)PTR_ceil_003a8c20)" ( (pointer_expression "*(code *)PTR_ceil_003a8c20" * (cast_expression "(code *)PTR_ceil_003a8c20" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(dVar35)" ( identifier ))))) ;) (if_statement "if (dVar35 - dVar30 < dVar31 - dVar35) {\n                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar35) {\n                    pcVar25 = (code *)PTR_floor_003a9670;\n                    if (dVar35 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar10 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }\nLAB_001c8b04:\n                  dVar34 = dVar34 + dVar37;\n                  iVar10 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;\nLAB_001c8708:\n                  dVar35 = (double)(int)unaff_s7;\n                }\n                else {\n                  if (dVar35 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar25 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar35) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar35 = (double)(*pcVar25)(dVar35);\n                  iVar10 = (int)dVar35;\nLAB_001c8700:\n                  dVar34 = dVar34 + dVar37;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar35 = 0.0;\n                }" if (parenthesized_expression "(dVar35 - dVar30 < dVar31 - dVar35)" ( (binary_expression "dVar35 - dVar30 < dVar31 - dVar35" (binary_expression "dVar35 - dVar30" identifier - identifier) < (binary_expression "dVar31 - dVar35" identifier - identifier)) )) (compound_statement "{\n                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar35) {\n                    pcVar25 = (code *)PTR_floor_003a9670;\n                    if (dVar35 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar10 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }\nLAB_001c8b04:\n                  dVar34 = dVar34 + dVar37;\n                  iVar10 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;\nLAB_001c8708:\n                  dVar35 = (double)(int)unaff_s7;\n                }" { (if_statement "if (*(double *)((int)unaff_s3 + 0x4780) <= dVar35) {\n                    pcVar25 = (code *)PTR_floor_003a9670;\n                    if (dVar35 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar10 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }" if (parenthesized_expression "(*(double *)((int)unaff_s3 + 0x4780) <= dVar35)" ( (binary_expression "*(double *)((int)unaff_s3 + 0x4780) <= dVar35" (pointer_expression "*(double *)((int)unaff_s3 + 0x4780)" * (cast_expression "(double *)((int)unaff_s3 + 0x4780)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s3 + 0x4780)" ( (binary_expression "(int)unaff_s3 + 0x4780" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) <= identifier) )) (compound_statement "{\n                    pcVar25 = (code *)PTR_floor_003a9670;\n                    if (dVar35 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar10 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }" { (expression_statement "pcVar25 = (code *)PTR_floor_003a9670;" (assignment_expression "pcVar25 = (code *)PTR_floor_003a9670" identifier = (cast_expression "(code *)PTR_floor_003a9670" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (if_statement "if (dVar35 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;" if (parenthesized_expression "(dVar35 <= *(double *)((int)unaff_s3 + 0x4788))" ( (binary_expression "dVar35 <= *(double *)((int)unaff_s3 + 0x4788)" identifier <= (pointer_expression "*(double *)((int)unaff_s3 + 0x4788)" * (cast_expression "(double *)((int)unaff_s3 + 0x4788)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s3 + 0x4788)" ( (binary_expression "(int)unaff_s3 + 0x4788" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) )) (goto_statement "goto LAB_001c86e8;" goto statement_identifier ;)) (labeled_statement "LAB_001c8c78:\n                    iVar10 = 0x7ffffdff;" statement_identifier : (expression_statement "iVar10 = 0x7ffffdff;" (assignment_expression "iVar10 = 0x7ffffdff" identifier = number_literal) ;)) (goto_statement "goto LAB_001c8700;" goto statement_identifier ;) })) (labeled_statement "LAB_001c8b04:\n                  dVar34 = dVar34 + dVar37;" statement_identifier : (expression_statement "dVar34 = dVar34 + dVar37;" (assignment_expression "dVar34 = dVar34 + dVar37" identifier = (binary_expression "dVar34 + dVar37" identifier + identifier)) ;)) (expression_statement "iVar10 = -0x7ffffdff;" (assignment_expression "iVar10 = -0x7ffffdff" identifier = number_literal) ;) (if_statement "if ((int)unaff_s7 < 0) goto LAB_001c8b14;" if (parenthesized_expression "((int)unaff_s7 < 0)" ( (binary_expression "(int)unaff_s7 < 0" (cast_expression "(int)unaff_s7" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (goto_statement "goto LAB_001c8b14;" goto statement_identifier ;)) (labeled_statement "LAB_001c8708:\n                  dVar35 = (double)(int)unaff_s7;" statement_identifier : (expression_statement "dVar35 = (double)(int)unaff_s7;" (assignment_expression "dVar35 = (double)(int)unaff_s7" identifier = (cast_expression "(double)(int)unaff_s7" ( (type_descriptor "double" primitive_type) ) (cast_expression "(int)unaff_s7" ( (type_descriptor "int" primitive_type) ) identifier))) ;)) }) (else_clause "else {\n                  if (dVar35 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar25 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar35) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar35 = (double)(*pcVar25)(dVar35);\n                  iVar10 = (int)dVar35;\nLAB_001c8700:\n                  dVar34 = dVar34 + dVar37;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar35 = 0.0;\n                }" else (compound_statement "{\n                  if (dVar35 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar25 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar35) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar35 = (double)(*pcVar25)(dVar35);\n                  iVar10 = (int)dVar35;\nLAB_001c8700:\n                  dVar34 = dVar34 + dVar37;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar35 = 0.0;\n                }" { (if_statement "if (dVar35 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;" if (parenthesized_expression "(dVar35 < *(double *)((int)unaff_s3 + 0x4780))" ( (binary_expression "dVar35 < *(double *)((int)unaff_s3 + 0x4780)" identifier < (pointer_expression "*(double *)((int)unaff_s3 + 0x4780)" * (cast_expression "(double *)((int)unaff_s3 + 0x4780)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s3 + 0x4780)" ( (binary_expression "(int)unaff_s3 + 0x4780" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) )) (goto_statement "goto LAB_001c8b04;" goto statement_identifier ;)) (expression_statement "pcVar25 = (code *)PTR_ceil_003a8c20;" (assignment_expression "pcVar25 = (code *)PTR_ceil_003a8c20" identifier = (cast_expression "(code *)PTR_ceil_003a8c20" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (if_statement "if (*(double *)((int)unaff_s3 + 0x4788) < dVar35) goto LAB_001c8c78;" if (parenthesized_expression "(*(double *)((int)unaff_s3 + 0x4788) < dVar35)" ( (binary_expression "*(double *)((int)unaff_s3 + 0x4788) < dVar35" (pointer_expression "*(double *)((int)unaff_s3 + 0x4788)" * (cast_expression "(double *)((int)unaff_s3 + 0x4788)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s3 + 0x4788)" ( (binary_expression "(int)unaff_s3 + 0x4788" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) < identifier) )) (goto_statement "goto LAB_001c8c78;" goto statement_identifier ;)) (labeled_statement "LAB_001c86e8:\n                  dVar35 = (double)(*pcVar25)(dVar35);" statement_identifier : (expression_statement "dVar35 = (double)(*pcVar25)(dVar35);" (assignment_expression "dVar35 = (double)(*pcVar25)(dVar35)" identifier = (cast_expression "(double)(*pcVar25)(dVar35)" ( (type_descriptor "double" primitive_type) ) (call_expression "(*pcVar25)(dVar35)" (parenthesized_expression "(*pcVar25)" ( (pointer_expression "*pcVar25" * identifier) )) (argument_list "(dVar35)" ( identifier ))))) ;)) (expression_statement "iVar10 = (int)dVar35;" (assignment_expression "iVar10 = (int)dVar35" identifier = (cast_expression "(int)dVar35" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (labeled_statement "LAB_001c8700:\n                  dVar34 = dVar34 + dVar37;" statement_identifier : (expression_statement "dVar34 = dVar34 + dVar37;" (assignment_expression "dVar34 = dVar34 + dVar37" identifier = (binary_expression "dVar34 + dVar37" identifier + identifier)) ;)) (if_statement "if (-1 < (int)unaff_s7) goto LAB_001c8708;" if (parenthesized_expression "(-1 < (int)unaff_s7)" ( (binary_expression "-1 < (int)unaff_s7" number_literal < (cast_expression "(int)unaff_s7" ( (type_descriptor "int" primitive_type) ) identifier)) )) (goto_statement "goto LAB_001c8708;" goto statement_identifier ;)) (labeled_statement "LAB_001c8b14:\n                  dVar35 = 0.0;" statement_identifier : (expression_statement "dVar35 = 0.0;" (assignment_expression "dVar35 = 0.0" identifier = number_literal) ;)) }))) (expression_statement "dVar35 = dVar34 + dVar35;" (assignment_expression "dVar35 = dVar34 + dVar35" identifier = (binary_expression "dVar34 + dVar35" identifier + identifier)) ;) (expression_statement "dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);" (assignment_expression "dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35)" identifier = (cast_expression "(double)(*(code *)PTR_floor_003a9670)(dVar35)" ( (type_descriptor "double" primitive_type) ) (call_expression "(*(code *)PTR_floor_003a9670)(dVar35)" (parenthesized_expression "(*(code *)PTR_floor_003a9670)" ( (pointer_expression "*(code *)PTR_floor_003a9670" * (cast_expression "(code *)PTR_floor_003a9670" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(dVar35)" ( identifier ))))) ;) (expression_statement "dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);" (assignment_expression "dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35)" identifier = (cast_expression "(double)(*(code *)PTR_ceil_003a8c20)(dVar35)" ( (type_descriptor "double" primitive_type) ) (call_expression "(*(code *)PTR_ceil_003a8c20)(dVar35)" (parenthesized_expression "(*(code *)PTR_ceil_003a8c20)" ( (pointer_expression "*(code *)PTR_ceil_003a8c20" * (cast_expression "(code *)PTR_ceil_003a8c20" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(dVar35)" ( identifier ))))) ;) (if_statement "if (dVar35 - dVar30 < dVar31 - dVar35) {\n                  if (dVar35 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar35) goto LAB_001c88b8;\nLAB_001c8768:\n                  dVar35 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                  iVar4 = (int)dVar35;\n                }\n                else {\n                  if (dVar35 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar35) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar35 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                  iVar4 = (int)dVar35;\n                }" if (parenthesized_expression "(dVar35 - dVar30 < dVar31 - dVar35)" ( (binary_expression "dVar35 - dVar30 < dVar31 - dVar35" (binary_expression "dVar35 - dVar30" identifier - identifier) < (binary_expression "dVar31 - dVar35" identifier - identifier)) )) (compound_statement "{\n                  if (dVar35 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar35) goto LAB_001c88b8;\nLAB_001c8768:\n                  dVar35 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                  iVar4 = (int)dVar35;\n                }" { (if_statement "if (dVar35 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;" if (parenthesized_expression "(dVar35 < *(double *)((int)unaff_s3 + 0x4780))" ( (binary_expression "dVar35 < *(double *)((int)unaff_s3 + 0x4780)" identifier < (pointer_expression "*(double *)((int)unaff_s3 + 0x4780)" * (cast_expression "(double *)((int)unaff_s3 + 0x4780)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s3 + 0x4780)" ( (binary_expression "(int)unaff_s3 + 0x4780" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) )) (goto_statement "goto LAB_001c8a44;" goto statement_identifier ;)) (if_statement "if (*(double *)((int)unaff_s3 + 0x4788) < dVar35) goto LAB_001c88b8;" if (parenthesized_expression "(*(double *)((int)unaff_s3 + 0x4788) < dVar35)" ( (binary_expression "*(double *)((int)unaff_s3 + 0x4788) < dVar35" (pointer_expression "*(double *)((int)unaff_s3 + 0x4788)" * (cast_expression "(double *)((int)unaff_s3 + 0x4788)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s3 + 0x4788)" ( (binary_expression "(int)unaff_s3 + 0x4788" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) < identifier) )) (goto_statement "goto LAB_001c88b8;" goto statement_identifier ;)) (labeled_statement "LAB_001c8768:\n                  dVar35 = (double)(*(code *)PTR_floor_003a9670)(dVar35);" statement_identifier : (expression_statement "dVar35 = (double)(*(code *)PTR_floor_003a9670)(dVar35);" (assignment_expression "dVar35 = (double)(*(code *)PTR_floor_003a9670)(dVar35)" identifier = (cast_expression "(double)(*(code *)PTR_floor_003a9670)(dVar35)" ( (type_descriptor "double" primitive_type) ) (call_expression "(*(code *)PTR_floor_003a9670)(dVar35)" (parenthesized_expression "(*(code *)PTR_floor_003a9670)" ( (pointer_expression "*(code *)PTR_floor_003a9670" * (cast_expression "(code *)PTR_floor_003a9670" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(dVar35)" ( identifier ))))) ;)) (expression_statement "iVar4 = (int)dVar35;" (assignment_expression "iVar4 = (int)dVar35" identifier = (cast_expression "(int)dVar35" ( (type_descriptor "int" primitive_type) ) identifier)) ;) }) (else_clause "else {\n                  if (dVar35 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar35) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar35 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                  iVar4 = (int)dVar35;\n                }" else (compound_statement "{\n                  if (dVar35 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar35) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar35 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                  iVar4 = (int)dVar35;\n                }" { (if_statement "if (dVar35 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;" if (parenthesized_expression "(dVar35 < *(double *)((int)unaff_s3 + 0x4780))" ( (binary_expression "dVar35 < *(double *)((int)unaff_s3 + 0x4780)" identifier < (pointer_expression "*(double *)((int)unaff_s3 + 0x4780)" * (cast_expression "(double *)((int)unaff_s3 + 0x4780)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s3 + 0x4780)" ( (binary_expression "(int)unaff_s3 + 0x4780" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) )) (goto_statement "goto LAB_001c8a44;" goto statement_identifier ;)) (if_statement "if (*(double *)((int)unaff_s3 + 0x4788) < dVar35) goto LAB_001c88b8;" if (parenthesized_expression "(*(double *)((int)unaff_s3 + 0x4788) < dVar35)" ( (binary_expression "*(double *)((int)unaff_s3 + 0x4788) < dVar35" (pointer_expression "*(double *)((int)unaff_s3 + 0x4788)" * (cast_expression "(double *)((int)unaff_s3 + 0x4788)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s3 + 0x4788)" ( (binary_expression "(int)unaff_s3 + 0x4788" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) < identifier) )) (goto_statement "goto LAB_001c88b8;" goto statement_identifier ;)) (labeled_statement "LAB_001c8abc:\n                  dVar35 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);" statement_identifier : (expression_statement "dVar35 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);" (assignment_expression "dVar35 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35)" identifier = (cast_expression "(double)(*(code *)PTR_ceil_003a8c20)(dVar35)" ( (type_descriptor "double" primitive_type) ) (call_expression "(*(code *)PTR_ceil_003a8c20)(dVar35)" (parenthesized_expression "(*(code *)PTR_ceil_003a8c20)" ( (pointer_expression "*(code *)PTR_ceil_003a8c20" * (cast_expression "(code *)PTR_ceil_003a8c20" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(dVar35)" ( identifier ))))) ;)) (expression_statement "iVar4 = (int)dVar35;" (assignment_expression "iVar4 = (int)dVar35" identifier = (cast_expression "(int)dVar35" ( (type_descriptor "int" primitive_type) ) identifier)) ;) }))) }) (else_clause "else {\n                dVar35 = dVar34;\n                if (0 < geometry.x) {\n                  dVar35 = dVar34 - (double)geometry.x;\n                }\n                dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                if (dVar35 - dVar30 < dVar31 - dVar35) {\n                  if (dVar29 <= dVar35) {\n                    pcVar25 = (code *)PTR_floor_003a9670;\n                    if (dVar35 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar10 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar34 = dVar34 + dVar37;\n                  iVar10 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar35 = 0.0;\n                }\n                else {\n                  if (dVar35 < dVar29) goto LAB_001c8b24;\n                  pcVar25 = (code *)PTR_ceil_003a8c20;\n                  if (dVar28 < dVar35) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar35 = (double)(*pcVar25)(dVar35);\n                  iVar10 = (int)dVar35;\nLAB_001c8850:\n                  dVar34 = dVar34 + dVar37;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar35 = (double)(int)unaff_s7;\n                }\n                dVar35 = dVar34 + dVar35;\n                dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                if (dVar35 - dVar30 < dVar31 - dVar35) {\n                  if (dVar35 < dVar27) goto LAB_001c8a44;\n                  if (dVar35 <= dVar28) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar4 = 0x7ffffdff;\n                }\n                else if (dVar27 <= dVar35) {\n                  if (dVar35 <= dVar33) goto LAB_001c8abc;\n                  iVar4 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar4 = -0x7ffffdff;\n                }\n              }" else (compound_statement "{\n                dVar35 = dVar34;\n                if (0 < geometry.x) {\n                  dVar35 = dVar34 - (double)geometry.x;\n                }\n                dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                if (dVar35 - dVar30 < dVar31 - dVar35) {\n                  if (dVar29 <= dVar35) {\n                    pcVar25 = (code *)PTR_floor_003a9670;\n                    if (dVar35 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar10 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar34 = dVar34 + dVar37;\n                  iVar10 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar35 = 0.0;\n                }\n                else {\n                  if (dVar35 < dVar29) goto LAB_001c8b24;\n                  pcVar25 = (code *)PTR_ceil_003a8c20;\n                  if (dVar28 < dVar35) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar35 = (double)(*pcVar25)(dVar35);\n                  iVar10 = (int)dVar35;\nLAB_001c8850:\n                  dVar34 = dVar34 + dVar37;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar35 = (double)(int)unaff_s7;\n                }\n                dVar35 = dVar34 + dVar35;\n                dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);\n                dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);\n                if (dVar35 - dVar30 < dVar31 - dVar35) {\n                  if (dVar35 < dVar27) goto LAB_001c8a44;\n                  if (dVar35 <= dVar28) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar4 = 0x7ffffdff;\n                }\n                else if (dVar27 <= dVar35) {\n                  if (dVar35 <= dVar33) goto LAB_001c8abc;\n                  iVar4 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar4 = -0x7ffffdff;\n                }\n              }" { (expression_statement "dVar35 = dVar34;" (assignment_expression "dVar35 = dVar34" identifier = identifier) ;) (if_statement "if (0 < geometry.x) {\n                  dVar35 = dVar34 - (double)geometry.x;\n                }" if (parenthesized_expression "(0 < geometry.x)" ( (binary_expression "0 < geometry.x" number_literal < (field_expression "geometry.x" identifier . field_identifier)) )) (compound_statement "{\n                  dVar35 = dVar34 - (double)geometry.x;\n                }" { (expression_statement "dVar35 = dVar34 - (double)geometry.x;" (assignment_expression "dVar35 = dVar34 - (double)geometry.x" identifier = (binary_expression "dVar34 - (double)geometry.x" identifier - (cast_expression "(double)geometry.x" ( (type_descriptor "double" primitive_type) ) (field_expression "geometry.x" identifier . field_identifier)))) ;) })) (expression_statement "dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);" (assignment_expression "dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35)" identifier = (cast_expression "(double)(*(code *)PTR_floor_003a9670)(dVar35)" ( (type_descriptor "double" primitive_type) ) (call_expression "(*(code *)PTR_floor_003a9670)(dVar35)" (parenthesized_expression "(*(code *)PTR_floor_003a9670)" ( (pointer_expression "*(code *)PTR_floor_003a9670" * (cast_expression "(code *)PTR_floor_003a9670" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(dVar35)" ( identifier ))))) ;) (expression_statement "dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);" (assignment_expression "dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35)" identifier = (cast_expression "(double)(*(code *)PTR_ceil_003a8c20)(dVar35)" ( (type_descriptor "double" primitive_type) ) (call_expression "(*(code *)PTR_ceil_003a8c20)(dVar35)" (parenthesized_expression "(*(code *)PTR_ceil_003a8c20)" ( (pointer_expression "*(code *)PTR_ceil_003a8c20" * (cast_expression "(code *)PTR_ceil_003a8c20" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(dVar35)" ( identifier ))))) ;) (if_statement "if (dVar35 - dVar30 < dVar31 - dVar35) {\n                  if (dVar29 <= dVar35) {\n                    pcVar25 = (code *)PTR_floor_003a9670;\n                    if (dVar35 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar10 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar34 = dVar34 + dVar37;\n                  iVar10 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar35 = 0.0;\n                }\n                else {\n                  if (dVar35 < dVar29) goto LAB_001c8b24;\n                  pcVar25 = (code *)PTR_ceil_003a8c20;\n                  if (dVar28 < dVar35) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar35 = (double)(*pcVar25)(dVar35);\n                  iVar10 = (int)dVar35;\nLAB_001c8850:\n                  dVar34 = dVar34 + dVar37;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar35 = (double)(int)unaff_s7;\n                }" if (parenthesized_expression "(dVar35 - dVar30 < dVar31 - dVar35)" ( (binary_expression "dVar35 - dVar30 < dVar31 - dVar35" (binary_expression "dVar35 - dVar30" identifier - identifier) < (binary_expression "dVar31 - dVar35" identifier - identifier)) )) (compound_statement "{\n                  if (dVar29 <= dVar35) {\n                    pcVar25 = (code *)PTR_floor_003a9670;\n                    if (dVar35 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar10 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar34 = dVar34 + dVar37;\n                  iVar10 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar35 = 0.0;\n                }" { (if_statement "if (dVar29 <= dVar35) {\n                    pcVar25 = (code *)PTR_floor_003a9670;\n                    if (dVar35 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar10 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }" if (parenthesized_expression "(dVar29 <= dVar35)" ( (binary_expression "dVar29 <= dVar35" identifier <= identifier) )) (compound_statement "{\n                    pcVar25 = (code *)PTR_floor_003a9670;\n                    if (dVar35 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar10 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }" { (expression_statement "pcVar25 = (code *)PTR_floor_003a9670;" (assignment_expression "pcVar25 = (code *)PTR_floor_003a9670" identifier = (cast_expression "(code *)PTR_floor_003a9670" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (if_statement "if (dVar35 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;" if (parenthesized_expression "(dVar35 <= *(double *)((int)unaff_s3 + 0x4788))" ( (binary_expression "dVar35 <= *(double *)((int)unaff_s3 + 0x4788)" identifier <= (pointer_expression "*(double *)((int)unaff_s3 + 0x4788)" * (cast_expression "(double *)((int)unaff_s3 + 0x4788)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s3 + 0x4788)" ( (binary_expression "(int)unaff_s3 + 0x4788" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) )) (goto_statement "goto LAB_001c8838;" goto statement_identifier ;)) (labeled_statement "LAB_001c8c68:\n                    iVar10 = 0x7ffffdff;" statement_identifier : (expression_statement "iVar10 = 0x7ffffdff;" (assignment_expression "iVar10 = 0x7ffffdff" identifier = number_literal) ;)) (goto_statement "goto LAB_001c8850;" goto statement_identifier ;) })) (labeled_statement "LAB_001c8b24:\n                  dVar34 = dVar34 + dVar37;" statement_identifier : (expression_statement "dVar34 = dVar34 + dVar37;" (assignment_expression "dVar34 = dVar34 + dVar37" identifier = (binary_expression "dVar34 + dVar37" identifier + identifier)) ;)) (expression_statement "iVar10 = -0x7ffffdff;" (assignment_expression "iVar10 = -0x7ffffdff" identifier = number_literal) ;) (if_statement "if ((int)unaff_s7 < 0) goto LAB_001c8b34;" if (parenthesized_expression "((int)unaff_s7 < 0)" ( (binary_expression "(int)unaff_s7 < 0" (cast_expression "(int)unaff_s7" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (goto_statement "goto LAB_001c8b34;" goto statement_identifier ;)) (labeled_statement "LAB_001c8858:\n                  dVar35 = 0.0;" statement_identifier : (expression_statement "dVar35 = 0.0;" (assignment_expression "dVar35 = 0.0" identifier = number_literal) ;)) }) (else_clause "else {\n                  if (dVar35 < dVar29) goto LAB_001c8b24;\n                  pcVar25 = (code *)PTR_ceil_003a8c20;\n                  if (dVar28 < dVar35) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar35 = (double)(*pcVar25)(dVar35);\n                  iVar10 = (int)dVar35;\nLAB_001c8850:\n                  dVar34 = dVar34 + dVar37;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar35 = (double)(int)unaff_s7;\n                }" else (compound_statement "{\n                  if (dVar35 < dVar29) goto LAB_001c8b24;\n                  pcVar25 = (code *)PTR_ceil_003a8c20;\n                  if (dVar28 < dVar35) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar35 = (double)(*pcVar25)(dVar35);\n                  iVar10 = (int)dVar35;\nLAB_001c8850:\n                  dVar34 = dVar34 + dVar37;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar35 = (double)(int)unaff_s7;\n                }" { (if_statement "if (dVar35 < dVar29) goto LAB_001c8b24;" if (parenthesized_expression "(dVar35 < dVar29)" ( (binary_expression "dVar35 < dVar29" identifier < identifier) )) (goto_statement "goto LAB_001c8b24;" goto statement_identifier ;)) (expression_statement "pcVar25 = (code *)PTR_ceil_003a8c20;" (assignment_expression "pcVar25 = (code *)PTR_ceil_003a8c20" identifier = (cast_expression "(code *)PTR_ceil_003a8c20" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (if_statement "if (dVar28 < dVar35) goto LAB_001c8c68;" if (parenthesized_expression "(dVar28 < dVar35)" ( (binary_expression "dVar28 < dVar35" identifier < identifier) )) (goto_statement "goto LAB_001c8c68;" goto statement_identifier ;)) (labeled_statement "LAB_001c8838:\n                  dVar35 = (double)(*pcVar25)(dVar35);" statement_identifier : (expression_statement "dVar35 = (double)(*pcVar25)(dVar35);" (assignment_expression "dVar35 = (double)(*pcVar25)(dVar35)" identifier = (cast_expression "(double)(*pcVar25)(dVar35)" ( (type_descriptor "double" primitive_type) ) (call_expression "(*pcVar25)(dVar35)" (parenthesized_expression "(*pcVar25)" ( (pointer_expression "*pcVar25" * identifier) )) (argument_list "(dVar35)" ( identifier ))))) ;)) (expression_statement "iVar10 = (int)dVar35;" (assignment_expression "iVar10 = (int)dVar35" identifier = (cast_expression "(int)dVar35" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (labeled_statement "LAB_001c8850:\n                  dVar34 = dVar34 + dVar37;" statement_identifier : (expression_statement "dVar34 = dVar34 + dVar37;" (assignment_expression "dVar34 = dVar34 + dVar37" identifier = (binary_expression "dVar34 + dVar37" identifier + identifier)) ;)) (if_statement "if (-1 < (int)unaff_s7) goto LAB_001c8858;" if (parenthesized_expression "(-1 < (int)unaff_s7)" ( (binary_expression "-1 < (int)unaff_s7" number_literal < (cast_expression "(int)unaff_s7" ( (type_descriptor "int" primitive_type) ) identifier)) )) (goto_statement "goto LAB_001c8858;" goto statement_identifier ;)) (labeled_statement "LAB_001c8b34:\n                  dVar35 = (double)(int)unaff_s7;" statement_identifier : (expression_statement "dVar35 = (double)(int)unaff_s7;" (assignment_expression "dVar35 = (double)(int)unaff_s7" identifier = (cast_expression "(double)(int)unaff_s7" ( (type_descriptor "double" primitive_type) ) (cast_expression "(int)unaff_s7" ( (type_descriptor "int" primitive_type) ) identifier))) ;)) }))) (expression_statement "dVar35 = dVar34 + dVar35;" (assignment_expression "dVar35 = dVar34 + dVar35" identifier = (binary_expression "dVar34 + dVar35" identifier + identifier)) ;) (expression_statement "dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35);" (assignment_expression "dVar30 = (double)(*(code *)PTR_floor_003a9670)(dVar35)" identifier = (cast_expression "(double)(*(code *)PTR_floor_003a9670)(dVar35)" ( (type_descriptor "double" primitive_type) ) (call_expression "(*(code *)PTR_floor_003a9670)(dVar35)" (parenthesized_expression "(*(code *)PTR_floor_003a9670)" ( (pointer_expression "*(code *)PTR_floor_003a9670" * (cast_expression "(code *)PTR_floor_003a9670" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(dVar35)" ( identifier ))))) ;) (expression_statement "dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35);" (assignment_expression "dVar31 = (double)(*(code *)PTR_ceil_003a8c20)(dVar35)" identifier = (cast_expression "(double)(*(code *)PTR_ceil_003a8c20)(dVar35)" ( (type_descriptor "double" primitive_type) ) (call_expression "(*(code *)PTR_ceil_003a8c20)(dVar35)" (parenthesized_expression "(*(code *)PTR_ceil_003a8c20)" ( (pointer_expression "*(code *)PTR_ceil_003a8c20" * (cast_expression "(code *)PTR_ceil_003a8c20" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(dVar35)" ( identifier ))))) ;) (if_statement "if (dVar35 - dVar30 < dVar31 - dVar35) {\n                  if (dVar35 < dVar27) goto LAB_001c8a44;\n                  if (dVar35 <= dVar28) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar4 = 0x7ffffdff;\n                }\n                else if (dVar27 <= dVar35) {\n                  if (dVar35 <= dVar33) goto LAB_001c8abc;\n                  iVar4 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar4 = -0x7ffffdff;\n                }" if (parenthesized_expression "(dVar35 - dVar30 < dVar31 - dVar35)" ( (binary_expression "dVar35 - dVar30 < dVar31 - dVar35" (binary_expression "dVar35 - dVar30" identifier - identifier) < (binary_expression "dVar31 - dVar35" identifier - identifier)) )) (compound_statement "{\n                  if (dVar35 < dVar27) goto LAB_001c8a44;\n                  if (dVar35 <= dVar28) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar4 = 0x7ffffdff;\n                }" { (if_statement "if (dVar35 < dVar27) goto LAB_001c8a44;" if (parenthesized_expression "(dVar35 < dVar27)" ( (binary_expression "dVar35 < dVar27" identifier < identifier) )) (goto_statement "goto LAB_001c8a44;" goto statement_identifier ;)) (if_statement "if (dVar35 <= dVar28) goto LAB_001c8768;" if (parenthesized_expression "(dVar35 <= dVar28)" ( (binary_expression "dVar35 <= dVar28" identifier <= identifier) )) (goto_statement "goto LAB_001c8768;" goto statement_identifier ;)) (labeled_statement "LAB_001c88b8:\n                  iVar4 = 0x7ffffdff;" statement_identifier : (expression_statement "iVar4 = 0x7ffffdff;" (assignment_expression "iVar4 = 0x7ffffdff" identifier = number_literal) ;)) }) (else_clause "else if (dVar27 <= dVar35) {\n                  if (dVar35 <= dVar33) goto LAB_001c8abc;\n                  iVar4 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar4 = -0x7ffffdff;\n                }" else (if_statement "if (dVar27 <= dVar35) {\n                  if (dVar35 <= dVar33) goto LAB_001c8abc;\n                  iVar4 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar4 = -0x7ffffdff;\n                }" if (parenthesized_expression "(dVar27 <= dVar35)" ( (binary_expression "dVar27 <= dVar35" identifier <= identifier) )) (compound_statement "{\n                  if (dVar35 <= dVar33) goto LAB_001c8abc;\n                  iVar4 = 0x7ffffdff;\n                }" { (if_statement "if (dVar35 <= dVar33) goto LAB_001c8abc;" if (parenthesized_expression "(dVar35 <= dVar33)" ( (binary_expression "dVar35 <= dVar33" identifier <= identifier) )) (goto_statement "goto LAB_001c8abc;" goto statement_identifier ;)) (expression_statement "iVar4 = 0x7ffffdff;" (assignment_expression "iVar4 = 0x7ffffdff" identifier = number_literal) ;) }) (else_clause "else {\nLAB_001c8a44:\n                  iVar4 = -0x7ffffdff;\n                }" else (compound_statement "{\nLAB_001c8a44:\n                  iVar4 = -0x7ffffdff;\n                }" { (labeled_statement "LAB_001c8a44:\n                  iVar4 = -0x7ffffdff;" statement_identifier : (expression_statement "iVar4 = -0x7ffffdff;" (assignment_expression "iVar4 = -0x7ffffdff" identifier = number_literal) ;)) }))))) }))) (expression_statement "unaff_s8 = (Image **)(iVar4 - iVar10);" (assignment_expression "unaff_s8 = (Image **)(iVar4 - iVar10)" identifier = (cast_expression "(Image **)(iVar4 - iVar10)" ( (type_descriptor "Image **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar4 - iVar10)" ( (binary_expression "iVar4 - iVar10" identifier - identifier) )))) ;) (expression_statement "crop_geometry = (char *)((image->page).x + iVar10);" (assignment_expression "crop_geometry = (char *)((image->page).x + iVar10)" identifier = (cast_expression "(char *)((image->page).x + iVar10)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((image->page).x + iVar10)" ( (binary_expression "(image->page).x + iVar10" (field_expression "(image->page).x" (parenthesized_expression "(image->page)" ( (field_expression "image->page" identifier -> field_identifier) )) . field_identifier) + identifier) )))) ;) (expression_statement "crop.width = (size_t)unaff_s8;" (assignment_expression "crop.width = (size_t)unaff_s8" (field_expression "crop.width" identifier . field_identifier) = (cast_expression "(size_t)unaff_s8" ( (type_descriptor "size_t" primitive_type) ) identifier)) ;) (expression_statement "crop.x = (ssize_t)crop_geometry;" (assignment_expression "crop.x = (ssize_t)crop_geometry" (field_expression "crop.x" identifier . field_identifier) = (cast_expression "(ssize_t)crop_geometry" ( (type_descriptor "ssize_t" primitive_type) ) identifier)) ;) (expression_statement "iVar10 = (*(code *)PTR_CropImage_003a90b8)(image,unaff_s6,exception);" (assignment_expression "iVar10 = (*(code *)PTR_CropImage_003a90b8)(image,unaff_s6,exception)" identifier = (call_expression "(*(code *)PTR_CropImage_003a90b8)(image,unaff_s6,exception)" (parenthesized_expression "(*(code *)PTR_CropImage_003a90b8)" ( (pointer_expression "*(code *)PTR_CropImage_003a90b8" * (cast_expression "(code *)PTR_CropImage_003a90b8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(image,unaff_s6,exception)" ( identifier , identifier , identifier )))) ;) (if_statement "if (iVar10 != 0) {\n                (*(code *)PTR_AppendImageToList_003a9880)(&crop_image,iVar10);\n              }" if (parenthesized_expression "(iVar10 != 0)" ( (binary_expression "iVar10 != 0" identifier != number_literal) )) (compound_statement "{\n                (*(code *)PTR_AppendImageToList_003a9880)(&crop_image,iVar10);\n              }" { (expression_statement "(*(code *)PTR_AppendImageToList_003a9880)(&crop_image,iVar10);" (call_expression "(*(code *)PTR_AppendImageToList_003a9880)(&crop_image,iVar10)" (parenthesized_expression "(*(code *)PTR_AppendImageToList_003a9880)" ( (pointer_expression "*(code *)PTR_AppendImageToList_003a9880" * (cast_expression "(code *)PTR_AppendImageToList_003a9880" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(&crop_image,iVar10)" ( (pointer_expression "&crop_image" & identifier) , identifier ))) ;) })) }) while (parenthesized_expression "(dVar34 < dVar36)" ( (binary_expression "dVar34 < dVar36" identifier < identifier) )) ;) })) (expression_statement "unaff_s5 = (undefined *)unaff_s3;" (assignment_expression "unaff_s5 = (undefined *)unaff_s3" identifier = (cast_expression "(undefined *)unaff_s3" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (if_statement "if (local_c8 <= dVar32) break;" if (parenthesized_expression "(local_c8 <= dVar32)" ( (binary_expression "local_c8 <= dVar32" identifier <= identifier) )) (break_statement "break;" break ;)) (if_statement "if (unaff_s4 == 0) goto LAB_001c854c;" if (parenthesized_expression "(unaff_s4 == 0)" ( (binary_expression "unaff_s4 == 0" identifier == number_literal) )) (goto_statement "goto LAB_001c854c;" goto statement_identifier ;)) (labeled_statement "LAB_001c8b70:\n          unaff_s7 = (Image *)geometry.y;" statement_identifier : (expression_statement "unaff_s7 = (Image *)geometry.y;" (assignment_expression "unaff_s7 = (Image *)geometry.y" identifier = (cast_expression "(Image *)geometry.y" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "geometry.y" identifier . field_identifier))) ;)) (expression_statement "dVar34 = dVar32;" (assignment_expression "dVar34 = dVar32" identifier = identifier) ;) (if_statement "if (0 < geometry.y) {\n            dVar34 = dVar32 - (double)geometry.y;\n          }" if (parenthesized_expression "(0 < geometry.y)" ( (binary_expression "0 < geometry.y" number_literal < (field_expression "geometry.y" identifier . field_identifier)) )) (compound_statement "{\n            dVar34 = dVar32 - (double)geometry.y;\n          }" { (expression_statement "dVar34 = dVar32 - (double)geometry.y;" (assignment_expression "dVar34 = dVar32 - (double)geometry.y" identifier = (binary_expression "dVar32 - (double)geometry.y" identifier - (cast_expression "(double)geometry.y" ( (type_descriptor "double" primitive_type) ) (field_expression "geometry.y" identifier . field_identifier)))) ;) })) (expression_statement "dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar34);" (assignment_expression "dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar34)" identifier = (cast_expression "(double)(*(code *)PTR_floor_003a9670)(dVar34)" ( (type_descriptor "double" primitive_type) ) (call_expression "(*(code *)PTR_floor_003a9670)(dVar34)" (parenthesized_expression "(*(code *)PTR_floor_003a9670)" ( (pointer_expression "*(code *)PTR_floor_003a9670" * (cast_expression "(code *)PTR_floor_003a9670" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(dVar34)" ( identifier ))))) ;) (expression_statement "dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar34);" (assignment_expression "dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar34)" identifier = (cast_expression "(double)(*(code *)PTR_ceil_003a8c20)(dVar34)" ( (type_descriptor "double" primitive_type) ) (call_expression "(*(code *)PTR_ceil_003a8c20)(dVar34)" (parenthesized_expression "(*(code *)PTR_ceil_003a8c20)" ( (pointer_expression "*(code *)PTR_ceil_003a8c20" * (cast_expression "(code *)PTR_ceil_003a8c20" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(dVar34)" ( identifier ))))) ;) (if_statement "if (dVar34 - dVar28 < dVar29 - dVar34) {\n            if (dVar34 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d8c;\n            pcVar25 = (code *)PTR_floor_003a9670;\n            if (*(double *)((int)unaff_s3 + 0x4788) < dVar34) goto LAB_001c8d50;\nLAB_001c8bd8:\n            dVar34 = (double)(*pcVar25)(dVar34);\n            iVar10 = (int)dVar34;\nLAB_001c8bf0:\n            dVar32 = dVar32 + local_a0;\n            if (-2 < (int)unaff_s7) goto LAB_001c8c00;\nLAB_001c8d6c:\n            dVar34 = (double)(int)unaff_s7;\n          }\n          else {\n            if (dVar34 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d8c:\n              iVar10 = -0x7ffffdff;\n              goto LAB_001c8bf0;\n            }\n            pcVar25 = (code *)PTR_ceil_003a8c20;\n            if (dVar34 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8bd8;\nLAB_001c8d50:\n            iVar10 = 0x7ffffdff;\n            dVar32 = dVar32 + local_a0;\n            if ((int)unaff_s7 < -1) goto LAB_001c8d6c;\nLAB_001c8c00:\n            dVar34 = 0.0;\n          }" if (parenthesized_expression "(dVar34 - dVar28 < dVar29 - dVar34)" ( (binary_expression "dVar34 - dVar28 < dVar29 - dVar34" (binary_expression "dVar34 - dVar28" identifier - identifier) < (binary_expression "dVar29 - dVar34" identifier - identifier)) )) (compound_statement "{\n            if (dVar34 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d8c;\n            pcVar25 = (code *)PTR_floor_003a9670;\n            if (*(double *)((int)unaff_s3 + 0x4788) < dVar34) goto LAB_001c8d50;\nLAB_001c8bd8:\n            dVar34 = (double)(*pcVar25)(dVar34);\n            iVar10 = (int)dVar34;\nLAB_001c8bf0:\n            dVar32 = dVar32 + local_a0;\n            if (-2 < (int)unaff_s7) goto LAB_001c8c00;\nLAB_001c8d6c:\n            dVar34 = (double)(int)unaff_s7;\n          }" { (if_statement "if (dVar34 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d8c;" if (parenthesized_expression "(dVar34 < *(double *)((int)unaff_s3 + 0x4780))" ( (binary_expression "dVar34 < *(double *)((int)unaff_s3 + 0x4780)" identifier < (pointer_expression "*(double *)((int)unaff_s3 + 0x4780)" * (cast_expression "(double *)((int)unaff_s3 + 0x4780)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s3 + 0x4780)" ( (binary_expression "(int)unaff_s3 + 0x4780" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) )) (goto_statement "goto LAB_001c8d8c;" goto statement_identifier ;)) (expression_statement "pcVar25 = (code *)PTR_floor_003a9670;" (assignment_expression "pcVar25 = (code *)PTR_floor_003a9670" identifier = (cast_expression "(code *)PTR_floor_003a9670" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (if_statement "if (*(double *)((int)unaff_s3 + 0x4788) < dVar34) goto LAB_001c8d50;" if (parenthesized_expression "(*(double *)((int)unaff_s3 + 0x4788) < dVar34)" ( (binary_expression "*(double *)((int)unaff_s3 + 0x4788) < dVar34" (pointer_expression "*(double *)((int)unaff_s3 + 0x4788)" * (cast_expression "(double *)((int)unaff_s3 + 0x4788)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s3 + 0x4788)" ( (binary_expression "(int)unaff_s3 + 0x4788" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) < identifier) )) (goto_statement "goto LAB_001c8d50;" goto statement_identifier ;)) (labeled_statement "LAB_001c8bd8:\n            dVar34 = (double)(*pcVar25)(dVar34);" statement_identifier : (expression_statement "dVar34 = (double)(*pcVar25)(dVar34);" (assignment_expression "dVar34 = (double)(*pcVar25)(dVar34)" identifier = (cast_expression "(double)(*pcVar25)(dVar34)" ( (type_descriptor "double" primitive_type) ) (call_expression "(*pcVar25)(dVar34)" (parenthesized_expression "(*pcVar25)" ( (pointer_expression "*pcVar25" * identifier) )) (argument_list "(dVar34)" ( identifier ))))) ;)) (expression_statement "iVar10 = (int)dVar34;" (assignment_expression "iVar10 = (int)dVar34" identifier = (cast_expression "(int)dVar34" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (labeled_statement "LAB_001c8bf0:\n            dVar32 = dVar32 + local_a0;" statement_identifier : (expression_statement "dVar32 = dVar32 + local_a0;" (assignment_expression "dVar32 = dVar32 + local_a0" identifier = (binary_expression "dVar32 + local_a0" identifier + identifier)) ;)) (if_statement "if (-2 < (int)unaff_s7) goto LAB_001c8c00;" if (parenthesized_expression "(-2 < (int)unaff_s7)" ( (binary_expression "-2 < (int)unaff_s7" number_literal < (cast_expression "(int)unaff_s7" ( (type_descriptor "int" primitive_type) ) identifier)) )) (goto_statement "goto LAB_001c8c00;" goto statement_identifier ;)) (labeled_statement "LAB_001c8d6c:\n            dVar34 = (double)(int)unaff_s7;" statement_identifier : (expression_statement "dVar34 = (double)(int)unaff_s7;" (assignment_expression "dVar34 = (double)(int)unaff_s7" identifier = (cast_expression "(double)(int)unaff_s7" ( (type_descriptor "double" primitive_type) ) (cast_expression "(int)unaff_s7" ( (type_descriptor "int" primitive_type) ) identifier))) ;)) }) (else_clause "else {\n            if (dVar34 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d8c:\n              iVar10 = -0x7ffffdff;\n              goto LAB_001c8bf0;\n            }\n            pcVar25 = (code *)PTR_ceil_003a8c20;\n            if (dVar34 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8bd8;\nLAB_001c8d50:\n            iVar10 = 0x7ffffdff;\n            dVar32 = dVar32 + local_a0;\n            if ((int)unaff_s7 < -1) goto LAB_001c8d6c;\nLAB_001c8c00:\n            dVar34 = 0.0;\n          }" else (compound_statement "{\n            if (dVar34 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d8c:\n              iVar10 = -0x7ffffdff;\n              goto LAB_001c8bf0;\n            }\n            pcVar25 = (code *)PTR_ceil_003a8c20;\n            if (dVar34 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8bd8;\nLAB_001c8d50:\n            iVar10 = 0x7ffffdff;\n            dVar32 = dVar32 + local_a0;\n            if ((int)unaff_s7 < -1) goto LAB_001c8d6c;\nLAB_001c8c00:\n            dVar34 = 0.0;\n          }" { (if_statement "if (dVar34 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d8c:\n              iVar10 = -0x7ffffdff;\n              goto LAB_001c8bf0;\n            }" if (parenthesized_expression "(dVar34 < *(double *)((int)unaff_s3 + 0x4780))" ( (binary_expression "dVar34 < *(double *)((int)unaff_s3 + 0x4780)" identifier < (pointer_expression "*(double *)((int)unaff_s3 + 0x4780)" * (cast_expression "(double *)((int)unaff_s3 + 0x4780)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s3 + 0x4780)" ( (binary_expression "(int)unaff_s3 + 0x4780" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) )) (compound_statement "{\nLAB_001c8d8c:\n              iVar10 = -0x7ffffdff;\n              goto LAB_001c8bf0;\n            }" { (labeled_statement "LAB_001c8d8c:\n              iVar10 = -0x7ffffdff;" statement_identifier : (expression_statement "iVar10 = -0x7ffffdff;" (assignment_expression "iVar10 = -0x7ffffdff" identifier = number_literal) ;)) (goto_statement "goto LAB_001c8bf0;" goto statement_identifier ;) })) (expression_statement "pcVar25 = (code *)PTR_ceil_003a8c20;" (assignment_expression "pcVar25 = (code *)PTR_ceil_003a8c20" identifier = (cast_expression "(code *)PTR_ceil_003a8c20" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (if_statement "if (dVar34 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8bd8;" if (parenthesized_expression "(dVar34 <= *(double *)((int)unaff_s3 + 0x4788))" ( (binary_expression "dVar34 <= *(double *)((int)unaff_s3 + 0x4788)" identifier <= (pointer_expression "*(double *)((int)unaff_s3 + 0x4788)" * (cast_expression "(double *)((int)unaff_s3 + 0x4788)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s3 + 0x4788)" ( (binary_expression "(int)unaff_s3 + 0x4788" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) )) (goto_statement "goto LAB_001c8bd8;" goto statement_identifier ;)) (labeled_statement "LAB_001c8d50:\n            iVar10 = 0x7ffffdff;" statement_identifier : (expression_statement "iVar10 = 0x7ffffdff;" (assignment_expression "iVar10 = 0x7ffffdff" identifier = number_literal) ;)) (expression_statement "dVar32 = dVar32 + local_a0;" (assignment_expression "dVar32 = dVar32 + local_a0" identifier = (binary_expression "dVar32 + local_a0" identifier + identifier)) ;) (if_statement "if ((int)unaff_s7 < -1) goto LAB_001c8d6c;" if (parenthesized_expression "((int)unaff_s7 < -1)" ( (binary_expression "(int)unaff_s7 < -1" (cast_expression "(int)unaff_s7" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (goto_statement "goto LAB_001c8d6c;" goto statement_identifier ;)) (labeled_statement "LAB_001c8c00:\n            dVar34 = 0.0;" statement_identifier : (expression_statement "dVar34 = 0.0;" (assignment_expression "dVar34 = 0.0" identifier = number_literal) ;)) }))) (expression_statement "dVar34 = dVar32 + dVar34;" (assignment_expression "dVar34 = dVar32 + dVar34" identifier = (binary_expression "dVar32 + dVar34" identifier + identifier)) ;) (expression_statement "dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar34);" (assignment_expression "dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar34)" identifier = (cast_expression "(double)(*(code *)PTR_floor_003a9670)(dVar34)" ( (type_descriptor "double" primitive_type) ) (call_expression "(*(code *)PTR_floor_003a9670)(dVar34)" (parenthesized_expression "(*(code *)PTR_floor_003a9670)" ( (pointer_expression "*(code *)PTR_floor_003a9670" * (cast_expression "(code *)PTR_floor_003a9670" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(dVar34)" ( identifier ))))) ;) (expression_statement "dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar34);" (assignment_expression "dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar34)" identifier = (cast_expression "(double)(*(code *)PTR_ceil_003a8c20)(dVar34)" ( (type_descriptor "double" primitive_type) ) (call_expression "(*(code *)PTR_ceil_003a8c20)(dVar34)" (parenthesized_expression "(*(code *)PTR_ceil_003a8c20)" ( (pointer_expression "*(code *)PTR_ceil_003a8c20" * (cast_expression "(code *)PTR_ceil_003a8c20" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(dVar34)" ( identifier ))))) ;) (if_statement "if (dVar34 - dVar28 < dVar29 - dVar34) {\n            if (*(double *)((int)unaff_s3 + 0x4780) <= dVar34) {\n              if (*(double *)((int)unaff_s3 + 0x4788) < dVar34) {\nLAB_001c8cec:\n                iVar4 = 0x7ffffdff;\n              }\n              else {\nLAB_001c8630:\n                dVar34 = (double)(*(code *)PTR_floor_003a9670)(dVar34);\n                iVar4 = (int)dVar34;\n              }\n              goto LAB_001c8644;\n            }\n            goto LAB_001c8c88;\n          }" if (parenthesized_expression "(dVar34 - dVar28 < dVar29 - dVar34)" ( (binary_expression "dVar34 - dVar28 < dVar29 - dVar34" (binary_expression "dVar34 - dVar28" identifier - identifier) < (binary_expression "dVar29 - dVar34" identifier - identifier)) )) (compound_statement "{\n            if (*(double *)((int)unaff_s3 + 0x4780) <= dVar34) {\n              if (*(double *)((int)unaff_s3 + 0x4788) < dVar34) {\nLAB_001c8cec:\n                iVar4 = 0x7ffffdff;\n              }\n              else {\nLAB_001c8630:\n                dVar34 = (double)(*(code *)PTR_floor_003a9670)(dVar34);\n                iVar4 = (int)dVar34;\n              }\n              goto LAB_001c8644;\n            }\n            goto LAB_001c8c88;\n          }" { (if_statement "if (*(double *)((int)unaff_s3 + 0x4780) <= dVar34) {\n              if (*(double *)((int)unaff_s3 + 0x4788) < dVar34) {\nLAB_001c8cec:\n                iVar4 = 0x7ffffdff;\n              }\n              else {\nLAB_001c8630:\n                dVar34 = (double)(*(code *)PTR_floor_003a9670)(dVar34);\n                iVar4 = (int)dVar34;\n              }\n              goto LAB_001c8644;\n            }" if (parenthesized_expression "(*(double *)((int)unaff_s3 + 0x4780) <= dVar34)" ( (binary_expression "*(double *)((int)unaff_s3 + 0x4780) <= dVar34" (pointer_expression "*(double *)((int)unaff_s3 + 0x4780)" * (cast_expression "(double *)((int)unaff_s3 + 0x4780)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s3 + 0x4780)" ( (binary_expression "(int)unaff_s3 + 0x4780" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) <= identifier) )) (compound_statement "{\n              if (*(double *)((int)unaff_s3 + 0x4788) < dVar34) {\nLAB_001c8cec:\n                iVar4 = 0x7ffffdff;\n              }\n              else {\nLAB_001c8630:\n                dVar34 = (double)(*(code *)PTR_floor_003a9670)(dVar34);\n                iVar4 = (int)dVar34;\n              }\n              goto LAB_001c8644;\n            }" { (if_statement "if (*(double *)((int)unaff_s3 + 0x4788) < dVar34) {\nLAB_001c8cec:\n                iVar4 = 0x7ffffdff;\n              }\n              else {\nLAB_001c8630:\n                dVar34 = (double)(*(code *)PTR_floor_003a9670)(dVar34);\n                iVar4 = (int)dVar34;\n              }" if (parenthesized_expression "(*(double *)((int)unaff_s3 + 0x4788) < dVar34)" ( (binary_expression "*(double *)((int)unaff_s3 + 0x4788) < dVar34" (pointer_expression "*(double *)((int)unaff_s3 + 0x4788)" * (cast_expression "(double *)((int)unaff_s3 + 0x4788)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s3 + 0x4788)" ( (binary_expression "(int)unaff_s3 + 0x4788" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) < identifier) )) (compound_statement "{\nLAB_001c8cec:\n                iVar4 = 0x7ffffdff;\n              }" { (labeled_statement "LAB_001c8cec:\n                iVar4 = 0x7ffffdff;" statement_identifier : (expression_statement "iVar4 = 0x7ffffdff;" (assignment_expression "iVar4 = 0x7ffffdff" identifier = number_literal) ;)) }) (else_clause "else {\nLAB_001c8630:\n                dVar34 = (double)(*(code *)PTR_floor_003a9670)(dVar34);\n                iVar4 = (int)dVar34;\n              }" else (compound_statement "{\nLAB_001c8630:\n                dVar34 = (double)(*(code *)PTR_floor_003a9670)(dVar34);\n                iVar4 = (int)dVar34;\n              }" { (labeled_statement "LAB_001c8630:\n                dVar34 = (double)(*(code *)PTR_floor_003a9670)(dVar34);" statement_identifier : (expression_statement "dVar34 = (double)(*(code *)PTR_floor_003a9670)(dVar34);" (assignment_expression "dVar34 = (double)(*(code *)PTR_floor_003a9670)(dVar34)" identifier = (cast_expression "(double)(*(code *)PTR_floor_003a9670)(dVar34)" ( (type_descriptor "double" primitive_type) ) (call_expression "(*(code *)PTR_floor_003a9670)(dVar34)" (parenthesized_expression "(*(code *)PTR_floor_003a9670)" ( (pointer_expression "*(code *)PTR_floor_003a9670" * (cast_expression "(code *)PTR_floor_003a9670" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(dVar34)" ( identifier ))))) ;)) (expression_statement "iVar4 = (int)dVar34;" (assignment_expression "iVar4 = (int)dVar34" identifier = (cast_expression "(int)dVar34" ( (type_descriptor "int" primitive_type) ) identifier)) ;) }))) (goto_statement "goto LAB_001c8644;" goto statement_identifier ;) })) (goto_statement "goto LAB_001c8c88;" goto statement_identifier ;) })) (if_statement "if (dVar34 < dVar27) goto LAB_001c8c88;" if (parenthesized_expression "(dVar34 < dVar27)" ( (binary_expression "dVar34 < dVar27" identifier < identifier) )) (goto_statement "goto LAB_001c8c88;" goto statement_identifier ;)) (if_statement "if (*(double *)((int)unaff_s3 + 0x4788) < dVar34) goto LAB_001c8cec;" if (parenthesized_expression "(*(double *)((int)unaff_s3 + 0x4788) < dVar34)" ( (binary_expression "*(double *)((int)unaff_s3 + 0x4788) < dVar34" (pointer_expression "*(double *)((int)unaff_s3 + 0x4788)" * (cast_expression "(double *)((int)unaff_s3 + 0x4788)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s3 + 0x4788)" ( (binary_expression "(int)unaff_s3 + 0x4788" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) < identifier) )) (goto_statement "goto LAB_001c8cec;" goto statement_identifier ;)) (labeled_statement "LAB_001c8d18:\n          dVar34 = (double)(*(code *)PTR_ceil_003a8c20)(dVar34);" statement_identifier : (expression_statement "dVar34 = (double)(*(code *)PTR_ceil_003a8c20)(dVar34);" (assignment_expression "dVar34 = (double)(*(code *)PTR_ceil_003a8c20)(dVar34)" identifier = (cast_expression "(double)(*(code *)PTR_ceil_003a8c20)(dVar34)" ( (type_descriptor "double" primitive_type) ) (call_expression "(*(code *)PTR_ceil_003a8c20)(dVar34)" (parenthesized_expression "(*(code *)PTR_ceil_003a8c20)" ( (pointer_expression "*(code *)PTR_ceil_003a8c20" * (cast_expression "(code *)PTR_ceil_003a8c20" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(dVar34)" ( identifier ))))) ;)) (expression_statement "iVar4 = (int)dVar34;" (assignment_expression "iVar4 = (int)dVar34" identifier = (cast_expression "(int)dVar34" ( (type_descriptor "int" primitive_type) ) identifier)) ;) }) while (parenthesized_expression "( true )" ( true )) ;)) })) (expression_statement "(*(code *)PTR_ClearMagickException_003a90f8)(exception);" (call_expression "(*(code *)PTR_ClearMagickException_003a90f8)(exception)" (parenthesized_expression "(*(code *)PTR_ClearMagickException_003a90f8)" ( (pointer_expression "*(code *)PTR_ClearMagickException_003a90f8" * (cast_expression "(code *)PTR_ClearMagickException_003a90f8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(exception)" ( identifier ))) ;) (expression_statement "pIVar11 = crop_image;" (assignment_expression "pIVar11 = crop_image" identifier = identifier) ;) (expression_statement "unaff_s0 = (Image *)crop_geometry;" (assignment_expression "unaff_s0 = (Image *)crop_geometry" identifier = (cast_expression "(Image *)crop_geometry" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) }) (else_clause "else {\n      unaff_s3 = &geometry;\n      if (((geometry.width == 0) && (geometry.height == 0)) || ((uVar3 & 3) != 0)) {\n        crop_image = (Image *)(*(code *)PTR_CropImage_003a90b8)(image,&geometry,exception);\n        pIVar11 = crop_image;\n        unaff_s4 = uVar3;\n        if ((crop_image != (Image *)0x0) && (unaff_s4 = uVar3 & 0x2000, unaff_s4 != 0)) {\n          (crop_image->page).x = (crop_image->page).x - geometry.x;\n          (crop_image->page).y = (crop_image->page).y - geometry.y;\n          (crop_image->page).width = geometry.width;\n          (crop_image->page).height = geometry.height;\n        }\n      }\n      else {\n        unaff_s7 = (Image *)image->columns;\n        if ((geometry.width < unaff_s7) || (geometry.height < image->rows)) {\n          pIVar11 = (Image *)(image->page).width;\n          uVar3 = (image->page).height;\n          if (pIVar11 != (Image *)0x0) {\n            unaff_s7 = pIVar11;\n          }\n          if (uVar3 == 0) {\n            uVar3 = image->rows;\n          }\n          if (geometry.width == 0) {\n            unaff_s0 = unaff_s7;\n          }\n          if (geometry.height == 0) {\n            unaff_s4 = uVar3;\n          }\n          pIVar11 = crop_image;\n          if (0 < (int)uVar3) {\n            unaff_s3 = (RectangleInfo *)0x0;\n            unaff_s8 = &crop_image;\n            do {\n              unaff_s5 = (undefined *)0x0;\n              if ((int)unaff_s7 < 1) {\n                pIVar11 = crop_image;\n                if (unaff_s6 == (Image *)0x0) break;\n              }\n              else {\n                do {\n                  geometry.width = (size_t)unaff_s0;\n                  geometry.height = unaff_s4;\n                  geometry.x = (ssize_t)unaff_s5;\n                  geometry.y = (ssize_t)unaff_s3;\n                  unaff_s6 = (Image *)(*(code *)PTR_CropImage_003a90b8)(image,&geometry,exception);\n                  pIVar11 = crop_image;\n                  if (unaff_s6 == (Image *)0x0) goto LAB_001c8908;\n                  unaff_s5 = unaff_s5 + (int)unaff_s0;\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);\n              }\n              unaff_s3 = (RectangleInfo *)((int)&unaff_s3->width + unaff_s4);\n              pIVar11 = crop_image;\n            } while ((int)unaff_s3 < (int)uVar3);\n          }\n        }\n        else {\n          local_e8 = exception;\n          pIVar11 = (Image *)(*(code *)PTR_CloneImage_003a9830)(image,0,0,1);\n        }\n      }\n    }" else (compound_statement "{\n      unaff_s3 = &geometry;\n      if (((geometry.width == 0) && (geometry.height == 0)) || ((uVar3 & 3) != 0)) {\n        crop_image = (Image *)(*(code *)PTR_CropImage_003a90b8)(image,&geometry,exception);\n        pIVar11 = crop_image;\n        unaff_s4 = uVar3;\n        if ((crop_image != (Image *)0x0) && (unaff_s4 = uVar3 & 0x2000, unaff_s4 != 0)) {\n          (crop_image->page).x = (crop_image->page).x - geometry.x;\n          (crop_image->page).y = (crop_image->page).y - geometry.y;\n          (crop_image->page).width = geometry.width;\n          (crop_image->page).height = geometry.height;\n        }\n      }\n      else {\n        unaff_s7 = (Image *)image->columns;\n        if ((geometry.width < unaff_s7) || (geometry.height < image->rows)) {\n          pIVar11 = (Image *)(image->page).width;\n          uVar3 = (image->page).height;\n          if (pIVar11 != (Image *)0x0) {\n            unaff_s7 = pIVar11;\n          }\n          if (uVar3 == 0) {\n            uVar3 = image->rows;\n          }\n          if (geometry.width == 0) {\n            unaff_s0 = unaff_s7;\n          }\n          if (geometry.height == 0) {\n            unaff_s4 = uVar3;\n          }\n          pIVar11 = crop_image;\n          if (0 < (int)uVar3) {\n            unaff_s3 = (RectangleInfo *)0x0;\n            unaff_s8 = &crop_image;\n            do {\n              unaff_s5 = (undefined *)0x0;\n              if ((int)unaff_s7 < 1) {\n                pIVar11 = crop_image;\n                if (unaff_s6 == (Image *)0x0) break;\n              }\n              else {\n                do {\n                  geometry.width = (size_t)unaff_s0;\n                  geometry.height = unaff_s4;\n                  geometry.x = (ssize_t)unaff_s5;\n                  geometry.y = (ssize_t)unaff_s3;\n                  unaff_s6 = (Image *)(*(code *)PTR_CropImage_003a90b8)(image,&geometry,exception);\n                  pIVar11 = crop_image;\n                  if (unaff_s6 == (Image *)0x0) goto LAB_001c8908;\n                  unaff_s5 = unaff_s5 + (int)unaff_s0;\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);\n              }\n              unaff_s3 = (RectangleInfo *)((int)&unaff_s3->width + unaff_s4);\n              pIVar11 = crop_image;\n            } while ((int)unaff_s3 < (int)uVar3);\n          }\n        }\n        else {\n          local_e8 = exception;\n          pIVar11 = (Image *)(*(code *)PTR_CloneImage_003a9830)(image,0,0,1);\n        }\n      }\n    }" { (expression_statement "unaff_s3 = &geometry;" (assignment_expression "unaff_s3 = &geometry" identifier = (pointer_expression "&geometry" & identifier)) ;) (if_statement "if (((geometry.width == 0) && (geometry.height == 0)) || ((uVar3 & 3) != 0)) {\n        crop_image = (Image *)(*(code *)PTR_CropImage_003a90b8)(image,&geometry,exception);\n        pIVar11 = crop_image;\n        unaff_s4 = uVar3;\n        if ((crop_image != (Image *)0x0) && (unaff_s4 = uVar3 & 0x2000, unaff_s4 != 0)) {\n          (crop_image->page).x = (crop_image->page).x - geometry.x;\n          (crop_image->page).y = (crop_image->page).y - geometry.y;\n          (crop_image->page).width = geometry.width;\n          (crop_image->page).height = geometry.height;\n        }\n      }\n      else {\n        unaff_s7 = (Image *)image->columns;\n        if ((geometry.width < unaff_s7) || (geometry.height < image->rows)) {\n          pIVar11 = (Image *)(image->page).width;\n          uVar3 = (image->page).height;\n          if (pIVar11 != (Image *)0x0) {\n            unaff_s7 = pIVar11;\n          }\n          if (uVar3 == 0) {\n            uVar3 = image->rows;\n          }\n          if (geometry.width == 0) {\n            unaff_s0 = unaff_s7;\n          }\n          if (geometry.height == 0) {\n            unaff_s4 = uVar3;\n          }\n          pIVar11 = crop_image;\n          if (0 < (int)uVar3) {\n            unaff_s3 = (RectangleInfo *)0x0;\n            unaff_s8 = &crop_image;\n            do {\n              unaff_s5 = (undefined *)0x0;\n              if ((int)unaff_s7 < 1) {\n                pIVar11 = crop_image;\n                if (unaff_s6 == (Image *)0x0) break;\n              }\n              else {\n                do {\n                  geometry.width = (size_t)unaff_s0;\n                  geometry.height = unaff_s4;\n                  geometry.x = (ssize_t)unaff_s5;\n                  geometry.y = (ssize_t)unaff_s3;\n                  unaff_s6 = (Image *)(*(code *)PTR_CropImage_003a90b8)(image,&geometry,exception);\n                  pIVar11 = crop_image;\n                  if (unaff_s6 == (Image *)0x0) goto LAB_001c8908;\n                  unaff_s5 = unaff_s5 + (int)unaff_s0;\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);\n              }\n              unaff_s3 = (RectangleInfo *)((int)&unaff_s3->width + unaff_s4);\n              pIVar11 = crop_image;\n            } while ((int)unaff_s3 < (int)uVar3);\n          }\n        }\n        else {\n          local_e8 = exception;\n          pIVar11 = (Image *)(*(code *)PTR_CloneImage_003a9830)(image,0,0,1);\n        }\n      }" if (parenthesized_expression "(((geometry.width == 0) && (geometry.height == 0)) || ((uVar3 & 3) != 0))" ( (binary_expression "((geometry.width == 0) && (geometry.height == 0)) || ((uVar3 & 3) != 0)" (parenthesized_expression "((geometry.width == 0) && (geometry.height == 0))" ( (binary_expression "(geometry.width == 0) && (geometry.height == 0)" (parenthesized_expression "(geometry.width == 0)" ( (binary_expression "geometry.width == 0" (field_expression "geometry.width" identifier . field_identifier) == number_literal) )) && (parenthesized_expression "(geometry.height == 0)" ( (binary_expression "geometry.height == 0" (field_expression "geometry.height" identifier . field_identifier) == number_literal) ))) )) || (parenthesized_expression "((uVar3 & 3) != 0)" ( (binary_expression "(uVar3 & 3) != 0" (parenthesized_expression "(uVar3 & 3)" ( (binary_expression "uVar3 & 3" identifier & number_literal) )) != number_literal) ))) )) (compound_statement "{\n        crop_image = (Image *)(*(code *)PTR_CropImage_003a90b8)(image,&geometry,exception);\n        pIVar11 = crop_image;\n        unaff_s4 = uVar3;\n        if ((crop_image != (Image *)0x0) && (unaff_s4 = uVar3 & 0x2000, unaff_s4 != 0)) {\n          (crop_image->page).x = (crop_image->page).x - geometry.x;\n          (crop_image->page).y = (crop_image->page).y - geometry.y;\n          (crop_image->page).width = geometry.width;\n          (crop_image->page).height = geometry.height;\n        }\n      }" { (expression_statement "crop_image = (Image *)(*(code *)PTR_CropImage_003a90b8)(image,&geometry,exception);" (assignment_expression "crop_image = (Image *)(*(code *)PTR_CropImage_003a90b8)(image,&geometry,exception)" identifier = (cast_expression "(Image *)(*(code *)PTR_CropImage_003a90b8)(image,&geometry,exception)" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR_CropImage_003a90b8)(image,&geometry,exception)" (parenthesized_expression "(*(code *)PTR_CropImage_003a90b8)" ( (pointer_expression "*(code *)PTR_CropImage_003a90b8" * (cast_expression "(code *)PTR_CropImage_003a90b8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(image,&geometry,exception)" ( identifier , (pointer_expression "&geometry" & identifier) , identifier ))))) ;) (expression_statement "pIVar11 = crop_image;" (assignment_expression "pIVar11 = crop_image" identifier = identifier) ;) (expression_statement "unaff_s4 = uVar3;" (assignment_expression "unaff_s4 = uVar3" identifier = identifier) ;) (if_statement "if ((crop_image != (Image *)0x0) && (unaff_s4 = uVar3 & 0x2000, unaff_s4 != 0)) {\n          (crop_image->page).x = (crop_image->page).x - geometry.x;\n          (crop_image->page).y = (crop_image->page).y - geometry.y;\n          (crop_image->page).width = geometry.width;\n          (crop_image->page).height = geometry.height;\n        }" if (parenthesized_expression "((crop_image != (Image *)0x0) && (unaff_s4 = uVar3 & 0x2000, unaff_s4 != 0))" ( (binary_expression "(crop_image != (Image *)0x0) && (unaff_s4 = uVar3 & 0x2000, unaff_s4 != 0)" (parenthesized_expression "(crop_image != (Image *)0x0)" ( (binary_expression "crop_image != (Image *)0x0" identifier != (cast_expression "(Image *)0x0" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) && (parenthesized_expression "(unaff_s4 = uVar3 & 0x2000, unaff_s4 != 0)" ( (comma_expression "unaff_s4 = uVar3 & 0x2000, unaff_s4 != 0" (assignment_expression "unaff_s4 = uVar3 & 0x2000" identifier = (binary_expression "uVar3 & 0x2000" identifier & number_literal)) , (binary_expression "unaff_s4 != 0" identifier != number_literal)) ))) )) (compound_statement "{\n          (crop_image->page).x = (crop_image->page).x - geometry.x;\n          (crop_image->page).y = (crop_image->page).y - geometry.y;\n          (crop_image->page).width = geometry.width;\n          (crop_image->page).height = geometry.height;\n        }" { (expression_statement "(crop_image->page).x = (crop_image->page).x - geometry.x;" (assignment_expression "(crop_image->page).x = (crop_image->page).x - geometry.x" (field_expression "(crop_image->page).x" (parenthesized_expression "(crop_image->page)" ( (field_expression "crop_image->page" identifier -> field_identifier) )) . field_identifier) = (binary_expression "(crop_image->page).x - geometry.x" (field_expression "(crop_image->page).x" (parenthesized_expression "(crop_image->page)" ( (field_expression "crop_image->page" identifier -> field_identifier) )) . field_identifier) - (field_expression "geometry.x" identifier . field_identifier))) ;) (expression_statement "(crop_image->page).y = (crop_image->page).y - geometry.y;" (assignment_expression "(crop_image->page).y = (crop_image->page).y - geometry.y" (field_expression "(crop_image->page).y" (parenthesized_expression "(crop_image->page)" ( (field_expression "crop_image->page" identifier -> field_identifier) )) . field_identifier) = (binary_expression "(crop_image->page).y - geometry.y" (field_expression "(crop_image->page).y" (parenthesized_expression "(crop_image->page)" ( (field_expression "crop_image->page" identifier -> field_identifier) )) . field_identifier) - (field_expression "geometry.y" identifier . field_identifier))) ;) (expression_statement "(crop_image->page).width = geometry.width;" (assignment_expression "(crop_image->page).width = geometry.width" (field_expression "(crop_image->page).width" (parenthesized_expression "(crop_image->page)" ( (field_expression "crop_image->page" identifier -> field_identifier) )) . field_identifier) = (field_expression "geometry.width" identifier . field_identifier)) ;) (expression_statement "(crop_image->page).height = geometry.height;" (assignment_expression "(crop_image->page).height = geometry.height" (field_expression "(crop_image->page).height" (parenthesized_expression "(crop_image->page)" ( (field_expression "crop_image->page" identifier -> field_identifier) )) . field_identifier) = (field_expression "geometry.height" identifier . field_identifier)) ;) })) }) (else_clause "else {\n        unaff_s7 = (Image *)image->columns;\n        if ((geometry.width < unaff_s7) || (geometry.height < image->rows)) {\n          pIVar11 = (Image *)(image->page).width;\n          uVar3 = (image->page).height;\n          if (pIVar11 != (Image *)0x0) {\n            unaff_s7 = pIVar11;\n          }\n          if (uVar3 == 0) {\n            uVar3 = image->rows;\n          }\n          if (geometry.width == 0) {\n            unaff_s0 = unaff_s7;\n          }\n          if (geometry.height == 0) {\n            unaff_s4 = uVar3;\n          }\n          pIVar11 = crop_image;\n          if (0 < (int)uVar3) {\n            unaff_s3 = (RectangleInfo *)0x0;\n            unaff_s8 = &crop_image;\n            do {\n              unaff_s5 = (undefined *)0x0;\n              if ((int)unaff_s7 < 1) {\n                pIVar11 = crop_image;\n                if (unaff_s6 == (Image *)0x0) break;\n              }\n              else {\n                do {\n                  geometry.width = (size_t)unaff_s0;\n                  geometry.height = unaff_s4;\n                  geometry.x = (ssize_t)unaff_s5;\n                  geometry.y = (ssize_t)unaff_s3;\n                  unaff_s6 = (Image *)(*(code *)PTR_CropImage_003a90b8)(image,&geometry,exception);\n                  pIVar11 = crop_image;\n                  if (unaff_s6 == (Image *)0x0) goto LAB_001c8908;\n                  unaff_s5 = unaff_s5 + (int)unaff_s0;\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);\n              }\n              unaff_s3 = (RectangleInfo *)((int)&unaff_s3->width + unaff_s4);\n              pIVar11 = crop_image;\n            } while ((int)unaff_s3 < (int)uVar3);\n          }\n        }\n        else {\n          local_e8 = exception;\n          pIVar11 = (Image *)(*(code *)PTR_CloneImage_003a9830)(image,0,0,1);\n        }\n      }" else (compound_statement "{\n        unaff_s7 = (Image *)image->columns;\n        if ((geometry.width < unaff_s7) || (geometry.height < image->rows)) {\n          pIVar11 = (Image *)(image->page).width;\n          uVar3 = (image->page).height;\n          if (pIVar11 != (Image *)0x0) {\n            unaff_s7 = pIVar11;\n          }\n          if (uVar3 == 0) {\n            uVar3 = image->rows;\n          }\n          if (geometry.width == 0) {\n            unaff_s0 = unaff_s7;\n          }\n          if (geometry.height == 0) {\n            unaff_s4 = uVar3;\n          }\n          pIVar11 = crop_image;\n          if (0 < (int)uVar3) {\n            unaff_s3 = (RectangleInfo *)0x0;\n            unaff_s8 = &crop_image;\n            do {\n              unaff_s5 = (undefined *)0x0;\n              if ((int)unaff_s7 < 1) {\n                pIVar11 = crop_image;\n                if (unaff_s6 == (Image *)0x0) break;\n              }\n              else {\n                do {\n                  geometry.width = (size_t)unaff_s0;\n                  geometry.height = unaff_s4;\n                  geometry.x = (ssize_t)unaff_s5;\n                  geometry.y = (ssize_t)unaff_s3;\n                  unaff_s6 = (Image *)(*(code *)PTR_CropImage_003a90b8)(image,&geometry,exception);\n                  pIVar11 = crop_image;\n                  if (unaff_s6 == (Image *)0x0) goto LAB_001c8908;\n                  unaff_s5 = unaff_s5 + (int)unaff_s0;\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);\n              }\n              unaff_s3 = (RectangleInfo *)((int)&unaff_s3->width + unaff_s4);\n              pIVar11 = crop_image;\n            } while ((int)unaff_s3 < (int)uVar3);\n          }\n        }\n        else {\n          local_e8 = exception;\n          pIVar11 = (Image *)(*(code *)PTR_CloneImage_003a9830)(image,0,0,1);\n        }\n      }" { (expression_statement "unaff_s7 = (Image *)image->columns;" (assignment_expression "unaff_s7 = (Image *)image->columns" identifier = (cast_expression "(Image *)image->columns" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "image->columns" identifier -> field_identifier))) ;) (if_statement "if ((geometry.width < unaff_s7) || (geometry.height < image->rows)) {\n          pIVar11 = (Image *)(image->page).width;\n          uVar3 = (image->page).height;\n          if (pIVar11 != (Image *)0x0) {\n            unaff_s7 = pIVar11;\n          }\n          if (uVar3 == 0) {\n            uVar3 = image->rows;\n          }\n          if (geometry.width == 0) {\n            unaff_s0 = unaff_s7;\n          }\n          if (geometry.height == 0) {\n            unaff_s4 = uVar3;\n          }\n          pIVar11 = crop_image;\n          if (0 < (int)uVar3) {\n            unaff_s3 = (RectangleInfo *)0x0;\n            unaff_s8 = &crop_image;\n            do {\n              unaff_s5 = (undefined *)0x0;\n              if ((int)unaff_s7 < 1) {\n                pIVar11 = crop_image;\n                if (unaff_s6 == (Image *)0x0) break;\n              }\n              else {\n                do {\n                  geometry.width = (size_t)unaff_s0;\n                  geometry.height = unaff_s4;\n                  geometry.x = (ssize_t)unaff_s5;\n                  geometry.y = (ssize_t)unaff_s3;\n                  unaff_s6 = (Image *)(*(code *)PTR_CropImage_003a90b8)(image,&geometry,exception);\n                  pIVar11 = crop_image;\n                  if (unaff_s6 == (Image *)0x0) goto LAB_001c8908;\n                  unaff_s5 = unaff_s5 + (int)unaff_s0;\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);\n              }\n              unaff_s3 = (RectangleInfo *)((int)&unaff_s3->width + unaff_s4);\n              pIVar11 = crop_image;\n            } while ((int)unaff_s3 < (int)uVar3);\n          }\n        }\n        else {\n          local_e8 = exception;\n          pIVar11 = (Image *)(*(code *)PTR_CloneImage_003a9830)(image,0,0,1);\n        }" if (parenthesized_expression "((geometry.width < unaff_s7) || (geometry.height < image->rows))" ( (binary_expression "(geometry.width < unaff_s7) || (geometry.height < image->rows)" (parenthesized_expression "(geometry.width < unaff_s7)" ( (binary_expression "geometry.width < unaff_s7" (field_expression "geometry.width" identifier . field_identifier) < identifier) )) || (parenthesized_expression "(geometry.height < image->rows)" ( (binary_expression "geometry.height < image->rows" (field_expression "geometry.height" identifier . field_identifier) < (field_expression "image->rows" identifier -> field_identifier)) ))) )) (compound_statement "{\n          pIVar11 = (Image *)(image->page).width;\n          uVar3 = (image->page).height;\n          if (pIVar11 != (Image *)0x0) {\n            unaff_s7 = pIVar11;\n          }\n          if (uVar3 == 0) {\n            uVar3 = image->rows;\n          }\n          if (geometry.width == 0) {\n            unaff_s0 = unaff_s7;\n          }\n          if (geometry.height == 0) {\n            unaff_s4 = uVar3;\n          }\n          pIVar11 = crop_image;\n          if (0 < (int)uVar3) {\n            unaff_s3 = (RectangleInfo *)0x0;\n            unaff_s8 = &crop_image;\n            do {\n              unaff_s5 = (undefined *)0x0;\n              if ((int)unaff_s7 < 1) {\n                pIVar11 = crop_image;\n                if (unaff_s6 == (Image *)0x0) break;\n              }\n              else {\n                do {\n                  geometry.width = (size_t)unaff_s0;\n                  geometry.height = unaff_s4;\n                  geometry.x = (ssize_t)unaff_s5;\n                  geometry.y = (ssize_t)unaff_s3;\n                  unaff_s6 = (Image *)(*(code *)PTR_CropImage_003a90b8)(image,&geometry,exception);\n                  pIVar11 = crop_image;\n                  if (unaff_s6 == (Image *)0x0) goto LAB_001c8908;\n                  unaff_s5 = unaff_s5 + (int)unaff_s0;\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);\n              }\n              unaff_s3 = (RectangleInfo *)((int)&unaff_s3->width + unaff_s4);\n              pIVar11 = crop_image;\n            } while ((int)unaff_s3 < (int)uVar3);\n          }\n        }" { (expression_statement "pIVar11 = (Image *)(image->page).width;" (assignment_expression "pIVar11 = (Image *)(image->page).width" identifier = (cast_expression "(Image *)(image->page).width" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "(image->page).width" (parenthesized_expression "(image->page)" ( (field_expression "image->page" identifier -> field_identifier) )) . field_identifier))) ;) (expression_statement "uVar3 = (image->page).height;" (assignment_expression "uVar3 = (image->page).height" identifier = (field_expression "(image->page).height" (parenthesized_expression "(image->page)" ( (field_expression "image->page" identifier -> field_identifier) )) . field_identifier)) ;) (if_statement "if (pIVar11 != (Image *)0x0) {\n            unaff_s7 = pIVar11;\n          }" if (parenthesized_expression "(pIVar11 != (Image *)0x0)" ( (binary_expression "pIVar11 != (Image *)0x0" identifier != (cast_expression "(Image *)0x0" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n            unaff_s7 = pIVar11;\n          }" { (expression_statement "unaff_s7 = pIVar11;" (assignment_expression "unaff_s7 = pIVar11" identifier = identifier) ;) })) (if_statement "if (uVar3 == 0) {\n            uVar3 = image->rows;\n          }" if (parenthesized_expression "(uVar3 == 0)" ( (binary_expression "uVar3 == 0" identifier == number_literal) )) (compound_statement "{\n            uVar3 = image->rows;\n          }" { (expression_statement "uVar3 = image->rows;" (assignment_expression "uVar3 = image->rows" identifier = (field_expression "image->rows" identifier -> field_identifier)) ;) })) (if_statement "if (geometry.width == 0) {\n            unaff_s0 = unaff_s7;\n          }" if (parenthesized_expression "(geometry.width == 0)" ( (binary_expression "geometry.width == 0" (field_expression "geometry.width" identifier . field_identifier) == number_literal) )) (compound_statement "{\n            unaff_s0 = unaff_s7;\n          }" { (expression_statement "unaff_s0 = unaff_s7;" (assignment_expression "unaff_s0 = unaff_s7" identifier = identifier) ;) })) (if_statement "if (geometry.height == 0) {\n            unaff_s4 = uVar3;\n          }" if (parenthesized_expression "(geometry.height == 0)" ( (binary_expression "geometry.height == 0" (field_expression "geometry.height" identifier . field_identifier) == number_literal) )) (compound_statement "{\n            unaff_s4 = uVar3;\n          }" { (expression_statement "unaff_s4 = uVar3;" (assignment_expression "unaff_s4 = uVar3" identifier = identifier) ;) })) (expression_statement "pIVar11 = crop_image;" (assignment_expression "pIVar11 = crop_image" identifier = identifier) ;) (if_statement "if (0 < (int)uVar3) {\n            unaff_s3 = (RectangleInfo *)0x0;\n            unaff_s8 = &crop_image;\n            do {\n              unaff_s5 = (undefined *)0x0;\n              if ((int)unaff_s7 < 1) {\n                pIVar11 = crop_image;\n                if (unaff_s6 == (Image *)0x0) break;\n              }\n              else {\n                do {\n                  geometry.width = (size_t)unaff_s0;\n                  geometry.height = unaff_s4;\n                  geometry.x = (ssize_t)unaff_s5;\n                  geometry.y = (ssize_t)unaff_s3;\n                  unaff_s6 = (Image *)(*(code *)PTR_CropImage_003a90b8)(image,&geometry,exception);\n                  pIVar11 = crop_image;\n                  if (unaff_s6 == (Image *)0x0) goto LAB_001c8908;\n                  unaff_s5 = unaff_s5 + (int)unaff_s0;\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);\n              }\n              unaff_s3 = (RectangleInfo *)((int)&unaff_s3->width + unaff_s4);\n              pIVar11 = crop_image;\n            } while ((int)unaff_s3 < (int)uVar3);\n          }" if (parenthesized_expression "(0 < (int)uVar3)" ( (binary_expression "0 < (int)uVar3" number_literal < (cast_expression "(int)uVar3" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n            unaff_s3 = (RectangleInfo *)0x0;\n            unaff_s8 = &crop_image;\n            do {\n              unaff_s5 = (undefined *)0x0;\n              if ((int)unaff_s7 < 1) {\n                pIVar11 = crop_image;\n                if (unaff_s6 == (Image *)0x0) break;\n              }\n              else {\n                do {\n                  geometry.width = (size_t)unaff_s0;\n                  geometry.height = unaff_s4;\n                  geometry.x = (ssize_t)unaff_s5;\n                  geometry.y = (ssize_t)unaff_s3;\n                  unaff_s6 = (Image *)(*(code *)PTR_CropImage_003a90b8)(image,&geometry,exception);\n                  pIVar11 = crop_image;\n                  if (unaff_s6 == (Image *)0x0) goto LAB_001c8908;\n                  unaff_s5 = unaff_s5 + (int)unaff_s0;\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);\n              }\n              unaff_s3 = (RectangleInfo *)((int)&unaff_s3->width + unaff_s4);\n              pIVar11 = crop_image;\n            } while ((int)unaff_s3 < (int)uVar3);\n          }" { (expression_statement "unaff_s3 = (RectangleInfo *)0x0;" (assignment_expression "unaff_s3 = (RectangleInfo *)0x0" identifier = (cast_expression "(RectangleInfo *)0x0" ( (type_descriptor "RectangleInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "unaff_s8 = &crop_image;" (assignment_expression "unaff_s8 = &crop_image" identifier = (pointer_expression "&crop_image" & identifier)) ;) (do_statement "do {\n              unaff_s5 = (undefined *)0x0;\n              if ((int)unaff_s7 < 1) {\n                pIVar11 = crop_image;\n                if (unaff_s6 == (Image *)0x0) break;\n              }\n              else {\n                do {\n                  geometry.width = (size_t)unaff_s0;\n                  geometry.height = unaff_s4;\n                  geometry.x = (ssize_t)unaff_s5;\n                  geometry.y = (ssize_t)unaff_s3;\n                  unaff_s6 = (Image *)(*(code *)PTR_CropImage_003a90b8)(image,&geometry,exception);\n                  pIVar11 = crop_image;\n                  if (unaff_s6 == (Image *)0x0) goto LAB_001c8908;\n                  unaff_s5 = unaff_s5 + (int)unaff_s0;\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);\n              }\n              unaff_s3 = (RectangleInfo *)((int)&unaff_s3->width + unaff_s4);\n              pIVar11 = crop_image;\n            } while ((int)unaff_s3 < (int)uVar3);" do (compound_statement "{\n              unaff_s5 = (undefined *)0x0;\n              if ((int)unaff_s7 < 1) {\n                pIVar11 = crop_image;\n                if (unaff_s6 == (Image *)0x0) break;\n              }\n              else {\n                do {\n                  geometry.width = (size_t)unaff_s0;\n                  geometry.height = unaff_s4;\n                  geometry.x = (ssize_t)unaff_s5;\n                  geometry.y = (ssize_t)unaff_s3;\n                  unaff_s6 = (Image *)(*(code *)PTR_CropImage_003a90b8)(image,&geometry,exception);\n                  pIVar11 = crop_image;\n                  if (unaff_s6 == (Image *)0x0) goto LAB_001c8908;\n                  unaff_s5 = unaff_s5 + (int)unaff_s0;\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);\n              }\n              unaff_s3 = (RectangleInfo *)((int)&unaff_s3->width + unaff_s4);\n              pIVar11 = crop_image;\n            }" { (expression_statement "unaff_s5 = (undefined *)0x0;" (assignment_expression "unaff_s5 = (undefined *)0x0" identifier = (cast_expression "(undefined *)0x0" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (if_statement "if ((int)unaff_s7 < 1) {\n                pIVar11 = crop_image;\n                if (unaff_s6 == (Image *)0x0) break;\n              }\n              else {\n                do {\n                  geometry.width = (size_t)unaff_s0;\n                  geometry.height = unaff_s4;\n                  geometry.x = (ssize_t)unaff_s5;\n                  geometry.y = (ssize_t)unaff_s3;\n                  unaff_s6 = (Image *)(*(code *)PTR_CropImage_003a90b8)(image,&geometry,exception);\n                  pIVar11 = crop_image;\n                  if (unaff_s6 == (Image *)0x0) goto LAB_001c8908;\n                  unaff_s5 = unaff_s5 + (int)unaff_s0;\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);\n              }" if (parenthesized_expression "((int)unaff_s7 < 1)" ( (binary_expression "(int)unaff_s7 < 1" (cast_expression "(int)unaff_s7" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n                pIVar11 = crop_image;\n                if (unaff_s6 == (Image *)0x0) break;\n              }" { (expression_statement "pIVar11 = crop_image;" (assignment_expression "pIVar11 = crop_image" identifier = identifier) ;) (if_statement "if (unaff_s6 == (Image *)0x0) break;" if (parenthesized_expression "(unaff_s6 == (Image *)0x0)" ( (binary_expression "unaff_s6 == (Image *)0x0" identifier == (cast_expression "(Image *)0x0" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (break_statement "break;" break ;)) }) (else_clause "else {\n                do {\n                  geometry.width = (size_t)unaff_s0;\n                  geometry.height = unaff_s4;\n                  geometry.x = (ssize_t)unaff_s5;\n                  geometry.y = (ssize_t)unaff_s3;\n                  unaff_s6 = (Image *)(*(code *)PTR_CropImage_003a90b8)(image,&geometry,exception);\n                  pIVar11 = crop_image;\n                  if (unaff_s6 == (Image *)0x0) goto LAB_001c8908;\n                  unaff_s5 = unaff_s5 + (int)unaff_s0;\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);\n              }" else (compound_statement "{\n                do {\n                  geometry.width = (size_t)unaff_s0;\n                  geometry.height = unaff_s4;\n                  geometry.x = (ssize_t)unaff_s5;\n                  geometry.y = (ssize_t)unaff_s3;\n                  unaff_s6 = (Image *)(*(code *)PTR_CropImage_003a90b8)(image,&geometry,exception);\n                  pIVar11 = crop_image;\n                  if (unaff_s6 == (Image *)0x0) goto LAB_001c8908;\n                  unaff_s5 = unaff_s5 + (int)unaff_s0;\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);\n              }" { (do_statement "do {\n                  geometry.width = (size_t)unaff_s0;\n                  geometry.height = unaff_s4;\n                  geometry.x = (ssize_t)unaff_s5;\n                  geometry.y = (ssize_t)unaff_s3;\n                  unaff_s6 = (Image *)(*(code *)PTR_CropImage_003a90b8)(image,&geometry,exception);\n                  pIVar11 = crop_image;\n                  if (unaff_s6 == (Image *)0x0) goto LAB_001c8908;\n                  unaff_s5 = unaff_s5 + (int)unaff_s0;\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);" do (compound_statement "{\n                  geometry.width = (size_t)unaff_s0;\n                  geometry.height = unaff_s4;\n                  geometry.x = (ssize_t)unaff_s5;\n                  geometry.y = (ssize_t)unaff_s3;\n                  unaff_s6 = (Image *)(*(code *)PTR_CropImage_003a90b8)(image,&geometry,exception);\n                  pIVar11 = crop_image;\n                  if (unaff_s6 == (Image *)0x0) goto LAB_001c8908;\n                  unaff_s5 = unaff_s5 + (int)unaff_s0;\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                }" { (expression_statement "geometry.width = (size_t)unaff_s0;" (assignment_expression "geometry.width = (size_t)unaff_s0" (field_expression "geometry.width" identifier . field_identifier) = (cast_expression "(size_t)unaff_s0" ( (type_descriptor "size_t" primitive_type) ) identifier)) ;) (expression_statement "geometry.height = unaff_s4;" (assignment_expression "geometry.height = unaff_s4" (field_expression "geometry.height" identifier . field_identifier) = identifier) ;) (expression_statement "geometry.x = (ssize_t)unaff_s5;" (assignment_expression "geometry.x = (ssize_t)unaff_s5" (field_expression "geometry.x" identifier . field_identifier) = (cast_expression "(ssize_t)unaff_s5" ( (type_descriptor "ssize_t" primitive_type) ) identifier)) ;) (expression_statement "geometry.y = (ssize_t)unaff_s3;" (assignment_expression "geometry.y = (ssize_t)unaff_s3" (field_expression "geometry.y" identifier . field_identifier) = (cast_expression "(ssize_t)unaff_s3" ( (type_descriptor "ssize_t" primitive_type) ) identifier)) ;) (expression_statement "unaff_s6 = (Image *)(*(code *)PTR_CropImage_003a90b8)(image,&geometry,exception);" (assignment_expression "unaff_s6 = (Image *)(*(code *)PTR_CropImage_003a90b8)(image,&geometry,exception)" identifier = (cast_expression "(Image *)(*(code *)PTR_CropImage_003a90b8)(image,&geometry,exception)" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR_CropImage_003a90b8)(image,&geometry,exception)" (parenthesized_expression "(*(code *)PTR_CropImage_003a90b8)" ( (pointer_expression "*(code *)PTR_CropImage_003a90b8" * (cast_expression "(code *)PTR_CropImage_003a90b8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(image,&geometry,exception)" ( identifier , (pointer_expression "&geometry" & identifier) , identifier ))))) ;) (expression_statement "pIVar11 = crop_image;" (assignment_expression "pIVar11 = crop_image" identifier = identifier) ;) (if_statement "if (unaff_s6 == (Image *)0x0) goto LAB_001c8908;" if (parenthesized_expression "(unaff_s6 == (Image *)0x0)" ( (binary_expression "unaff_s6 == (Image *)0x0" identifier == (cast_expression "(Image *)0x0" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_001c8908;" goto statement_identifier ;)) (expression_statement "unaff_s5 = unaff_s5 + (int)unaff_s0;" (assignment_expression "unaff_s5 = unaff_s5 + (int)unaff_s0" identifier = (binary_expression "unaff_s5 + (int)unaff_s0" identifier + (cast_expression "(int)unaff_s0" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (expression_statement "(*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);" (call_expression "(*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6)" (parenthesized_expression "(*(code *)PTR_AppendImageToList_003a9880)" ( (pointer_expression "*(code *)PTR_AppendImageToList_003a9880" * (cast_expression "(code *)PTR_AppendImageToList_003a9880" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s8,unaff_s6)" ( identifier , identifier ))) ;) }) while (parenthesized_expression "((int)unaff_s5 < (int)unaff_s7)" ( (binary_expression "(int)unaff_s5 < (int)unaff_s7" (cast_expression "(int)unaff_s5" ( (type_descriptor "int" primitive_type) ) identifier) < (cast_expression "(int)unaff_s7" ( (type_descriptor "int" primitive_type) ) identifier)) )) ;) }))) (expression_statement "unaff_s3 = (RectangleInfo *)((int)&unaff_s3->width + unaff_s4);" (assignment_expression "unaff_s3 = (RectangleInfo *)((int)&unaff_s3->width + unaff_s4)" identifier = (cast_expression "(RectangleInfo *)((int)&unaff_s3->width + unaff_s4)" ( (type_descriptor "RectangleInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&unaff_s3->width + unaff_s4)" ( (binary_expression "(int)&unaff_s3->width + unaff_s4" (cast_expression "(int)&unaff_s3->width" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&unaff_s3->width" & (field_expression "unaff_s3->width" identifier -> field_identifier))) + identifier) )))) ;) (expression_statement "pIVar11 = crop_image;" (assignment_expression "pIVar11 = crop_image" identifier = identifier) ;) }) while (parenthesized_expression "((int)unaff_s3 < (int)uVar3)" ( (binary_expression "(int)unaff_s3 < (int)uVar3" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) < (cast_expression "(int)uVar3" ( (type_descriptor "int" primitive_type) ) identifier)) )) ;) })) }) (else_clause "else {\n          local_e8 = exception;\n          pIVar11 = (Image *)(*(code *)PTR_CloneImage_003a9830)(image,0,0,1);\n        }" else (compound_statement "{\n          local_e8 = exception;\n          pIVar11 = (Image *)(*(code *)PTR_CloneImage_003a9830)(image,0,0,1);\n        }" { (expression_statement "local_e8 = exception;" (assignment_expression "local_e8 = exception" identifier = identifier) ;) (expression_statement "pIVar11 = (Image *)(*(code *)PTR_CloneImage_003a9830)(image,0,0,1);" (assignment_expression "pIVar11 = (Image *)(*(code *)PTR_CloneImage_003a9830)(image,0,0,1)" identifier = (cast_expression "(Image *)(*(code *)PTR_CloneImage_003a9830)(image,0,0,1)" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR_CloneImage_003a9830)(image,0,0,1)" (parenthesized_expression "(*(code *)PTR_CloneImage_003a9830)" ( (pointer_expression "*(code *)PTR_CloneImage_003a9830" * (cast_expression "(code *)PTR_CloneImage_003a9830" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(image,0,0,1)" ( identifier , number_literal , number_literal , number_literal ))))) ;) }))) }))) }))) (labeled_statement "LAB_001c8908:\n    if (iVar2 == *(int *)puVar21) {\n      return pIVar11;\n    }" statement_identifier : (if_statement "if (iVar2 == *(int *)puVar21) {\n      return pIVar11;\n    }" if (parenthesized_expression "(iVar2 == *(int *)puVar21)" ( (binary_expression "iVar2 == *(int *)puVar21" identifier == (pointer_expression "*(int *)puVar21" * (cast_expression "(int *)puVar21" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) )) (compound_statement "{\n      return pIVar11;\n    }" { (return_statement "return pIVar11;" return identifier ;) }))) (expression_statement "(*(code *)PTR___stack_chk_fail_003a9064)();" (call_expression "(*(code *)PTR___stack_chk_fail_003a9064)()" (parenthesized_expression "(*(code *)PTR___stack_chk_fail_003a9064)" ( (pointer_expression "*(code *)PTR___stack_chk_fail_003a9064" * (cast_expression "(code *)PTR___stack_chk_fail_003a9064" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))) ;) (expression_statement "unaff_s1 = image;" (assignment_expression "unaff_s1 = image" identifier = identifier) ;) (expression_statement "unaff_s2 = exception;" (assignment_expression "unaff_s2 = exception" identifier = identifier) ;) (goto_statement "goto LAB_001c8ef8;" goto statement_identifier ;) })))) (expression_statement "pEVar16 = (ExceptionInfo *)0x323;" (assignment_expression "pEVar16 = (ExceptionInfo *)0x323" identifier = (cast_expression "(ExceptionInfo *)0x323" ( (type_descriptor "ExceptionInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pRVar14 = (RectangleInfo *)(PTR_s_courses_003a88ec + -0x288c);" (assignment_expression "pRVar14 = (RectangleInfo *)(PTR_s_courses_003a88ec + -0x288c)" identifier = (cast_expression "(RectangleInfo *)(PTR_s_courses_003a88ec + -0x288c)" ( (type_descriptor "RectangleInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_s_courses_003a88ec + -0x288c)" ( (binary_expression "PTR_s_courses_003a88ec + -0x288c" identifier + number_literal) )))) ;) (expression_statement "pcVar25 = ExcerptImage;" (assignment_expression "pcVar25 = ExcerptImage" identifier = identifier) ;) (expression_statement "pIVar11 = (Image *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3784);" (assignment_expression "pIVar11 = (Image *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3784)" identifier = (cast_expression "(Image *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3784)" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3784)" ( (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3784" identifier + number_literal) )))) ;) (expression_statement "puVar21 = PTR___assert_fail_003a9608;" (assignment_expression "puVar21 = PTR___assert_fail_003a9608" identifier = identifier) ;) (expression_statement "(*(code *)PTR___assert_fail_003a9608)();" (call_expression "(*(code *)PTR___assert_fail_003a9608)()" (parenthesized_expression "(*(code *)PTR___assert_fail_003a9608)" ( (pointer_expression "*(code *)PTR___assert_fail_003a9608" * (cast_expression "(code *)PTR___assert_fail_003a9608" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))) ;) (expression_statement "puVar23 = puVar21 + 0x1e7970;" (assignment_expression "puVar23 = puVar21 + 0x1e7970" identifier = (binary_expression "puVar21 + 0x1e7970" identifier + number_literal)) ;) (expression_statement "piVar19 = *(int **)(puVar21 + 0x1e02f0);" (assignment_expression "piVar19 = *(int **)(puVar21 + 0x1e02f0)" identifier = (pointer_expression "*(int **)(puVar21 + 0x1e02f0)" * (cast_expression "(int **)(puVar21 + 0x1e02f0)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar21 + 0x1e02f0)" ( (binary_expression "puVar21 + 0x1e02f0" identifier + number_literal) ))))) ;) (expression_statement "iStack_11c = *piVar19;" (assignment_expression "iStack_11c = *piVar19" identifier = (pointer_expression "*piVar19" * identifier)) ;) (expression_statement "puStack_150 = puVar23;" (assignment_expression "puStack_150 = puVar23" identifier = identifier) ;) (expression_statement "pIStack_118 = unaff_s0;" (assignment_expression "pIStack_118 = unaff_s0" identifier = identifier) ;) (expression_statement "pIStack_114 = image;" (assignment_expression "pIStack_114 = image" identifier = identifier) ;) (expression_statement "pEStack_110 = unaff_s2;" (assignment_expression "pEStack_110 = unaff_s2" identifier = identifier) ;) (expression_statement "pRStack_10c = unaff_s3;" (assignment_expression "pRStack_10c = unaff_s3" identifier = identifier) ;) (expression_statement "uStack_108 = unaff_s4;" (assignment_expression "uStack_108 = unaff_s4" identifier = identifier) ;) (expression_statement "puStack_104 = unaff_s5;" (assignment_expression "puStack_104 = unaff_s5" identifier = identifier) ;) (expression_statement "pIStack_100 = unaff_s6;" (assignment_expression "pIStack_100 = unaff_s6" identifier = identifier) ;) (expression_statement "pcStack_fc = pcVar25;" (assignment_expression "pcStack_fc = pcVar25" identifier = identifier) ;) (if_statement "if (pIVar11 == (Image *)0x0) {\n    iVar2 = *(int *)(puVar21 + 0x1df9ac) + -0x26ac;\n    (**(code **)(puVar21 + 0x1e06c8))\n              (*(int *)(puVar21 + 0x1df9a8) + -0x37b0,*(int *)(puVar21 + 0x1df9ac) + -0x288c,0x3f4,\n               iVar2);\nLAB_001c92d4:\n    iVar2 = iVar2 + -0x26ac;\n    (**(code **)(puVar23 + -0x72a8))\n              (*(int *)(puVar23 + -0x7fd0) + 0x294c,*(int *)(puVar23 + -0x7fc4) + -0x288c,0x3fa,\n               iVar2);\n    pEVar16 = unaff_s2;\nLAB_001c92f4:\n    iVar2 = iVar2 + -0x26ac;\n    (**(code **)(puVar23 + -0x72a8))\n              (*(int *)(puVar23 + -0x7fd0) + 0x1cac,*(int *)(puVar23 + -0x7fc4) + -0x288c,0x3f9,\n               iVar2);\nLAB_001c9314:\n    (**(code **)(puVar23 + -0x784c))();\n    pIVar11 = unaff_s0;\nLAB_001c9320:\n    (**(code **)(puVar23 + -0x72a8))\n              (*(int *)(puVar23 + -0x7fc4) + -0x2850,*(int *)(puVar23 + -0x7fc4) + -0x288c,0x3f8,\n               iVar2 + -0x26ac);\n    unaff_s2 = pEVar16;\n  }\n  else if (pIVar11->signature == 0xabacadab) {\n    if (pIVar11->debug != MagickFalse) {\n      pcStack_154 = pIVar11->filename;\n      pEStack_158 = (ExceptionInfo *)(*(int *)(puVar21 + 0x1df9a4) - 0x62ac);\n      (**(code **)(puVar21 + 0x1e02a0))\n                (0x8000,*(int *)(puVar21 + 0x1df9ac) + -0x288c,\n                 *(int *)(puVar21 + 0x1df9ac) + -0x26bc,0x3f7);\n    }\n    iVar2 = *(int *)(puStack_150 + -0x7fc4);\n    unaff_s3 = pRVar14;\n    puVar23 = puStack_150;\n    if (pRVar14 != (RectangleInfo *)0x0) {\n      unaff_s0 = pIVar11;\n      if (pEVar16 == (ExceptionInfo *)0x0) goto LAB_001c92f4;\n      unaff_s2 = pEVar16;\n      if (pEVar16->signature != 0xabacadab) goto LAB_001c92d4;\n      iVar2 = 1;\n      pEStack_158 = pEVar16;\n      image = (Image *)(**(code **)(puStack_150 + -0x7080))\n                                 (pIVar11,pRVar14->width,pRVar14->height,1);\n      if (image != (Image *)0x0) {\n        uStack_144 = 0;\n        uStack_148 = 0;\n        unaff_s5 = (undefined *)(**(code **)(puStack_150 + -0x715c))(pIVar11,pEVar16);\n        unaff_s6 = (Image *)(**(code **)(puStack_150 + -0x79dc))(image,pEVar16);\n        iVar2 = (**(code **)(puStack_150 + -0x73fc))(pIVar11);\n        if (((iVar2 == 4) || (iVar2 = (**(code **)(puStack_150 + -0x73fc))(pIVar11), iVar2 == 3)) &&\n           ((iVar2 = (**(code **)(puStack_150 + -0x73fc))(image), iVar2 == 4 ||\n            (iVar2 = (**(code **)(puStack_150 + -0x73fc))(image), iVar2 == 3)))) {\n          (**(code **)(puStack_150 + -0x7774))(7);\n          sVar9 = image->rows;\n          if ((int)sVar9 < 0) {\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1 < (int)(sVar9 + 0x3f) >> 6) goto LAB_001c9298;\nLAB_001c91a4:\n            bVar1 = (int)sVar9 < 0x80;\n          }\n          else {\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\n            if ((int)sVar9 >> 6 <= extraout_v1) goto LAB_001c91a4;\nLAB_001c9298:\n            (*pcVar25)(7);\n            bVar1 = extraout_v1_02 < 2;\n          }\n          iVar10 = 1;\n          if ((bool)(bVar1 ^ 1)) {\n            (**(code **)(puStack_150 + -0x7774))(7);\n            sVar9 = image->rows;\n            if ((int)sVar9 < 0) {\n              sVar9 = sVar9 + 0x3f;\n            }\n            iVar10 = (int)sVar9 >> 6;\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1_01 < iVar10) {\nLAB_001c9234:\n              (*pcVar25)(7);\n              iVar10 = extraout_v1_00;\n            }\n            goto LAB_001c9088;\n          }\n          iVar4 = *(int *)(puStack_150 + -0x7f10);\n        }\n        else {\n          uVar38 = (**(code **)(puStack_150 + -0x7774))(7);\n          if ((int)((ulonglong)uVar38 >> 0x20) == 0) {\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar38) goto LAB_001c9074;\n            uVar38 = (*pcVar25)(7);\n            if ((int)((ulonglong)uVar38 >> 0x20) != 0) goto LAB_001c9070;\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar38) goto LAB_001c9074;\n            iVar10 = 1;\n          }\n          else {\nLAB_001c9070:\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\nLAB_001c9074:\n            uVar38 = (*pcVar25)(7);\n            if (((int)((ulonglong)uVar38 >> 0x20) == 0) &&\n               (pcVar25 = *(code **)(puStack_150 + -0x7774), (uint)uVar38 < 2)) goto LAB_001c9234;\n            iVar10 = 2;\n          }\nLAB_001c9088:\n          iVar4 = *(int *)(puStack_150 + -0x7f10);\n        }\n        iVar2 = 0;\n        pEStack_124 = (ExceptionInfo *)0x1;\n        puStack_120 = &uStack_148;\n        pIStack_13c = pIVar11;\n        pRStack_138 = pRVar14;\n        pEStack_134 = pEVar16;\n        pIStack_130 = unaff_s6;\n        puStack_12c = unaff_s5;\n        pIStack_128 = image;\n        (**(code **)(puStack_150 + -0x7718))(iVar4 + 0x5428,&pIStack_13c,iVar10,0);\n        pEVar16 = pEStack_124;\n        (**(code **)(puStack_150 + -0x79bc))(unaff_s6);\n        (**(code **)(puStack_150 + -0x79bc))(unaff_s5);\n        image->type = pIVar11->type;\n        if (pEVar16 == (ExceptionInfo *)0x0) {\n          image = (Image *)(**(code **)(puStack_150 + -0x7964))(image);\n        }\n      }\n      puVar23 = puStack_150;\n      if (iStack_11c == *piVar19) {\n        return image;\n      }\n      goto LAB_001c9314;\n    }\n    goto LAB_001c9320;\n  }" if (parenthesized_expression "(pIVar11 == (Image *)0x0)" ( (binary_expression "pIVar11 == (Image *)0x0" identifier == (cast_expression "(Image *)0x0" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    iVar2 = *(int *)(puVar21 + 0x1df9ac) + -0x26ac;\n    (**(code **)(puVar21 + 0x1e06c8))\n              (*(int *)(puVar21 + 0x1df9a8) + -0x37b0,*(int *)(puVar21 + 0x1df9ac) + -0x288c,0x3f4,\n               iVar2);\nLAB_001c92d4:\n    iVar2 = iVar2 + -0x26ac;\n    (**(code **)(puVar23 + -0x72a8))\n              (*(int *)(puVar23 + -0x7fd0) + 0x294c,*(int *)(puVar23 + -0x7fc4) + -0x288c,0x3fa,\n               iVar2);\n    pEVar16 = unaff_s2;\nLAB_001c92f4:\n    iVar2 = iVar2 + -0x26ac;\n    (**(code **)(puVar23 + -0x72a8))\n              (*(int *)(puVar23 + -0x7fd0) + 0x1cac,*(int *)(puVar23 + -0x7fc4) + -0x288c,0x3f9,\n               iVar2);\nLAB_001c9314:\n    (**(code **)(puVar23 + -0x784c))();\n    pIVar11 = unaff_s0;\nLAB_001c9320:\n    (**(code **)(puVar23 + -0x72a8))\n              (*(int *)(puVar23 + -0x7fc4) + -0x2850,*(int *)(puVar23 + -0x7fc4) + -0x288c,0x3f8,\n               iVar2 + -0x26ac);\n    unaff_s2 = pEVar16;\n  }" { (expression_statement "iVar2 = *(int *)(puVar21 + 0x1df9ac) + -0x26ac;" (assignment_expression "iVar2 = *(int *)(puVar21 + 0x1df9ac) + -0x26ac" identifier = (binary_expression "*(int *)(puVar21 + 0x1df9ac) + -0x26ac" (pointer_expression "*(int *)(puVar21 + 0x1df9ac)" * (cast_expression "(int *)(puVar21 + 0x1df9ac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar21 + 0x1df9ac)" ( (binary_expression "puVar21 + 0x1df9ac" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "(**(code **)(puVar21 + 0x1e06c8))\n              (*(int *)(puVar21 + 0x1df9a8) + -0x37b0,*(int *)(puVar21 + 0x1df9ac) + -0x288c,0x3f4,\n               iVar2);" (call_expression "(**(code **)(puVar21 + 0x1e06c8))\n              (*(int *)(puVar21 + 0x1df9a8) + -0x37b0,*(int *)(puVar21 + 0x1df9ac) + -0x288c,0x3f4,\n               iVar2)" (parenthesized_expression "(**(code **)(puVar21 + 0x1e06c8))" ( (pointer_expression "**(code **)(puVar21 + 0x1e06c8)" * (pointer_expression "*(code **)(puVar21 + 0x1e06c8)" * (cast_expression "(code **)(puVar21 + 0x1e06c8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar21 + 0x1e06c8)" ( (binary_expression "puVar21 + 0x1e06c8" identifier + number_literal) ))))) )) (argument_list "(*(int *)(puVar21 + 0x1df9a8) + -0x37b0,*(int *)(puVar21 + 0x1df9ac) + -0x288c,0x3f4,\n               iVar2)" ( (binary_expression "*(int *)(puVar21 + 0x1df9a8) + -0x37b0" (pointer_expression "*(int *)(puVar21 + 0x1df9a8)" * (cast_expression "(int *)(puVar21 + 0x1df9a8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar21 + 0x1df9a8)" ( (binary_expression "puVar21 + 0x1df9a8" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar21 + 0x1df9ac) + -0x288c" (pointer_expression "*(int *)(puVar21 + 0x1df9ac)" * (cast_expression "(int *)(puVar21 + 0x1df9ac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar21 + 0x1df9ac)" ( (binary_expression "puVar21 + 0x1df9ac" identifier + number_literal) )))) + number_literal) , number_literal , identifier ))) ;) (labeled_statement "LAB_001c92d4:\n    iVar2 = iVar2 + -0x26ac;" statement_identifier : (expression_statement "iVar2 = iVar2 + -0x26ac;" (assignment_expression "iVar2 = iVar2 + -0x26ac" identifier = (binary_expression "iVar2 + -0x26ac" identifier + number_literal)) ;)) (expression_statement "(**(code **)(puVar23 + -0x72a8))\n              (*(int *)(puVar23 + -0x7fd0) + 0x294c,*(int *)(puVar23 + -0x7fc4) + -0x288c,0x3fa,\n               iVar2);" (call_expression "(**(code **)(puVar23 + -0x72a8))\n              (*(int *)(puVar23 + -0x7fd0) + 0x294c,*(int *)(puVar23 + -0x7fc4) + -0x288c,0x3fa,\n               iVar2)" (parenthesized_expression "(**(code **)(puVar23 + -0x72a8))" ( (pointer_expression "**(code **)(puVar23 + -0x72a8)" * (pointer_expression "*(code **)(puVar23 + -0x72a8)" * (cast_expression "(code **)(puVar23 + -0x72a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar23 + -0x72a8)" ( (binary_expression "puVar23 + -0x72a8" identifier + number_literal) ))))) )) (argument_list "(*(int *)(puVar23 + -0x7fd0) + 0x294c,*(int *)(puVar23 + -0x7fc4) + -0x288c,0x3fa,\n               iVar2)" ( (binary_expression "*(int *)(puVar23 + -0x7fd0) + 0x294c" (pointer_expression "*(int *)(puVar23 + -0x7fd0)" * (cast_expression "(int *)(puVar23 + -0x7fd0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar23 + -0x7fd0)" ( (binary_expression "puVar23 + -0x7fd0" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar23 + -0x7fc4) + -0x288c" (pointer_expression "*(int *)(puVar23 + -0x7fc4)" * (cast_expression "(int *)(puVar23 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar23 + -0x7fc4)" ( (binary_expression "puVar23 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , identifier ))) ;) (expression_statement "pEVar16 = unaff_s2;" (assignment_expression "pEVar16 = unaff_s2" identifier = identifier) ;) (labeled_statement "LAB_001c92f4:\n    iVar2 = iVar2 + -0x26ac;" statement_identifier : (expression_statement "iVar2 = iVar2 + -0x26ac;" (assignment_expression "iVar2 = iVar2 + -0x26ac" identifier = (binary_expression "iVar2 + -0x26ac" identifier + number_literal)) ;)) (expression_statement "(**(code **)(puVar23 + -0x72a8))\n              (*(int *)(puVar23 + -0x7fd0) + 0x1cac,*(int *)(puVar23 + -0x7fc4) + -0x288c,0x3f9,\n               iVar2);" (call_expression "(**(code **)(puVar23 + -0x72a8))\n              (*(int *)(puVar23 + -0x7fd0) + 0x1cac,*(int *)(puVar23 + -0x7fc4) + -0x288c,0x3f9,\n               iVar2)" (parenthesized_expression "(**(code **)(puVar23 + -0x72a8))" ( (pointer_expression "**(code **)(puVar23 + -0x72a8)" * (pointer_expression "*(code **)(puVar23 + -0x72a8)" * (cast_expression "(code **)(puVar23 + -0x72a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar23 + -0x72a8)" ( (binary_expression "puVar23 + -0x72a8" identifier + number_literal) ))))) )) (argument_list "(*(int *)(puVar23 + -0x7fd0) + 0x1cac,*(int *)(puVar23 + -0x7fc4) + -0x288c,0x3f9,\n               iVar2)" ( (binary_expression "*(int *)(puVar23 + -0x7fd0) + 0x1cac" (pointer_expression "*(int *)(puVar23 + -0x7fd0)" * (cast_expression "(int *)(puVar23 + -0x7fd0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar23 + -0x7fd0)" ( (binary_expression "puVar23 + -0x7fd0" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar23 + -0x7fc4) + -0x288c" (pointer_expression "*(int *)(puVar23 + -0x7fc4)" * (cast_expression "(int *)(puVar23 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar23 + -0x7fc4)" ( (binary_expression "puVar23 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , identifier ))) ;) (labeled_statement "LAB_001c9314:\n    (**(code **)(puVar23 + -0x784c))();" statement_identifier : (expression_statement "(**(code **)(puVar23 + -0x784c))();" (call_expression "(**(code **)(puVar23 + -0x784c))()" (parenthesized_expression "(**(code **)(puVar23 + -0x784c))" ( (pointer_expression "**(code **)(puVar23 + -0x784c)" * (pointer_expression "*(code **)(puVar23 + -0x784c)" * (cast_expression "(code **)(puVar23 + -0x784c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar23 + -0x784c)" ( (binary_expression "puVar23 + -0x784c" identifier + number_literal) ))))) )) (argument_list "()" ( ))) ;)) (expression_statement "pIVar11 = unaff_s0;" (assignment_expression "pIVar11 = unaff_s0" identifier = identifier) ;) (labeled_statement "LAB_001c9320:\n    (**(code **)(puVar23 + -0x72a8))\n              (*(int *)(puVar23 + -0x7fc4) + -0x2850,*(int *)(puVar23 + -0x7fc4) + -0x288c,0x3f8,\n               iVar2 + -0x26ac);" statement_identifier : (expression_statement "(**(code **)(puVar23 + -0x72a8))\n              (*(int *)(puVar23 + -0x7fc4) + -0x2850,*(int *)(puVar23 + -0x7fc4) + -0x288c,0x3f8,\n               iVar2 + -0x26ac);" (call_expression "(**(code **)(puVar23 + -0x72a8))\n              (*(int *)(puVar23 + -0x7fc4) + -0x2850,*(int *)(puVar23 + -0x7fc4) + -0x288c,0x3f8,\n               iVar2 + -0x26ac)" (parenthesized_expression "(**(code **)(puVar23 + -0x72a8))" ( (pointer_expression "**(code **)(puVar23 + -0x72a8)" * (pointer_expression "*(code **)(puVar23 + -0x72a8)" * (cast_expression "(code **)(puVar23 + -0x72a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar23 + -0x72a8)" ( (binary_expression "puVar23 + -0x72a8" identifier + number_literal) ))))) )) (argument_list "(*(int *)(puVar23 + -0x7fc4) + -0x2850,*(int *)(puVar23 + -0x7fc4) + -0x288c,0x3f8,\n               iVar2 + -0x26ac)" ( (binary_expression "*(int *)(puVar23 + -0x7fc4) + -0x2850" (pointer_expression "*(int *)(puVar23 + -0x7fc4)" * (cast_expression "(int *)(puVar23 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar23 + -0x7fc4)" ( (binary_expression "puVar23 + -0x7fc4" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar23 + -0x7fc4) + -0x288c" (pointer_expression "*(int *)(puVar23 + -0x7fc4)" * (cast_expression "(int *)(puVar23 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar23 + -0x7fc4)" ( (binary_expression "puVar23 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "iVar2 + -0x26ac" identifier + number_literal) ))) ;)) (expression_statement "unaff_s2 = pEVar16;" (assignment_expression "unaff_s2 = pEVar16" identifier = identifier) ;) }) (else_clause "else if (pIVar11->signature == 0xabacadab) {\n    if (pIVar11->debug != MagickFalse) {\n      pcStack_154 = pIVar11->filename;\n      pEStack_158 = (ExceptionInfo *)(*(int *)(puVar21 + 0x1df9a4) - 0x62ac);\n      (**(code **)(puVar21 + 0x1e02a0))\n                (0x8000,*(int *)(puVar21 + 0x1df9ac) + -0x288c,\n                 *(int *)(puVar21 + 0x1df9ac) + -0x26bc,0x3f7);\n    }\n    iVar2 = *(int *)(puStack_150 + -0x7fc4);\n    unaff_s3 = pRVar14;\n    puVar23 = puStack_150;\n    if (pRVar14 != (RectangleInfo *)0x0) {\n      unaff_s0 = pIVar11;\n      if (pEVar16 == (ExceptionInfo *)0x0) goto LAB_001c92f4;\n      unaff_s2 = pEVar16;\n      if (pEVar16->signature != 0xabacadab) goto LAB_001c92d4;\n      iVar2 = 1;\n      pEStack_158 = pEVar16;\n      image = (Image *)(**(code **)(puStack_150 + -0x7080))\n                                 (pIVar11,pRVar14->width,pRVar14->height,1);\n      if (image != (Image *)0x0) {\n        uStack_144 = 0;\n        uStack_148 = 0;\n        unaff_s5 = (undefined *)(**(code **)(puStack_150 + -0x715c))(pIVar11,pEVar16);\n        unaff_s6 = (Image *)(**(code **)(puStack_150 + -0x79dc))(image,pEVar16);\n        iVar2 = (**(code **)(puStack_150 + -0x73fc))(pIVar11);\n        if (((iVar2 == 4) || (iVar2 = (**(code **)(puStack_150 + -0x73fc))(pIVar11), iVar2 == 3)) &&\n           ((iVar2 = (**(code **)(puStack_150 + -0x73fc))(image), iVar2 == 4 ||\n            (iVar2 = (**(code **)(puStack_150 + -0x73fc))(image), iVar2 == 3)))) {\n          (**(code **)(puStack_150 + -0x7774))(7);\n          sVar9 = image->rows;\n          if ((int)sVar9 < 0) {\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1 < (int)(sVar9 + 0x3f) >> 6) goto LAB_001c9298;\nLAB_001c91a4:\n            bVar1 = (int)sVar9 < 0x80;\n          }\n          else {\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\n            if ((int)sVar9 >> 6 <= extraout_v1) goto LAB_001c91a4;\nLAB_001c9298:\n            (*pcVar25)(7);\n            bVar1 = extraout_v1_02 < 2;\n          }\n          iVar10 = 1;\n          if ((bool)(bVar1 ^ 1)) {\n            (**(code **)(puStack_150 + -0x7774))(7);\n            sVar9 = image->rows;\n            if ((int)sVar9 < 0) {\n              sVar9 = sVar9 + 0x3f;\n            }\n            iVar10 = (int)sVar9 >> 6;\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1_01 < iVar10) {\nLAB_001c9234:\n              (*pcVar25)(7);\n              iVar10 = extraout_v1_00;\n            }\n            goto LAB_001c9088;\n          }\n          iVar4 = *(int *)(puStack_150 + -0x7f10);\n        }\n        else {\n          uVar38 = (**(code **)(puStack_150 + -0x7774))(7);\n          if ((int)((ulonglong)uVar38 >> 0x20) == 0) {\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar38) goto LAB_001c9074;\n            uVar38 = (*pcVar25)(7);\n            if ((int)((ulonglong)uVar38 >> 0x20) != 0) goto LAB_001c9070;\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar38) goto LAB_001c9074;\n            iVar10 = 1;\n          }\n          else {\nLAB_001c9070:\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\nLAB_001c9074:\n            uVar38 = (*pcVar25)(7);\n            if (((int)((ulonglong)uVar38 >> 0x20) == 0) &&\n               (pcVar25 = *(code **)(puStack_150 + -0x7774), (uint)uVar38 < 2)) goto LAB_001c9234;\n            iVar10 = 2;\n          }\nLAB_001c9088:\n          iVar4 = *(int *)(puStack_150 + -0x7f10);\n        }\n        iVar2 = 0;\n        pEStack_124 = (ExceptionInfo *)0x1;\n        puStack_120 = &uStack_148;\n        pIStack_13c = pIVar11;\n        pRStack_138 = pRVar14;\n        pEStack_134 = pEVar16;\n        pIStack_130 = unaff_s6;\n        puStack_12c = unaff_s5;\n        pIStack_128 = image;\n        (**(code **)(puStack_150 + -0x7718))(iVar4 + 0x5428,&pIStack_13c,iVar10,0);\n        pEVar16 = pEStack_124;\n        (**(code **)(puStack_150 + -0x79bc))(unaff_s6);\n        (**(code **)(puStack_150 + -0x79bc))(unaff_s5);\n        image->type = pIVar11->type;\n        if (pEVar16 == (ExceptionInfo *)0x0) {\n          image = (Image *)(**(code **)(puStack_150 + -0x7964))(image);\n        }\n      }\n      puVar23 = puStack_150;\n      if (iStack_11c == *piVar19) {\n        return image;\n      }\n      goto LAB_001c9314;\n    }\n    goto LAB_001c9320;\n  }" else (if_statement "if (pIVar11->signature == 0xabacadab) {\n    if (pIVar11->debug != MagickFalse) {\n      pcStack_154 = pIVar11->filename;\n      pEStack_158 = (ExceptionInfo *)(*(int *)(puVar21 + 0x1df9a4) - 0x62ac);\n      (**(code **)(puVar21 + 0x1e02a0))\n                (0x8000,*(int *)(puVar21 + 0x1df9ac) + -0x288c,\n                 *(int *)(puVar21 + 0x1df9ac) + -0x26bc,0x3f7);\n    }\n    iVar2 = *(int *)(puStack_150 + -0x7fc4);\n    unaff_s3 = pRVar14;\n    puVar23 = puStack_150;\n    if (pRVar14 != (RectangleInfo *)0x0) {\n      unaff_s0 = pIVar11;\n      if (pEVar16 == (ExceptionInfo *)0x0) goto LAB_001c92f4;\n      unaff_s2 = pEVar16;\n      if (pEVar16->signature != 0xabacadab) goto LAB_001c92d4;\n      iVar2 = 1;\n      pEStack_158 = pEVar16;\n      image = (Image *)(**(code **)(puStack_150 + -0x7080))\n                                 (pIVar11,pRVar14->width,pRVar14->height,1);\n      if (image != (Image *)0x0) {\n        uStack_144 = 0;\n        uStack_148 = 0;\n        unaff_s5 = (undefined *)(**(code **)(puStack_150 + -0x715c))(pIVar11,pEVar16);\n        unaff_s6 = (Image *)(**(code **)(puStack_150 + -0x79dc))(image,pEVar16);\n        iVar2 = (**(code **)(puStack_150 + -0x73fc))(pIVar11);\n        if (((iVar2 == 4) || (iVar2 = (**(code **)(puStack_150 + -0x73fc))(pIVar11), iVar2 == 3)) &&\n           ((iVar2 = (**(code **)(puStack_150 + -0x73fc))(image), iVar2 == 4 ||\n            (iVar2 = (**(code **)(puStack_150 + -0x73fc))(image), iVar2 == 3)))) {\n          (**(code **)(puStack_150 + -0x7774))(7);\n          sVar9 = image->rows;\n          if ((int)sVar9 < 0) {\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1 < (int)(sVar9 + 0x3f) >> 6) goto LAB_001c9298;\nLAB_001c91a4:\n            bVar1 = (int)sVar9 < 0x80;\n          }\n          else {\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\n            if ((int)sVar9 >> 6 <= extraout_v1) goto LAB_001c91a4;\nLAB_001c9298:\n            (*pcVar25)(7);\n            bVar1 = extraout_v1_02 < 2;\n          }\n          iVar10 = 1;\n          if ((bool)(bVar1 ^ 1)) {\n            (**(code **)(puStack_150 + -0x7774))(7);\n            sVar9 = image->rows;\n            if ((int)sVar9 < 0) {\n              sVar9 = sVar9 + 0x3f;\n            }\n            iVar10 = (int)sVar9 >> 6;\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1_01 < iVar10) {\nLAB_001c9234:\n              (*pcVar25)(7);\n              iVar10 = extraout_v1_00;\n            }\n            goto LAB_001c9088;\n          }\n          iVar4 = *(int *)(puStack_150 + -0x7f10);\n        }\n        else {\n          uVar38 = (**(code **)(puStack_150 + -0x7774))(7);\n          if ((int)((ulonglong)uVar38 >> 0x20) == 0) {\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar38) goto LAB_001c9074;\n            uVar38 = (*pcVar25)(7);\n            if ((int)((ulonglong)uVar38 >> 0x20) != 0) goto LAB_001c9070;\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar38) goto LAB_001c9074;\n            iVar10 = 1;\n          }\n          else {\nLAB_001c9070:\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\nLAB_001c9074:\n            uVar38 = (*pcVar25)(7);\n            if (((int)((ulonglong)uVar38 >> 0x20) == 0) &&\n               (pcVar25 = *(code **)(puStack_150 + -0x7774), (uint)uVar38 < 2)) goto LAB_001c9234;\n            iVar10 = 2;\n          }\nLAB_001c9088:\n          iVar4 = *(int *)(puStack_150 + -0x7f10);\n        }\n        iVar2 = 0;\n        pEStack_124 = (ExceptionInfo *)0x1;\n        puStack_120 = &uStack_148;\n        pIStack_13c = pIVar11;\n        pRStack_138 = pRVar14;\n        pEStack_134 = pEVar16;\n        pIStack_130 = unaff_s6;\n        puStack_12c = unaff_s5;\n        pIStack_128 = image;\n        (**(code **)(puStack_150 + -0x7718))(iVar4 + 0x5428,&pIStack_13c,iVar10,0);\n        pEVar16 = pEStack_124;\n        (**(code **)(puStack_150 + -0x79bc))(unaff_s6);\n        (**(code **)(puStack_150 + -0x79bc))(unaff_s5);\n        image->type = pIVar11->type;\n        if (pEVar16 == (ExceptionInfo *)0x0) {\n          image = (Image *)(**(code **)(puStack_150 + -0x7964))(image);\n        }\n      }\n      puVar23 = puStack_150;\n      if (iStack_11c == *piVar19) {\n        return image;\n      }\n      goto LAB_001c9314;\n    }\n    goto LAB_001c9320;\n  }" if (parenthesized_expression "(pIVar11->signature == 0xabacadab)" ( (binary_expression "pIVar11->signature == 0xabacadab" (field_expression "pIVar11->signature" identifier -> field_identifier) == number_literal) )) (compound_statement "{\n    if (pIVar11->debug != MagickFalse) {\n      pcStack_154 = pIVar11->filename;\n      pEStack_158 = (ExceptionInfo *)(*(int *)(puVar21 + 0x1df9a4) - 0x62ac);\n      (**(code **)(puVar21 + 0x1e02a0))\n                (0x8000,*(int *)(puVar21 + 0x1df9ac) + -0x288c,\n                 *(int *)(puVar21 + 0x1df9ac) + -0x26bc,0x3f7);\n    }\n    iVar2 = *(int *)(puStack_150 + -0x7fc4);\n    unaff_s3 = pRVar14;\n    puVar23 = puStack_150;\n    if (pRVar14 != (RectangleInfo *)0x0) {\n      unaff_s0 = pIVar11;\n      if (pEVar16 == (ExceptionInfo *)0x0) goto LAB_001c92f4;\n      unaff_s2 = pEVar16;\n      if (pEVar16->signature != 0xabacadab) goto LAB_001c92d4;\n      iVar2 = 1;\n      pEStack_158 = pEVar16;\n      image = (Image *)(**(code **)(puStack_150 + -0x7080))\n                                 (pIVar11,pRVar14->width,pRVar14->height,1);\n      if (image != (Image *)0x0) {\n        uStack_144 = 0;\n        uStack_148 = 0;\n        unaff_s5 = (undefined *)(**(code **)(puStack_150 + -0x715c))(pIVar11,pEVar16);\n        unaff_s6 = (Image *)(**(code **)(puStack_150 + -0x79dc))(image,pEVar16);\n        iVar2 = (**(code **)(puStack_150 + -0x73fc))(pIVar11);\n        if (((iVar2 == 4) || (iVar2 = (**(code **)(puStack_150 + -0x73fc))(pIVar11), iVar2 == 3)) &&\n           ((iVar2 = (**(code **)(puStack_150 + -0x73fc))(image), iVar2 == 4 ||\n            (iVar2 = (**(code **)(puStack_150 + -0x73fc))(image), iVar2 == 3)))) {\n          (**(code **)(puStack_150 + -0x7774))(7);\n          sVar9 = image->rows;\n          if ((int)sVar9 < 0) {\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1 < (int)(sVar9 + 0x3f) >> 6) goto LAB_001c9298;\nLAB_001c91a4:\n            bVar1 = (int)sVar9 < 0x80;\n          }\n          else {\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\n            if ((int)sVar9 >> 6 <= extraout_v1) goto LAB_001c91a4;\nLAB_001c9298:\n            (*pcVar25)(7);\n            bVar1 = extraout_v1_02 < 2;\n          }\n          iVar10 = 1;\n          if ((bool)(bVar1 ^ 1)) {\n            (**(code **)(puStack_150 + -0x7774))(7);\n            sVar9 = image->rows;\n            if ((int)sVar9 < 0) {\n              sVar9 = sVar9 + 0x3f;\n            }\n            iVar10 = (int)sVar9 >> 6;\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1_01 < iVar10) {\nLAB_001c9234:\n              (*pcVar25)(7);\n              iVar10 = extraout_v1_00;\n            }\n            goto LAB_001c9088;\n          }\n          iVar4 = *(int *)(puStack_150 + -0x7f10);\n        }\n        else {\n          uVar38 = (**(code **)(puStack_150 + -0x7774))(7);\n          if ((int)((ulonglong)uVar38 >> 0x20) == 0) {\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar38) goto LAB_001c9074;\n            uVar38 = (*pcVar25)(7);\n            if ((int)((ulonglong)uVar38 >> 0x20) != 0) goto LAB_001c9070;\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar38) goto LAB_001c9074;\n            iVar10 = 1;\n          }\n          else {\nLAB_001c9070:\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\nLAB_001c9074:\n            uVar38 = (*pcVar25)(7);\n            if (((int)((ulonglong)uVar38 >> 0x20) == 0) &&\n               (pcVar25 = *(code **)(puStack_150 + -0x7774), (uint)uVar38 < 2)) goto LAB_001c9234;\n            iVar10 = 2;\n          }\nLAB_001c9088:\n          iVar4 = *(int *)(puStack_150 + -0x7f10);\n        }\n        iVar2 = 0;\n        pEStack_124 = (ExceptionInfo *)0x1;\n        puStack_120 = &uStack_148;\n        pIStack_13c = pIVar11;\n        pRStack_138 = pRVar14;\n        pEStack_134 = pEVar16;\n        pIStack_130 = unaff_s6;\n        puStack_12c = unaff_s5;\n        pIStack_128 = image;\n        (**(code **)(puStack_150 + -0x7718))(iVar4 + 0x5428,&pIStack_13c,iVar10,0);\n        pEVar16 = pEStack_124;\n        (**(code **)(puStack_150 + -0x79bc))(unaff_s6);\n        (**(code **)(puStack_150 + -0x79bc))(unaff_s5);\n        image->type = pIVar11->type;\n        if (pEVar16 == (ExceptionInfo *)0x0) {\n          image = (Image *)(**(code **)(puStack_150 + -0x7964))(image);\n        }\n      }\n      puVar23 = puStack_150;\n      if (iStack_11c == *piVar19) {\n        return image;\n      }\n      goto LAB_001c9314;\n    }\n    goto LAB_001c9320;\n  }" { (if_statement "if (pIVar11->debug != MagickFalse) {\n      pcStack_154 = pIVar11->filename;\n      pEStack_158 = (ExceptionInfo *)(*(int *)(puVar21 + 0x1df9a4) - 0x62ac);\n      (**(code **)(puVar21 + 0x1e02a0))\n                (0x8000,*(int *)(puVar21 + 0x1df9ac) + -0x288c,\n                 *(int *)(puVar21 + 0x1df9ac) + -0x26bc,0x3f7);\n    }" if (parenthesized_expression "(pIVar11->debug != MagickFalse)" ( (binary_expression "pIVar11->debug != MagickFalse" (field_expression "pIVar11->debug" identifier -> field_identifier) != identifier) )) (compound_statement "{\n      pcStack_154 = pIVar11->filename;\n      pEStack_158 = (ExceptionInfo *)(*(int *)(puVar21 + 0x1df9a4) - 0x62ac);\n      (**(code **)(puVar21 + 0x1e02a0))\n                (0x8000,*(int *)(puVar21 + 0x1df9ac) + -0x288c,\n                 *(int *)(puVar21 + 0x1df9ac) + -0x26bc,0x3f7);\n    }" { (expression_statement "pcStack_154 = pIVar11->filename;" (assignment_expression "pcStack_154 = pIVar11->filename" identifier = (field_expression "pIVar11->filename" identifier -> field_identifier)) ;) (expression_statement "pEStack_158 = (ExceptionInfo *)(*(int *)(puVar21 + 0x1df9a4) - 0x62ac);" (assignment_expression "pEStack_158 = (ExceptionInfo *)(*(int *)(puVar21 + 0x1df9a4) - 0x62ac)" identifier = (cast_expression "(ExceptionInfo *)(*(int *)(puVar21 + 0x1df9a4) - 0x62ac)" ( (type_descriptor "ExceptionInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar21 + 0x1df9a4) - 0x62ac)" ( (binary_expression "*(int *)(puVar21 + 0x1df9a4) - 0x62ac" (pointer_expression "*(int *)(puVar21 + 0x1df9a4)" * (cast_expression "(int *)(puVar21 + 0x1df9a4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar21 + 0x1df9a4)" ( (binary_expression "puVar21 + 0x1df9a4" identifier + number_literal) )))) - number_literal) )))) ;) (expression_statement "(**(code **)(puVar21 + 0x1e02a0))\n                (0x8000,*(int *)(puVar21 + 0x1df9ac) + -0x288c,\n                 *(int *)(puVar21 + 0x1df9ac) + -0x26bc,0x3f7);" (call_expression "(**(code **)(puVar21 + 0x1e02a0))\n                (0x8000,*(int *)(puVar21 + 0x1df9ac) + -0x288c,\n                 *(int *)(puVar21 + 0x1df9ac) + -0x26bc,0x3f7)" (parenthesized_expression "(**(code **)(puVar21 + 0x1e02a0))" ( (pointer_expression "**(code **)(puVar21 + 0x1e02a0)" * (pointer_expression "*(code **)(puVar21 + 0x1e02a0)" * (cast_expression "(code **)(puVar21 + 0x1e02a0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar21 + 0x1e02a0)" ( (binary_expression "puVar21 + 0x1e02a0" identifier + number_literal) ))))) )) (argument_list "(0x8000,*(int *)(puVar21 + 0x1df9ac) + -0x288c,\n                 *(int *)(puVar21 + 0x1df9ac) + -0x26bc,0x3f7)" ( number_literal , (binary_expression "*(int *)(puVar21 + 0x1df9ac) + -0x288c" (pointer_expression "*(int *)(puVar21 + 0x1df9ac)" * (cast_expression "(int *)(puVar21 + 0x1df9ac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar21 + 0x1df9ac)" ( (binary_expression "puVar21 + 0x1df9ac" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar21 + 0x1df9ac) + -0x26bc" (pointer_expression "*(int *)(puVar21 + 0x1df9ac)" * (cast_expression "(int *)(puVar21 + 0x1df9ac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar21 + 0x1df9ac)" ( (binary_expression "puVar21 + 0x1df9ac" identifier + number_literal) )))) + number_literal) , number_literal ))) ;) })) (expression_statement "iVar2 = *(int *)(puStack_150 + -0x7fc4);" (assignment_expression "iVar2 = *(int *)(puStack_150 + -0x7fc4)" identifier = (pointer_expression "*(int *)(puStack_150 + -0x7fc4)" * (cast_expression "(int *)(puStack_150 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puStack_150 + -0x7fc4)" ( (binary_expression "puStack_150 + -0x7fc4" identifier + number_literal) ))))) ;) (expression_statement "unaff_s3 = pRVar14;" (assignment_expression "unaff_s3 = pRVar14" identifier = identifier) ;) (expression_statement "puVar23 = puStack_150;" (assignment_expression "puVar23 = puStack_150" identifier = identifier) ;) (if_statement "if (pRVar14 != (RectangleInfo *)0x0) {\n      unaff_s0 = pIVar11;\n      if (pEVar16 == (ExceptionInfo *)0x0) goto LAB_001c92f4;\n      unaff_s2 = pEVar16;\n      if (pEVar16->signature != 0xabacadab) goto LAB_001c92d4;\n      iVar2 = 1;\n      pEStack_158 = pEVar16;\n      image = (Image *)(**(code **)(puStack_150 + -0x7080))\n                                 (pIVar11,pRVar14->width,pRVar14->height,1);\n      if (image != (Image *)0x0) {\n        uStack_144 = 0;\n        uStack_148 = 0;\n        unaff_s5 = (undefined *)(**(code **)(puStack_150 + -0x715c))(pIVar11,pEVar16);\n        unaff_s6 = (Image *)(**(code **)(puStack_150 + -0x79dc))(image,pEVar16);\n        iVar2 = (**(code **)(puStack_150 + -0x73fc))(pIVar11);\n        if (((iVar2 == 4) || (iVar2 = (**(code **)(puStack_150 + -0x73fc))(pIVar11), iVar2 == 3)) &&\n           ((iVar2 = (**(code **)(puStack_150 + -0x73fc))(image), iVar2 == 4 ||\n            (iVar2 = (**(code **)(puStack_150 + -0x73fc))(image), iVar2 == 3)))) {\n          (**(code **)(puStack_150 + -0x7774))(7);\n          sVar9 = image->rows;\n          if ((int)sVar9 < 0) {\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1 < (int)(sVar9 + 0x3f) >> 6) goto LAB_001c9298;\nLAB_001c91a4:\n            bVar1 = (int)sVar9 < 0x80;\n          }\n          else {\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\n            if ((int)sVar9 >> 6 <= extraout_v1) goto LAB_001c91a4;\nLAB_001c9298:\n            (*pcVar25)(7);\n            bVar1 = extraout_v1_02 < 2;\n          }\n          iVar10 = 1;\n          if ((bool)(bVar1 ^ 1)) {\n            (**(code **)(puStack_150 + -0x7774))(7);\n            sVar9 = image->rows;\n            if ((int)sVar9 < 0) {\n              sVar9 = sVar9 + 0x3f;\n            }\n            iVar10 = (int)sVar9 >> 6;\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1_01 < iVar10) {\nLAB_001c9234:\n              (*pcVar25)(7);\n              iVar10 = extraout_v1_00;\n            }\n            goto LAB_001c9088;\n          }\n          iVar4 = *(int *)(puStack_150 + -0x7f10);\n        }\n        else {\n          uVar38 = (**(code **)(puStack_150 + -0x7774))(7);\n          if ((int)((ulonglong)uVar38 >> 0x20) == 0) {\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar38) goto LAB_001c9074;\n            uVar38 = (*pcVar25)(7);\n            if ((int)((ulonglong)uVar38 >> 0x20) != 0) goto LAB_001c9070;\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar38) goto LAB_001c9074;\n            iVar10 = 1;\n          }\n          else {\nLAB_001c9070:\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\nLAB_001c9074:\n            uVar38 = (*pcVar25)(7);\n            if (((int)((ulonglong)uVar38 >> 0x20) == 0) &&\n               (pcVar25 = *(code **)(puStack_150 + -0x7774), (uint)uVar38 < 2)) goto LAB_001c9234;\n            iVar10 = 2;\n          }\nLAB_001c9088:\n          iVar4 = *(int *)(puStack_150 + -0x7f10);\n        }\n        iVar2 = 0;\n        pEStack_124 = (ExceptionInfo *)0x1;\n        puStack_120 = &uStack_148;\n        pIStack_13c = pIVar11;\n        pRStack_138 = pRVar14;\n        pEStack_134 = pEVar16;\n        pIStack_130 = unaff_s6;\n        puStack_12c = unaff_s5;\n        pIStack_128 = image;\n        (**(code **)(puStack_150 + -0x7718))(iVar4 + 0x5428,&pIStack_13c,iVar10,0);\n        pEVar16 = pEStack_124;\n        (**(code **)(puStack_150 + -0x79bc))(unaff_s6);\n        (**(code **)(puStack_150 + -0x79bc))(unaff_s5);\n        image->type = pIVar11->type;\n        if (pEVar16 == (ExceptionInfo *)0x0) {\n          image = (Image *)(**(code **)(puStack_150 + -0x7964))(image);\n        }\n      }\n      puVar23 = puStack_150;\n      if (iStack_11c == *piVar19) {\n        return image;\n      }\n      goto LAB_001c9314;\n    }" if (parenthesized_expression "(pRVar14 != (RectangleInfo *)0x0)" ( (binary_expression "pRVar14 != (RectangleInfo *)0x0" identifier != (cast_expression "(RectangleInfo *)0x0" ( (type_descriptor "RectangleInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      unaff_s0 = pIVar11;\n      if (pEVar16 == (ExceptionInfo *)0x0) goto LAB_001c92f4;\n      unaff_s2 = pEVar16;\n      if (pEVar16->signature != 0xabacadab) goto LAB_001c92d4;\n      iVar2 = 1;\n      pEStack_158 = pEVar16;\n      image = (Image *)(**(code **)(puStack_150 + -0x7080))\n                                 (pIVar11,pRVar14->width,pRVar14->height,1);\n      if (image != (Image *)0x0) {\n        uStack_144 = 0;\n        uStack_148 = 0;\n        unaff_s5 = (undefined *)(**(code **)(puStack_150 + -0x715c))(pIVar11,pEVar16);\n        unaff_s6 = (Image *)(**(code **)(puStack_150 + -0x79dc))(image,pEVar16);\n        iVar2 = (**(code **)(puStack_150 + -0x73fc))(pIVar11);\n        if (((iVar2 == 4) || (iVar2 = (**(code **)(puStack_150 + -0x73fc))(pIVar11), iVar2 == 3)) &&\n           ((iVar2 = (**(code **)(puStack_150 + -0x73fc))(image), iVar2 == 4 ||\n            (iVar2 = (**(code **)(puStack_150 + -0x73fc))(image), iVar2 == 3)))) {\n          (**(code **)(puStack_150 + -0x7774))(7);\n          sVar9 = image->rows;\n          if ((int)sVar9 < 0) {\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1 < (int)(sVar9 + 0x3f) >> 6) goto LAB_001c9298;\nLAB_001c91a4:\n            bVar1 = (int)sVar9 < 0x80;\n          }\n          else {\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\n            if ((int)sVar9 >> 6 <= extraout_v1) goto LAB_001c91a4;\nLAB_001c9298:\n            (*pcVar25)(7);\n            bVar1 = extraout_v1_02 < 2;\n          }\n          iVar10 = 1;\n          if ((bool)(bVar1 ^ 1)) {\n            (**(code **)(puStack_150 + -0x7774))(7);\n            sVar9 = image->rows;\n            if ((int)sVar9 < 0) {\n              sVar9 = sVar9 + 0x3f;\n            }\n            iVar10 = (int)sVar9 >> 6;\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1_01 < iVar10) {\nLAB_001c9234:\n              (*pcVar25)(7);\n              iVar10 = extraout_v1_00;\n            }\n            goto LAB_001c9088;\n          }\n          iVar4 = *(int *)(puStack_150 + -0x7f10);\n        }\n        else {\n          uVar38 = (**(code **)(puStack_150 + -0x7774))(7);\n          if ((int)((ulonglong)uVar38 >> 0x20) == 0) {\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar38) goto LAB_001c9074;\n            uVar38 = (*pcVar25)(7);\n            if ((int)((ulonglong)uVar38 >> 0x20) != 0) goto LAB_001c9070;\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar38) goto LAB_001c9074;\n            iVar10 = 1;\n          }\n          else {\nLAB_001c9070:\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\nLAB_001c9074:\n            uVar38 = (*pcVar25)(7);\n            if (((int)((ulonglong)uVar38 >> 0x20) == 0) &&\n               (pcVar25 = *(code **)(puStack_150 + -0x7774), (uint)uVar38 < 2)) goto LAB_001c9234;\n            iVar10 = 2;\n          }\nLAB_001c9088:\n          iVar4 = *(int *)(puStack_150 + -0x7f10);\n        }\n        iVar2 = 0;\n        pEStack_124 = (ExceptionInfo *)0x1;\n        puStack_120 = &uStack_148;\n        pIStack_13c = pIVar11;\n        pRStack_138 = pRVar14;\n        pEStack_134 = pEVar16;\n        pIStack_130 = unaff_s6;\n        puStack_12c = unaff_s5;\n        pIStack_128 = image;\n        (**(code **)(puStack_150 + -0x7718))(iVar4 + 0x5428,&pIStack_13c,iVar10,0);\n        pEVar16 = pEStack_124;\n        (**(code **)(puStack_150 + -0x79bc))(unaff_s6);\n        (**(code **)(puStack_150 + -0x79bc))(unaff_s5);\n        image->type = pIVar11->type;\n        if (pEVar16 == (ExceptionInfo *)0x0) {\n          image = (Image *)(**(code **)(puStack_150 + -0x7964))(image);\n        }\n      }\n      puVar23 = puStack_150;\n      if (iStack_11c == *piVar19) {\n        return image;\n      }\n      goto LAB_001c9314;\n    }" { (expression_statement "unaff_s0 = pIVar11;" (assignment_expression "unaff_s0 = pIVar11" identifier = identifier) ;) (if_statement "if (pEVar16 == (ExceptionInfo *)0x0) goto LAB_001c92f4;" if (parenthesized_expression "(pEVar16 == (ExceptionInfo *)0x0)" ( (binary_expression "pEVar16 == (ExceptionInfo *)0x0" identifier == (cast_expression "(ExceptionInfo *)0x0" ( (type_descriptor "ExceptionInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_001c92f4;" goto statement_identifier ;)) (expression_statement "unaff_s2 = pEVar16;" (assignment_expression "unaff_s2 = pEVar16" identifier = identifier) ;) (if_statement "if (pEVar16->signature != 0xabacadab) goto LAB_001c92d4;" if (parenthesized_expression "(pEVar16->signature != 0xabacadab)" ( (binary_expression "pEVar16->signature != 0xabacadab" (field_expression "pEVar16->signature" identifier -> field_identifier) != number_literal) )) (goto_statement "goto LAB_001c92d4;" goto statement_identifier ;)) (expression_statement "iVar2 = 1;" (assignment_expression "iVar2 = 1" identifier = number_literal) ;) (expression_statement "pEStack_158 = pEVar16;" (assignment_expression "pEStack_158 = pEVar16" identifier = identifier) ;) (expression_statement "image = (Image *)(**(code **)(puStack_150 + -0x7080))\n                                 (pIVar11,pRVar14->width,pRVar14->height,1);" (assignment_expression "image = (Image *)(**(code **)(puStack_150 + -0x7080))\n                                 (pIVar11,pRVar14->width,pRVar14->height,1)" identifier = (cast_expression "(Image *)(**(code **)(puStack_150 + -0x7080))\n                                 (pIVar11,pRVar14->width,pRVar14->height,1)" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(puStack_150 + -0x7080))\n                                 (pIVar11,pRVar14->width,pRVar14->height,1)" (parenthesized_expression "(**(code **)(puStack_150 + -0x7080))" ( (pointer_expression "**(code **)(puStack_150 + -0x7080)" * (pointer_expression "*(code **)(puStack_150 + -0x7080)" * (cast_expression "(code **)(puStack_150 + -0x7080)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_150 + -0x7080)" ( (binary_expression "puStack_150 + -0x7080" identifier + number_literal) ))))) )) (argument_list "(pIVar11,pRVar14->width,pRVar14->height,1)" ( identifier , (field_expression "pRVar14->width" identifier -> field_identifier) , (field_expression "pRVar14->height" identifier -> field_identifier) , number_literal ))))) ;) (if_statement "if (image != (Image *)0x0) {\n        uStack_144 = 0;\n        uStack_148 = 0;\n        unaff_s5 = (undefined *)(**(code **)(puStack_150 + -0x715c))(pIVar11,pEVar16);\n        unaff_s6 = (Image *)(**(code **)(puStack_150 + -0x79dc))(image,pEVar16);\n        iVar2 = (**(code **)(puStack_150 + -0x73fc))(pIVar11);\n        if (((iVar2 == 4) || (iVar2 = (**(code **)(puStack_150 + -0x73fc))(pIVar11), iVar2 == 3)) &&\n           ((iVar2 = (**(code **)(puStack_150 + -0x73fc))(image), iVar2 == 4 ||\n            (iVar2 = (**(code **)(puStack_150 + -0x73fc))(image), iVar2 == 3)))) {\n          (**(code **)(puStack_150 + -0x7774))(7);\n          sVar9 = image->rows;\n          if ((int)sVar9 < 0) {\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1 < (int)(sVar9 + 0x3f) >> 6) goto LAB_001c9298;\nLAB_001c91a4:\n            bVar1 = (int)sVar9 < 0x80;\n          }\n          else {\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\n            if ((int)sVar9 >> 6 <= extraout_v1) goto LAB_001c91a4;\nLAB_001c9298:\n            (*pcVar25)(7);\n            bVar1 = extraout_v1_02 < 2;\n          }\n          iVar10 = 1;\n          if ((bool)(bVar1 ^ 1)) {\n            (**(code **)(puStack_150 + -0x7774))(7);\n            sVar9 = image->rows;\n            if ((int)sVar9 < 0) {\n              sVar9 = sVar9 + 0x3f;\n            }\n            iVar10 = (int)sVar9 >> 6;\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1_01 < iVar10) {\nLAB_001c9234:\n              (*pcVar25)(7);\n              iVar10 = extraout_v1_00;\n            }\n            goto LAB_001c9088;\n          }\n          iVar4 = *(int *)(puStack_150 + -0x7f10);\n        }\n        else {\n          uVar38 = (**(code **)(puStack_150 + -0x7774))(7);\n          if ((int)((ulonglong)uVar38 >> 0x20) == 0) {\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar38) goto LAB_001c9074;\n            uVar38 = (*pcVar25)(7);\n            if ((int)((ulonglong)uVar38 >> 0x20) != 0) goto LAB_001c9070;\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar38) goto LAB_001c9074;\n            iVar10 = 1;\n          }\n          else {\nLAB_001c9070:\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\nLAB_001c9074:\n            uVar38 = (*pcVar25)(7);\n            if (((int)((ulonglong)uVar38 >> 0x20) == 0) &&\n               (pcVar25 = *(code **)(puStack_150 + -0x7774), (uint)uVar38 < 2)) goto LAB_001c9234;\n            iVar10 = 2;\n          }\nLAB_001c9088:\n          iVar4 = *(int *)(puStack_150 + -0x7f10);\n        }\n        iVar2 = 0;\n        pEStack_124 = (ExceptionInfo *)0x1;\n        puStack_120 = &uStack_148;\n        pIStack_13c = pIVar11;\n        pRStack_138 = pRVar14;\n        pEStack_134 = pEVar16;\n        pIStack_130 = unaff_s6;\n        puStack_12c = unaff_s5;\n        pIStack_128 = image;\n        (**(code **)(puStack_150 + -0x7718))(iVar4 + 0x5428,&pIStack_13c,iVar10,0);\n        pEVar16 = pEStack_124;\n        (**(code **)(puStack_150 + -0x79bc))(unaff_s6);\n        (**(code **)(puStack_150 + -0x79bc))(unaff_s5);\n        image->type = pIVar11->type;\n        if (pEVar16 == (ExceptionInfo *)0x0) {\n          image = (Image *)(**(code **)(puStack_150 + -0x7964))(image);\n        }\n      }" if (parenthesized_expression "(image != (Image *)0x0)" ( (binary_expression "image != (Image *)0x0" identifier != (cast_expression "(Image *)0x0" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        uStack_144 = 0;\n        uStack_148 = 0;\n        unaff_s5 = (undefined *)(**(code **)(puStack_150 + -0x715c))(pIVar11,pEVar16);\n        unaff_s6 = (Image *)(**(code **)(puStack_150 + -0x79dc))(image,pEVar16);\n        iVar2 = (**(code **)(puStack_150 + -0x73fc))(pIVar11);\n        if (((iVar2 == 4) || (iVar2 = (**(code **)(puStack_150 + -0x73fc))(pIVar11), iVar2 == 3)) &&\n           ((iVar2 = (**(code **)(puStack_150 + -0x73fc))(image), iVar2 == 4 ||\n            (iVar2 = (**(code **)(puStack_150 + -0x73fc))(image), iVar2 == 3)))) {\n          (**(code **)(puStack_150 + -0x7774))(7);\n          sVar9 = image->rows;\n          if ((int)sVar9 < 0) {\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1 < (int)(sVar9 + 0x3f) >> 6) goto LAB_001c9298;\nLAB_001c91a4:\n            bVar1 = (int)sVar9 < 0x80;\n          }\n          else {\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\n            if ((int)sVar9 >> 6 <= extraout_v1) goto LAB_001c91a4;\nLAB_001c9298:\n            (*pcVar25)(7);\n            bVar1 = extraout_v1_02 < 2;\n          }\n          iVar10 = 1;\n          if ((bool)(bVar1 ^ 1)) {\n            (**(code **)(puStack_150 + -0x7774))(7);\n            sVar9 = image->rows;\n            if ((int)sVar9 < 0) {\n              sVar9 = sVar9 + 0x3f;\n            }\n            iVar10 = (int)sVar9 >> 6;\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1_01 < iVar10) {\nLAB_001c9234:\n              (*pcVar25)(7);\n              iVar10 = extraout_v1_00;\n            }\n            goto LAB_001c9088;\n          }\n          iVar4 = *(int *)(puStack_150 + -0x7f10);\n        }\n        else {\n          uVar38 = (**(code **)(puStack_150 + -0x7774))(7);\n          if ((int)((ulonglong)uVar38 >> 0x20) == 0) {\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar38) goto LAB_001c9074;\n            uVar38 = (*pcVar25)(7);\n            if ((int)((ulonglong)uVar38 >> 0x20) != 0) goto LAB_001c9070;\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar38) goto LAB_001c9074;\n            iVar10 = 1;\n          }\n          else {\nLAB_001c9070:\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\nLAB_001c9074:\n            uVar38 = (*pcVar25)(7);\n            if (((int)((ulonglong)uVar38 >> 0x20) == 0) &&\n               (pcVar25 = *(code **)(puStack_150 + -0x7774), (uint)uVar38 < 2)) goto LAB_001c9234;\n            iVar10 = 2;\n          }\nLAB_001c9088:\n          iVar4 = *(int *)(puStack_150 + -0x7f10);\n        }\n        iVar2 = 0;\n        pEStack_124 = (ExceptionInfo *)0x1;\n        puStack_120 = &uStack_148;\n        pIStack_13c = pIVar11;\n        pRStack_138 = pRVar14;\n        pEStack_134 = pEVar16;\n        pIStack_130 = unaff_s6;\n        puStack_12c = unaff_s5;\n        pIStack_128 = image;\n        (**(code **)(puStack_150 + -0x7718))(iVar4 + 0x5428,&pIStack_13c,iVar10,0);\n        pEVar16 = pEStack_124;\n        (**(code **)(puStack_150 + -0x79bc))(unaff_s6);\n        (**(code **)(puStack_150 + -0x79bc))(unaff_s5);\n        image->type = pIVar11->type;\n        if (pEVar16 == (ExceptionInfo *)0x0) {\n          image = (Image *)(**(code **)(puStack_150 + -0x7964))(image);\n        }\n      }" { (expression_statement "uStack_144 = 0;" (assignment_expression "uStack_144 = 0" identifier = number_literal) ;) (expression_statement "uStack_148 = 0;" (assignment_expression "uStack_148 = 0" identifier = number_literal) ;) (expression_statement "unaff_s5 = (undefined *)(**(code **)(puStack_150 + -0x715c))(pIVar11,pEVar16);" (assignment_expression "unaff_s5 = (undefined *)(**(code **)(puStack_150 + -0x715c))(pIVar11,pEVar16)" identifier = (cast_expression "(undefined *)(**(code **)(puStack_150 + -0x715c))(pIVar11,pEVar16)" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(puStack_150 + -0x715c))(pIVar11,pEVar16)" (parenthesized_expression "(**(code **)(puStack_150 + -0x715c))" ( (pointer_expression "**(code **)(puStack_150 + -0x715c)" * (pointer_expression "*(code **)(puStack_150 + -0x715c)" * (cast_expression "(code **)(puStack_150 + -0x715c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_150 + -0x715c)" ( (binary_expression "puStack_150 + -0x715c" identifier + number_literal) ))))) )) (argument_list "(pIVar11,pEVar16)" ( identifier , identifier ))))) ;) (expression_statement "unaff_s6 = (Image *)(**(code **)(puStack_150 + -0x79dc))(image,pEVar16);" (assignment_expression "unaff_s6 = (Image *)(**(code **)(puStack_150 + -0x79dc))(image,pEVar16)" identifier = (cast_expression "(Image *)(**(code **)(puStack_150 + -0x79dc))(image,pEVar16)" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(puStack_150 + -0x79dc))(image,pEVar16)" (parenthesized_expression "(**(code **)(puStack_150 + -0x79dc))" ( (pointer_expression "**(code **)(puStack_150 + -0x79dc)" * (pointer_expression "*(code **)(puStack_150 + -0x79dc)" * (cast_expression "(code **)(puStack_150 + -0x79dc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_150 + -0x79dc)" ( (binary_expression "puStack_150 + -0x79dc" identifier + number_literal) ))))) )) (argument_list "(image,pEVar16)" ( identifier , identifier ))))) ;) (expression_statement "iVar2 = (**(code **)(puStack_150 + -0x73fc))(pIVar11);" (assignment_expression "iVar2 = (**(code **)(puStack_150 + -0x73fc))(pIVar11)" identifier = (call_expression "(**(code **)(puStack_150 + -0x73fc))(pIVar11)" (parenthesized_expression "(**(code **)(puStack_150 + -0x73fc))" ( (pointer_expression "**(code **)(puStack_150 + -0x73fc)" * (pointer_expression "*(code **)(puStack_150 + -0x73fc)" * (cast_expression "(code **)(puStack_150 + -0x73fc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_150 + -0x73fc)" ( (binary_expression "puStack_150 + -0x73fc" identifier + number_literal) ))))) )) (argument_list "(pIVar11)" ( identifier )))) ;) (if_statement "if (((iVar2 == 4) || (iVar2 = (**(code **)(puStack_150 + -0x73fc))(pIVar11), iVar2 == 3)) &&\n           ((iVar2 = (**(code **)(puStack_150 + -0x73fc))(image), iVar2 == 4 ||\n            (iVar2 = (**(code **)(puStack_150 + -0x73fc))(image), iVar2 == 3)))) {\n          (**(code **)(puStack_150 + -0x7774))(7);\n          sVar9 = image->rows;\n          if ((int)sVar9 < 0) {\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1 < (int)(sVar9 + 0x3f) >> 6) goto LAB_001c9298;\nLAB_001c91a4:\n            bVar1 = (int)sVar9 < 0x80;\n          }\n          else {\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\n            if ((int)sVar9 >> 6 <= extraout_v1) goto LAB_001c91a4;\nLAB_001c9298:\n            (*pcVar25)(7);\n            bVar1 = extraout_v1_02 < 2;\n          }\n          iVar10 = 1;\n          if ((bool)(bVar1 ^ 1)) {\n            (**(code **)(puStack_150 + -0x7774))(7);\n            sVar9 = image->rows;\n            if ((int)sVar9 < 0) {\n              sVar9 = sVar9 + 0x3f;\n            }\n            iVar10 = (int)sVar9 >> 6;\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1_01 < iVar10) {\nLAB_001c9234:\n              (*pcVar25)(7);\n              iVar10 = extraout_v1_00;\n            }\n            goto LAB_001c9088;\n          }\n          iVar4 = *(int *)(puStack_150 + -0x7f10);\n        }\n        else {\n          uVar38 = (**(code **)(puStack_150 + -0x7774))(7);\n          if ((int)((ulonglong)uVar38 >> 0x20) == 0) {\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar38) goto LAB_001c9074;\n            uVar38 = (*pcVar25)(7);\n            if ((int)((ulonglong)uVar38 >> 0x20) != 0) goto LAB_001c9070;\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar38) goto LAB_001c9074;\n            iVar10 = 1;\n          }\n          else {\nLAB_001c9070:\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\nLAB_001c9074:\n            uVar38 = (*pcVar25)(7);\n            if (((int)((ulonglong)uVar38 >> 0x20) == 0) &&\n               (pcVar25 = *(code **)(puStack_150 + -0x7774), (uint)uVar38 < 2)) goto LAB_001c9234;\n            iVar10 = 2;\n          }\nLAB_001c9088:\n          iVar4 = *(int *)(puStack_150 + -0x7f10);\n        }" if (parenthesized_expression "(((iVar2 == 4) || (iVar2 = (**(code **)(puStack_150 + -0x73fc))(pIVar11), iVar2 == 3)) &&\n           ((iVar2 = (**(code **)(puStack_150 + -0x73fc))(image), iVar2 == 4 ||\n            (iVar2 = (**(code **)(puStack_150 + -0x73fc))(image), iVar2 == 3))))" ( (binary_expression "((iVar2 == 4) || (iVar2 = (**(code **)(puStack_150 + -0x73fc))(pIVar11), iVar2 == 3)) &&\n           ((iVar2 = (**(code **)(puStack_150 + -0x73fc))(image), iVar2 == 4 ||\n            (iVar2 = (**(code **)(puStack_150 + -0x73fc))(image), iVar2 == 3)))" (parenthesized_expression "((iVar2 == 4) || (iVar2 = (**(code **)(puStack_150 + -0x73fc))(pIVar11), iVar2 == 3))" ( (binary_expression "(iVar2 == 4) || (iVar2 = (**(code **)(puStack_150 + -0x73fc))(pIVar11), iVar2 == 3)" (parenthesized_expression "(iVar2 == 4)" ( (binary_expression "iVar2 == 4" identifier == number_literal) )) || (parenthesized_expression "(iVar2 = (**(code **)(puStack_150 + -0x73fc))(pIVar11), iVar2 == 3)" ( (comma_expression "iVar2 = (**(code **)(puStack_150 + -0x73fc))(pIVar11), iVar2 == 3" (assignment_expression "iVar2 = (**(code **)(puStack_150 + -0x73fc))(pIVar11)" identifier = (call_expression "(**(code **)(puStack_150 + -0x73fc))(pIVar11)" (parenthesized_expression "(**(code **)(puStack_150 + -0x73fc))" ( (pointer_expression "**(code **)(puStack_150 + -0x73fc)" * (pointer_expression "*(code **)(puStack_150 + -0x73fc)" * (cast_expression "(code **)(puStack_150 + -0x73fc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_150 + -0x73fc)" ( (binary_expression "puStack_150 + -0x73fc" identifier + number_literal) ))))) )) (argument_list "(pIVar11)" ( identifier )))) , (binary_expression "iVar2 == 3" identifier == number_literal)) ))) )) && (parenthesized_expression "((iVar2 = (**(code **)(puStack_150 + -0x73fc))(image), iVar2 == 4 ||\n            (iVar2 = (**(code **)(puStack_150 + -0x73fc))(image), iVar2 == 3)))" ( (parenthesized_expression "(iVar2 = (**(code **)(puStack_150 + -0x73fc))(image), iVar2 == 4 ||\n            (iVar2 = (**(code **)(puStack_150 + -0x73fc))(image), iVar2 == 3))" ( (comma_expression "iVar2 = (**(code **)(puStack_150 + -0x73fc))(image), iVar2 == 4 ||\n            (iVar2 = (**(code **)(puStack_150 + -0x73fc))(image), iVar2 == 3)" (assignment_expression "iVar2 = (**(code **)(puStack_150 + -0x73fc))(image)" identifier = (call_expression "(**(code **)(puStack_150 + -0x73fc))(image)" (parenthesized_expression "(**(code **)(puStack_150 + -0x73fc))" ( (pointer_expression "**(code **)(puStack_150 + -0x73fc)" * (pointer_expression "*(code **)(puStack_150 + -0x73fc)" * (cast_expression "(code **)(puStack_150 + -0x73fc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_150 + -0x73fc)" ( (binary_expression "puStack_150 + -0x73fc" identifier + number_literal) ))))) )) (argument_list "(image)" ( identifier )))) , (binary_expression "iVar2 == 4 ||\n            (iVar2 = (**(code **)(puStack_150 + -0x73fc))(image), iVar2 == 3)" (binary_expression "iVar2 == 4" identifier == number_literal) || (parenthesized_expression "(iVar2 = (**(code **)(puStack_150 + -0x73fc))(image), iVar2 == 3)" ( (comma_expression "iVar2 = (**(code **)(puStack_150 + -0x73fc))(image), iVar2 == 3" (assignment_expression "iVar2 = (**(code **)(puStack_150 + -0x73fc))(image)" identifier = (call_expression "(**(code **)(puStack_150 + -0x73fc))(image)" (parenthesized_expression "(**(code **)(puStack_150 + -0x73fc))" ( (pointer_expression "**(code **)(puStack_150 + -0x73fc)" * (pointer_expression "*(code **)(puStack_150 + -0x73fc)" * (cast_expression "(code **)(puStack_150 + -0x73fc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_150 + -0x73fc)" ( (binary_expression "puStack_150 + -0x73fc" identifier + number_literal) ))))) )) (argument_list "(image)" ( identifier )))) , (binary_expression "iVar2 == 3" identifier == number_literal)) )))) )) ))) )) (compound_statement "{\n          (**(code **)(puStack_150 + -0x7774))(7);\n          sVar9 = image->rows;\n          if ((int)sVar9 < 0) {\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1 < (int)(sVar9 + 0x3f) >> 6) goto LAB_001c9298;\nLAB_001c91a4:\n            bVar1 = (int)sVar9 < 0x80;\n          }\n          else {\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\n            if ((int)sVar9 >> 6 <= extraout_v1) goto LAB_001c91a4;\nLAB_001c9298:\n            (*pcVar25)(7);\n            bVar1 = extraout_v1_02 < 2;\n          }\n          iVar10 = 1;\n          if ((bool)(bVar1 ^ 1)) {\n            (**(code **)(puStack_150 + -0x7774))(7);\n            sVar9 = image->rows;\n            if ((int)sVar9 < 0) {\n              sVar9 = sVar9 + 0x3f;\n            }\n            iVar10 = (int)sVar9 >> 6;\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1_01 < iVar10) {\nLAB_001c9234:\n              (*pcVar25)(7);\n              iVar10 = extraout_v1_00;\n            }\n            goto LAB_001c9088;\n          }\n          iVar4 = *(int *)(puStack_150 + -0x7f10);\n        }" { (expression_statement "(**(code **)(puStack_150 + -0x7774))(7);" (call_expression "(**(code **)(puStack_150 + -0x7774))(7)" (parenthesized_expression "(**(code **)(puStack_150 + -0x7774))" ( (pointer_expression "**(code **)(puStack_150 + -0x7774)" * (pointer_expression "*(code **)(puStack_150 + -0x7774)" * (cast_expression "(code **)(puStack_150 + -0x7774)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_150 + -0x7774)" ( (binary_expression "puStack_150 + -0x7774" identifier + number_literal) ))))) )) (argument_list "(7)" ( number_literal ))) ;) (expression_statement "sVar9 = image->rows;" (assignment_expression "sVar9 = image->rows" identifier = (field_expression "image->rows" identifier -> field_identifier)) ;) (if_statement "if ((int)sVar9 < 0) {\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1 < (int)(sVar9 + 0x3f) >> 6) goto LAB_001c9298;\nLAB_001c91a4:\n            bVar1 = (int)sVar9 < 0x80;\n          }\n          else {\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\n            if ((int)sVar9 >> 6 <= extraout_v1) goto LAB_001c91a4;\nLAB_001c9298:\n            (*pcVar25)(7);\n            bVar1 = extraout_v1_02 < 2;\n          }" if (parenthesized_expression "((int)sVar9 < 0)" ( (binary_expression "(int)sVar9 < 0" (cast_expression "(int)sVar9" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1 < (int)(sVar9 + 0x3f) >> 6) goto LAB_001c9298;\nLAB_001c91a4:\n            bVar1 = (int)sVar9 < 0x80;\n          }" { (expression_statement "pcVar25 = *(code **)(puStack_150 + -0x7774);" (assignment_expression "pcVar25 = *(code **)(puStack_150 + -0x7774)" identifier = (pointer_expression "*(code **)(puStack_150 + -0x7774)" * (cast_expression "(code **)(puStack_150 + -0x7774)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_150 + -0x7774)" ( (binary_expression "puStack_150 + -0x7774" identifier + number_literal) ))))) ;) (if_statement "if (extraout_v1 < (int)(sVar9 + 0x3f) >> 6) goto LAB_001c9298;" if (parenthesized_expression "(extraout_v1 < (int)(sVar9 + 0x3f) >> 6)" ( (binary_expression "extraout_v1 < (int)(sVar9 + 0x3f) >> 6" identifier < (binary_expression "(int)(sVar9 + 0x3f) >> 6" (cast_expression "(int)(sVar9 + 0x3f)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(sVar9 + 0x3f)" ( (binary_expression "sVar9 + 0x3f" identifier + number_literal) ))) >> number_literal)) )) (goto_statement "goto LAB_001c9298;" goto statement_identifier ;)) (labeled_statement "LAB_001c91a4:\n            bVar1 = (int)sVar9 < 0x80;" statement_identifier : (expression_statement "bVar1 = (int)sVar9 < 0x80;" (assignment_expression "bVar1 = (int)sVar9 < 0x80" identifier = (binary_expression "(int)sVar9 < 0x80" (cast_expression "(int)sVar9" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal)) ;)) }) (else_clause "else {\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\n            if ((int)sVar9 >> 6 <= extraout_v1) goto LAB_001c91a4;\nLAB_001c9298:\n            (*pcVar25)(7);\n            bVar1 = extraout_v1_02 < 2;\n          }" else (compound_statement "{\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\n            if ((int)sVar9 >> 6 <= extraout_v1) goto LAB_001c91a4;\nLAB_001c9298:\n            (*pcVar25)(7);\n            bVar1 = extraout_v1_02 < 2;\n          }" { (expression_statement "pcVar25 = *(code **)(puStack_150 + -0x7774);" (assignment_expression "pcVar25 = *(code **)(puStack_150 + -0x7774)" identifier = (pointer_expression "*(code **)(puStack_150 + -0x7774)" * (cast_expression "(code **)(puStack_150 + -0x7774)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_150 + -0x7774)" ( (binary_expression "puStack_150 + -0x7774" identifier + number_literal) ))))) ;) (if_statement "if ((int)sVar9 >> 6 <= extraout_v1) goto LAB_001c91a4;" if (parenthesized_expression "((int)sVar9 >> 6 <= extraout_v1)" ( (binary_expression "(int)sVar9 >> 6 <= extraout_v1" (binary_expression "(int)sVar9 >> 6" (cast_expression "(int)sVar9" ( (type_descriptor "int" primitive_type) ) identifier) >> number_literal) <= identifier) )) (goto_statement "goto LAB_001c91a4;" goto statement_identifier ;)) (labeled_statement "LAB_001c9298:\n            (*pcVar25)(7);" statement_identifier : (expression_statement "(*pcVar25)(7);" (call_expression "(*pcVar25)(7)" (parenthesized_expression "(*pcVar25)" ( (pointer_expression "*pcVar25" * identifier) )) (argument_list "(7)" ( number_literal ))) ;)) (expression_statement "bVar1 = extraout_v1_02 < 2;" (assignment_expression "bVar1 = extraout_v1_02 < 2" identifier = (binary_expression "extraout_v1_02 < 2" identifier < number_literal)) ;) }))) (expression_statement "iVar10 = 1;" (assignment_expression "iVar10 = 1" identifier = number_literal) ;) (if_statement "if ((bool)(bVar1 ^ 1)) {\n            (**(code **)(puStack_150 + -0x7774))(7);\n            sVar9 = image->rows;\n            if ((int)sVar9 < 0) {\n              sVar9 = sVar9 + 0x3f;\n            }\n            iVar10 = (int)sVar9 >> 6;\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1_01 < iVar10) {\nLAB_001c9234:\n              (*pcVar25)(7);\n              iVar10 = extraout_v1_00;\n            }\n            goto LAB_001c9088;\n          }" if (parenthesized_expression "((bool)(bVar1 ^ 1))" ( (cast_expression "(bool)(bVar1 ^ 1)" ( (type_descriptor "bool" primitive_type) ) (parenthesized_expression "(bVar1 ^ 1)" ( (binary_expression "bVar1 ^ 1" identifier ^ number_literal) ))) )) (compound_statement "{\n            (**(code **)(puStack_150 + -0x7774))(7);\n            sVar9 = image->rows;\n            if ((int)sVar9 < 0) {\n              sVar9 = sVar9 + 0x3f;\n            }\n            iVar10 = (int)sVar9 >> 6;\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1_01 < iVar10) {\nLAB_001c9234:\n              (*pcVar25)(7);\n              iVar10 = extraout_v1_00;\n            }\n            goto LAB_001c9088;\n          }" { (expression_statement "(**(code **)(puStack_150 + -0x7774))(7);" (call_expression "(**(code **)(puStack_150 + -0x7774))(7)" (parenthesized_expression "(**(code **)(puStack_150 + -0x7774))" ( (pointer_expression "**(code **)(puStack_150 + -0x7774)" * (pointer_expression "*(code **)(puStack_150 + -0x7774)" * (cast_expression "(code **)(puStack_150 + -0x7774)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_150 + -0x7774)" ( (binary_expression "puStack_150 + -0x7774" identifier + number_literal) ))))) )) (argument_list "(7)" ( number_literal ))) ;) (expression_statement "sVar9 = image->rows;" (assignment_expression "sVar9 = image->rows" identifier = (field_expression "image->rows" identifier -> field_identifier)) ;) (if_statement "if ((int)sVar9 < 0) {\n              sVar9 = sVar9 + 0x3f;\n            }" if (parenthesized_expression "((int)sVar9 < 0)" ( (binary_expression "(int)sVar9 < 0" (cast_expression "(int)sVar9" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n              sVar9 = sVar9 + 0x3f;\n            }" { (expression_statement "sVar9 = sVar9 + 0x3f;" (assignment_expression "sVar9 = sVar9 + 0x3f" identifier = (binary_expression "sVar9 + 0x3f" identifier + number_literal)) ;) })) (expression_statement "iVar10 = (int)sVar9 >> 6;" (assignment_expression "iVar10 = (int)sVar9 >> 6" identifier = (binary_expression "(int)sVar9 >> 6" (cast_expression "(int)sVar9" ( (type_descriptor "int" primitive_type) ) identifier) >> number_literal)) ;) (expression_statement "pcVar25 = *(code **)(puStack_150 + -0x7774);" (assignment_expression "pcVar25 = *(code **)(puStack_150 + -0x7774)" identifier = (pointer_expression "*(code **)(puStack_150 + -0x7774)" * (cast_expression "(code **)(puStack_150 + -0x7774)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_150 + -0x7774)" ( (binary_expression "puStack_150 + -0x7774" identifier + number_literal) ))))) ;) (if_statement "if (extraout_v1_01 < iVar10) {\nLAB_001c9234:\n              (*pcVar25)(7);\n              iVar10 = extraout_v1_00;\n            }" if (parenthesized_expression "(extraout_v1_01 < iVar10)" ( (binary_expression "extraout_v1_01 < iVar10" identifier < identifier) )) (compound_statement "{\nLAB_001c9234:\n              (*pcVar25)(7);\n              iVar10 = extraout_v1_00;\n            }" { (labeled_statement "LAB_001c9234:\n              (*pcVar25)(7);" statement_identifier : (expression_statement "(*pcVar25)(7);" (call_expression "(*pcVar25)(7)" (parenthesized_expression "(*pcVar25)" ( (pointer_expression "*pcVar25" * identifier) )) (argument_list "(7)" ( number_literal ))) ;)) (expression_statement "iVar10 = extraout_v1_00;" (assignment_expression "iVar10 = extraout_v1_00" identifier = identifier) ;) })) (goto_statement "goto LAB_001c9088;" goto statement_identifier ;) })) (expression_statement "iVar4 = *(int *)(puStack_150 + -0x7f10);" (assignment_expression "iVar4 = *(int *)(puStack_150 + -0x7f10)" identifier = (pointer_expression "*(int *)(puStack_150 + -0x7f10)" * (cast_expression "(int *)(puStack_150 + -0x7f10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puStack_150 + -0x7f10)" ( (binary_expression "puStack_150 + -0x7f10" identifier + number_literal) ))))) ;) }) (else_clause "else {\n          uVar38 = (**(code **)(puStack_150 + -0x7774))(7);\n          if ((int)((ulonglong)uVar38 >> 0x20) == 0) {\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar38) goto LAB_001c9074;\n            uVar38 = (*pcVar25)(7);\n            if ((int)((ulonglong)uVar38 >> 0x20) != 0) goto LAB_001c9070;\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar38) goto LAB_001c9074;\n            iVar10 = 1;\n          }\n          else {\nLAB_001c9070:\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\nLAB_001c9074:\n            uVar38 = (*pcVar25)(7);\n            if (((int)((ulonglong)uVar38 >> 0x20) == 0) &&\n               (pcVar25 = *(code **)(puStack_150 + -0x7774), (uint)uVar38 < 2)) goto LAB_001c9234;\n            iVar10 = 2;\n          }\nLAB_001c9088:\n          iVar4 = *(int *)(puStack_150 + -0x7f10);\n        }" else (compound_statement "{\n          uVar38 = (**(code **)(puStack_150 + -0x7774))(7);\n          if ((int)((ulonglong)uVar38 >> 0x20) == 0) {\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar38) goto LAB_001c9074;\n            uVar38 = (*pcVar25)(7);\n            if ((int)((ulonglong)uVar38 >> 0x20) != 0) goto LAB_001c9070;\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar38) goto LAB_001c9074;\n            iVar10 = 1;\n          }\n          else {\nLAB_001c9070:\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\nLAB_001c9074:\n            uVar38 = (*pcVar25)(7);\n            if (((int)((ulonglong)uVar38 >> 0x20) == 0) &&\n               (pcVar25 = *(code **)(puStack_150 + -0x7774), (uint)uVar38 < 2)) goto LAB_001c9234;\n            iVar10 = 2;\n          }\nLAB_001c9088:\n          iVar4 = *(int *)(puStack_150 + -0x7f10);\n        }" { (expression_statement "uVar38 = (**(code **)(puStack_150 + -0x7774))(7);" (assignment_expression "uVar38 = (**(code **)(puStack_150 + -0x7774))(7)" identifier = (call_expression "(**(code **)(puStack_150 + -0x7774))(7)" (parenthesized_expression "(**(code **)(puStack_150 + -0x7774))" ( (pointer_expression "**(code **)(puStack_150 + -0x7774)" * (pointer_expression "*(code **)(puStack_150 + -0x7774)" * (cast_expression "(code **)(puStack_150 + -0x7774)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_150 + -0x7774)" ( (binary_expression "puStack_150 + -0x7774" identifier + number_literal) ))))) )) (argument_list "(7)" ( number_literal )))) ;) (if_statement "if ((int)((ulonglong)uVar38 >> 0x20) == 0) {\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar38) goto LAB_001c9074;\n            uVar38 = (*pcVar25)(7);\n            if ((int)((ulonglong)uVar38 >> 0x20) != 0) goto LAB_001c9070;\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar38) goto LAB_001c9074;\n            iVar10 = 1;\n          }\n          else {\nLAB_001c9070:\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\nLAB_001c9074:\n            uVar38 = (*pcVar25)(7);\n            if (((int)((ulonglong)uVar38 >> 0x20) == 0) &&\n               (pcVar25 = *(code **)(puStack_150 + -0x7774), (uint)uVar38 < 2)) goto LAB_001c9234;\n            iVar10 = 2;\n          }" if (parenthesized_expression "((int)((ulonglong)uVar38 >> 0x20) == 0)" ( (binary_expression "(int)((ulonglong)uVar38 >> 0x20) == 0" (cast_expression "(int)((ulonglong)uVar38 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)uVar38 >> 0x20)" ( (binary_expression "(ulonglong)uVar38 >> 0x20" (cast_expression "(ulonglong)uVar38" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) ))) == number_literal) )) (compound_statement "{\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar38) goto LAB_001c9074;\n            uVar38 = (*pcVar25)(7);\n            if ((int)((ulonglong)uVar38 >> 0x20) != 0) goto LAB_001c9070;\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar38) goto LAB_001c9074;\n            iVar10 = 1;\n          }" { (expression_statement "pcVar25 = *(code **)(puStack_150 + -0x7774);" (assignment_expression "pcVar25 = *(code **)(puStack_150 + -0x7774)" identifier = (pointer_expression "*(code **)(puStack_150 + -0x7774)" * (cast_expression "(code **)(puStack_150 + -0x7774)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_150 + -0x7774)" ( (binary_expression "puStack_150 + -0x7774" identifier + number_literal) ))))) ;) (if_statement "if (1 < (uint)uVar38) goto LAB_001c9074;" if (parenthesized_expression "(1 < (uint)uVar38)" ( (binary_expression "1 < (uint)uVar38" number_literal < (cast_expression "(uint)uVar38" ( (type_descriptor "uint" type_identifier) ) identifier)) )) (goto_statement "goto LAB_001c9074;" goto statement_identifier ;)) (expression_statement "uVar38 = (*pcVar25)(7);" (assignment_expression "uVar38 = (*pcVar25)(7)" identifier = (call_expression "(*pcVar25)(7)" (parenthesized_expression "(*pcVar25)" ( (pointer_expression "*pcVar25" * identifier) )) (argument_list "(7)" ( number_literal )))) ;) (if_statement "if ((int)((ulonglong)uVar38 >> 0x20) != 0) goto LAB_001c9070;" if (parenthesized_expression "((int)((ulonglong)uVar38 >> 0x20) != 0)" ( (binary_expression "(int)((ulonglong)uVar38 >> 0x20) != 0" (cast_expression "(int)((ulonglong)uVar38 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)uVar38 >> 0x20)" ( (binary_expression "(ulonglong)uVar38 >> 0x20" (cast_expression "(ulonglong)uVar38" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) ))) != number_literal) )) (goto_statement "goto LAB_001c9070;" goto statement_identifier ;)) (expression_statement "pcVar25 = *(code **)(puStack_150 + -0x7774);" (assignment_expression "pcVar25 = *(code **)(puStack_150 + -0x7774)" identifier = (pointer_expression "*(code **)(puStack_150 + -0x7774)" * (cast_expression "(code **)(puStack_150 + -0x7774)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_150 + -0x7774)" ( (binary_expression "puStack_150 + -0x7774" identifier + number_literal) ))))) ;) (if_statement "if (1 < (uint)uVar38) goto LAB_001c9074;" if (parenthesized_expression "(1 < (uint)uVar38)" ( (binary_expression "1 < (uint)uVar38" number_literal < (cast_expression "(uint)uVar38" ( (type_descriptor "uint" type_identifier) ) identifier)) )) (goto_statement "goto LAB_001c9074;" goto statement_identifier ;)) (expression_statement "iVar10 = 1;" (assignment_expression "iVar10 = 1" identifier = number_literal) ;) }) (else_clause "else {\nLAB_001c9070:\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\nLAB_001c9074:\n            uVar38 = (*pcVar25)(7);\n            if (((int)((ulonglong)uVar38 >> 0x20) == 0) &&\n               (pcVar25 = *(code **)(puStack_150 + -0x7774), (uint)uVar38 < 2)) goto LAB_001c9234;\n            iVar10 = 2;\n          }" else (compound_statement "{\nLAB_001c9070:\n            pcVar25 = *(code **)(puStack_150 + -0x7774);\nLAB_001c9074:\n            uVar38 = (*pcVar25)(7);\n            if (((int)((ulonglong)uVar38 >> 0x20) == 0) &&\n               (pcVar25 = *(code **)(puStack_150 + -0x7774), (uint)uVar38 < 2)) goto LAB_001c9234;\n            iVar10 = 2;\n          }" { (labeled_statement "LAB_001c9070:\n            pcVar25 = *(code **)(puStack_150 + -0x7774);" statement_identifier : (expression_statement "pcVar25 = *(code **)(puStack_150 + -0x7774);" (assignment_expression "pcVar25 = *(code **)(puStack_150 + -0x7774)" identifier = (pointer_expression "*(code **)(puStack_150 + -0x7774)" * (cast_expression "(code **)(puStack_150 + -0x7774)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_150 + -0x7774)" ( (binary_expression "puStack_150 + -0x7774" identifier + number_literal) ))))) ;)) (labeled_statement "LAB_001c9074:\n            uVar38 = (*pcVar25)(7);" statement_identifier : (expression_statement "uVar38 = (*pcVar25)(7);" (assignment_expression "uVar38 = (*pcVar25)(7)" identifier = (call_expression "(*pcVar25)(7)" (parenthesized_expression "(*pcVar25)" ( (pointer_expression "*pcVar25" * identifier) )) (argument_list "(7)" ( number_literal )))) ;)) (if_statement "if (((int)((ulonglong)uVar38 >> 0x20) == 0) &&\n               (pcVar25 = *(code **)(puStack_150 + -0x7774), (uint)uVar38 < 2)) goto LAB_001c9234;" if (parenthesized_expression "(((int)((ulonglong)uVar38 >> 0x20) == 0) &&\n               (pcVar25 = *(code **)(puStack_150 + -0x7774), (uint)uVar38 < 2))" ( (binary_expression "((int)((ulonglong)uVar38 >> 0x20) == 0) &&\n               (pcVar25 = *(code **)(puStack_150 + -0x7774), (uint)uVar38 < 2)" (parenthesized_expression "((int)((ulonglong)uVar38 >> 0x20) == 0)" ( (binary_expression "(int)((ulonglong)uVar38 >> 0x20) == 0" (cast_expression "(int)((ulonglong)uVar38 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)uVar38 >> 0x20)" ( (binary_expression "(ulonglong)uVar38 >> 0x20" (cast_expression "(ulonglong)uVar38" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) ))) == number_literal) )) && (parenthesized_expression "(pcVar25 = *(code **)(puStack_150 + -0x7774), (uint)uVar38 < 2)" ( (comma_expression "pcVar25 = *(code **)(puStack_150 + -0x7774), (uint)uVar38 < 2" (assignment_expression "pcVar25 = *(code **)(puStack_150 + -0x7774)" identifier = (pointer_expression "*(code **)(puStack_150 + -0x7774)" * (cast_expression "(code **)(puStack_150 + -0x7774)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_150 + -0x7774)" ( (binary_expression "puStack_150 + -0x7774" identifier + number_literal) ))))) , (binary_expression "(uint)uVar38 < 2" (cast_expression "(uint)uVar38" ( (type_descriptor "uint" type_identifier) ) identifier) < number_literal)) ))) )) (goto_statement "goto LAB_001c9234;" goto statement_identifier ;)) (expression_statement "iVar10 = 2;" (assignment_expression "iVar10 = 2" identifier = number_literal) ;) }))) (labeled_statement "LAB_001c9088:\n          iVar4 = *(int *)(puStack_150 + -0x7f10);" statement_identifier : (expression_statement "iVar4 = *(int *)(puStack_150 + -0x7f10);" (assignment_expression "iVar4 = *(int *)(puStack_150 + -0x7f10)" identifier = (pointer_expression "*(int *)(puStack_150 + -0x7f10)" * (cast_expression "(int *)(puStack_150 + -0x7f10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puStack_150 + -0x7f10)" ( (binary_expression "puStack_150 + -0x7f10" identifier + number_literal) ))))) ;)) }))) (expression_statement "iVar2 = 0;" (assignment_expression "iVar2 = 0" identifier = number_literal) ;) (expression_statement "pEStack_124 = (ExceptionInfo *)0x1;" (assignment_expression "pEStack_124 = (ExceptionInfo *)0x1" identifier = (cast_expression "(ExceptionInfo *)0x1" ( (type_descriptor "ExceptionInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "puStack_120 = &uStack_148;" (assignment_expression "puStack_120 = &uStack_148" identifier = (pointer_expression "&uStack_148" & identifier)) ;) (expression_statement "pIStack_13c = pIVar11;" (assignment_expression "pIStack_13c = pIVar11" identifier = identifier) ;) (expression_statement "pRStack_138 = pRVar14;" (assignment_expression "pRStack_138 = pRVar14" identifier = identifier) ;) (expression_statement "pEStack_134 = pEVar16;" (assignment_expression "pEStack_134 = pEVar16" identifier = identifier) ;) (expression_statement "pIStack_130 = unaff_s6;" (assignment_expression "pIStack_130 = unaff_s6" identifier = identifier) ;) (expression_statement "puStack_12c = unaff_s5;" (assignment_expression "puStack_12c = unaff_s5" identifier = identifier) ;) (expression_statement "pIStack_128 = image;" (assignment_expression "pIStack_128 = image" identifier = identifier) ;) (expression_statement "(**(code **)(puStack_150 + -0x7718))(iVar4 + 0x5428,&pIStack_13c,iVar10,0);" (call_expression "(**(code **)(puStack_150 + -0x7718))(iVar4 + 0x5428,&pIStack_13c,iVar10,0)" (parenthesized_expression "(**(code **)(puStack_150 + -0x7718))" ( (pointer_expression "**(code **)(puStack_150 + -0x7718)" * (pointer_expression "*(code **)(puStack_150 + -0x7718)" * (cast_expression "(code **)(puStack_150 + -0x7718)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_150 + -0x7718)" ( (binary_expression "puStack_150 + -0x7718" identifier + number_literal) ))))) )) (argument_list "(iVar4 + 0x5428,&pIStack_13c,iVar10,0)" ( (binary_expression "iVar4 + 0x5428" identifier + number_literal) , (pointer_expression "&pIStack_13c" & identifier) , identifier , number_literal ))) ;) (expression_statement "pEVar16 = pEStack_124;" (assignment_expression "pEVar16 = pEStack_124" identifier = identifier) ;) (expression_statement "(**(code **)(puStack_150 + -0x79bc))(unaff_s6);" (call_expression "(**(code **)(puStack_150 + -0x79bc))(unaff_s6)" (parenthesized_expression "(**(code **)(puStack_150 + -0x79bc))" ( (pointer_expression "**(code **)(puStack_150 + -0x79bc)" * (pointer_expression "*(code **)(puStack_150 + -0x79bc)" * (cast_expression "(code **)(puStack_150 + -0x79bc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_150 + -0x79bc)" ( (binary_expression "puStack_150 + -0x79bc" identifier + number_literal) ))))) )) (argument_list "(unaff_s6)" ( identifier ))) ;) (expression_statement "(**(code **)(puStack_150 + -0x79bc))(unaff_s5);" (call_expression "(**(code **)(puStack_150 + -0x79bc))(unaff_s5)" (parenthesized_expression "(**(code **)(puStack_150 + -0x79bc))" ( (pointer_expression "**(code **)(puStack_150 + -0x79bc)" * (pointer_expression "*(code **)(puStack_150 + -0x79bc)" * (cast_expression "(code **)(puStack_150 + -0x79bc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_150 + -0x79bc)" ( (binary_expression "puStack_150 + -0x79bc" identifier + number_literal) ))))) )) (argument_list "(unaff_s5)" ( identifier ))) ;) (expression_statement "image->type = pIVar11->type;" (assignment_expression "image->type = pIVar11->type" (field_expression "image->type" identifier -> field_identifier) = (field_expression "pIVar11->type" identifier -> field_identifier)) ;) (if_statement "if (pEVar16 == (ExceptionInfo *)0x0) {\n          image = (Image *)(**(code **)(puStack_150 + -0x7964))(image);\n        }" if (parenthesized_expression "(pEVar16 == (ExceptionInfo *)0x0)" ( (binary_expression "pEVar16 == (ExceptionInfo *)0x0" identifier == (cast_expression "(ExceptionInfo *)0x0" ( (type_descriptor "ExceptionInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          image = (Image *)(**(code **)(puStack_150 + -0x7964))(image);\n        }" { (expression_statement "image = (Image *)(**(code **)(puStack_150 + -0x7964))(image);" (assignment_expression "image = (Image *)(**(code **)(puStack_150 + -0x7964))(image)" identifier = (cast_expression "(Image *)(**(code **)(puStack_150 + -0x7964))(image)" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(puStack_150 + -0x7964))(image)" (parenthesized_expression "(**(code **)(puStack_150 + -0x7964))" ( (pointer_expression "**(code **)(puStack_150 + -0x7964)" * (pointer_expression "*(code **)(puStack_150 + -0x7964)" * (cast_expression "(code **)(puStack_150 + -0x7964)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_150 + -0x7964)" ( (binary_expression "puStack_150 + -0x7964" identifier + number_literal) ))))) )) (argument_list "(image)" ( identifier ))))) ;) })) })) (expression_statement "puVar23 = puStack_150;" (assignment_expression "puVar23 = puStack_150" identifier = identifier) ;) (if_statement "if (iStack_11c == *piVar19) {\n        return image;\n      }" if (parenthesized_expression "(iStack_11c == *piVar19)" ( (binary_expression "iStack_11c == *piVar19" identifier == (pointer_expression "*piVar19" * identifier)) )) (compound_statement "{\n        return image;\n      }" { (return_statement "return image;" return identifier ;) })) (goto_statement "goto LAB_001c9314;" goto statement_identifier ;) })) (goto_statement "goto LAB_001c9320;" goto statement_identifier ;) })))) (expression_statement "pEVar16 = (ExceptionInfo *)0x3f5;" (assignment_expression "pEVar16 = (ExceptionInfo *)0x3f5" identifier = (cast_expression "(ExceptionInfo *)0x3f5" ( (type_descriptor "ExceptionInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pcVar22 = *(code **)(puVar23 + -0x72a8);" (assignment_expression "pcVar22 = *(code **)(puVar23 + -0x72a8)" identifier = (pointer_expression "*(code **)(puVar23 + -0x72a8)" * (cast_expression "(code **)(puVar23 + -0x72a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar23 + -0x72a8)" ( (binary_expression "puVar23 + -0x72a8" identifier + number_literal) ))))) ;) (expression_statement "pIVar15 = (Image *)(*(int *)(puVar23 + -0x7fc4) + -0x288c);" (assignment_expression "pIVar15 = (Image *)(*(int *)(puVar23 + -0x7fc4) + -0x288c)" identifier = (cast_expression "(Image *)(*(int *)(puVar23 + -0x7fc4) + -0x288c)" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar23 + -0x7fc4) + -0x288c)" ( (binary_expression "*(int *)(puVar23 + -0x7fc4) + -0x288c" (pointer_expression "*(int *)(puVar23 + -0x7fc4)" * (cast_expression "(int *)(puVar23 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar23 + -0x7fc4)" ( (binary_expression "puVar23 + -0x7fc4" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "pcVar26 = ExtentImage;" (assignment_expression "pcVar26 = ExtentImage" identifier = identifier) ;) (expression_statement "pIVar12 = (Image *)(*(int *)(puVar23 + -0x7fc8) + -0x3784);" (assignment_expression "pIVar12 = (Image *)(*(int *)(puVar23 + -0x7fc8) + -0x3784)" identifier = (cast_expression "(Image *)(*(int *)(puVar23 + -0x7fc8) + -0x3784)" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar23 + -0x7fc8) + -0x3784)" ( (binary_expression "*(int *)(puVar23 + -0x7fc8) + -0x3784" (pointer_expression "*(int *)(puVar23 + -0x7fc8)" * (cast_expression "(int *)(puVar23 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar23 + -0x7fc8)" ( (binary_expression "puVar23 + -0x7fc8" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "(*pcVar22)();" (call_expression "(*pcVar22)()" (parenthesized_expression "(*pcVar22)" ( (pointer_expression "*pcVar22" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "pcVar25 = pcVar22 + 0x1e754c;" (assignment_expression "pcVar25 = pcVar22 + 0x1e754c" identifier = (binary_expression "pcVar22 + 0x1e754c" identifier + number_literal)) ;) (expression_statement "pcStack_188 = pcVar25;" (assignment_expression "pcStack_188 = pcVar25" identifier = identifier) ;) (expression_statement "pIStack_17c = pIVar11;" (assignment_expression "pIStack_17c = pIVar11" identifier = identifier) ;) (expression_statement "pIStack_178 = image;" (assignment_expression "pIStack_178 = image" identifier = identifier) ;) (expression_statement "pEStack_174 = unaff_s2;" (assignment_expression "pEStack_174 = unaff_s2" identifier = identifier) ;) (expression_statement "pRStack_170 = unaff_s3;" (assignment_expression "pRStack_170 = unaff_s3" identifier = identifier) ;) (expression_statement "pcStack_16c = pcVar26;" (assignment_expression "pcStack_16c = pcVar26" identifier = identifier) ;) (if_statement "if (pIVar12 == (Image *)0x0) {\n    iVar2 = *(int *)(pcVar22 + 0x1df588) + -0x26c8;\n    (**(code **)(pcVar22 + 0x1e02a4))\n              (*(int *)(pcVar22 + 0x1df584) + -0x37b0,*(int *)(pcVar22 + 0x1df588) + -0x288c,0x474,\n               iVar2);\nLAB_001c94fc:\n    iVar2 = iVar2 + -0x26c8;\n    (**(code **)(pcVar25 + -0x72a8))\n              (*(int *)(pcVar25 + -0x7fc4) + -0x2850,*(int *)(pcVar25 + -0x7fc4) + -0x288c,0x478,\n               iVar2);\nLAB_001c951c:\n    iVar2 = iVar2 + -0x26c8;\n    (**(code **)(pcVar25 + -0x72a8))\n              (*(int *)(pcVar25 + -0x7fd0) + 0x294c,*(int *)(pcVar25 + -0x7fc4) + -0x288c,0x47a,\n               iVar2);\n    pIVar12 = pIVar11;\nLAB_001c953c:\n    (**(code **)(pcVar25 + -0x72a8))\n              (*(int *)(pcVar25 + -0x7fd0) + 0x1cac,*(int *)(pcVar25 + -0x7fc4) + -0x288c,0x479,\n               iVar2 + -0x26c8);\n  }\n  else if (pIVar12->signature == 0xabacadab) {\n    if (pIVar12->debug != MagickFalse) {\n      pcStack_194 = pIVar12->filename;\n      pEStack_198 = (ExceptionInfo *)(*(int *)(pcVar22 + 0x1df580) + -0x62ac);\n      (**(code **)(pcVar22 + 0x1dfe7c))\n                (0x8000,*(int *)(pcVar22 + 0x1df588) + -0x288c,\n                 *(int *)(pcVar22 + 0x1df588) + -0x26d4,0x477);\n    }\n    iVar2 = *(int *)(pcStack_188 + -0x7fc4);\n    pIVar11 = pIVar12;\n    image = pIVar15;\n    unaff_s2 = pEVar16;\n    pcVar25 = pcStack_188;\n    if (pIVar15 == (Image *)0x0) goto LAB_001c94fc;\n    if (pEVar16 != (ExceptionInfo *)0x0) {\n      if (pEVar16->signature == 0xabacadab) {\n        pEStack_198 = pEVar16;\n        pIVar11 = (Image *)(**(code **)(pcStack_188 + -0x7080))\n                                     (pIVar12,pIVar15->storage_class,pIVar15->colorspace,1);\n        if (pIVar11 != (Image *)0x0) {\n          iVar2 = (**(code **)(pcStack_188 + -0x7a20))(pIVar11,pEVar16);\n          if (iVar2 == 0) {\n            (**(code **)(pcStack_188 + -0x7964))(pIVar11);\n            pIVar11 = (Image *)0x0;\n          }\n          else {\n            pcStack_194 = (char *)-pIVar15->quality;\n            pEStack_198 = (ExceptionInfo *)-pIVar15->compression;\n            pEStack_190 = pEVar16;\n            iVar2 = (**(code **)(pcStack_188 + -0x7bec))(pIVar11,pIVar12,pIVar12->compose,1);\n            if (iVar2 != 0) {\n              (**(code **)(pcStack_188 + -0x7d18))(pIVar11,pIVar12->columns,pIVar12->rows,pIVar15);\n            }\n          }\n        }\n        return pIVar11;\n      }\n      goto LAB_001c951c;\n    }\n    goto LAB_001c953c;\n  }" if (parenthesized_expression "(pIVar12 == (Image *)0x0)" ( (binary_expression "pIVar12 == (Image *)0x0" identifier == (cast_expression "(Image *)0x0" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    iVar2 = *(int *)(pcVar22 + 0x1df588) + -0x26c8;\n    (**(code **)(pcVar22 + 0x1e02a4))\n              (*(int *)(pcVar22 + 0x1df584) + -0x37b0,*(int *)(pcVar22 + 0x1df588) + -0x288c,0x474,\n               iVar2);\nLAB_001c94fc:\n    iVar2 = iVar2 + -0x26c8;\n    (**(code **)(pcVar25 + -0x72a8))\n              (*(int *)(pcVar25 + -0x7fc4) + -0x2850,*(int *)(pcVar25 + -0x7fc4) + -0x288c,0x478,\n               iVar2);\nLAB_001c951c:\n    iVar2 = iVar2 + -0x26c8;\n    (**(code **)(pcVar25 + -0x72a8))\n              (*(int *)(pcVar25 + -0x7fd0) + 0x294c,*(int *)(pcVar25 + -0x7fc4) + -0x288c,0x47a,\n               iVar2);\n    pIVar12 = pIVar11;\nLAB_001c953c:\n    (**(code **)(pcVar25 + -0x72a8))\n              (*(int *)(pcVar25 + -0x7fd0) + 0x1cac,*(int *)(pcVar25 + -0x7fc4) + -0x288c,0x479,\n               iVar2 + -0x26c8);\n  }" { (expression_statement "iVar2 = *(int *)(pcVar22 + 0x1df588) + -0x26c8;" (assignment_expression "iVar2 = *(int *)(pcVar22 + 0x1df588) + -0x26c8" identifier = (binary_expression "*(int *)(pcVar22 + 0x1df588) + -0x26c8" (pointer_expression "*(int *)(pcVar22 + 0x1df588)" * (cast_expression "(int *)(pcVar22 + 0x1df588)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + 0x1df588)" ( (binary_expression "pcVar22 + 0x1df588" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "(**(code **)(pcVar22 + 0x1e02a4))\n              (*(int *)(pcVar22 + 0x1df584) + -0x37b0,*(int *)(pcVar22 + 0x1df588) + -0x288c,0x474,\n               iVar2);" (call_expression "(**(code **)(pcVar22 + 0x1e02a4))\n              (*(int *)(pcVar22 + 0x1df584) + -0x37b0,*(int *)(pcVar22 + 0x1df588) + -0x288c,0x474,\n               iVar2)" (parenthesized_expression "(**(code **)(pcVar22 + 0x1e02a4))" ( (pointer_expression "**(code **)(pcVar22 + 0x1e02a4)" * (pointer_expression "*(code **)(pcVar22 + 0x1e02a4)" * (cast_expression "(code **)(pcVar22 + 0x1e02a4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar22 + 0x1e02a4)" ( (binary_expression "pcVar22 + 0x1e02a4" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar22 + 0x1df584) + -0x37b0,*(int *)(pcVar22 + 0x1df588) + -0x288c,0x474,\n               iVar2)" ( (binary_expression "*(int *)(pcVar22 + 0x1df584) + -0x37b0" (pointer_expression "*(int *)(pcVar22 + 0x1df584)" * (cast_expression "(int *)(pcVar22 + 0x1df584)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + 0x1df584)" ( (binary_expression "pcVar22 + 0x1df584" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar22 + 0x1df588) + -0x288c" (pointer_expression "*(int *)(pcVar22 + 0x1df588)" * (cast_expression "(int *)(pcVar22 + 0x1df588)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + 0x1df588)" ( (binary_expression "pcVar22 + 0x1df588" identifier + number_literal) )))) + number_literal) , number_literal , identifier ))) ;) (labeled_statement "LAB_001c94fc:\n    iVar2 = iVar2 + -0x26c8;" statement_identifier : (expression_statement "iVar2 = iVar2 + -0x26c8;" (assignment_expression "iVar2 = iVar2 + -0x26c8" identifier = (binary_expression "iVar2 + -0x26c8" identifier + number_literal)) ;)) (expression_statement "(**(code **)(pcVar25 + -0x72a8))\n              (*(int *)(pcVar25 + -0x7fc4) + -0x2850,*(int *)(pcVar25 + -0x7fc4) + -0x288c,0x478,\n               iVar2);" (call_expression "(**(code **)(pcVar25 + -0x72a8))\n              (*(int *)(pcVar25 + -0x7fc4) + -0x2850,*(int *)(pcVar25 + -0x7fc4) + -0x288c,0x478,\n               iVar2)" (parenthesized_expression "(**(code **)(pcVar25 + -0x72a8))" ( (pointer_expression "**(code **)(pcVar25 + -0x72a8)" * (pointer_expression "*(code **)(pcVar25 + -0x72a8)" * (cast_expression "(code **)(pcVar25 + -0x72a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar25 + -0x72a8)" ( (binary_expression "pcVar25 + -0x72a8" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar25 + -0x7fc4) + -0x2850,*(int *)(pcVar25 + -0x7fc4) + -0x288c,0x478,\n               iVar2)" ( (binary_expression "*(int *)(pcVar25 + -0x7fc4) + -0x2850" (pointer_expression "*(int *)(pcVar25 + -0x7fc4)" * (cast_expression "(int *)(pcVar25 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar25 + -0x7fc4)" ( (binary_expression "pcVar25 + -0x7fc4" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar25 + -0x7fc4) + -0x288c" (pointer_expression "*(int *)(pcVar25 + -0x7fc4)" * (cast_expression "(int *)(pcVar25 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar25 + -0x7fc4)" ( (binary_expression "pcVar25 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , identifier ))) ;) (labeled_statement "LAB_001c951c:\n    iVar2 = iVar2 + -0x26c8;" statement_identifier : (expression_statement "iVar2 = iVar2 + -0x26c8;" (assignment_expression "iVar2 = iVar2 + -0x26c8" identifier = (binary_expression "iVar2 + -0x26c8" identifier + number_literal)) ;)) (expression_statement "(**(code **)(pcVar25 + -0x72a8))\n              (*(int *)(pcVar25 + -0x7fd0) + 0x294c,*(int *)(pcVar25 + -0x7fc4) + -0x288c,0x47a,\n               iVar2);" (call_expression "(**(code **)(pcVar25 + -0x72a8))\n              (*(int *)(pcVar25 + -0x7fd0) + 0x294c,*(int *)(pcVar25 + -0x7fc4) + -0x288c,0x47a,\n               iVar2)" (parenthesized_expression "(**(code **)(pcVar25 + -0x72a8))" ( (pointer_expression "**(code **)(pcVar25 + -0x72a8)" * (pointer_expression "*(code **)(pcVar25 + -0x72a8)" * (cast_expression "(code **)(pcVar25 + -0x72a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar25 + -0x72a8)" ( (binary_expression "pcVar25 + -0x72a8" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar25 + -0x7fd0) + 0x294c,*(int *)(pcVar25 + -0x7fc4) + -0x288c,0x47a,\n               iVar2)" ( (binary_expression "*(int *)(pcVar25 + -0x7fd0) + 0x294c" (pointer_expression "*(int *)(pcVar25 + -0x7fd0)" * (cast_expression "(int *)(pcVar25 + -0x7fd0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar25 + -0x7fd0)" ( (binary_expression "pcVar25 + -0x7fd0" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar25 + -0x7fc4) + -0x288c" (pointer_expression "*(int *)(pcVar25 + -0x7fc4)" * (cast_expression "(int *)(pcVar25 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar25 + -0x7fc4)" ( (binary_expression "pcVar25 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , identifier ))) ;) (expression_statement "pIVar12 = pIVar11;" (assignment_expression "pIVar12 = pIVar11" identifier = identifier) ;) (labeled_statement "LAB_001c953c:\n    (**(code **)(pcVar25 + -0x72a8))\n              (*(int *)(pcVar25 + -0x7fd0) + 0x1cac,*(int *)(pcVar25 + -0x7fc4) + -0x288c,0x479,\n               iVar2 + -0x26c8);" statement_identifier : (expression_statement "(**(code **)(pcVar25 + -0x72a8))\n              (*(int *)(pcVar25 + -0x7fd0) + 0x1cac,*(int *)(pcVar25 + -0x7fc4) + -0x288c,0x479,\n               iVar2 + -0x26c8);" (call_expression "(**(code **)(pcVar25 + -0x72a8))\n              (*(int *)(pcVar25 + -0x7fd0) + 0x1cac,*(int *)(pcVar25 + -0x7fc4) + -0x288c,0x479,\n               iVar2 + -0x26c8)" (parenthesized_expression "(**(code **)(pcVar25 + -0x72a8))" ( (pointer_expression "**(code **)(pcVar25 + -0x72a8)" * (pointer_expression "*(code **)(pcVar25 + -0x72a8)" * (cast_expression "(code **)(pcVar25 + -0x72a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar25 + -0x72a8)" ( (binary_expression "pcVar25 + -0x72a8" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar25 + -0x7fd0) + 0x1cac,*(int *)(pcVar25 + -0x7fc4) + -0x288c,0x479,\n               iVar2 + -0x26c8)" ( (binary_expression "*(int *)(pcVar25 + -0x7fd0) + 0x1cac" (pointer_expression "*(int *)(pcVar25 + -0x7fd0)" * (cast_expression "(int *)(pcVar25 + -0x7fd0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar25 + -0x7fd0)" ( (binary_expression "pcVar25 + -0x7fd0" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar25 + -0x7fc4) + -0x288c" (pointer_expression "*(int *)(pcVar25 + -0x7fc4)" * (cast_expression "(int *)(pcVar25 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar25 + -0x7fc4)" ( (binary_expression "pcVar25 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "iVar2 + -0x26c8" identifier + number_literal) ))) ;)) }) (else_clause "else if (pIVar12->signature == 0xabacadab) {\n    if (pIVar12->debug != MagickFalse) {\n      pcStack_194 = pIVar12->filename;\n      pEStack_198 = (ExceptionInfo *)(*(int *)(pcVar22 + 0x1df580) + -0x62ac);\n      (**(code **)(pcVar22 + 0x1dfe7c))\n                (0x8000,*(int *)(pcVar22 + 0x1df588) + -0x288c,\n                 *(int *)(pcVar22 + 0x1df588) + -0x26d4,0x477);\n    }\n    iVar2 = *(int *)(pcStack_188 + -0x7fc4);\n    pIVar11 = pIVar12;\n    image = pIVar15;\n    unaff_s2 = pEVar16;\n    pcVar25 = pcStack_188;\n    if (pIVar15 == (Image *)0x0) goto LAB_001c94fc;\n    if (pEVar16 != (ExceptionInfo *)0x0) {\n      if (pEVar16->signature == 0xabacadab) {\n        pEStack_198 = pEVar16;\n        pIVar11 = (Image *)(**(code **)(pcStack_188 + -0x7080))\n                                     (pIVar12,pIVar15->storage_class,pIVar15->colorspace,1);\n        if (pIVar11 != (Image *)0x0) {\n          iVar2 = (**(code **)(pcStack_188 + -0x7a20))(pIVar11,pEVar16);\n          if (iVar2 == 0) {\n            (**(code **)(pcStack_188 + -0x7964))(pIVar11);\n            pIVar11 = (Image *)0x0;\n          }\n          else {\n            pcStack_194 = (char *)-pIVar15->quality;\n            pEStack_198 = (ExceptionInfo *)-pIVar15->compression;\n            pEStack_190 = pEVar16;\n            iVar2 = (**(code **)(pcStack_188 + -0x7bec))(pIVar11,pIVar12,pIVar12->compose,1);\n            if (iVar2 != 0) {\n              (**(code **)(pcStack_188 + -0x7d18))(pIVar11,pIVar12->columns,pIVar12->rows,pIVar15);\n            }\n          }\n        }\n        return pIVar11;\n      }\n      goto LAB_001c951c;\n    }\n    goto LAB_001c953c;\n  }" else (if_statement "if (pIVar12->signature == 0xabacadab) {\n    if (pIVar12->debug != MagickFalse) {\n      pcStack_194 = pIVar12->filename;\n      pEStack_198 = (ExceptionInfo *)(*(int *)(pcVar22 + 0x1df580) + -0x62ac);\n      (**(code **)(pcVar22 + 0x1dfe7c))\n                (0x8000,*(int *)(pcVar22 + 0x1df588) + -0x288c,\n                 *(int *)(pcVar22 + 0x1df588) + -0x26d4,0x477);\n    }\n    iVar2 = *(int *)(pcStack_188 + -0x7fc4);\n    pIVar11 = pIVar12;\n    image = pIVar15;\n    unaff_s2 = pEVar16;\n    pcVar25 = pcStack_188;\n    if (pIVar15 == (Image *)0x0) goto LAB_001c94fc;\n    if (pEVar16 != (ExceptionInfo *)0x0) {\n      if (pEVar16->signature == 0xabacadab) {\n        pEStack_198 = pEVar16;\n        pIVar11 = (Image *)(**(code **)(pcStack_188 + -0x7080))\n                                     (pIVar12,pIVar15->storage_class,pIVar15->colorspace,1);\n        if (pIVar11 != (Image *)0x0) {\n          iVar2 = (**(code **)(pcStack_188 + -0x7a20))(pIVar11,pEVar16);\n          if (iVar2 == 0) {\n            (**(code **)(pcStack_188 + -0x7964))(pIVar11);\n            pIVar11 = (Image *)0x0;\n          }\n          else {\n            pcStack_194 = (char *)-pIVar15->quality;\n            pEStack_198 = (ExceptionInfo *)-pIVar15->compression;\n            pEStack_190 = pEVar16;\n            iVar2 = (**(code **)(pcStack_188 + -0x7bec))(pIVar11,pIVar12,pIVar12->compose,1);\n            if (iVar2 != 0) {\n              (**(code **)(pcStack_188 + -0x7d18))(pIVar11,pIVar12->columns,pIVar12->rows,pIVar15);\n            }\n          }\n        }\n        return pIVar11;\n      }\n      goto LAB_001c951c;\n    }\n    goto LAB_001c953c;\n  }" if (parenthesized_expression "(pIVar12->signature == 0xabacadab)" ( (binary_expression "pIVar12->signature == 0xabacadab" (field_expression "pIVar12->signature" identifier -> field_identifier) == number_literal) )) (compound_statement "{\n    if (pIVar12->debug != MagickFalse) {\n      pcStack_194 = pIVar12->filename;\n      pEStack_198 = (ExceptionInfo *)(*(int *)(pcVar22 + 0x1df580) + -0x62ac);\n      (**(code **)(pcVar22 + 0x1dfe7c))\n                (0x8000,*(int *)(pcVar22 + 0x1df588) + -0x288c,\n                 *(int *)(pcVar22 + 0x1df588) + -0x26d4,0x477);\n    }\n    iVar2 = *(int *)(pcStack_188 + -0x7fc4);\n    pIVar11 = pIVar12;\n    image = pIVar15;\n    unaff_s2 = pEVar16;\n    pcVar25 = pcStack_188;\n    if (pIVar15 == (Image *)0x0) goto LAB_001c94fc;\n    if (pEVar16 != (ExceptionInfo *)0x0) {\n      if (pEVar16->signature == 0xabacadab) {\n        pEStack_198 = pEVar16;\n        pIVar11 = (Image *)(**(code **)(pcStack_188 + -0x7080))\n                                     (pIVar12,pIVar15->storage_class,pIVar15->colorspace,1);\n        if (pIVar11 != (Image *)0x0) {\n          iVar2 = (**(code **)(pcStack_188 + -0x7a20))(pIVar11,pEVar16);\n          if (iVar2 == 0) {\n            (**(code **)(pcStack_188 + -0x7964))(pIVar11);\n            pIVar11 = (Image *)0x0;\n          }\n          else {\n            pcStack_194 = (char *)-pIVar15->quality;\n            pEStack_198 = (ExceptionInfo *)-pIVar15->compression;\n            pEStack_190 = pEVar16;\n            iVar2 = (**(code **)(pcStack_188 + -0x7bec))(pIVar11,pIVar12,pIVar12->compose,1);\n            if (iVar2 != 0) {\n              (**(code **)(pcStack_188 + -0x7d18))(pIVar11,pIVar12->columns,pIVar12->rows,pIVar15);\n            }\n          }\n        }\n        return pIVar11;\n      }\n      goto LAB_001c951c;\n    }\n    goto LAB_001c953c;\n  }" { (if_statement "if (pIVar12->debug != MagickFalse) {\n      pcStack_194 = pIVar12->filename;\n      pEStack_198 = (ExceptionInfo *)(*(int *)(pcVar22 + 0x1df580) + -0x62ac);\n      (**(code **)(pcVar22 + 0x1dfe7c))\n                (0x8000,*(int *)(pcVar22 + 0x1df588) + -0x288c,\n                 *(int *)(pcVar22 + 0x1df588) + -0x26d4,0x477);\n    }" if (parenthesized_expression "(pIVar12->debug != MagickFalse)" ( (binary_expression "pIVar12->debug != MagickFalse" (field_expression "pIVar12->debug" identifier -> field_identifier) != identifier) )) (compound_statement "{\n      pcStack_194 = pIVar12->filename;\n      pEStack_198 = (ExceptionInfo *)(*(int *)(pcVar22 + 0x1df580) + -0x62ac);\n      (**(code **)(pcVar22 + 0x1dfe7c))\n                (0x8000,*(int *)(pcVar22 + 0x1df588) + -0x288c,\n                 *(int *)(pcVar22 + 0x1df588) + -0x26d4,0x477);\n    }" { (expression_statement "pcStack_194 = pIVar12->filename;" (assignment_expression "pcStack_194 = pIVar12->filename" identifier = (field_expression "pIVar12->filename" identifier -> field_identifier)) ;) (expression_statement "pEStack_198 = (ExceptionInfo *)(*(int *)(pcVar22 + 0x1df580) + -0x62ac);" (assignment_expression "pEStack_198 = (ExceptionInfo *)(*(int *)(pcVar22 + 0x1df580) + -0x62ac)" identifier = (cast_expression "(ExceptionInfo *)(*(int *)(pcVar22 + 0x1df580) + -0x62ac)" ( (type_descriptor "ExceptionInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar22 + 0x1df580) + -0x62ac)" ( (binary_expression "*(int *)(pcVar22 + 0x1df580) + -0x62ac" (pointer_expression "*(int *)(pcVar22 + 0x1df580)" * (cast_expression "(int *)(pcVar22 + 0x1df580)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + 0x1df580)" ( (binary_expression "pcVar22 + 0x1df580" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "(**(code **)(pcVar22 + 0x1dfe7c))\n                (0x8000,*(int *)(pcVar22 + 0x1df588) + -0x288c,\n                 *(int *)(pcVar22 + 0x1df588) + -0x26d4,0x477);" (call_expression "(**(code **)(pcVar22 + 0x1dfe7c))\n                (0x8000,*(int *)(pcVar22 + 0x1df588) + -0x288c,\n                 *(int *)(pcVar22 + 0x1df588) + -0x26d4,0x477)" (parenthesized_expression "(**(code **)(pcVar22 + 0x1dfe7c))" ( (pointer_expression "**(code **)(pcVar22 + 0x1dfe7c)" * (pointer_expression "*(code **)(pcVar22 + 0x1dfe7c)" * (cast_expression "(code **)(pcVar22 + 0x1dfe7c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar22 + 0x1dfe7c)" ( (binary_expression "pcVar22 + 0x1dfe7c" identifier + number_literal) ))))) )) (argument_list "(0x8000,*(int *)(pcVar22 + 0x1df588) + -0x288c,\n                 *(int *)(pcVar22 + 0x1df588) + -0x26d4,0x477)" ( number_literal , (binary_expression "*(int *)(pcVar22 + 0x1df588) + -0x288c" (pointer_expression "*(int *)(pcVar22 + 0x1df588)" * (cast_expression "(int *)(pcVar22 + 0x1df588)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + 0x1df588)" ( (binary_expression "pcVar22 + 0x1df588" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar22 + 0x1df588) + -0x26d4" (pointer_expression "*(int *)(pcVar22 + 0x1df588)" * (cast_expression "(int *)(pcVar22 + 0x1df588)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + 0x1df588)" ( (binary_expression "pcVar22 + 0x1df588" identifier + number_literal) )))) + number_literal) , number_literal ))) ;) })) (expression_statement "iVar2 = *(int *)(pcStack_188 + -0x7fc4);" (assignment_expression "iVar2 = *(int *)(pcStack_188 + -0x7fc4)" identifier = (pointer_expression "*(int *)(pcStack_188 + -0x7fc4)" * (cast_expression "(int *)(pcStack_188 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_188 + -0x7fc4)" ( (binary_expression "pcStack_188 + -0x7fc4" identifier + number_literal) ))))) ;) (expression_statement "pIVar11 = pIVar12;" (assignment_expression "pIVar11 = pIVar12" identifier = identifier) ;) (expression_statement "image = pIVar15;" (assignment_expression "image = pIVar15" identifier = identifier) ;) (expression_statement "unaff_s2 = pEVar16;" (assignment_expression "unaff_s2 = pEVar16" identifier = identifier) ;) (expression_statement "pcVar25 = pcStack_188;" (assignment_expression "pcVar25 = pcStack_188" identifier = identifier) ;) (if_statement "if (pIVar15 == (Image *)0x0) goto LAB_001c94fc;" if (parenthesized_expression "(pIVar15 == (Image *)0x0)" ( (binary_expression "pIVar15 == (Image *)0x0" identifier == (cast_expression "(Image *)0x0" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_001c94fc;" goto statement_identifier ;)) (if_statement "if (pEVar16 != (ExceptionInfo *)0x0) {\n      if (pEVar16->signature == 0xabacadab) {\n        pEStack_198 = pEVar16;\n        pIVar11 = (Image *)(**(code **)(pcStack_188 + -0x7080))\n                                     (pIVar12,pIVar15->storage_class,pIVar15->colorspace,1);\n        if (pIVar11 != (Image *)0x0) {\n          iVar2 = (**(code **)(pcStack_188 + -0x7a20))(pIVar11,pEVar16);\n          if (iVar2 == 0) {\n            (**(code **)(pcStack_188 + -0x7964))(pIVar11);\n            pIVar11 = (Image *)0x0;\n          }\n          else {\n            pcStack_194 = (char *)-pIVar15->quality;\n            pEStack_198 = (ExceptionInfo *)-pIVar15->compression;\n            pEStack_190 = pEVar16;\n            iVar2 = (**(code **)(pcStack_188 + -0x7bec))(pIVar11,pIVar12,pIVar12->compose,1);\n            if (iVar2 != 0) {\n              (**(code **)(pcStack_188 + -0x7d18))(pIVar11,pIVar12->columns,pIVar12->rows,pIVar15);\n            }\n          }\n        }\n        return pIVar11;\n      }\n      goto LAB_001c951c;\n    }" if (parenthesized_expression "(pEVar16 != (ExceptionInfo *)0x0)" ( (binary_expression "pEVar16 != (ExceptionInfo *)0x0" identifier != (cast_expression "(ExceptionInfo *)0x0" ( (type_descriptor "ExceptionInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      if (pEVar16->signature == 0xabacadab) {\n        pEStack_198 = pEVar16;\n        pIVar11 = (Image *)(**(code **)(pcStack_188 + -0x7080))\n                                     (pIVar12,pIVar15->storage_class,pIVar15->colorspace,1);\n        if (pIVar11 != (Image *)0x0) {\n          iVar2 = (**(code **)(pcStack_188 + -0x7a20))(pIVar11,pEVar16);\n          if (iVar2 == 0) {\n            (**(code **)(pcStack_188 + -0x7964))(pIVar11);\n            pIVar11 = (Image *)0x0;\n          }\n          else {\n            pcStack_194 = (char *)-pIVar15->quality;\n            pEStack_198 = (ExceptionInfo *)-pIVar15->compression;\n            pEStack_190 = pEVar16;\n            iVar2 = (**(code **)(pcStack_188 + -0x7bec))(pIVar11,pIVar12,pIVar12->compose,1);\n            if (iVar2 != 0) {\n              (**(code **)(pcStack_188 + -0x7d18))(pIVar11,pIVar12->columns,pIVar12->rows,pIVar15);\n            }\n          }\n        }\n        return pIVar11;\n      }\n      goto LAB_001c951c;\n    }" { (if_statement "if (pEVar16->signature == 0xabacadab) {\n        pEStack_198 = pEVar16;\n        pIVar11 = (Image *)(**(code **)(pcStack_188 + -0x7080))\n                                     (pIVar12,pIVar15->storage_class,pIVar15->colorspace,1);\n        if (pIVar11 != (Image *)0x0) {\n          iVar2 = (**(code **)(pcStack_188 + -0x7a20))(pIVar11,pEVar16);\n          if (iVar2 == 0) {\n            (**(code **)(pcStack_188 + -0x7964))(pIVar11);\n            pIVar11 = (Image *)0x0;\n          }\n          else {\n            pcStack_194 = (char *)-pIVar15->quality;\n            pEStack_198 = (ExceptionInfo *)-pIVar15->compression;\n            pEStack_190 = pEVar16;\n            iVar2 = (**(code **)(pcStack_188 + -0x7bec))(pIVar11,pIVar12,pIVar12->compose,1);\n            if (iVar2 != 0) {\n              (**(code **)(pcStack_188 + -0x7d18))(pIVar11,pIVar12->columns,pIVar12->rows,pIVar15);\n            }\n          }\n        }\n        return pIVar11;\n      }" if (parenthesized_expression "(pEVar16->signature == 0xabacadab)" ( (binary_expression "pEVar16->signature == 0xabacadab" (field_expression "pEVar16->signature" identifier -> field_identifier) == number_literal) )) (compound_statement "{\n        pEStack_198 = pEVar16;\n        pIVar11 = (Image *)(**(code **)(pcStack_188 + -0x7080))\n                                     (pIVar12,pIVar15->storage_class,pIVar15->colorspace,1);\n        if (pIVar11 != (Image *)0x0) {\n          iVar2 = (**(code **)(pcStack_188 + -0x7a20))(pIVar11,pEVar16);\n          if (iVar2 == 0) {\n            (**(code **)(pcStack_188 + -0x7964))(pIVar11);\n            pIVar11 = (Image *)0x0;\n          }\n          else {\n            pcStack_194 = (char *)-pIVar15->quality;\n            pEStack_198 = (ExceptionInfo *)-pIVar15->compression;\n            pEStack_190 = pEVar16;\n            iVar2 = (**(code **)(pcStack_188 + -0x7bec))(pIVar11,pIVar12,pIVar12->compose,1);\n            if (iVar2 != 0) {\n              (**(code **)(pcStack_188 + -0x7d18))(pIVar11,pIVar12->columns,pIVar12->rows,pIVar15);\n            }\n          }\n        }\n        return pIVar11;\n      }" { (expression_statement "pEStack_198 = pEVar16;" (assignment_expression "pEStack_198 = pEVar16" identifier = identifier) ;) (expression_statement "pIVar11 = (Image *)(**(code **)(pcStack_188 + -0x7080))\n                                     (pIVar12,pIVar15->storage_class,pIVar15->colorspace,1);" (assignment_expression "pIVar11 = (Image *)(**(code **)(pcStack_188 + -0x7080))\n                                     (pIVar12,pIVar15->storage_class,pIVar15->colorspace,1)" identifier = (cast_expression "(Image *)(**(code **)(pcStack_188 + -0x7080))\n                                     (pIVar12,pIVar15->storage_class,pIVar15->colorspace,1)" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(pcStack_188 + -0x7080))\n                                     (pIVar12,pIVar15->storage_class,pIVar15->colorspace,1)" (parenthesized_expression "(**(code **)(pcStack_188 + -0x7080))" ( (pointer_expression "**(code **)(pcStack_188 + -0x7080)" * (pointer_expression "*(code **)(pcStack_188 + -0x7080)" * (cast_expression "(code **)(pcStack_188 + -0x7080)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_188 + -0x7080)" ( (binary_expression "pcStack_188 + -0x7080" identifier + number_literal) ))))) )) (argument_list "(pIVar12,pIVar15->storage_class,pIVar15->colorspace,1)" ( identifier , (field_expression "pIVar15->storage_class" identifier -> field_identifier) , (field_expression "pIVar15->colorspace" identifier -> field_identifier) , number_literal ))))) ;) (if_statement "if (pIVar11 != (Image *)0x0) {\n          iVar2 = (**(code **)(pcStack_188 + -0x7a20))(pIVar11,pEVar16);\n          if (iVar2 == 0) {\n            (**(code **)(pcStack_188 + -0x7964))(pIVar11);\n            pIVar11 = (Image *)0x0;\n          }\n          else {\n            pcStack_194 = (char *)-pIVar15->quality;\n            pEStack_198 = (ExceptionInfo *)-pIVar15->compression;\n            pEStack_190 = pEVar16;\n            iVar2 = (**(code **)(pcStack_188 + -0x7bec))(pIVar11,pIVar12,pIVar12->compose,1);\n            if (iVar2 != 0) {\n              (**(code **)(pcStack_188 + -0x7d18))(pIVar11,pIVar12->columns,pIVar12->rows,pIVar15);\n            }\n          }\n        }" if (parenthesized_expression "(pIVar11 != (Image *)0x0)" ( (binary_expression "pIVar11 != (Image *)0x0" identifier != (cast_expression "(Image *)0x0" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          iVar2 = (**(code **)(pcStack_188 + -0x7a20))(pIVar11,pEVar16);\n          if (iVar2 == 0) {\n            (**(code **)(pcStack_188 + -0x7964))(pIVar11);\n            pIVar11 = (Image *)0x0;\n          }\n          else {\n            pcStack_194 = (char *)-pIVar15->quality;\n            pEStack_198 = (ExceptionInfo *)-pIVar15->compression;\n            pEStack_190 = pEVar16;\n            iVar2 = (**(code **)(pcStack_188 + -0x7bec))(pIVar11,pIVar12,pIVar12->compose,1);\n            if (iVar2 != 0) {\n              (**(code **)(pcStack_188 + -0x7d18))(pIVar11,pIVar12->columns,pIVar12->rows,pIVar15);\n            }\n          }\n        }" { (expression_statement "iVar2 = (**(code **)(pcStack_188 + -0x7a20))(pIVar11,pEVar16);" (assignment_expression "iVar2 = (**(code **)(pcStack_188 + -0x7a20))(pIVar11,pEVar16)" identifier = (call_expression "(**(code **)(pcStack_188 + -0x7a20))(pIVar11,pEVar16)" (parenthesized_expression "(**(code **)(pcStack_188 + -0x7a20))" ( (pointer_expression "**(code **)(pcStack_188 + -0x7a20)" * (pointer_expression "*(code **)(pcStack_188 + -0x7a20)" * (cast_expression "(code **)(pcStack_188 + -0x7a20)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_188 + -0x7a20)" ( (binary_expression "pcStack_188 + -0x7a20" identifier + number_literal) ))))) )) (argument_list "(pIVar11,pEVar16)" ( identifier , identifier )))) ;) (if_statement "if (iVar2 == 0) {\n            (**(code **)(pcStack_188 + -0x7964))(pIVar11);\n            pIVar11 = (Image *)0x0;\n          }\n          else {\n            pcStack_194 = (char *)-pIVar15->quality;\n            pEStack_198 = (ExceptionInfo *)-pIVar15->compression;\n            pEStack_190 = pEVar16;\n            iVar2 = (**(code **)(pcStack_188 + -0x7bec))(pIVar11,pIVar12,pIVar12->compose,1);\n            if (iVar2 != 0) {\n              (**(code **)(pcStack_188 + -0x7d18))(pIVar11,pIVar12->columns,pIVar12->rows,pIVar15);\n            }\n          }" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (compound_statement "{\n            (**(code **)(pcStack_188 + -0x7964))(pIVar11);\n            pIVar11 = (Image *)0x0;\n          }" { (expression_statement "(**(code **)(pcStack_188 + -0x7964))(pIVar11);" (call_expression "(**(code **)(pcStack_188 + -0x7964))(pIVar11)" (parenthesized_expression "(**(code **)(pcStack_188 + -0x7964))" ( (pointer_expression "**(code **)(pcStack_188 + -0x7964)" * (pointer_expression "*(code **)(pcStack_188 + -0x7964)" * (cast_expression "(code **)(pcStack_188 + -0x7964)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_188 + -0x7964)" ( (binary_expression "pcStack_188 + -0x7964" identifier + number_literal) ))))) )) (argument_list "(pIVar11)" ( identifier ))) ;) (expression_statement "pIVar11 = (Image *)0x0;" (assignment_expression "pIVar11 = (Image *)0x0" identifier = (cast_expression "(Image *)0x0" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) }) (else_clause "else {\n            pcStack_194 = (char *)-pIVar15->quality;\n            pEStack_198 = (ExceptionInfo *)-pIVar15->compression;\n            pEStack_190 = pEVar16;\n            iVar2 = (**(code **)(pcStack_188 + -0x7bec))(pIVar11,pIVar12,pIVar12->compose,1);\n            if (iVar2 != 0) {\n              (**(code **)(pcStack_188 + -0x7d18))(pIVar11,pIVar12->columns,pIVar12->rows,pIVar15);\n            }\n          }" else (compound_statement "{\n            pcStack_194 = (char *)-pIVar15->quality;\n            pEStack_198 = (ExceptionInfo *)-pIVar15->compression;\n            pEStack_190 = pEVar16;\n            iVar2 = (**(code **)(pcStack_188 + -0x7bec))(pIVar11,pIVar12,pIVar12->compose,1);\n            if (iVar2 != 0) {\n              (**(code **)(pcStack_188 + -0x7d18))(pIVar11,pIVar12->columns,pIVar12->rows,pIVar15);\n            }\n          }" { (expression_statement "pcStack_194 = (char *)-pIVar15->quality;" (assignment_expression "pcStack_194 = (char *)-pIVar15->quality" identifier = (cast_expression "(char *)-pIVar15->quality" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (unary_expression "-pIVar15->quality" - (field_expression "pIVar15->quality" identifier -> field_identifier)))) ;) (expression_statement "pEStack_198 = (ExceptionInfo *)-pIVar15->compression;" (assignment_expression "pEStack_198 = (ExceptionInfo *)-pIVar15->compression" identifier = (cast_expression "(ExceptionInfo *)-pIVar15->compression" ( (type_descriptor "ExceptionInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) (unary_expression "-pIVar15->compression" - (field_expression "pIVar15->compression" identifier -> field_identifier)))) ;) (expression_statement "pEStack_190 = pEVar16;" (assignment_expression "pEStack_190 = pEVar16" identifier = identifier) ;) (expression_statement "iVar2 = (**(code **)(pcStack_188 + -0x7bec))(pIVar11,pIVar12,pIVar12->compose,1);" (assignment_expression "iVar2 = (**(code **)(pcStack_188 + -0x7bec))(pIVar11,pIVar12,pIVar12->compose,1)" identifier = (call_expression "(**(code **)(pcStack_188 + -0x7bec))(pIVar11,pIVar12,pIVar12->compose,1)" (parenthesized_expression "(**(code **)(pcStack_188 + -0x7bec))" ( (pointer_expression "**(code **)(pcStack_188 + -0x7bec)" * (pointer_expression "*(code **)(pcStack_188 + -0x7bec)" * (cast_expression "(code **)(pcStack_188 + -0x7bec)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_188 + -0x7bec)" ( (binary_expression "pcStack_188 + -0x7bec" identifier + number_literal) ))))) )) (argument_list "(pIVar11,pIVar12,pIVar12->compose,1)" ( identifier , identifier , (field_expression "pIVar12->compose" identifier -> field_identifier) , number_literal )))) ;) (if_statement "if (iVar2 != 0) {\n              (**(code **)(pcStack_188 + -0x7d18))(pIVar11,pIVar12->columns,pIVar12->rows,pIVar15);\n            }" if (parenthesized_expression "(iVar2 != 0)" ( (binary_expression "iVar2 != 0" identifier != number_literal) )) (compound_statement "{\n              (**(code **)(pcStack_188 + -0x7d18))(pIVar11,pIVar12->columns,pIVar12->rows,pIVar15);\n            }" { (expression_statement "(**(code **)(pcStack_188 + -0x7d18))(pIVar11,pIVar12->columns,pIVar12->rows,pIVar15);" (call_expression "(**(code **)(pcStack_188 + -0x7d18))(pIVar11,pIVar12->columns,pIVar12->rows,pIVar15)" (parenthesized_expression "(**(code **)(pcStack_188 + -0x7d18))" ( (pointer_expression "**(code **)(pcStack_188 + -0x7d18)" * (pointer_expression "*(code **)(pcStack_188 + -0x7d18)" * (cast_expression "(code **)(pcStack_188 + -0x7d18)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_188 + -0x7d18)" ( (binary_expression "pcStack_188 + -0x7d18" identifier + number_literal) ))))) )) (argument_list "(pIVar11,pIVar12->columns,pIVar12->rows,pIVar15)" ( identifier , (field_expression "pIVar12->columns" identifier -> field_identifier) , (field_expression "pIVar12->rows" identifier -> field_identifier) , identifier ))) ;) })) }))) })) (return_statement "return pIVar11;" return identifier ;) })) (goto_statement "goto LAB_001c951c;" goto statement_identifier ;) })) (goto_statement "goto LAB_001c953c;" goto statement_identifier ;) })))) (expression_statement "pcVar22 = *(code **)(pcVar25 + -0x72a8);" (assignment_expression "pcVar22 = *(code **)(pcVar25 + -0x72a8)" identifier = (pointer_expression "*(code **)(pcVar25 + -0x72a8)" * (cast_expression "(code **)(pcVar25 + -0x72a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar25 + -0x72a8)" ( (binary_expression "pcVar25 + -0x72a8" identifier + number_literal) ))))) ;) (expression_statement "pIVar11 = (Image *)(*(int *)(pcVar25 + -0x7fc4) + -0x288c);" (assignment_expression "pIVar11 = (Image *)(*(int *)(pcVar25 + -0x7fc4) + -0x288c)" identifier = (cast_expression "(Image *)(*(int *)(pcVar25 + -0x7fc4) + -0x288c)" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar25 + -0x7fc4) + -0x288c)" ( (binary_expression "*(int *)(pcVar25 + -0x7fc4) + -0x288c" (pointer_expression "*(int *)(pcVar25 + -0x7fc4)" * (cast_expression "(int *)(pcVar25 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar25 + -0x7fc4)" ( (binary_expression "pcVar25 + -0x7fc4" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "pcVar26 = FlipImage;" (assignment_expression "pcVar26 = FlipImage" identifier = identifier) ;) (expression_statement "pIVar15 = (Image *)(*(int *)(pcVar25 + -0x7fc8) + -0x3784);" (assignment_expression "pIVar15 = (Image *)(*(int *)(pcVar25 + -0x7fc8) + -0x3784)" identifier = (cast_expression "(Image *)(*(int *)(pcVar25 + -0x7fc8) + -0x3784)" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar25 + -0x7fc8) + -0x3784)" ( (binary_expression "*(int *)(pcVar25 + -0x7fc8) + -0x3784" (pointer_expression "*(int *)(pcVar25 + -0x7fc8)" * (cast_expression "(int *)(pcVar25 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar25 + -0x7fc8)" ( (binary_expression "pcVar25 + -0x7fc8" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "(*pcVar22)(pIVar15,pIVar11,0x475,*(int *)(pcVar25 + -0x7fc4) + -0x26c8);" (call_expression "(*pcVar22)(pIVar15,pIVar11,0x475,*(int *)(pcVar25 + -0x7fc4) + -0x26c8)" (parenthesized_expression "(*pcVar22)" ( (pointer_expression "*pcVar22" * identifier) )) (argument_list "(pIVar15,pIVar11,0x475,*(int *)(pcVar25 + -0x7fc4) + -0x26c8)" ( identifier , identifier , number_literal , (binary_expression "*(int *)(pcVar25 + -0x7fc4) + -0x26c8" (pointer_expression "*(int *)(pcVar25 + -0x7fc4)" * (cast_expression "(int *)(pcVar25 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar25 + -0x7fc4)" ( (binary_expression "pcVar25 + -0x7fc4" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "pcVar25 = pcVar22 + 0x1e7330;" (assignment_expression "pcVar25 = pcVar22 + 0x1e7330" identifier = (binary_expression "pcVar22 + 0x1e7330" identifier + number_literal)) ;) (expression_statement "piVar17 = *(int **)(pcVar22 + 0x1dfcb0);" (assignment_expression "piVar17 = *(int **)(pcVar22 + 0x1dfcb0)" identifier = (pointer_expression "*(int **)(pcVar22 + 0x1dfcb0)" * (cast_expression "(int **)(pcVar22 + 0x1dfcb0)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar22 + 0x1dfcb0)" ( (binary_expression "pcVar22 + 0x1dfcb0" identifier + number_literal) ))))) ;) (expression_statement "iStack_1d4 = *piVar17;" (assignment_expression "iStack_1d4 = *piVar17" identifier = (pointer_expression "*piVar17" * identifier)) ;) (expression_statement "pcStack_208 = pcVar25;" (assignment_expression "pcStack_208 = pcVar25" identifier = identifier) ;) (expression_statement "pIStack_1d0 = pIVar12;" (assignment_expression "pIStack_1d0 = pIVar12" identifier = identifier) ;) (expression_statement "pIStack_1cc = image;" (assignment_expression "pIStack_1cc = image" identifier = identifier) ;) (expression_statement "pEStack_1c8 = unaff_s2;" (assignment_expression "pEStack_1c8 = unaff_s2" identifier = identifier) ;) (expression_statement "pRStack_1c4 = unaff_s3;" (assignment_expression "pRStack_1c4 = unaff_s3" identifier = identifier) ;) (expression_statement "piStack_1c0 = piVar19;" (assignment_expression "piStack_1c0 = piVar19" identifier = identifier) ;) (expression_statement "puStack_1bc = unaff_s5;" (assignment_expression "puStack_1bc = unaff_s5" identifier = identifier) ;) (expression_statement "pIStack_1b8 = unaff_s6;" (assignment_expression "pIStack_1b8 = unaff_s6" identifier = identifier) ;) (expression_statement "pIStack_1b4 = unaff_s7;" (assignment_expression "pIStack_1b4 = unaff_s7" identifier = identifier) ;) (expression_statement "ppIStack_1b0 = unaff_s8;" (assignment_expression "ppIStack_1b0 = unaff_s8" identifier = identifier) ;) (expression_statement "pcStack_1ac = pcVar26;" (assignment_expression "pcStack_1ac = pcVar26" identifier = identifier) ;) (if_statement "if (pIVar15 == (Image *)0x0) {\n    (**(code **)(pcVar22 + 0x1e0088))\n              (*(int *)(pcVar22 + 0x1df368) + -0x37b0,*(int *)(pcVar22 + 0x1df36c) + -0x288c,0x4bc,\n               *(int *)(pcVar22 + 0x1df36c) + -0x26e0);\n    pIVar11 = image;\nLAB_001c9944:\n    (**(code **)(pcVar25 + -0x72a8))\n              (*(int *)(pcVar25 + -0x7fd0) + 0x1cac,*(int *)(pcVar25 + -0x7fc4) + -0x288c,0x4c0,\n               *(int *)(pcVar25 + -0x7fc4) + -0x26e0);\nLAB_001c9968:\n    (**(code **)(pcVar25 + -0x784c))();\n    pIVar15 = unaff_s7;\nLAB_001c9974:\n    (**(code **)(pcVar25 + -0x72a8))\n              (*(int *)(pcVar25 + -0x7fd0) + 0x294c,*(int *)(pcVar25 + -0x7fc4) + -0x288c,0x4c1,\n               *(int *)(pcVar25 + -0x7fc4) + -0x26e0);\n    pIStack_244 = pIVar11;\n  }\n  else {\n    pIStack_244 = image;\n    if (pIVar15->signature == 0xabacadab) {\n      if (pIVar15->debug != MagickFalse) {\n        pcStack_20c = pIVar15->filename;\n        pIStack_210 = (Image *)(*(int *)(pcVar22 + 0x1df364) + -0x62ac);\n        (**(code **)(pcVar22 + 0x1dfc60))\n                  (0x8000,*(int *)(pcVar22 + 0x1df36c) + -0x288c,\n                   *(int *)(pcVar22 + 0x1df36c) + -0x26ec,0x4bf);\n      }\n      unaff_s7 = pIVar15;\n      pcVar25 = pcStack_208;\n      if (pIVar11 == (Image *)0x0) goto LAB_001c9944;\n      if (pIVar11->rows == 0xabacadab) {\n        pIStack_210 = pIVar11;\n        pIVar12 = (Image *)(**(code **)(pcStack_208 + -0x7080))(pIVar15,0,0,1);\n        if (pIVar12 != (Image *)0x0) {\n          sStack_1fc = (pIVar15->page).x;\n          unaff_s8 = (Image **)(pIVar15->page).width;\n          unaff_s2 = (ExceptionInfo *)(pIVar15->page).height;\n          unaff_s6 = (Image *)(pIVar15->page).y;\n          uStack_1f4 = 0;\n          uStack_1f8 = 0;\n          piVar19 = (int *)(**(code **)(pcStack_208 + -0x715c))(pIVar15,pIVar11);\n          unaff_s5 = (undefined *)(**(code **)(pcStack_208 + -0x79dc))(pIVar12,pIVar11);\n          iVar2 = (**(code **)(pcStack_208 + -0x73fc))(pIVar15);\n          if (((iVar2 == 4) || (iVar2 = (**(code **)(pcStack_208 + -0x73fc))(pIVar15), iVar2 == 3))\n             && ((iVar2 = (**(code **)(pcStack_208 + -0x73fc))(pIVar12), iVar2 == 4 ||\n                 (iVar2 = (**(code **)(pcStack_208 + -0x73fc))(pIVar12), iVar2 == 3)))) {\n            (**(code **)(pcStack_208 + -0x7774))(7);\n            sVar9 = pIVar12->rows;\n            if ((int)sVar9 < 0) {\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_03 < (int)(sVar9 + 0x3f) >> 6) goto LAB_001c98d4;\nLAB_001c981c:\n              bVar1 = (int)sVar9 < 0x80;\n            }\n            else {\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\n              if ((int)sVar9 >> 6 <= extraout_v1_03) goto LAB_001c981c;\nLAB_001c98d4:\n              (*pcVar25)(7);\n              bVar1 = extraout_v1_05 < 2;\n            }\n            iVar2 = 1;\n            if ((bool)(bVar1 ^ 1)) {\n              (**(code **)(pcStack_208 + -0x7774))(7);\n              sVar9 = pIVar12->rows;\n              if ((int)sVar9 < 0) {\n                sVar9 = sVar9 + 0x3f;\n              }\n              iVar2 = (int)sVar9 >> 6;\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_06 < iVar2) {\nLAB_001c98ac:\n                (*pcVar25)(7);\n                iVar2 = extraout_v1_04;\n              }\n              goto LAB_001c96d8;\n            }\n            iVar10 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          else {\n            uVar38 = (**(code **)(pcStack_208 + -0x7774))(7);\n            if ((int)((ulonglong)uVar38 >> 0x20) == 0) {\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar38) goto LAB_001c96c4;\n              uVar38 = (*pcVar25)(7);\n              if ((int)((ulonglong)uVar38 >> 0x20) != 0) goto LAB_001c96c0;\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar38) goto LAB_001c96c4;\n              iVar2 = 1;\n            }\n            else {\nLAB_001c96c0:\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\nLAB_001c96c4:\n              uVar38 = (*pcVar25)(7);\n              if (((int)((ulonglong)uVar38 >> 0x20) == 0) &&\n                 (pcVar25 = *(code **)(pcStack_208 + -0x7774), (uint)uVar38 < 2)) goto LAB_001c98ac;\n              iVar2 = 2;\n            }\nLAB_001c96d8:\n            iVar10 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          puStack_1dc = &uStack_1f8;\n          pIStack_1d8 = (Image *)0x1;\n          pIStack_1f0 = pIVar15;\n          pIStack_1ec = pIVar11;\n          puStack_1e8 = unaff_s5;\n          piStack_1e4 = piVar19;\n          pIStack_1e0 = pIVar12;\n          (**(code **)(pcStack_208 + -0x7718))(iVar10 + 0x56bc,&pIStack_1f0,iVar2,0);\n          pIVar11 = pIStack_1d8;\n          (**(code **)(pcStack_208 + -0x79bc))(unaff_s5);\n          (**(code **)(pcStack_208 + -0x79bc))(piVar19);\n          pIVar12->type = pIVar15->type;\n          if (unaff_s2 != (ExceptionInfo *)0x0) {\n            unaff_s6 = (Image *)((int)unaff_s2 + (-(int)unaff_s6 - pIVar12->rows));\n          }\n          (pIVar12->page).width = (size_t)unaff_s8;\n          (pIVar12->page).height = (size_t)unaff_s2;\n          (pIVar12->page).x = sStack_1fc;\n          (pIVar12->page).y = (ssize_t)unaff_s6;\n          if (pIVar11 == (Image *)0x0) {\n            pIVar12 = (Image *)(**(code **)(pcStack_208 + -0x7964))(pIVar12);\n          }\n        }\n        pcVar25 = pcStack_208;\n        if (iStack_1d4 == *piVar17) {\n          return pIVar12;\n        }\n        goto LAB_001c9968;\n      }\n      goto LAB_001c9974;\n    }\n  }" if (parenthesized_expression "(pIVar15 == (Image *)0x0)" ( (binary_expression "pIVar15 == (Image *)0x0" identifier == (cast_expression "(Image *)0x0" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    (**(code **)(pcVar22 + 0x1e0088))\n              (*(int *)(pcVar22 + 0x1df368) + -0x37b0,*(int *)(pcVar22 + 0x1df36c) + -0x288c,0x4bc,\n               *(int *)(pcVar22 + 0x1df36c) + -0x26e0);\n    pIVar11 = image;\nLAB_001c9944:\n    (**(code **)(pcVar25 + -0x72a8))\n              (*(int *)(pcVar25 + -0x7fd0) + 0x1cac,*(int *)(pcVar25 + -0x7fc4) + -0x288c,0x4c0,\n               *(int *)(pcVar25 + -0x7fc4) + -0x26e0);\nLAB_001c9968:\n    (**(code **)(pcVar25 + -0x784c))();\n    pIVar15 = unaff_s7;\nLAB_001c9974:\n    (**(code **)(pcVar25 + -0x72a8))\n              (*(int *)(pcVar25 + -0x7fd0) + 0x294c,*(int *)(pcVar25 + -0x7fc4) + -0x288c,0x4c1,\n               *(int *)(pcVar25 + -0x7fc4) + -0x26e0);\n    pIStack_244 = pIVar11;\n  }" { (expression_statement "(**(code **)(pcVar22 + 0x1e0088))\n              (*(int *)(pcVar22 + 0x1df368) + -0x37b0,*(int *)(pcVar22 + 0x1df36c) + -0x288c,0x4bc,\n               *(int *)(pcVar22 + 0x1df36c) + -0x26e0);" (call_expression "(**(code **)(pcVar22 + 0x1e0088))\n              (*(int *)(pcVar22 + 0x1df368) + -0x37b0,*(int *)(pcVar22 + 0x1df36c) + -0x288c,0x4bc,\n               *(int *)(pcVar22 + 0x1df36c) + -0x26e0)" (parenthesized_expression "(**(code **)(pcVar22 + 0x1e0088))" ( (pointer_expression "**(code **)(pcVar22 + 0x1e0088)" * (pointer_expression "*(code **)(pcVar22 + 0x1e0088)" * (cast_expression "(code **)(pcVar22 + 0x1e0088)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar22 + 0x1e0088)" ( (binary_expression "pcVar22 + 0x1e0088" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar22 + 0x1df368) + -0x37b0,*(int *)(pcVar22 + 0x1df36c) + -0x288c,0x4bc,\n               *(int *)(pcVar22 + 0x1df36c) + -0x26e0)" ( (binary_expression "*(int *)(pcVar22 + 0x1df368) + -0x37b0" (pointer_expression "*(int *)(pcVar22 + 0x1df368)" * (cast_expression "(int *)(pcVar22 + 0x1df368)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + 0x1df368)" ( (binary_expression "pcVar22 + 0x1df368" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar22 + 0x1df36c) + -0x288c" (pointer_expression "*(int *)(pcVar22 + 0x1df36c)" * (cast_expression "(int *)(pcVar22 + 0x1df36c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + 0x1df36c)" ( (binary_expression "pcVar22 + 0x1df36c" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar22 + 0x1df36c) + -0x26e0" (pointer_expression "*(int *)(pcVar22 + 0x1df36c)" * (cast_expression "(int *)(pcVar22 + 0x1df36c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + 0x1df36c)" ( (binary_expression "pcVar22 + 0x1df36c" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "pIVar11 = image;" (assignment_expression "pIVar11 = image" identifier = identifier) ;) (labeled_statement "LAB_001c9944:\n    (**(code **)(pcVar25 + -0x72a8))\n              (*(int *)(pcVar25 + -0x7fd0) + 0x1cac,*(int *)(pcVar25 + -0x7fc4) + -0x288c,0x4c0,\n               *(int *)(pcVar25 + -0x7fc4) + -0x26e0);" statement_identifier : (expression_statement "(**(code **)(pcVar25 + -0x72a8))\n              (*(int *)(pcVar25 + -0x7fd0) + 0x1cac,*(int *)(pcVar25 + -0x7fc4) + -0x288c,0x4c0,\n               *(int *)(pcVar25 + -0x7fc4) + -0x26e0);" (call_expression "(**(code **)(pcVar25 + -0x72a8))\n              (*(int *)(pcVar25 + -0x7fd0) + 0x1cac,*(int *)(pcVar25 + -0x7fc4) + -0x288c,0x4c0,\n               *(int *)(pcVar25 + -0x7fc4) + -0x26e0)" (parenthesized_expression "(**(code **)(pcVar25 + -0x72a8))" ( (pointer_expression "**(code **)(pcVar25 + -0x72a8)" * (pointer_expression "*(code **)(pcVar25 + -0x72a8)" * (cast_expression "(code **)(pcVar25 + -0x72a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar25 + -0x72a8)" ( (binary_expression "pcVar25 + -0x72a8" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar25 + -0x7fd0) + 0x1cac,*(int *)(pcVar25 + -0x7fc4) + -0x288c,0x4c0,\n               *(int *)(pcVar25 + -0x7fc4) + -0x26e0)" ( (binary_expression "*(int *)(pcVar25 + -0x7fd0) + 0x1cac" (pointer_expression "*(int *)(pcVar25 + -0x7fd0)" * (cast_expression "(int *)(pcVar25 + -0x7fd0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar25 + -0x7fd0)" ( (binary_expression "pcVar25 + -0x7fd0" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar25 + -0x7fc4) + -0x288c" (pointer_expression "*(int *)(pcVar25 + -0x7fc4)" * (cast_expression "(int *)(pcVar25 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar25 + -0x7fc4)" ( (binary_expression "pcVar25 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar25 + -0x7fc4) + -0x26e0" (pointer_expression "*(int *)(pcVar25 + -0x7fc4)" * (cast_expression "(int *)(pcVar25 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar25 + -0x7fc4)" ( (binary_expression "pcVar25 + -0x7fc4" identifier + number_literal) )))) + number_literal) ))) ;)) (labeled_statement "LAB_001c9968:\n    (**(code **)(pcVar25 + -0x784c))();" statement_identifier : (expression_statement "(**(code **)(pcVar25 + -0x784c))();" (call_expression "(**(code **)(pcVar25 + -0x784c))()" (parenthesized_expression "(**(code **)(pcVar25 + -0x784c))" ( (pointer_expression "**(code **)(pcVar25 + -0x784c)" * (pointer_expression "*(code **)(pcVar25 + -0x784c)" * (cast_expression "(code **)(pcVar25 + -0x784c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar25 + -0x784c)" ( (binary_expression "pcVar25 + -0x784c" identifier + number_literal) ))))) )) (argument_list "()" ( ))) ;)) (expression_statement "pIVar15 = unaff_s7;" (assignment_expression "pIVar15 = unaff_s7" identifier = identifier) ;) (labeled_statement "LAB_001c9974:\n    (**(code **)(pcVar25 + -0x72a8))\n              (*(int *)(pcVar25 + -0x7fd0) + 0x294c,*(int *)(pcVar25 + -0x7fc4) + -0x288c,0x4c1,\n               *(int *)(pcVar25 + -0x7fc4) + -0x26e0);" statement_identifier : (expression_statement "(**(code **)(pcVar25 + -0x72a8))\n              (*(int *)(pcVar25 + -0x7fd0) + 0x294c,*(int *)(pcVar25 + -0x7fc4) + -0x288c,0x4c1,\n               *(int *)(pcVar25 + -0x7fc4) + -0x26e0);" (call_expression "(**(code **)(pcVar25 + -0x72a8))\n              (*(int *)(pcVar25 + -0x7fd0) + 0x294c,*(int *)(pcVar25 + -0x7fc4) + -0x288c,0x4c1,\n               *(int *)(pcVar25 + -0x7fc4) + -0x26e0)" (parenthesized_expression "(**(code **)(pcVar25 + -0x72a8))" ( (pointer_expression "**(code **)(pcVar25 + -0x72a8)" * (pointer_expression "*(code **)(pcVar25 + -0x72a8)" * (cast_expression "(code **)(pcVar25 + -0x72a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar25 + -0x72a8)" ( (binary_expression "pcVar25 + -0x72a8" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar25 + -0x7fd0) + 0x294c,*(int *)(pcVar25 + -0x7fc4) + -0x288c,0x4c1,\n               *(int *)(pcVar25 + -0x7fc4) + -0x26e0)" ( (binary_expression "*(int *)(pcVar25 + -0x7fd0) + 0x294c" (pointer_expression "*(int *)(pcVar25 + -0x7fd0)" * (cast_expression "(int *)(pcVar25 + -0x7fd0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar25 + -0x7fd0)" ( (binary_expression "pcVar25 + -0x7fd0" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar25 + -0x7fc4) + -0x288c" (pointer_expression "*(int *)(pcVar25 + -0x7fc4)" * (cast_expression "(int *)(pcVar25 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar25 + -0x7fc4)" ( (binary_expression "pcVar25 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar25 + -0x7fc4) + -0x26e0" (pointer_expression "*(int *)(pcVar25 + -0x7fc4)" * (cast_expression "(int *)(pcVar25 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar25 + -0x7fc4)" ( (binary_expression "pcVar25 + -0x7fc4" identifier + number_literal) )))) + number_literal) ))) ;)) (expression_statement "pIStack_244 = pIVar11;" (assignment_expression "pIStack_244 = pIVar11" identifier = identifier) ;) }) (else_clause "else {\n    pIStack_244 = image;\n    if (pIVar15->signature == 0xabacadab) {\n      if (pIVar15->debug != MagickFalse) {\n        pcStack_20c = pIVar15->filename;\n        pIStack_210 = (Image *)(*(int *)(pcVar22 + 0x1df364) + -0x62ac);\n        (**(code **)(pcVar22 + 0x1dfc60))\n                  (0x8000,*(int *)(pcVar22 + 0x1df36c) + -0x288c,\n                   *(int *)(pcVar22 + 0x1df36c) + -0x26ec,0x4bf);\n      }\n      unaff_s7 = pIVar15;\n      pcVar25 = pcStack_208;\n      if (pIVar11 == (Image *)0x0) goto LAB_001c9944;\n      if (pIVar11->rows == 0xabacadab) {\n        pIStack_210 = pIVar11;\n        pIVar12 = (Image *)(**(code **)(pcStack_208 + -0x7080))(pIVar15,0,0,1);\n        if (pIVar12 != (Image *)0x0) {\n          sStack_1fc = (pIVar15->page).x;\n          unaff_s8 = (Image **)(pIVar15->page).width;\n          unaff_s2 = (ExceptionInfo *)(pIVar15->page).height;\n          unaff_s6 = (Image *)(pIVar15->page).y;\n          uStack_1f4 = 0;\n          uStack_1f8 = 0;\n          piVar19 = (int *)(**(code **)(pcStack_208 + -0x715c))(pIVar15,pIVar11);\n          unaff_s5 = (undefined *)(**(code **)(pcStack_208 + -0x79dc))(pIVar12,pIVar11);\n          iVar2 = (**(code **)(pcStack_208 + -0x73fc))(pIVar15);\n          if (((iVar2 == 4) || (iVar2 = (**(code **)(pcStack_208 + -0x73fc))(pIVar15), iVar2 == 3))\n             && ((iVar2 = (**(code **)(pcStack_208 + -0x73fc))(pIVar12), iVar2 == 4 ||\n                 (iVar2 = (**(code **)(pcStack_208 + -0x73fc))(pIVar12), iVar2 == 3)))) {\n            (**(code **)(pcStack_208 + -0x7774))(7);\n            sVar9 = pIVar12->rows;\n            if ((int)sVar9 < 0) {\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_03 < (int)(sVar9 + 0x3f) >> 6) goto LAB_001c98d4;\nLAB_001c981c:\n              bVar1 = (int)sVar9 < 0x80;\n            }\n            else {\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\n              if ((int)sVar9 >> 6 <= extraout_v1_03) goto LAB_001c981c;\nLAB_001c98d4:\n              (*pcVar25)(7);\n              bVar1 = extraout_v1_05 < 2;\n            }\n            iVar2 = 1;\n            if ((bool)(bVar1 ^ 1)) {\n              (**(code **)(pcStack_208 + -0x7774))(7);\n              sVar9 = pIVar12->rows;\n              if ((int)sVar9 < 0) {\n                sVar9 = sVar9 + 0x3f;\n              }\n              iVar2 = (int)sVar9 >> 6;\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_06 < iVar2) {\nLAB_001c98ac:\n                (*pcVar25)(7);\n                iVar2 = extraout_v1_04;\n              }\n              goto LAB_001c96d8;\n            }\n            iVar10 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          else {\n            uVar38 = (**(code **)(pcStack_208 + -0x7774))(7);\n            if ((int)((ulonglong)uVar38 >> 0x20) == 0) {\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar38) goto LAB_001c96c4;\n              uVar38 = (*pcVar25)(7);\n              if ((int)((ulonglong)uVar38 >> 0x20) != 0) goto LAB_001c96c0;\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar38) goto LAB_001c96c4;\n              iVar2 = 1;\n            }\n            else {\nLAB_001c96c0:\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\nLAB_001c96c4:\n              uVar38 = (*pcVar25)(7);\n              if (((int)((ulonglong)uVar38 >> 0x20) == 0) &&\n                 (pcVar25 = *(code **)(pcStack_208 + -0x7774), (uint)uVar38 < 2)) goto LAB_001c98ac;\n              iVar2 = 2;\n            }\nLAB_001c96d8:\n            iVar10 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          puStack_1dc = &uStack_1f8;\n          pIStack_1d8 = (Image *)0x1;\n          pIStack_1f0 = pIVar15;\n          pIStack_1ec = pIVar11;\n          puStack_1e8 = unaff_s5;\n          piStack_1e4 = piVar19;\n          pIStack_1e0 = pIVar12;\n          (**(code **)(pcStack_208 + -0x7718))(iVar10 + 0x56bc,&pIStack_1f0,iVar2,0);\n          pIVar11 = pIStack_1d8;\n          (**(code **)(pcStack_208 + -0x79bc))(unaff_s5);\n          (**(code **)(pcStack_208 + -0x79bc))(piVar19);\n          pIVar12->type = pIVar15->type;\n          if (unaff_s2 != (ExceptionInfo *)0x0) {\n            unaff_s6 = (Image *)((int)unaff_s2 + (-(int)unaff_s6 - pIVar12->rows));\n          }\n          (pIVar12->page).width = (size_t)unaff_s8;\n          (pIVar12->page).height = (size_t)unaff_s2;\n          (pIVar12->page).x = sStack_1fc;\n          (pIVar12->page).y = (ssize_t)unaff_s6;\n          if (pIVar11 == (Image *)0x0) {\n            pIVar12 = (Image *)(**(code **)(pcStack_208 + -0x7964))(pIVar12);\n          }\n        }\n        pcVar25 = pcStack_208;\n        if (iStack_1d4 == *piVar17) {\n          return pIVar12;\n        }\n        goto LAB_001c9968;\n      }\n      goto LAB_001c9974;\n    }\n  }" else (compound_statement "{\n    pIStack_244 = image;\n    if (pIVar15->signature == 0xabacadab) {\n      if (pIVar15->debug != MagickFalse) {\n        pcStack_20c = pIVar15->filename;\n        pIStack_210 = (Image *)(*(int *)(pcVar22 + 0x1df364) + -0x62ac);\n        (**(code **)(pcVar22 + 0x1dfc60))\n                  (0x8000,*(int *)(pcVar22 + 0x1df36c) + -0x288c,\n                   *(int *)(pcVar22 + 0x1df36c) + -0x26ec,0x4bf);\n      }\n      unaff_s7 = pIVar15;\n      pcVar25 = pcStack_208;\n      if (pIVar11 == (Image *)0x0) goto LAB_001c9944;\n      if (pIVar11->rows == 0xabacadab) {\n        pIStack_210 = pIVar11;\n        pIVar12 = (Image *)(**(code **)(pcStack_208 + -0x7080))(pIVar15,0,0,1);\n        if (pIVar12 != (Image *)0x0) {\n          sStack_1fc = (pIVar15->page).x;\n          unaff_s8 = (Image **)(pIVar15->page).width;\n          unaff_s2 = (ExceptionInfo *)(pIVar15->page).height;\n          unaff_s6 = (Image *)(pIVar15->page).y;\n          uStack_1f4 = 0;\n          uStack_1f8 = 0;\n          piVar19 = (int *)(**(code **)(pcStack_208 + -0x715c))(pIVar15,pIVar11);\n          unaff_s5 = (undefined *)(**(code **)(pcStack_208 + -0x79dc))(pIVar12,pIVar11);\n          iVar2 = (**(code **)(pcStack_208 + -0x73fc))(pIVar15);\n          if (((iVar2 == 4) || (iVar2 = (**(code **)(pcStack_208 + -0x73fc))(pIVar15), iVar2 == 3))\n             && ((iVar2 = (**(code **)(pcStack_208 + -0x73fc))(pIVar12), iVar2 == 4 ||\n                 (iVar2 = (**(code **)(pcStack_208 + -0x73fc))(pIVar12), iVar2 == 3)))) {\n            (**(code **)(pcStack_208 + -0x7774))(7);\n            sVar9 = pIVar12->rows;\n            if ((int)sVar9 < 0) {\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_03 < (int)(sVar9 + 0x3f) >> 6) goto LAB_001c98d4;\nLAB_001c981c:\n              bVar1 = (int)sVar9 < 0x80;\n            }\n            else {\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\n              if ((int)sVar9 >> 6 <= extraout_v1_03) goto LAB_001c981c;\nLAB_001c98d4:\n              (*pcVar25)(7);\n              bVar1 = extraout_v1_05 < 2;\n            }\n            iVar2 = 1;\n            if ((bool)(bVar1 ^ 1)) {\n              (**(code **)(pcStack_208 + -0x7774))(7);\n              sVar9 = pIVar12->rows;\n              if ((int)sVar9 < 0) {\n                sVar9 = sVar9 + 0x3f;\n              }\n              iVar2 = (int)sVar9 >> 6;\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_06 < iVar2) {\nLAB_001c98ac:\n                (*pcVar25)(7);\n                iVar2 = extraout_v1_04;\n              }\n              goto LAB_001c96d8;\n            }\n            iVar10 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          else {\n            uVar38 = (**(code **)(pcStack_208 + -0x7774))(7);\n            if ((int)((ulonglong)uVar38 >> 0x20) == 0) {\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar38) goto LAB_001c96c4;\n              uVar38 = (*pcVar25)(7);\n              if ((int)((ulonglong)uVar38 >> 0x20) != 0) goto LAB_001c96c0;\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar38) goto LAB_001c96c4;\n              iVar2 = 1;\n            }\n            else {\nLAB_001c96c0:\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\nLAB_001c96c4:\n              uVar38 = (*pcVar25)(7);\n              if (((int)((ulonglong)uVar38 >> 0x20) == 0) &&\n                 (pcVar25 = *(code **)(pcStack_208 + -0x7774), (uint)uVar38 < 2)) goto LAB_001c98ac;\n              iVar2 = 2;\n            }\nLAB_001c96d8:\n            iVar10 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          puStack_1dc = &uStack_1f8;\n          pIStack_1d8 = (Image *)0x1;\n          pIStack_1f0 = pIVar15;\n          pIStack_1ec = pIVar11;\n          puStack_1e8 = unaff_s5;\n          piStack_1e4 = piVar19;\n          pIStack_1e0 = pIVar12;\n          (**(code **)(pcStack_208 + -0x7718))(iVar10 + 0x56bc,&pIStack_1f0,iVar2,0);\n          pIVar11 = pIStack_1d8;\n          (**(code **)(pcStack_208 + -0x79bc))(unaff_s5);\n          (**(code **)(pcStack_208 + -0x79bc))(piVar19);\n          pIVar12->type = pIVar15->type;\n          if (unaff_s2 != (ExceptionInfo *)0x0) {\n            unaff_s6 = (Image *)((int)unaff_s2 + (-(int)unaff_s6 - pIVar12->rows));\n          }\n          (pIVar12->page).width = (size_t)unaff_s8;\n          (pIVar12->page).height = (size_t)unaff_s2;\n          (pIVar12->page).x = sStack_1fc;\n          (pIVar12->page).y = (ssize_t)unaff_s6;\n          if (pIVar11 == (Image *)0x0) {\n            pIVar12 = (Image *)(**(code **)(pcStack_208 + -0x7964))(pIVar12);\n          }\n        }\n        pcVar25 = pcStack_208;\n        if (iStack_1d4 == *piVar17) {\n          return pIVar12;\n        }\n        goto LAB_001c9968;\n      }\n      goto LAB_001c9974;\n    }\n  }" { (expression_statement "pIStack_244 = image;" (assignment_expression "pIStack_244 = image" identifier = identifier) ;) (if_statement "if (pIVar15->signature == 0xabacadab) {\n      if (pIVar15->debug != MagickFalse) {\n        pcStack_20c = pIVar15->filename;\n        pIStack_210 = (Image *)(*(int *)(pcVar22 + 0x1df364) + -0x62ac);\n        (**(code **)(pcVar22 + 0x1dfc60))\n                  (0x8000,*(int *)(pcVar22 + 0x1df36c) + -0x288c,\n                   *(int *)(pcVar22 + 0x1df36c) + -0x26ec,0x4bf);\n      }\n      unaff_s7 = pIVar15;\n      pcVar25 = pcStack_208;\n      if (pIVar11 == (Image *)0x0) goto LAB_001c9944;\n      if (pIVar11->rows == 0xabacadab) {\n        pIStack_210 = pIVar11;\n        pIVar12 = (Image *)(**(code **)(pcStack_208 + -0x7080))(pIVar15,0,0,1);\n        if (pIVar12 != (Image *)0x0) {\n          sStack_1fc = (pIVar15->page).x;\n          unaff_s8 = (Image **)(pIVar15->page).width;\n          unaff_s2 = (ExceptionInfo *)(pIVar15->page).height;\n          unaff_s6 = (Image *)(pIVar15->page).y;\n          uStack_1f4 = 0;\n          uStack_1f8 = 0;\n          piVar19 = (int *)(**(code **)(pcStack_208 + -0x715c))(pIVar15,pIVar11);\n          unaff_s5 = (undefined *)(**(code **)(pcStack_208 + -0x79dc))(pIVar12,pIVar11);\n          iVar2 = (**(code **)(pcStack_208 + -0x73fc))(pIVar15);\n          if (((iVar2 == 4) || (iVar2 = (**(code **)(pcStack_208 + -0x73fc))(pIVar15), iVar2 == 3))\n             && ((iVar2 = (**(code **)(pcStack_208 + -0x73fc))(pIVar12), iVar2 == 4 ||\n                 (iVar2 = (**(code **)(pcStack_208 + -0x73fc))(pIVar12), iVar2 == 3)))) {\n            (**(code **)(pcStack_208 + -0x7774))(7);\n            sVar9 = pIVar12->rows;\n            if ((int)sVar9 < 0) {\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_03 < (int)(sVar9 + 0x3f) >> 6) goto LAB_001c98d4;\nLAB_001c981c:\n              bVar1 = (int)sVar9 < 0x80;\n            }\n            else {\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\n              if ((int)sVar9 >> 6 <= extraout_v1_03) goto LAB_001c981c;\nLAB_001c98d4:\n              (*pcVar25)(7);\n              bVar1 = extraout_v1_05 < 2;\n            }\n            iVar2 = 1;\n            if ((bool)(bVar1 ^ 1)) {\n              (**(code **)(pcStack_208 + -0x7774))(7);\n              sVar9 = pIVar12->rows;\n              if ((int)sVar9 < 0) {\n                sVar9 = sVar9 + 0x3f;\n              }\n              iVar2 = (int)sVar9 >> 6;\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_06 < iVar2) {\nLAB_001c98ac:\n                (*pcVar25)(7);\n                iVar2 = extraout_v1_04;\n              }\n              goto LAB_001c96d8;\n            }\n            iVar10 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          else {\n            uVar38 = (**(code **)(pcStack_208 + -0x7774))(7);\n            if ((int)((ulonglong)uVar38 >> 0x20) == 0) {\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar38) goto LAB_001c96c4;\n              uVar38 = (*pcVar25)(7);\n              if ((int)((ulonglong)uVar38 >> 0x20) != 0) goto LAB_001c96c0;\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar38) goto LAB_001c96c4;\n              iVar2 = 1;\n            }\n            else {\nLAB_001c96c0:\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\nLAB_001c96c4:\n              uVar38 = (*pcVar25)(7);\n              if (((int)((ulonglong)uVar38 >> 0x20) == 0) &&\n                 (pcVar25 = *(code **)(pcStack_208 + -0x7774), (uint)uVar38 < 2)) goto LAB_001c98ac;\n              iVar2 = 2;\n            }\nLAB_001c96d8:\n            iVar10 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          puStack_1dc = &uStack_1f8;\n          pIStack_1d8 = (Image *)0x1;\n          pIStack_1f0 = pIVar15;\n          pIStack_1ec = pIVar11;\n          puStack_1e8 = unaff_s5;\n          piStack_1e4 = piVar19;\n          pIStack_1e0 = pIVar12;\n          (**(code **)(pcStack_208 + -0x7718))(iVar10 + 0x56bc,&pIStack_1f0,iVar2,0);\n          pIVar11 = pIStack_1d8;\n          (**(code **)(pcStack_208 + -0x79bc))(unaff_s5);\n          (**(code **)(pcStack_208 + -0x79bc))(piVar19);\n          pIVar12->type = pIVar15->type;\n          if (unaff_s2 != (ExceptionInfo *)0x0) {\n            unaff_s6 = (Image *)((int)unaff_s2 + (-(int)unaff_s6 - pIVar12->rows));\n          }\n          (pIVar12->page).width = (size_t)unaff_s8;\n          (pIVar12->page).height = (size_t)unaff_s2;\n          (pIVar12->page).x = sStack_1fc;\n          (pIVar12->page).y = (ssize_t)unaff_s6;\n          if (pIVar11 == (Image *)0x0) {\n            pIVar12 = (Image *)(**(code **)(pcStack_208 + -0x7964))(pIVar12);\n          }\n        }\n        pcVar25 = pcStack_208;\n        if (iStack_1d4 == *piVar17) {\n          return pIVar12;\n        }\n        goto LAB_001c9968;\n      }\n      goto LAB_001c9974;\n    }" if (parenthesized_expression "(pIVar15->signature == 0xabacadab)" ( (binary_expression "pIVar15->signature == 0xabacadab" (field_expression "pIVar15->signature" identifier -> field_identifier) == number_literal) )) (compound_statement "{\n      if (pIVar15->debug != MagickFalse) {\n        pcStack_20c = pIVar15->filename;\n        pIStack_210 = (Image *)(*(int *)(pcVar22 + 0x1df364) + -0x62ac);\n        (**(code **)(pcVar22 + 0x1dfc60))\n                  (0x8000,*(int *)(pcVar22 + 0x1df36c) + -0x288c,\n                   *(int *)(pcVar22 + 0x1df36c) + -0x26ec,0x4bf);\n      }\n      unaff_s7 = pIVar15;\n      pcVar25 = pcStack_208;\n      if (pIVar11 == (Image *)0x0) goto LAB_001c9944;\n      if (pIVar11->rows == 0xabacadab) {\n        pIStack_210 = pIVar11;\n        pIVar12 = (Image *)(**(code **)(pcStack_208 + -0x7080))(pIVar15,0,0,1);\n        if (pIVar12 != (Image *)0x0) {\n          sStack_1fc = (pIVar15->page).x;\n          unaff_s8 = (Image **)(pIVar15->page).width;\n          unaff_s2 = (ExceptionInfo *)(pIVar15->page).height;\n          unaff_s6 = (Image *)(pIVar15->page).y;\n          uStack_1f4 = 0;\n          uStack_1f8 = 0;\n          piVar19 = (int *)(**(code **)(pcStack_208 + -0x715c))(pIVar15,pIVar11);\n          unaff_s5 = (undefined *)(**(code **)(pcStack_208 + -0x79dc))(pIVar12,pIVar11);\n          iVar2 = (**(code **)(pcStack_208 + -0x73fc))(pIVar15);\n          if (((iVar2 == 4) || (iVar2 = (**(code **)(pcStack_208 + -0x73fc))(pIVar15), iVar2 == 3))\n             && ((iVar2 = (**(code **)(pcStack_208 + -0x73fc))(pIVar12), iVar2 == 4 ||\n                 (iVar2 = (**(code **)(pcStack_208 + -0x73fc))(pIVar12), iVar2 == 3)))) {\n            (**(code **)(pcStack_208 + -0x7774))(7);\n            sVar9 = pIVar12->rows;\n            if ((int)sVar9 < 0) {\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_03 < (int)(sVar9 + 0x3f) >> 6) goto LAB_001c98d4;\nLAB_001c981c:\n              bVar1 = (int)sVar9 < 0x80;\n            }\n            else {\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\n              if ((int)sVar9 >> 6 <= extraout_v1_03) goto LAB_001c981c;\nLAB_001c98d4:\n              (*pcVar25)(7);\n              bVar1 = extraout_v1_05 < 2;\n            }\n            iVar2 = 1;\n            if ((bool)(bVar1 ^ 1)) {\n              (**(code **)(pcStack_208 + -0x7774))(7);\n              sVar9 = pIVar12->rows;\n              if ((int)sVar9 < 0) {\n                sVar9 = sVar9 + 0x3f;\n              }\n              iVar2 = (int)sVar9 >> 6;\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_06 < iVar2) {\nLAB_001c98ac:\n                (*pcVar25)(7);\n                iVar2 = extraout_v1_04;\n              }\n              goto LAB_001c96d8;\n            }\n            iVar10 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          else {\n            uVar38 = (**(code **)(pcStack_208 + -0x7774))(7);\n            if ((int)((ulonglong)uVar38 >> 0x20) == 0) {\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar38) goto LAB_001c96c4;\n              uVar38 = (*pcVar25)(7);\n              if ((int)((ulonglong)uVar38 >> 0x20) != 0) goto LAB_001c96c0;\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar38) goto LAB_001c96c4;\n              iVar2 = 1;\n            }\n            else {\nLAB_001c96c0:\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\nLAB_001c96c4:\n              uVar38 = (*pcVar25)(7);\n              if (((int)((ulonglong)uVar38 >> 0x20) == 0) &&\n                 (pcVar25 = *(code **)(pcStack_208 + -0x7774), (uint)uVar38 < 2)) goto LAB_001c98ac;\n              iVar2 = 2;\n            }\nLAB_001c96d8:\n            iVar10 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          puStack_1dc = &uStack_1f8;\n          pIStack_1d8 = (Image *)0x1;\n          pIStack_1f0 = pIVar15;\n          pIStack_1ec = pIVar11;\n          puStack_1e8 = unaff_s5;\n          piStack_1e4 = piVar19;\n          pIStack_1e0 = pIVar12;\n          (**(code **)(pcStack_208 + -0x7718))(iVar10 + 0x56bc,&pIStack_1f0,iVar2,0);\n          pIVar11 = pIStack_1d8;\n          (**(code **)(pcStack_208 + -0x79bc))(unaff_s5);\n          (**(code **)(pcStack_208 + -0x79bc))(piVar19);\n          pIVar12->type = pIVar15->type;\n          if (unaff_s2 != (ExceptionInfo *)0x0) {\n            unaff_s6 = (Image *)((int)unaff_s2 + (-(int)unaff_s6 - pIVar12->rows));\n          }\n          (pIVar12->page).width = (size_t)unaff_s8;\n          (pIVar12->page).height = (size_t)unaff_s2;\n          (pIVar12->page).x = sStack_1fc;\n          (pIVar12->page).y = (ssize_t)unaff_s6;\n          if (pIVar11 == (Image *)0x0) {\n            pIVar12 = (Image *)(**(code **)(pcStack_208 + -0x7964))(pIVar12);\n          }\n        }\n        pcVar25 = pcStack_208;\n        if (iStack_1d4 == *piVar17) {\n          return pIVar12;\n        }\n        goto LAB_001c9968;\n      }\n      goto LAB_001c9974;\n    }" { (if_statement "if (pIVar15->debug != MagickFalse) {\n        pcStack_20c = pIVar15->filename;\n        pIStack_210 = (Image *)(*(int *)(pcVar22 + 0x1df364) + -0x62ac);\n        (**(code **)(pcVar22 + 0x1dfc60))\n                  (0x8000,*(int *)(pcVar22 + 0x1df36c) + -0x288c,\n                   *(int *)(pcVar22 + 0x1df36c) + -0x26ec,0x4bf);\n      }" if (parenthesized_expression "(pIVar15->debug != MagickFalse)" ( (binary_expression "pIVar15->debug != MagickFalse" (field_expression "pIVar15->debug" identifier -> field_identifier) != identifier) )) (compound_statement "{\n        pcStack_20c = pIVar15->filename;\n        pIStack_210 = (Image *)(*(int *)(pcVar22 + 0x1df364) + -0x62ac);\n        (**(code **)(pcVar22 + 0x1dfc60))\n                  (0x8000,*(int *)(pcVar22 + 0x1df36c) + -0x288c,\n                   *(int *)(pcVar22 + 0x1df36c) + -0x26ec,0x4bf);\n      }" { (expression_statement "pcStack_20c = pIVar15->filename;" (assignment_expression "pcStack_20c = pIVar15->filename" identifier = (field_expression "pIVar15->filename" identifier -> field_identifier)) ;) (expression_statement "pIStack_210 = (Image *)(*(int *)(pcVar22 + 0x1df364) + -0x62ac);" (assignment_expression "pIStack_210 = (Image *)(*(int *)(pcVar22 + 0x1df364) + -0x62ac)" identifier = (cast_expression "(Image *)(*(int *)(pcVar22 + 0x1df364) + -0x62ac)" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar22 + 0x1df364) + -0x62ac)" ( (binary_expression "*(int *)(pcVar22 + 0x1df364) + -0x62ac" (pointer_expression "*(int *)(pcVar22 + 0x1df364)" * (cast_expression "(int *)(pcVar22 + 0x1df364)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + 0x1df364)" ( (binary_expression "pcVar22 + 0x1df364" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "(**(code **)(pcVar22 + 0x1dfc60))\n                  (0x8000,*(int *)(pcVar22 + 0x1df36c) + -0x288c,\n                   *(int *)(pcVar22 + 0x1df36c) + -0x26ec,0x4bf);" (call_expression "(**(code **)(pcVar22 + 0x1dfc60))\n                  (0x8000,*(int *)(pcVar22 + 0x1df36c) + -0x288c,\n                   *(int *)(pcVar22 + 0x1df36c) + -0x26ec,0x4bf)" (parenthesized_expression "(**(code **)(pcVar22 + 0x1dfc60))" ( (pointer_expression "**(code **)(pcVar22 + 0x1dfc60)" * (pointer_expression "*(code **)(pcVar22 + 0x1dfc60)" * (cast_expression "(code **)(pcVar22 + 0x1dfc60)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar22 + 0x1dfc60)" ( (binary_expression "pcVar22 + 0x1dfc60" identifier + number_literal) ))))) )) (argument_list "(0x8000,*(int *)(pcVar22 + 0x1df36c) + -0x288c,\n                   *(int *)(pcVar22 + 0x1df36c) + -0x26ec,0x4bf)" ( number_literal , (binary_expression "*(int *)(pcVar22 + 0x1df36c) + -0x288c" (pointer_expression "*(int *)(pcVar22 + 0x1df36c)" * (cast_expression "(int *)(pcVar22 + 0x1df36c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + 0x1df36c)" ( (binary_expression "pcVar22 + 0x1df36c" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar22 + 0x1df36c) + -0x26ec" (pointer_expression "*(int *)(pcVar22 + 0x1df36c)" * (cast_expression "(int *)(pcVar22 + 0x1df36c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + 0x1df36c)" ( (binary_expression "pcVar22 + 0x1df36c" identifier + number_literal) )))) + number_literal) , number_literal ))) ;) })) (expression_statement "unaff_s7 = pIVar15;" (assignment_expression "unaff_s7 = pIVar15" identifier = identifier) ;) (expression_statement "pcVar25 = pcStack_208;" (assignment_expression "pcVar25 = pcStack_208" identifier = identifier) ;) (if_statement "if (pIVar11 == (Image *)0x0) goto LAB_001c9944;" if (parenthesized_expression "(pIVar11 == (Image *)0x0)" ( (binary_expression "pIVar11 == (Image *)0x0" identifier == (cast_expression "(Image *)0x0" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_001c9944;" goto statement_identifier ;)) (if_statement "if (pIVar11->rows == 0xabacadab) {\n        pIStack_210 = pIVar11;\n        pIVar12 = (Image *)(**(code **)(pcStack_208 + -0x7080))(pIVar15,0,0,1);\n        if (pIVar12 != (Image *)0x0) {\n          sStack_1fc = (pIVar15->page).x;\n          unaff_s8 = (Image **)(pIVar15->page).width;\n          unaff_s2 = (ExceptionInfo *)(pIVar15->page).height;\n          unaff_s6 = (Image *)(pIVar15->page).y;\n          uStack_1f4 = 0;\n          uStack_1f8 = 0;\n          piVar19 = (int *)(**(code **)(pcStack_208 + -0x715c))(pIVar15,pIVar11);\n          unaff_s5 = (undefined *)(**(code **)(pcStack_208 + -0x79dc))(pIVar12,pIVar11);\n          iVar2 = (**(code **)(pcStack_208 + -0x73fc))(pIVar15);\n          if (((iVar2 == 4) || (iVar2 = (**(code **)(pcStack_208 + -0x73fc))(pIVar15), iVar2 == 3))\n             && ((iVar2 = (**(code **)(pcStack_208 + -0x73fc))(pIVar12), iVar2 == 4 ||\n                 (iVar2 = (**(code **)(pcStack_208 + -0x73fc))(pIVar12), iVar2 == 3)))) {\n            (**(code **)(pcStack_208 + -0x7774))(7);\n            sVar9 = pIVar12->rows;\n            if ((int)sVar9 < 0) {\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_03 < (int)(sVar9 + 0x3f) >> 6) goto LAB_001c98d4;\nLAB_001c981c:\n              bVar1 = (int)sVar9 < 0x80;\n            }\n            else {\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\n              if ((int)sVar9 >> 6 <= extraout_v1_03) goto LAB_001c981c;\nLAB_001c98d4:\n              (*pcVar25)(7);\n              bVar1 = extraout_v1_05 < 2;\n            }\n            iVar2 = 1;\n            if ((bool)(bVar1 ^ 1)) {\n              (**(code **)(pcStack_208 + -0x7774))(7);\n              sVar9 = pIVar12->rows;\n              if ((int)sVar9 < 0) {\n                sVar9 = sVar9 + 0x3f;\n              }\n              iVar2 = (int)sVar9 >> 6;\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_06 < iVar2) {\nLAB_001c98ac:\n                (*pcVar25)(7);\n                iVar2 = extraout_v1_04;\n              }\n              goto LAB_001c96d8;\n            }\n            iVar10 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          else {\n            uVar38 = (**(code **)(pcStack_208 + -0x7774))(7);\n            if ((int)((ulonglong)uVar38 >> 0x20) == 0) {\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar38) goto LAB_001c96c4;\n              uVar38 = (*pcVar25)(7);\n              if ((int)((ulonglong)uVar38 >> 0x20) != 0) goto LAB_001c96c0;\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar38) goto LAB_001c96c4;\n              iVar2 = 1;\n            }\n            else {\nLAB_001c96c0:\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\nLAB_001c96c4:\n              uVar38 = (*pcVar25)(7);\n              if (((int)((ulonglong)uVar38 >> 0x20) == 0) &&\n                 (pcVar25 = *(code **)(pcStack_208 + -0x7774), (uint)uVar38 < 2)) goto LAB_001c98ac;\n              iVar2 = 2;\n            }\nLAB_001c96d8:\n            iVar10 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          puStack_1dc = &uStack_1f8;\n          pIStack_1d8 = (Image *)0x1;\n          pIStack_1f0 = pIVar15;\n          pIStack_1ec = pIVar11;\n          puStack_1e8 = unaff_s5;\n          piStack_1e4 = piVar19;\n          pIStack_1e0 = pIVar12;\n          (**(code **)(pcStack_208 + -0x7718))(iVar10 + 0x56bc,&pIStack_1f0,iVar2,0);\n          pIVar11 = pIStack_1d8;\n          (**(code **)(pcStack_208 + -0x79bc))(unaff_s5);\n          (**(code **)(pcStack_208 + -0x79bc))(piVar19);\n          pIVar12->type = pIVar15->type;\n          if (unaff_s2 != (ExceptionInfo *)0x0) {\n            unaff_s6 = (Image *)((int)unaff_s2 + (-(int)unaff_s6 - pIVar12->rows));\n          }\n          (pIVar12->page).width = (size_t)unaff_s8;\n          (pIVar12->page).height = (size_t)unaff_s2;\n          (pIVar12->page).x = sStack_1fc;\n          (pIVar12->page).y = (ssize_t)unaff_s6;\n          if (pIVar11 == (Image *)0x0) {\n            pIVar12 = (Image *)(**(code **)(pcStack_208 + -0x7964))(pIVar12);\n          }\n        }\n        pcVar25 = pcStack_208;\n        if (iStack_1d4 == *piVar17) {\n          return pIVar12;\n        }\n        goto LAB_001c9968;\n      }" if (parenthesized_expression "(pIVar11->rows == 0xabacadab)" ( (binary_expression "pIVar11->rows == 0xabacadab" (field_expression "pIVar11->rows" identifier -> field_identifier) == number_literal) )) (compound_statement "{\n        pIStack_210 = pIVar11;\n        pIVar12 = (Image *)(**(code **)(pcStack_208 + -0x7080))(pIVar15,0,0,1);\n        if (pIVar12 != (Image *)0x0) {\n          sStack_1fc = (pIVar15->page).x;\n          unaff_s8 = (Image **)(pIVar15->page).width;\n          unaff_s2 = (ExceptionInfo *)(pIVar15->page).height;\n          unaff_s6 = (Image *)(pIVar15->page).y;\n          uStack_1f4 = 0;\n          uStack_1f8 = 0;\n          piVar19 = (int *)(**(code **)(pcStack_208 + -0x715c))(pIVar15,pIVar11);\n          unaff_s5 = (undefined *)(**(code **)(pcStack_208 + -0x79dc))(pIVar12,pIVar11);\n          iVar2 = (**(code **)(pcStack_208 + -0x73fc))(pIVar15);\n          if (((iVar2 == 4) || (iVar2 = (**(code **)(pcStack_208 + -0x73fc))(pIVar15), iVar2 == 3))\n             && ((iVar2 = (**(code **)(pcStack_208 + -0x73fc))(pIVar12), iVar2 == 4 ||\n                 (iVar2 = (**(code **)(pcStack_208 + -0x73fc))(pIVar12), iVar2 == 3)))) {\n            (**(code **)(pcStack_208 + -0x7774))(7);\n            sVar9 = pIVar12->rows;\n            if ((int)sVar9 < 0) {\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_03 < (int)(sVar9 + 0x3f) >> 6) goto LAB_001c98d4;\nLAB_001c981c:\n              bVar1 = (int)sVar9 < 0x80;\n            }\n            else {\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\n              if ((int)sVar9 >> 6 <= extraout_v1_03) goto LAB_001c981c;\nLAB_001c98d4:\n              (*pcVar25)(7);\n              bVar1 = extraout_v1_05 < 2;\n            }\n            iVar2 = 1;\n            if ((bool)(bVar1 ^ 1)) {\n              (**(code **)(pcStack_208 + -0x7774))(7);\n              sVar9 = pIVar12->rows;\n              if ((int)sVar9 < 0) {\n                sVar9 = sVar9 + 0x3f;\n              }\n              iVar2 = (int)sVar9 >> 6;\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_06 < iVar2) {\nLAB_001c98ac:\n                (*pcVar25)(7);\n                iVar2 = extraout_v1_04;\n              }\n              goto LAB_001c96d8;\n            }\n            iVar10 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          else {\n            uVar38 = (**(code **)(pcStack_208 + -0x7774))(7);\n            if ((int)((ulonglong)uVar38 >> 0x20) == 0) {\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar38) goto LAB_001c96c4;\n              uVar38 = (*pcVar25)(7);\n              if ((int)((ulonglong)uVar38 >> 0x20) != 0) goto LAB_001c96c0;\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar38) goto LAB_001c96c4;\n              iVar2 = 1;\n            }\n            else {\nLAB_001c96c0:\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\nLAB_001c96c4:\n              uVar38 = (*pcVar25)(7);\n              if (((int)((ulonglong)uVar38 >> 0x20) == 0) &&\n                 (pcVar25 = *(code **)(pcStack_208 + -0x7774), (uint)uVar38 < 2)) goto LAB_001c98ac;\n              iVar2 = 2;\n            }\nLAB_001c96d8:\n            iVar10 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          puStack_1dc = &uStack_1f8;\n          pIStack_1d8 = (Image *)0x1;\n          pIStack_1f0 = pIVar15;\n          pIStack_1ec = pIVar11;\n          puStack_1e8 = unaff_s5;\n          piStack_1e4 = piVar19;\n          pIStack_1e0 = pIVar12;\n          (**(code **)(pcStack_208 + -0x7718))(iVar10 + 0x56bc,&pIStack_1f0,iVar2,0);\n          pIVar11 = pIStack_1d8;\n          (**(code **)(pcStack_208 + -0x79bc))(unaff_s5);\n          (**(code **)(pcStack_208 + -0x79bc))(piVar19);\n          pIVar12->type = pIVar15->type;\n          if (unaff_s2 != (ExceptionInfo *)0x0) {\n            unaff_s6 = (Image *)((int)unaff_s2 + (-(int)unaff_s6 - pIVar12->rows));\n          }\n          (pIVar12->page).width = (size_t)unaff_s8;\n          (pIVar12->page).height = (size_t)unaff_s2;\n          (pIVar12->page).x = sStack_1fc;\n          (pIVar12->page).y = (ssize_t)unaff_s6;\n          if (pIVar11 == (Image *)0x0) {\n            pIVar12 = (Image *)(**(code **)(pcStack_208 + -0x7964))(pIVar12);\n          }\n        }\n        pcVar25 = pcStack_208;\n        if (iStack_1d4 == *piVar17) {\n          return pIVar12;\n        }\n        goto LAB_001c9968;\n      }" { (expression_statement "pIStack_210 = pIVar11;" (assignment_expression "pIStack_210 = pIVar11" identifier = identifier) ;) (expression_statement "pIVar12 = (Image *)(**(code **)(pcStack_208 + -0x7080))(pIVar15,0,0,1);" (assignment_expression "pIVar12 = (Image *)(**(code **)(pcStack_208 + -0x7080))(pIVar15,0,0,1)" identifier = (cast_expression "(Image *)(**(code **)(pcStack_208 + -0x7080))(pIVar15,0,0,1)" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(pcStack_208 + -0x7080))(pIVar15,0,0,1)" (parenthesized_expression "(**(code **)(pcStack_208 + -0x7080))" ( (pointer_expression "**(code **)(pcStack_208 + -0x7080)" * (pointer_expression "*(code **)(pcStack_208 + -0x7080)" * (cast_expression "(code **)(pcStack_208 + -0x7080)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_208 + -0x7080)" ( (binary_expression "pcStack_208 + -0x7080" identifier + number_literal) ))))) )) (argument_list "(pIVar15,0,0,1)" ( identifier , number_literal , number_literal , number_literal ))))) ;) (if_statement "if (pIVar12 != (Image *)0x0) {\n          sStack_1fc = (pIVar15->page).x;\n          unaff_s8 = (Image **)(pIVar15->page).width;\n          unaff_s2 = (ExceptionInfo *)(pIVar15->page).height;\n          unaff_s6 = (Image *)(pIVar15->page).y;\n          uStack_1f4 = 0;\n          uStack_1f8 = 0;\n          piVar19 = (int *)(**(code **)(pcStack_208 + -0x715c))(pIVar15,pIVar11);\n          unaff_s5 = (undefined *)(**(code **)(pcStack_208 + -0x79dc))(pIVar12,pIVar11);\n          iVar2 = (**(code **)(pcStack_208 + -0x73fc))(pIVar15);\n          if (((iVar2 == 4) || (iVar2 = (**(code **)(pcStack_208 + -0x73fc))(pIVar15), iVar2 == 3))\n             && ((iVar2 = (**(code **)(pcStack_208 + -0x73fc))(pIVar12), iVar2 == 4 ||\n                 (iVar2 = (**(code **)(pcStack_208 + -0x73fc))(pIVar12), iVar2 == 3)))) {\n            (**(code **)(pcStack_208 + -0x7774))(7);\n            sVar9 = pIVar12->rows;\n            if ((int)sVar9 < 0) {\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_03 < (int)(sVar9 + 0x3f) >> 6) goto LAB_001c98d4;\nLAB_001c981c:\n              bVar1 = (int)sVar9 < 0x80;\n            }\n            else {\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\n              if ((int)sVar9 >> 6 <= extraout_v1_03) goto LAB_001c981c;\nLAB_001c98d4:\n              (*pcVar25)(7);\n              bVar1 = extraout_v1_05 < 2;\n            }\n            iVar2 = 1;\n            if ((bool)(bVar1 ^ 1)) {\n              (**(code **)(pcStack_208 + -0x7774))(7);\n              sVar9 = pIVar12->rows;\n              if ((int)sVar9 < 0) {\n                sVar9 = sVar9 + 0x3f;\n              }\n              iVar2 = (int)sVar9 >> 6;\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_06 < iVar2) {\nLAB_001c98ac:\n                (*pcVar25)(7);\n                iVar2 = extraout_v1_04;\n              }\n              goto LAB_001c96d8;\n            }\n            iVar10 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          else {\n            uVar38 = (**(code **)(pcStack_208 + -0x7774))(7);\n            if ((int)((ulonglong)uVar38 >> 0x20) == 0) {\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar38) goto LAB_001c96c4;\n              uVar38 = (*pcVar25)(7);\n              if ((int)((ulonglong)uVar38 >> 0x20) != 0) goto LAB_001c96c0;\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar38) goto LAB_001c96c4;\n              iVar2 = 1;\n            }\n            else {\nLAB_001c96c0:\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\nLAB_001c96c4:\n              uVar38 = (*pcVar25)(7);\n              if (((int)((ulonglong)uVar38 >> 0x20) == 0) &&\n                 (pcVar25 = *(code **)(pcStack_208 + -0x7774), (uint)uVar38 < 2)) goto LAB_001c98ac;\n              iVar2 = 2;\n            }\nLAB_001c96d8:\n            iVar10 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          puStack_1dc = &uStack_1f8;\n          pIStack_1d8 = (Image *)0x1;\n          pIStack_1f0 = pIVar15;\n          pIStack_1ec = pIVar11;\n          puStack_1e8 = unaff_s5;\n          piStack_1e4 = piVar19;\n          pIStack_1e0 = pIVar12;\n          (**(code **)(pcStack_208 + -0x7718))(iVar10 + 0x56bc,&pIStack_1f0,iVar2,0);\n          pIVar11 = pIStack_1d8;\n          (**(code **)(pcStack_208 + -0x79bc))(unaff_s5);\n          (**(code **)(pcStack_208 + -0x79bc))(piVar19);\n          pIVar12->type = pIVar15->type;\n          if (unaff_s2 != (ExceptionInfo *)0x0) {\n            unaff_s6 = (Image *)((int)unaff_s2 + (-(int)unaff_s6 - pIVar12->rows));\n          }\n          (pIVar12->page).width = (size_t)unaff_s8;\n          (pIVar12->page).height = (size_t)unaff_s2;\n          (pIVar12->page).x = sStack_1fc;\n          (pIVar12->page).y = (ssize_t)unaff_s6;\n          if (pIVar11 == (Image *)0x0) {\n            pIVar12 = (Image *)(**(code **)(pcStack_208 + -0x7964))(pIVar12);\n          }\n        }" if (parenthesized_expression "(pIVar12 != (Image *)0x0)" ( (binary_expression "pIVar12 != (Image *)0x0" identifier != (cast_expression "(Image *)0x0" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          sStack_1fc = (pIVar15->page).x;\n          unaff_s8 = (Image **)(pIVar15->page).width;\n          unaff_s2 = (ExceptionInfo *)(pIVar15->page).height;\n          unaff_s6 = (Image *)(pIVar15->page).y;\n          uStack_1f4 = 0;\n          uStack_1f8 = 0;\n          piVar19 = (int *)(**(code **)(pcStack_208 + -0x715c))(pIVar15,pIVar11);\n          unaff_s5 = (undefined *)(**(code **)(pcStack_208 + -0x79dc))(pIVar12,pIVar11);\n          iVar2 = (**(code **)(pcStack_208 + -0x73fc))(pIVar15);\n          if (((iVar2 == 4) || (iVar2 = (**(code **)(pcStack_208 + -0x73fc))(pIVar15), iVar2 == 3))\n             && ((iVar2 = (**(code **)(pcStack_208 + -0x73fc))(pIVar12), iVar2 == 4 ||\n                 (iVar2 = (**(code **)(pcStack_208 + -0x73fc))(pIVar12), iVar2 == 3)))) {\n            (**(code **)(pcStack_208 + -0x7774))(7);\n            sVar9 = pIVar12->rows;\n            if ((int)sVar9 < 0) {\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_03 < (int)(sVar9 + 0x3f) >> 6) goto LAB_001c98d4;\nLAB_001c981c:\n              bVar1 = (int)sVar9 < 0x80;\n            }\n            else {\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\n              if ((int)sVar9 >> 6 <= extraout_v1_03) goto LAB_001c981c;\nLAB_001c98d4:\n              (*pcVar25)(7);\n              bVar1 = extraout_v1_05 < 2;\n            }\n            iVar2 = 1;\n            if ((bool)(bVar1 ^ 1)) {\n              (**(code **)(pcStack_208 + -0x7774))(7);\n              sVar9 = pIVar12->rows;\n              if ((int)sVar9 < 0) {\n                sVar9 = sVar9 + 0x3f;\n              }\n              iVar2 = (int)sVar9 >> 6;\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_06 < iVar2) {\nLAB_001c98ac:\n                (*pcVar25)(7);\n                iVar2 = extraout_v1_04;\n              }\n              goto LAB_001c96d8;\n            }\n            iVar10 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          else {\n            uVar38 = (**(code **)(pcStack_208 + -0x7774))(7);\n            if ((int)((ulonglong)uVar38 >> 0x20) == 0) {\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar38) goto LAB_001c96c4;\n              uVar38 = (*pcVar25)(7);\n              if ((int)((ulonglong)uVar38 >> 0x20) != 0) goto LAB_001c96c0;\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar38) goto LAB_001c96c4;\n              iVar2 = 1;\n            }\n            else {\nLAB_001c96c0:\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\nLAB_001c96c4:\n              uVar38 = (*pcVar25)(7);\n              if (((int)((ulonglong)uVar38 >> 0x20) == 0) &&\n                 (pcVar25 = *(code **)(pcStack_208 + -0x7774), (uint)uVar38 < 2)) goto LAB_001c98ac;\n              iVar2 = 2;\n            }\nLAB_001c96d8:\n            iVar10 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          puStack_1dc = &uStack_1f8;\n          pIStack_1d8 = (Image *)0x1;\n          pIStack_1f0 = pIVar15;\n          pIStack_1ec = pIVar11;\n          puStack_1e8 = unaff_s5;\n          piStack_1e4 = piVar19;\n          pIStack_1e0 = pIVar12;\n          (**(code **)(pcStack_208 + -0x7718))(iVar10 + 0x56bc,&pIStack_1f0,iVar2,0);\n          pIVar11 = pIStack_1d8;\n          (**(code **)(pcStack_208 + -0x79bc))(unaff_s5);\n          (**(code **)(pcStack_208 + -0x79bc))(piVar19);\n          pIVar12->type = pIVar15->type;\n          if (unaff_s2 != (ExceptionInfo *)0x0) {\n            unaff_s6 = (Image *)((int)unaff_s2 + (-(int)unaff_s6 - pIVar12->rows));\n          }\n          (pIVar12->page).width = (size_t)unaff_s8;\n          (pIVar12->page).height = (size_t)unaff_s2;\n          (pIVar12->page).x = sStack_1fc;\n          (pIVar12->page).y = (ssize_t)unaff_s6;\n          if (pIVar11 == (Image *)0x0) {\n            pIVar12 = (Image *)(**(code **)(pcStack_208 + -0x7964))(pIVar12);\n          }\n        }" { (expression_statement "sStack_1fc = (pIVar15->page).x;" (assignment_expression "sStack_1fc = (pIVar15->page).x" identifier = (field_expression "(pIVar15->page).x" (parenthesized_expression "(pIVar15->page)" ( (field_expression "pIVar15->page" identifier -> field_identifier) )) . field_identifier)) ;) (expression_statement "unaff_s8 = (Image **)(pIVar15->page).width;" (assignment_expression "unaff_s8 = (Image **)(pIVar15->page).width" identifier = (cast_expression "(Image **)(pIVar15->page).width" ( (type_descriptor "Image **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (field_expression "(pIVar15->page).width" (parenthesized_expression "(pIVar15->page)" ( (field_expression "pIVar15->page" identifier -> field_identifier) )) . field_identifier))) ;) (expression_statement "unaff_s2 = (ExceptionInfo *)(pIVar15->page).height;" (assignment_expression "unaff_s2 = (ExceptionInfo *)(pIVar15->page).height" identifier = (cast_expression "(ExceptionInfo *)(pIVar15->page).height" ( (type_descriptor "ExceptionInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "(pIVar15->page).height" (parenthesized_expression "(pIVar15->page)" ( (field_expression "pIVar15->page" identifier -> field_identifier) )) . field_identifier))) ;) (expression_statement "unaff_s6 = (Image *)(pIVar15->page).y;" (assignment_expression "unaff_s6 = (Image *)(pIVar15->page).y" identifier = (cast_expression "(Image *)(pIVar15->page).y" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "(pIVar15->page).y" (parenthesized_expression "(pIVar15->page)" ( (field_expression "pIVar15->page" identifier -> field_identifier) )) . field_identifier))) ;) (expression_statement "uStack_1f4 = 0;" (assignment_expression "uStack_1f4 = 0" identifier = number_literal) ;) (expression_statement "uStack_1f8 = 0;" (assignment_expression "uStack_1f8 = 0" identifier = number_literal) ;) (expression_statement "piVar19 = (int *)(**(code **)(pcStack_208 + -0x715c))(pIVar15,pIVar11);" (assignment_expression "piVar19 = (int *)(**(code **)(pcStack_208 + -0x715c))(pIVar15,pIVar11)" identifier = (cast_expression "(int *)(**(code **)(pcStack_208 + -0x715c))(pIVar15,pIVar11)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(pcStack_208 + -0x715c))(pIVar15,pIVar11)" (parenthesized_expression "(**(code **)(pcStack_208 + -0x715c))" ( (pointer_expression "**(code **)(pcStack_208 + -0x715c)" * (pointer_expression "*(code **)(pcStack_208 + -0x715c)" * (cast_expression "(code **)(pcStack_208 + -0x715c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_208 + -0x715c)" ( (binary_expression "pcStack_208 + -0x715c" identifier + number_literal) ))))) )) (argument_list "(pIVar15,pIVar11)" ( identifier , identifier ))))) ;) (expression_statement "unaff_s5 = (undefined *)(**(code **)(pcStack_208 + -0x79dc))(pIVar12,pIVar11);" (assignment_expression "unaff_s5 = (undefined *)(**(code **)(pcStack_208 + -0x79dc))(pIVar12,pIVar11)" identifier = (cast_expression "(undefined *)(**(code **)(pcStack_208 + -0x79dc))(pIVar12,pIVar11)" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(pcStack_208 + -0x79dc))(pIVar12,pIVar11)" (parenthesized_expression "(**(code **)(pcStack_208 + -0x79dc))" ( (pointer_expression "**(code **)(pcStack_208 + -0x79dc)" * (pointer_expression "*(code **)(pcStack_208 + -0x79dc)" * (cast_expression "(code **)(pcStack_208 + -0x79dc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_208 + -0x79dc)" ( (binary_expression "pcStack_208 + -0x79dc" identifier + number_literal) ))))) )) (argument_list "(pIVar12,pIVar11)" ( identifier , identifier ))))) ;) (expression_statement "iVar2 = (**(code **)(pcStack_208 + -0x73fc))(pIVar15);" (assignment_expression "iVar2 = (**(code **)(pcStack_208 + -0x73fc))(pIVar15)" identifier = (call_expression "(**(code **)(pcStack_208 + -0x73fc))(pIVar15)" (parenthesized_expression "(**(code **)(pcStack_208 + -0x73fc))" ( (pointer_expression "**(code **)(pcStack_208 + -0x73fc)" * (pointer_expression "*(code **)(pcStack_208 + -0x73fc)" * (cast_expression "(code **)(pcStack_208 + -0x73fc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_208 + -0x73fc)" ( (binary_expression "pcStack_208 + -0x73fc" identifier + number_literal) ))))) )) (argument_list "(pIVar15)" ( identifier )))) ;) (if_statement "if (((iVar2 == 4) || (iVar2 = (**(code **)(pcStack_208 + -0x73fc))(pIVar15), iVar2 == 3))\n             && ((iVar2 = (**(code **)(pcStack_208 + -0x73fc))(pIVar12), iVar2 == 4 ||\n                 (iVar2 = (**(code **)(pcStack_208 + -0x73fc))(pIVar12), iVar2 == 3)))) {\n            (**(code **)(pcStack_208 + -0x7774))(7);\n            sVar9 = pIVar12->rows;\n            if ((int)sVar9 < 0) {\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_03 < (int)(sVar9 + 0x3f) >> 6) goto LAB_001c98d4;\nLAB_001c981c:\n              bVar1 = (int)sVar9 < 0x80;\n            }\n            else {\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\n              if ((int)sVar9 >> 6 <= extraout_v1_03) goto LAB_001c981c;\nLAB_001c98d4:\n              (*pcVar25)(7);\n              bVar1 = extraout_v1_05 < 2;\n            }\n            iVar2 = 1;\n            if ((bool)(bVar1 ^ 1)) {\n              (**(code **)(pcStack_208 + -0x7774))(7);\n              sVar9 = pIVar12->rows;\n              if ((int)sVar9 < 0) {\n                sVar9 = sVar9 + 0x3f;\n              }\n              iVar2 = (int)sVar9 >> 6;\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_06 < iVar2) {\nLAB_001c98ac:\n                (*pcVar25)(7);\n                iVar2 = extraout_v1_04;\n              }\n              goto LAB_001c96d8;\n            }\n            iVar10 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          else {\n            uVar38 = (**(code **)(pcStack_208 + -0x7774))(7);\n            if ((int)((ulonglong)uVar38 >> 0x20) == 0) {\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar38) goto LAB_001c96c4;\n              uVar38 = (*pcVar25)(7);\n              if ((int)((ulonglong)uVar38 >> 0x20) != 0) goto LAB_001c96c0;\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar38) goto LAB_001c96c4;\n              iVar2 = 1;\n            }\n            else {\nLAB_001c96c0:\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\nLAB_001c96c4:\n              uVar38 = (*pcVar25)(7);\n              if (((int)((ulonglong)uVar38 >> 0x20) == 0) &&\n                 (pcVar25 = *(code **)(pcStack_208 + -0x7774), (uint)uVar38 < 2)) goto LAB_001c98ac;\n              iVar2 = 2;\n            }\nLAB_001c96d8:\n            iVar10 = *(int *)(pcStack_208 + -0x7f10);\n          }" if (parenthesized_expression "(((iVar2 == 4) || (iVar2 = (**(code **)(pcStack_208 + -0x73fc))(pIVar15), iVar2 == 3))\n             && ((iVar2 = (**(code **)(pcStack_208 + -0x73fc))(pIVar12), iVar2 == 4 ||\n                 (iVar2 = (**(code **)(pcStack_208 + -0x73fc))(pIVar12), iVar2 == 3))))" ( (binary_expression "((iVar2 == 4) || (iVar2 = (**(code **)(pcStack_208 + -0x73fc))(pIVar15), iVar2 == 3))\n             && ((iVar2 = (**(code **)(pcStack_208 + -0x73fc))(pIVar12), iVar2 == 4 ||\n                 (iVar2 = (**(code **)(pcStack_208 + -0x73fc))(pIVar12), iVar2 == 3)))" (parenthesized_expression "((iVar2 == 4) || (iVar2 = (**(code **)(pcStack_208 + -0x73fc))(pIVar15), iVar2 == 3))" ( (binary_expression "(iVar2 == 4) || (iVar2 = (**(code **)(pcStack_208 + -0x73fc))(pIVar15), iVar2 == 3)" (parenthesized_expression "(iVar2 == 4)" ( (binary_expression "iVar2 == 4" identifier == number_literal) )) || (parenthesized_expression "(iVar2 = (**(code **)(pcStack_208 + -0x73fc))(pIVar15), iVar2 == 3)" ( (comma_expression "iVar2 = (**(code **)(pcStack_208 + -0x73fc))(pIVar15), iVar2 == 3" (assignment_expression "iVar2 = (**(code **)(pcStack_208 + -0x73fc))(pIVar15)" identifier = (call_expression "(**(code **)(pcStack_208 + -0x73fc))(pIVar15)" (parenthesized_expression "(**(code **)(pcStack_208 + -0x73fc))" ( (pointer_expression "**(code **)(pcStack_208 + -0x73fc)" * (pointer_expression "*(code **)(pcStack_208 + -0x73fc)" * (cast_expression "(code **)(pcStack_208 + -0x73fc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_208 + -0x73fc)" ( (binary_expression "pcStack_208 + -0x73fc" identifier + number_literal) ))))) )) (argument_list "(pIVar15)" ( identifier )))) , (binary_expression "iVar2 == 3" identifier == number_literal)) ))) )) && (parenthesized_expression "((iVar2 = (**(code **)(pcStack_208 + -0x73fc))(pIVar12), iVar2 == 4 ||\n                 (iVar2 = (**(code **)(pcStack_208 + -0x73fc))(pIVar12), iVar2 == 3)))" ( (parenthesized_expression "(iVar2 = (**(code **)(pcStack_208 + -0x73fc))(pIVar12), iVar2 == 4 ||\n                 (iVar2 = (**(code **)(pcStack_208 + -0x73fc))(pIVar12), iVar2 == 3))" ( (comma_expression "iVar2 = (**(code **)(pcStack_208 + -0x73fc))(pIVar12), iVar2 == 4 ||\n                 (iVar2 = (**(code **)(pcStack_208 + -0x73fc))(pIVar12), iVar2 == 3)" (assignment_expression "iVar2 = (**(code **)(pcStack_208 + -0x73fc))(pIVar12)" identifier = (call_expression "(**(code **)(pcStack_208 + -0x73fc))(pIVar12)" (parenthesized_expression "(**(code **)(pcStack_208 + -0x73fc))" ( (pointer_expression "**(code **)(pcStack_208 + -0x73fc)" * (pointer_expression "*(code **)(pcStack_208 + -0x73fc)" * (cast_expression "(code **)(pcStack_208 + -0x73fc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_208 + -0x73fc)" ( (binary_expression "pcStack_208 + -0x73fc" identifier + number_literal) ))))) )) (argument_list "(pIVar12)" ( identifier )))) , (binary_expression "iVar2 == 4 ||\n                 (iVar2 = (**(code **)(pcStack_208 + -0x73fc))(pIVar12), iVar2 == 3)" (binary_expression "iVar2 == 4" identifier == number_literal) || (parenthesized_expression "(iVar2 = (**(code **)(pcStack_208 + -0x73fc))(pIVar12), iVar2 == 3)" ( (comma_expression "iVar2 = (**(code **)(pcStack_208 + -0x73fc))(pIVar12), iVar2 == 3" (assignment_expression "iVar2 = (**(code **)(pcStack_208 + -0x73fc))(pIVar12)" identifier = (call_expression "(**(code **)(pcStack_208 + -0x73fc))(pIVar12)" (parenthesized_expression "(**(code **)(pcStack_208 + -0x73fc))" ( (pointer_expression "**(code **)(pcStack_208 + -0x73fc)" * (pointer_expression "*(code **)(pcStack_208 + -0x73fc)" * (cast_expression "(code **)(pcStack_208 + -0x73fc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_208 + -0x73fc)" ( (binary_expression "pcStack_208 + -0x73fc" identifier + number_literal) ))))) )) (argument_list "(pIVar12)" ( identifier )))) , (binary_expression "iVar2 == 3" identifier == number_literal)) )))) )) ))) )) (compound_statement "{\n            (**(code **)(pcStack_208 + -0x7774))(7);\n            sVar9 = pIVar12->rows;\n            if ((int)sVar9 < 0) {\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_03 < (int)(sVar9 + 0x3f) >> 6) goto LAB_001c98d4;\nLAB_001c981c:\n              bVar1 = (int)sVar9 < 0x80;\n            }\n            else {\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\n              if ((int)sVar9 >> 6 <= extraout_v1_03) goto LAB_001c981c;\nLAB_001c98d4:\n              (*pcVar25)(7);\n              bVar1 = extraout_v1_05 < 2;\n            }\n            iVar2 = 1;\n            if ((bool)(bVar1 ^ 1)) {\n              (**(code **)(pcStack_208 + -0x7774))(7);\n              sVar9 = pIVar12->rows;\n              if ((int)sVar9 < 0) {\n                sVar9 = sVar9 + 0x3f;\n              }\n              iVar2 = (int)sVar9 >> 6;\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_06 < iVar2) {\nLAB_001c98ac:\n                (*pcVar25)(7);\n                iVar2 = extraout_v1_04;\n              }\n              goto LAB_001c96d8;\n            }\n            iVar10 = *(int *)(pcStack_208 + -0x7f10);\n          }" { (expression_statement "(**(code **)(pcStack_208 + -0x7774))(7);" (call_expression "(**(code **)(pcStack_208 + -0x7774))(7)" (parenthesized_expression "(**(code **)(pcStack_208 + -0x7774))" ( (pointer_expression "**(code **)(pcStack_208 + -0x7774)" * (pointer_expression "*(code **)(pcStack_208 + -0x7774)" * (cast_expression "(code **)(pcStack_208 + -0x7774)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_208 + -0x7774)" ( (binary_expression "pcStack_208 + -0x7774" identifier + number_literal) ))))) )) (argument_list "(7)" ( number_literal ))) ;) (expression_statement "sVar9 = pIVar12->rows;" (assignment_expression "sVar9 = pIVar12->rows" identifier = (field_expression "pIVar12->rows" identifier -> field_identifier)) ;) (if_statement "if ((int)sVar9 < 0) {\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_03 < (int)(sVar9 + 0x3f) >> 6) goto LAB_001c98d4;\nLAB_001c981c:\n              bVar1 = (int)sVar9 < 0x80;\n            }\n            else {\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\n              if ((int)sVar9 >> 6 <= extraout_v1_03) goto LAB_001c981c;\nLAB_001c98d4:\n              (*pcVar25)(7);\n              bVar1 = extraout_v1_05 < 2;\n            }" if (parenthesized_expression "((int)sVar9 < 0)" ( (binary_expression "(int)sVar9 < 0" (cast_expression "(int)sVar9" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_03 < (int)(sVar9 + 0x3f) >> 6) goto LAB_001c98d4;\nLAB_001c981c:\n              bVar1 = (int)sVar9 < 0x80;\n            }" { (expression_statement "pcVar25 = *(code **)(pcStack_208 + -0x7774);" (assignment_expression "pcVar25 = *(code **)(pcStack_208 + -0x7774)" identifier = (pointer_expression "*(code **)(pcStack_208 + -0x7774)" * (cast_expression "(code **)(pcStack_208 + -0x7774)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_208 + -0x7774)" ( (binary_expression "pcStack_208 + -0x7774" identifier + number_literal) ))))) ;) (if_statement "if (extraout_v1_03 < (int)(sVar9 + 0x3f) >> 6) goto LAB_001c98d4;" if (parenthesized_expression "(extraout_v1_03 < (int)(sVar9 + 0x3f) >> 6)" ( (binary_expression "extraout_v1_03 < (int)(sVar9 + 0x3f) >> 6" identifier < (binary_expression "(int)(sVar9 + 0x3f) >> 6" (cast_expression "(int)(sVar9 + 0x3f)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(sVar9 + 0x3f)" ( (binary_expression "sVar9 + 0x3f" identifier + number_literal) ))) >> number_literal)) )) (goto_statement "goto LAB_001c98d4;" goto statement_identifier ;)) (labeled_statement "LAB_001c981c:\n              bVar1 = (int)sVar9 < 0x80;" statement_identifier : (expression_statement "bVar1 = (int)sVar9 < 0x80;" (assignment_expression "bVar1 = (int)sVar9 < 0x80" identifier = (binary_expression "(int)sVar9 < 0x80" (cast_expression "(int)sVar9" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal)) ;)) }) (else_clause "else {\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\n              if ((int)sVar9 >> 6 <= extraout_v1_03) goto LAB_001c981c;\nLAB_001c98d4:\n              (*pcVar25)(7);\n              bVar1 = extraout_v1_05 < 2;\n            }" else (compound_statement "{\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\n              if ((int)sVar9 >> 6 <= extraout_v1_03) goto LAB_001c981c;\nLAB_001c98d4:\n              (*pcVar25)(7);\n              bVar1 = extraout_v1_05 < 2;\n            }" { (expression_statement "pcVar25 = *(code **)(pcStack_208 + -0x7774);" (assignment_expression "pcVar25 = *(code **)(pcStack_208 + -0x7774)" identifier = (pointer_expression "*(code **)(pcStack_208 + -0x7774)" * (cast_expression "(code **)(pcStack_208 + -0x7774)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_208 + -0x7774)" ( (binary_expression "pcStack_208 + -0x7774" identifier + number_literal) ))))) ;) (if_statement "if ((int)sVar9 >> 6 <= extraout_v1_03) goto LAB_001c981c;" if (parenthesized_expression "((int)sVar9 >> 6 <= extraout_v1_03)" ( (binary_expression "(int)sVar9 >> 6 <= extraout_v1_03" (binary_expression "(int)sVar9 >> 6" (cast_expression "(int)sVar9" ( (type_descriptor "int" primitive_type) ) identifier) >> number_literal) <= identifier) )) (goto_statement "goto LAB_001c981c;" goto statement_identifier ;)) (labeled_statement "LAB_001c98d4:\n              (*pcVar25)(7);" statement_identifier : (expression_statement "(*pcVar25)(7);" (call_expression "(*pcVar25)(7)" (parenthesized_expression "(*pcVar25)" ( (pointer_expression "*pcVar25" * identifier) )) (argument_list "(7)" ( number_literal ))) ;)) (expression_statement "bVar1 = extraout_v1_05 < 2;" (assignment_expression "bVar1 = extraout_v1_05 < 2" identifier = (binary_expression "extraout_v1_05 < 2" identifier < number_literal)) ;) }))) (expression_statement "iVar2 = 1;" (assignment_expression "iVar2 = 1" identifier = number_literal) ;) (if_statement "if ((bool)(bVar1 ^ 1)) {\n              (**(code **)(pcStack_208 + -0x7774))(7);\n              sVar9 = pIVar12->rows;\n              if ((int)sVar9 < 0) {\n                sVar9 = sVar9 + 0x3f;\n              }\n              iVar2 = (int)sVar9 >> 6;\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_06 < iVar2) {\nLAB_001c98ac:\n                (*pcVar25)(7);\n                iVar2 = extraout_v1_04;\n              }\n              goto LAB_001c96d8;\n            }" if (parenthesized_expression "((bool)(bVar1 ^ 1))" ( (cast_expression "(bool)(bVar1 ^ 1)" ( (type_descriptor "bool" primitive_type) ) (parenthesized_expression "(bVar1 ^ 1)" ( (binary_expression "bVar1 ^ 1" identifier ^ number_literal) ))) )) (compound_statement "{\n              (**(code **)(pcStack_208 + -0x7774))(7);\n              sVar9 = pIVar12->rows;\n              if ((int)sVar9 < 0) {\n                sVar9 = sVar9 + 0x3f;\n              }\n              iVar2 = (int)sVar9 >> 6;\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_06 < iVar2) {\nLAB_001c98ac:\n                (*pcVar25)(7);\n                iVar2 = extraout_v1_04;\n              }\n              goto LAB_001c96d8;\n            }" { (expression_statement "(**(code **)(pcStack_208 + -0x7774))(7);" (call_expression "(**(code **)(pcStack_208 + -0x7774))(7)" (parenthesized_expression "(**(code **)(pcStack_208 + -0x7774))" ( (pointer_expression "**(code **)(pcStack_208 + -0x7774)" * (pointer_expression "*(code **)(pcStack_208 + -0x7774)" * (cast_expression "(code **)(pcStack_208 + -0x7774)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_208 + -0x7774)" ( (binary_expression "pcStack_208 + -0x7774" identifier + number_literal) ))))) )) (argument_list "(7)" ( number_literal ))) ;) (expression_statement "sVar9 = pIVar12->rows;" (assignment_expression "sVar9 = pIVar12->rows" identifier = (field_expression "pIVar12->rows" identifier -> field_identifier)) ;) (if_statement "if ((int)sVar9 < 0) {\n                sVar9 = sVar9 + 0x3f;\n              }" if (parenthesized_expression "((int)sVar9 < 0)" ( (binary_expression "(int)sVar9 < 0" (cast_expression "(int)sVar9" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n                sVar9 = sVar9 + 0x3f;\n              }" { (expression_statement "sVar9 = sVar9 + 0x3f;" (assignment_expression "sVar9 = sVar9 + 0x3f" identifier = (binary_expression "sVar9 + 0x3f" identifier + number_literal)) ;) })) (expression_statement "iVar2 = (int)sVar9 >> 6;" (assignment_expression "iVar2 = (int)sVar9 >> 6" identifier = (binary_expression "(int)sVar9 >> 6" (cast_expression "(int)sVar9" ( (type_descriptor "int" primitive_type) ) identifier) >> number_literal)) ;) (expression_statement "pcVar25 = *(code **)(pcStack_208 + -0x7774);" (assignment_expression "pcVar25 = *(code **)(pcStack_208 + -0x7774)" identifier = (pointer_expression "*(code **)(pcStack_208 + -0x7774)" * (cast_expression "(code **)(pcStack_208 + -0x7774)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_208 + -0x7774)" ( (binary_expression "pcStack_208 + -0x7774" identifier + number_literal) ))))) ;) (if_statement "if (extraout_v1_06 < iVar2) {\nLAB_001c98ac:\n                (*pcVar25)(7);\n                iVar2 = extraout_v1_04;\n              }" if (parenthesized_expression "(extraout_v1_06 < iVar2)" ( (binary_expression "extraout_v1_06 < iVar2" identifier < identifier) )) (compound_statement "{\nLAB_001c98ac:\n                (*pcVar25)(7);\n                iVar2 = extraout_v1_04;\n              }" { (labeled_statement "LAB_001c98ac:\n                (*pcVar25)(7);" statement_identifier : (expression_statement "(*pcVar25)(7);" (call_expression "(*pcVar25)(7)" (parenthesized_expression "(*pcVar25)" ( (pointer_expression "*pcVar25" * identifier) )) (argument_list "(7)" ( number_literal ))) ;)) (expression_statement "iVar2 = extraout_v1_04;" (assignment_expression "iVar2 = extraout_v1_04" identifier = identifier) ;) })) (goto_statement "goto LAB_001c96d8;" goto statement_identifier ;) })) (expression_statement "iVar10 = *(int *)(pcStack_208 + -0x7f10);" (assignment_expression "iVar10 = *(int *)(pcStack_208 + -0x7f10)" identifier = (pointer_expression "*(int *)(pcStack_208 + -0x7f10)" * (cast_expression "(int *)(pcStack_208 + -0x7f10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_208 + -0x7f10)" ( (binary_expression "pcStack_208 + -0x7f10" identifier + number_literal) ))))) ;) }) (else_clause "else {\n            uVar38 = (**(code **)(pcStack_208 + -0x7774))(7);\n            if ((int)((ulonglong)uVar38 >> 0x20) == 0) {\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar38) goto LAB_001c96c4;\n              uVar38 = (*pcVar25)(7);\n              if ((int)((ulonglong)uVar38 >> 0x20) != 0) goto LAB_001c96c0;\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar38) goto LAB_001c96c4;\n              iVar2 = 1;\n            }\n            else {\nLAB_001c96c0:\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\nLAB_001c96c4:\n              uVar38 = (*pcVar25)(7);\n              if (((int)((ulonglong)uVar38 >> 0x20) == 0) &&\n                 (pcVar25 = *(code **)(pcStack_208 + -0x7774), (uint)uVar38 < 2)) goto LAB_001c98ac;\n              iVar2 = 2;\n            }\nLAB_001c96d8:\n            iVar10 = *(int *)(pcStack_208 + -0x7f10);\n          }" else (compound_statement "{\n            uVar38 = (**(code **)(pcStack_208 + -0x7774))(7);\n            if ((int)((ulonglong)uVar38 >> 0x20) == 0) {\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar38) goto LAB_001c96c4;\n              uVar38 = (*pcVar25)(7);\n              if ((int)((ulonglong)uVar38 >> 0x20) != 0) goto LAB_001c96c0;\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar38) goto LAB_001c96c4;\n              iVar2 = 1;\n            }\n            else {\nLAB_001c96c0:\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\nLAB_001c96c4:\n              uVar38 = (*pcVar25)(7);\n              if (((int)((ulonglong)uVar38 >> 0x20) == 0) &&\n                 (pcVar25 = *(code **)(pcStack_208 + -0x7774), (uint)uVar38 < 2)) goto LAB_001c98ac;\n              iVar2 = 2;\n            }\nLAB_001c96d8:\n            iVar10 = *(int *)(pcStack_208 + -0x7f10);\n          }" { (expression_statement "uVar38 = (**(code **)(pcStack_208 + -0x7774))(7);" (assignment_expression "uVar38 = (**(code **)(pcStack_208 + -0x7774))(7)" identifier = (call_expression "(**(code **)(pcStack_208 + -0x7774))(7)" (parenthesized_expression "(**(code **)(pcStack_208 + -0x7774))" ( (pointer_expression "**(code **)(pcStack_208 + -0x7774)" * (pointer_expression "*(code **)(pcStack_208 + -0x7774)" * (cast_expression "(code **)(pcStack_208 + -0x7774)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_208 + -0x7774)" ( (binary_expression "pcStack_208 + -0x7774" identifier + number_literal) ))))) )) (argument_list "(7)" ( number_literal )))) ;) (if_statement "if ((int)((ulonglong)uVar38 >> 0x20) == 0) {\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar38) goto LAB_001c96c4;\n              uVar38 = (*pcVar25)(7);\n              if ((int)((ulonglong)uVar38 >> 0x20) != 0) goto LAB_001c96c0;\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar38) goto LAB_001c96c4;\n              iVar2 = 1;\n            }\n            else {\nLAB_001c96c0:\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\nLAB_001c96c4:\n              uVar38 = (*pcVar25)(7);\n              if (((int)((ulonglong)uVar38 >> 0x20) == 0) &&\n                 (pcVar25 = *(code **)(pcStack_208 + -0x7774), (uint)uVar38 < 2)) goto LAB_001c98ac;\n              iVar2 = 2;\n            }" if (parenthesized_expression "((int)((ulonglong)uVar38 >> 0x20) == 0)" ( (binary_expression "(int)((ulonglong)uVar38 >> 0x20) == 0" (cast_expression "(int)((ulonglong)uVar38 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)uVar38 >> 0x20)" ( (binary_expression "(ulonglong)uVar38 >> 0x20" (cast_expression "(ulonglong)uVar38" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) ))) == number_literal) )) (compound_statement "{\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar38) goto LAB_001c96c4;\n              uVar38 = (*pcVar25)(7);\n              if ((int)((ulonglong)uVar38 >> 0x20) != 0) goto LAB_001c96c0;\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar38) goto LAB_001c96c4;\n              iVar2 = 1;\n            }" { (expression_statement "pcVar25 = *(code **)(pcStack_208 + -0x7774);" (assignment_expression "pcVar25 = *(code **)(pcStack_208 + -0x7774)" identifier = (pointer_expression "*(code **)(pcStack_208 + -0x7774)" * (cast_expression "(code **)(pcStack_208 + -0x7774)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_208 + -0x7774)" ( (binary_expression "pcStack_208 + -0x7774" identifier + number_literal) ))))) ;) (if_statement "if (1 < (uint)uVar38) goto LAB_001c96c4;" if (parenthesized_expression "(1 < (uint)uVar38)" ( (binary_expression "1 < (uint)uVar38" number_literal < (cast_expression "(uint)uVar38" ( (type_descriptor "uint" type_identifier) ) identifier)) )) (goto_statement "goto LAB_001c96c4;" goto statement_identifier ;)) (expression_statement "uVar38 = (*pcVar25)(7);" (assignment_expression "uVar38 = (*pcVar25)(7)" identifier = (call_expression "(*pcVar25)(7)" (parenthesized_expression "(*pcVar25)" ( (pointer_expression "*pcVar25" * identifier) )) (argument_list "(7)" ( number_literal )))) ;) (if_statement "if ((int)((ulonglong)uVar38 >> 0x20) != 0) goto LAB_001c96c0;" if (parenthesized_expression "((int)((ulonglong)uVar38 >> 0x20) != 0)" ( (binary_expression "(int)((ulonglong)uVar38 >> 0x20) != 0" (cast_expression "(int)((ulonglong)uVar38 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)uVar38 >> 0x20)" ( (binary_expression "(ulonglong)uVar38 >> 0x20" (cast_expression "(ulonglong)uVar38" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) ))) != number_literal) )) (goto_statement "goto LAB_001c96c0;" goto statement_identifier ;)) (expression_statement "pcVar25 = *(code **)(pcStack_208 + -0x7774);" (assignment_expression "pcVar25 = *(code **)(pcStack_208 + -0x7774)" identifier = (pointer_expression "*(code **)(pcStack_208 + -0x7774)" * (cast_expression "(code **)(pcStack_208 + -0x7774)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_208 + -0x7774)" ( (binary_expression "pcStack_208 + -0x7774" identifier + number_literal) ))))) ;) (if_statement "if (1 < (uint)uVar38) goto LAB_001c96c4;" if (parenthesized_expression "(1 < (uint)uVar38)" ( (binary_expression "1 < (uint)uVar38" number_literal < (cast_expression "(uint)uVar38" ( (type_descriptor "uint" type_identifier) ) identifier)) )) (goto_statement "goto LAB_001c96c4;" goto statement_identifier ;)) (expression_statement "iVar2 = 1;" (assignment_expression "iVar2 = 1" identifier = number_literal) ;) }) (else_clause "else {\nLAB_001c96c0:\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\nLAB_001c96c4:\n              uVar38 = (*pcVar25)(7);\n              if (((int)((ulonglong)uVar38 >> 0x20) == 0) &&\n                 (pcVar25 = *(code **)(pcStack_208 + -0x7774), (uint)uVar38 < 2)) goto LAB_001c98ac;\n              iVar2 = 2;\n            }" else (compound_statement "{\nLAB_001c96c0:\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);\nLAB_001c96c4:\n              uVar38 = (*pcVar25)(7);\n              if (((int)((ulonglong)uVar38 >> 0x20) == 0) &&\n                 (pcVar25 = *(code **)(pcStack_208 + -0x7774), (uint)uVar38 < 2)) goto LAB_001c98ac;\n              iVar2 = 2;\n            }" { (labeled_statement "LAB_001c96c0:\n              pcVar25 = *(code **)(pcStack_208 + -0x7774);" statement_identifier : (expression_statement "pcVar25 = *(code **)(pcStack_208 + -0x7774);" (assignment_expression "pcVar25 = *(code **)(pcStack_208 + -0x7774)" identifier = (pointer_expression "*(code **)(pcStack_208 + -0x7774)" * (cast_expression "(code **)(pcStack_208 + -0x7774)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_208 + -0x7774)" ( (binary_expression "pcStack_208 + -0x7774" identifier + number_literal) ))))) ;)) (labeled_statement "LAB_001c96c4:\n              uVar38 = (*pcVar25)(7);" statement_identifier : (expression_statement "uVar38 = (*pcVar25)(7);" (assignment_expression "uVar38 = (*pcVar25)(7)" identifier = (call_expression "(*pcVar25)(7)" (parenthesized_expression "(*pcVar25)" ( (pointer_expression "*pcVar25" * identifier) )) (argument_list "(7)" ( number_literal )))) ;)) (if_statement "if (((int)((ulonglong)uVar38 >> 0x20) == 0) &&\n                 (pcVar25 = *(code **)(pcStack_208 + -0x7774), (uint)uVar38 < 2)) goto LAB_001c98ac;" if (parenthesized_expression "(((int)((ulonglong)uVar38 >> 0x20) == 0) &&\n                 (pcVar25 = *(code **)(pcStack_208 + -0x7774), (uint)uVar38 < 2))" ( (binary_expression "((int)((ulonglong)uVar38 >> 0x20) == 0) &&\n                 (pcVar25 = *(code **)(pcStack_208 + -0x7774), (uint)uVar38 < 2)" (parenthesized_expression "((int)((ulonglong)uVar38 >> 0x20) == 0)" ( (binary_expression "(int)((ulonglong)uVar38 >> 0x20) == 0" (cast_expression "(int)((ulonglong)uVar38 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)uVar38 >> 0x20)" ( (binary_expression "(ulonglong)uVar38 >> 0x20" (cast_expression "(ulonglong)uVar38" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) ))) == number_literal) )) && (parenthesized_expression "(pcVar25 = *(code **)(pcStack_208 + -0x7774), (uint)uVar38 < 2)" ( (comma_expression "pcVar25 = *(code **)(pcStack_208 + -0x7774), (uint)uVar38 < 2" (assignment_expression "pcVar25 = *(code **)(pcStack_208 + -0x7774)" identifier = (pointer_expression "*(code **)(pcStack_208 + -0x7774)" * (cast_expression "(code **)(pcStack_208 + -0x7774)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_208 + -0x7774)" ( (binary_expression "pcStack_208 + -0x7774" identifier + number_literal) ))))) , (binary_expression "(uint)uVar38 < 2" (cast_expression "(uint)uVar38" ( (type_descriptor "uint" type_identifier) ) identifier) < number_literal)) ))) )) (goto_statement "goto LAB_001c98ac;" goto statement_identifier ;)) (expression_statement "iVar2 = 2;" (assignment_expression "iVar2 = 2" identifier = number_literal) ;) }))) (labeled_statement "LAB_001c96d8:\n            iVar10 = *(int *)(pcStack_208 + -0x7f10);" statement_identifier : (expression_statement "iVar10 = *(int *)(pcStack_208 + -0x7f10);" (assignment_expression "iVar10 = *(int *)(pcStack_208 + -0x7f10)" identifier = (pointer_expression "*(int *)(pcStack_208 + -0x7f10)" * (cast_expression "(int *)(pcStack_208 + -0x7f10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_208 + -0x7f10)" ( (binary_expression "pcStack_208 + -0x7f10" identifier + number_literal) ))))) ;)) }))) (expression_statement "puStack_1dc = &uStack_1f8;" (assignment_expression "puStack_1dc = &uStack_1f8" identifier = (pointer_expression "&uStack_1f8" & identifier)) ;) (expression_statement "pIStack_1d8 = (Image *)0x1;" (assignment_expression "pIStack_1d8 = (Image *)0x1" identifier = (cast_expression "(Image *)0x1" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pIStack_1f0 = pIVar15;" (assignment_expression "pIStack_1f0 = pIVar15" identifier = identifier) ;) (expression_statement "pIStack_1ec = pIVar11;" (assignment_expression "pIStack_1ec = pIVar11" identifier = identifier) ;) (expression_statement "puStack_1e8 = unaff_s5;" (assignment_expression "puStack_1e8 = unaff_s5" identifier = identifier) ;) (expression_statement "piStack_1e4 = piVar19;" (assignment_expression "piStack_1e4 = piVar19" identifier = identifier) ;) (expression_statement "pIStack_1e0 = pIVar12;" (assignment_expression "pIStack_1e0 = pIVar12" identifier = identifier) ;) (expression_statement "(**(code **)(pcStack_208 + -0x7718))(iVar10 + 0x56bc,&pIStack_1f0,iVar2,0);" (call_expression "(**(code **)(pcStack_208 + -0x7718))(iVar10 + 0x56bc,&pIStack_1f0,iVar2,0)" (parenthesized_expression "(**(code **)(pcStack_208 + -0x7718))" ( (pointer_expression "**(code **)(pcStack_208 + -0x7718)" * (pointer_expression "*(code **)(pcStack_208 + -0x7718)" * (cast_expression "(code **)(pcStack_208 + -0x7718)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_208 + -0x7718)" ( (binary_expression "pcStack_208 + -0x7718" identifier + number_literal) ))))) )) (argument_list "(iVar10 + 0x56bc,&pIStack_1f0,iVar2,0)" ( (binary_expression "iVar10 + 0x56bc" identifier + number_literal) , (pointer_expression "&pIStack_1f0" & identifier) , identifier , number_literal ))) ;) (expression_statement "pIVar11 = pIStack_1d8;" (assignment_expression "pIVar11 = pIStack_1d8" identifier = identifier) ;) (expression_statement "(**(code **)(pcStack_208 + -0x79bc))(unaff_s5);" (call_expression "(**(code **)(pcStack_208 + -0x79bc))(unaff_s5)" (parenthesized_expression "(**(code **)(pcStack_208 + -0x79bc))" ( (pointer_expression "**(code **)(pcStack_208 + -0x79bc)" * (pointer_expression "*(code **)(pcStack_208 + -0x79bc)" * (cast_expression "(code **)(pcStack_208 + -0x79bc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_208 + -0x79bc)" ( (binary_expression "pcStack_208 + -0x79bc" identifier + number_literal) ))))) )) (argument_list "(unaff_s5)" ( identifier ))) ;) (expression_statement "(**(code **)(pcStack_208 + -0x79bc))(piVar19);" (call_expression "(**(code **)(pcStack_208 + -0x79bc))(piVar19)" (parenthesized_expression "(**(code **)(pcStack_208 + -0x79bc))" ( (pointer_expression "**(code **)(pcStack_208 + -0x79bc)" * (pointer_expression "*(code **)(pcStack_208 + -0x79bc)" * (cast_expression "(code **)(pcStack_208 + -0x79bc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_208 + -0x79bc)" ( (binary_expression "pcStack_208 + -0x79bc" identifier + number_literal) ))))) )) (argument_list "(piVar19)" ( identifier ))) ;) (expression_statement "pIVar12->type = pIVar15->type;" (assignment_expression "pIVar12->type = pIVar15->type" (field_expression "pIVar12->type" identifier -> field_identifier) = (field_expression "pIVar15->type" identifier -> field_identifier)) ;) (if_statement "if (unaff_s2 != (ExceptionInfo *)0x0) {\n            unaff_s6 = (Image *)((int)unaff_s2 + (-(int)unaff_s6 - pIVar12->rows));\n          }" if (parenthesized_expression "(unaff_s2 != (ExceptionInfo *)0x0)" ( (binary_expression "unaff_s2 != (ExceptionInfo *)0x0" identifier != (cast_expression "(ExceptionInfo *)0x0" ( (type_descriptor "ExceptionInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n            unaff_s6 = (Image *)((int)unaff_s2 + (-(int)unaff_s6 - pIVar12->rows));\n          }" { (expression_statement "unaff_s6 = (Image *)((int)unaff_s2 + (-(int)unaff_s6 - pIVar12->rows));" (assignment_expression "unaff_s6 = (Image *)((int)unaff_s2 + (-(int)unaff_s6 - pIVar12->rows))" identifier = (cast_expression "(Image *)((int)unaff_s2 + (-(int)unaff_s6 - pIVar12->rows))" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s2 + (-(int)unaff_s6 - pIVar12->rows))" ( (binary_expression "(int)unaff_s2 + (-(int)unaff_s6 - pIVar12->rows)" (cast_expression "(int)unaff_s2" ( (type_descriptor "int" primitive_type) ) identifier) + (parenthesized_expression "(-(int)unaff_s6 - pIVar12->rows)" ( (binary_expression "-(int)unaff_s6 - pIVar12->rows" (unary_expression "-(int)unaff_s6" - (cast_expression "(int)unaff_s6" ( (type_descriptor "int" primitive_type) ) identifier)) - (field_expression "pIVar12->rows" identifier -> field_identifier)) ))) )))) ;) })) (expression_statement "(pIVar12->page).width = (size_t)unaff_s8;" (assignment_expression "(pIVar12->page).width = (size_t)unaff_s8" (field_expression "(pIVar12->page).width" (parenthesized_expression "(pIVar12->page)" ( (field_expression "pIVar12->page" identifier -> field_identifier) )) . field_identifier) = (cast_expression "(size_t)unaff_s8" ( (type_descriptor "size_t" primitive_type) ) identifier)) ;) (expression_statement "(pIVar12->page).height = (size_t)unaff_s2;" (assignment_expression "(pIVar12->page).height = (size_t)unaff_s2" (field_expression "(pIVar12->page).height" (parenthesized_expression "(pIVar12->page)" ( (field_expression "pIVar12->page" identifier -> field_identifier) )) . field_identifier) = (cast_expression "(size_t)unaff_s2" ( (type_descriptor "size_t" primitive_type) ) identifier)) ;) (expression_statement "(pIVar12->page).x = sStack_1fc;" (assignment_expression "(pIVar12->page).x = sStack_1fc" (field_expression "(pIVar12->page).x" (parenthesized_expression "(pIVar12->page)" ( (field_expression "pIVar12->page" identifier -> field_identifier) )) . field_identifier) = identifier) ;) (expression_statement "(pIVar12->page).y = (ssize_t)unaff_s6;" (assignment_expression "(pIVar12->page).y = (ssize_t)unaff_s6" (field_expression "(pIVar12->page).y" (parenthesized_expression "(pIVar12->page)" ( (field_expression "pIVar12->page" identifier -> field_identifier) )) . field_identifier) = (cast_expression "(ssize_t)unaff_s6" ( (type_descriptor "ssize_t" primitive_type) ) identifier)) ;) (if_statement "if (pIVar11 == (Image *)0x0) {\n            pIVar12 = (Image *)(**(code **)(pcStack_208 + -0x7964))(pIVar12);\n          }" if (parenthesized_expression "(pIVar11 == (Image *)0x0)" ( (binary_expression "pIVar11 == (Image *)0x0" identifier == (cast_expression "(Image *)0x0" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n            pIVar12 = (Image *)(**(code **)(pcStack_208 + -0x7964))(pIVar12);\n          }" { (expression_statement "pIVar12 = (Image *)(**(code **)(pcStack_208 + -0x7964))(pIVar12);" (assignment_expression "pIVar12 = (Image *)(**(code **)(pcStack_208 + -0x7964))(pIVar12)" identifier = (cast_expression "(Image *)(**(code **)(pcStack_208 + -0x7964))(pIVar12)" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(pcStack_208 + -0x7964))(pIVar12)" (parenthesized_expression "(**(code **)(pcStack_208 + -0x7964))" ( (pointer_expression "**(code **)(pcStack_208 + -0x7964)" * (pointer_expression "*(code **)(pcStack_208 + -0x7964)" * (cast_expression "(code **)(pcStack_208 + -0x7964)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_208 + -0x7964)" ( (binary_expression "pcStack_208 + -0x7964" identifier + number_literal) ))))) )) (argument_list "(pIVar12)" ( identifier ))))) ;) })) })) (expression_statement "pcVar25 = pcStack_208;" (assignment_expression "pcVar25 = pcStack_208" identifier = identifier) ;) (if_statement "if (iStack_1d4 == *piVar17) {\n          return pIVar12;\n        }" if (parenthesized_expression "(iStack_1d4 == *piVar17)" ( (binary_expression "iStack_1d4 == *piVar17" identifier == (pointer_expression "*piVar17" * identifier)) )) (compound_statement "{\n          return pIVar12;\n        }" { (return_statement "return pIVar12;" return identifier ;) })) (goto_statement "goto LAB_001c9968;" goto statement_identifier ;) })) (goto_statement "goto LAB_001c9974;" goto statement_identifier ;) })) }))) (expression_statement "pcVar22 = *(code **)(pcVar25 + -0x72a8);" (assignment_expression "pcVar22 = *(code **)(pcVar25 + -0x72a8)" identifier = (pointer_expression "*(code **)(pcVar25 + -0x72a8)" * (cast_expression "(code **)(pcVar25 + -0x72a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar25 + -0x72a8)" ( (binary_expression "pcVar25 + -0x72a8" identifier + number_literal) ))))) ;) (expression_statement "iVar10 = *(int *)(pcVar25 + -0x7fc4) + -0x288c;" (assignment_expression "iVar10 = *(int *)(pcVar25 + -0x7fc4) + -0x288c" identifier = (binary_expression "*(int *)(pcVar25 + -0x7fc4) + -0x288c" (pointer_expression "*(int *)(pcVar25 + -0x7fc4)" * (cast_expression "(int *)(pcVar25 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar25 + -0x7fc4)" ( (binary_expression "pcVar25 + -0x7fc4" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "pcVar26 = FlopImage;" (assignment_expression "pcVar26 = FlopImage" identifier = identifier) ;) (expression_statement "iVar2 = *(int *)(pcVar25 + -0x7fc8) + -0x3784;" (assignment_expression "iVar2 = *(int *)(pcVar25 + -0x7fc8) + -0x3784" identifier = (binary_expression "*(int *)(pcVar25 + -0x7fc8) + -0x3784" (pointer_expression "*(int *)(pcVar25 + -0x7fc8)" * (cast_expression "(int *)(pcVar25 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar25 + -0x7fc8)" ( (binary_expression "pcVar25 + -0x7fc8" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "(*pcVar22)(iVar2,iVar10,0x4bd,*(int *)(pcVar25 + -0x7fc4) + -0x26e0);" (call_expression "(*pcVar22)(iVar2,iVar10,0x4bd,*(int *)(pcVar25 + -0x7fc4) + -0x26e0)" (parenthesized_expression "(*pcVar22)" ( (pointer_expression "*pcVar22" * identifier) )) (argument_list "(iVar2,iVar10,0x4bd,*(int *)(pcVar25 + -0x7fc4) + -0x26e0)" ( identifier , identifier , number_literal , (binary_expression "*(int *)(pcVar25 + -0x7fc4) + -0x26e0" (pointer_expression "*(int *)(pcVar25 + -0x7fc4)" * (cast_expression "(int *)(pcVar25 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar25 + -0x7fc4)" ( (binary_expression "pcVar25 + -0x7fc4" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "piVar18 = *(int **)(pcVar22 + 0x1df874);" (assignment_expression "piVar18 = *(int **)(pcVar22 + 0x1df874)" identifier = (pointer_expression "*(int **)(pcVar22 + 0x1df874)" * (cast_expression "(int **)(pcVar22 + 0x1df874)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar22 + 0x1df874)" ( (binary_expression "pcVar22 + 0x1df874" identifier + number_literal) ))))) ;) (expression_statement "iStack_24c = *piVar18;" (assignment_expression "iStack_24c = *piVar18" identifier = (pointer_expression "*piVar18" * identifier)) ;) (expression_statement "pIStack_248 = pIVar12;" (assignment_expression "pIStack_248 = pIVar12" identifier = identifier) ;) (expression_statement "pEStack_240 = unaff_s2;" (assignment_expression "pEStack_240 = unaff_s2" identifier = identifier) ;) (expression_statement "piStack_23c = piVar17;" (assignment_expression "piStack_23c = piVar17" identifier = identifier) ;) (expression_statement "piStack_238 = piVar19;" (assignment_expression "piStack_238 = piVar19" identifier = identifier) ;) (expression_statement "puStack_234 = unaff_s5;" (assignment_expression "puStack_234 = unaff_s5" identifier = identifier) ;) (expression_statement "pIStack_230 = unaff_s6;" (assignment_expression "pIStack_230 = unaff_s6" identifier = identifier) ;) (expression_statement "pIStack_22c = pIVar15;" (assignment_expression "pIStack_22c = pIVar15" identifier = identifier) ;) (expression_statement "ppIStack_228 = unaff_s8;" (assignment_expression "ppIStack_228 = unaff_s8" identifier = identifier) ;) (expression_statement "pcStack_224 = pcVar26;" (assignment_expression "pcStack_224 = pcVar26" identifier = identifier) ;) (if_statement "if (iVar2 == 0) {\n    pIVar11 = (Image *)(**(code **)(pcVar22 + 0x1dfc4c))\n                                 (*(int *)(pcVar22 + 0x1def2c) + -0x37b0,\n                                  *(int *)(pcVar22 + 0x1def30) + -0x288c,0x543,\n                                  *(int *)(pcVar22 + 0x1def30) + -0x26f8);\n    return pIVar11;\n  }" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (compound_statement "{\n    pIVar11 = (Image *)(**(code **)(pcVar22 + 0x1dfc4c))\n                                 (*(int *)(pcVar22 + 0x1def2c) + -0x37b0,\n                                  *(int *)(pcVar22 + 0x1def30) + -0x288c,0x543,\n                                  *(int *)(pcVar22 + 0x1def30) + -0x26f8);\n    return pIVar11;\n  }" { (expression_statement "pIVar11 = (Image *)(**(code **)(pcVar22 + 0x1dfc4c))\n                                 (*(int *)(pcVar22 + 0x1def2c) + -0x37b0,\n                                  *(int *)(pcVar22 + 0x1def30) + -0x288c,0x543,\n                                  *(int *)(pcVar22 + 0x1def30) + -0x26f8);" (assignment_expression "pIVar11 = (Image *)(**(code **)(pcVar22 + 0x1dfc4c))\n                                 (*(int *)(pcVar22 + 0x1def2c) + -0x37b0,\n                                  *(int *)(pcVar22 + 0x1def30) + -0x288c,0x543,\n                                  *(int *)(pcVar22 + 0x1def30) + -0x26f8)" identifier = (cast_expression "(Image *)(**(code **)(pcVar22 + 0x1dfc4c))\n                                 (*(int *)(pcVar22 + 0x1def2c) + -0x37b0,\n                                  *(int *)(pcVar22 + 0x1def30) + -0x288c,0x543,\n                                  *(int *)(pcVar22 + 0x1def30) + -0x26f8)" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(pcVar22 + 0x1dfc4c))\n                                 (*(int *)(pcVar22 + 0x1def2c) + -0x37b0,\n                                  *(int *)(pcVar22 + 0x1def30) + -0x288c,0x543,\n                                  *(int *)(pcVar22 + 0x1def30) + -0x26f8)" (parenthesized_expression "(**(code **)(pcVar22 + 0x1dfc4c))" ( (pointer_expression "**(code **)(pcVar22 + 0x1dfc4c)" * (pointer_expression "*(code **)(pcVar22 + 0x1dfc4c)" * (cast_expression "(code **)(pcVar22 + 0x1dfc4c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar22 + 0x1dfc4c)" ( (binary_expression "pcVar22 + 0x1dfc4c" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar22 + 0x1def2c) + -0x37b0,\n                                  *(int *)(pcVar22 + 0x1def30) + -0x288c,0x543,\n                                  *(int *)(pcVar22 + 0x1def30) + -0x26f8)" ( (binary_expression "*(int *)(pcVar22 + 0x1def2c) + -0x37b0" (pointer_expression "*(int *)(pcVar22 + 0x1def2c)" * (cast_expression "(int *)(pcVar22 + 0x1def2c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + 0x1def2c)" ( (binary_expression "pcVar22 + 0x1def2c" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar22 + 0x1def30) + -0x288c" (pointer_expression "*(int *)(pcVar22 + 0x1def30)" * (cast_expression "(int *)(pcVar22 + 0x1def30)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + 0x1def30)" ( (binary_expression "pcVar22 + 0x1def30" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar22 + 0x1def30) + -0x26f8" (pointer_expression "*(int *)(pcVar22 + 0x1def30)" * (cast_expression "(int *)(pcVar22 + 0x1def30)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + 0x1def30)" ( (binary_expression "pcVar22 + 0x1def30" identifier + number_literal) )))) + number_literal) ))))) ;) (return_statement "return pIVar11;" return identifier ;) })) (if_statement "if (*(int *)(iVar2 + 0x336c) != -0x54535255) {\n    pIVar11 = (Image *)(**(code **)(pcVar22 + 0x1dfc4c))\n                                 (*(int *)(pcVar22 + 0x1def2c) + -0x3784,\n                                  *(int *)(pcVar22 + 0x1def30) + -0x288c,0x544,\n                                  *(int *)(pcVar22 + 0x1def30) + -0x26f8);\n    return pIVar11;\n  }" if (parenthesized_expression "(*(int *)(iVar2 + 0x336c) != -0x54535255)" ( (binary_expression "*(int *)(iVar2 + 0x336c) != -0x54535255" (pointer_expression "*(int *)(iVar2 + 0x336c)" * (cast_expression "(int *)(iVar2 + 0x336c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x336c)" ( (binary_expression "iVar2 + 0x336c" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n    pIVar11 = (Image *)(**(code **)(pcVar22 + 0x1dfc4c))\n                                 (*(int *)(pcVar22 + 0x1def2c) + -0x3784,\n                                  *(int *)(pcVar22 + 0x1def30) + -0x288c,0x544,\n                                  *(int *)(pcVar22 + 0x1def30) + -0x26f8);\n    return pIVar11;\n  }" { (expression_statement "pIVar11 = (Image *)(**(code **)(pcVar22 + 0x1dfc4c))\n                                 (*(int *)(pcVar22 + 0x1def2c) + -0x3784,\n                                  *(int *)(pcVar22 + 0x1def30) + -0x288c,0x544,\n                                  *(int *)(pcVar22 + 0x1def30) + -0x26f8);" (assignment_expression "pIVar11 = (Image *)(**(code **)(pcVar22 + 0x1dfc4c))\n                                 (*(int *)(pcVar22 + 0x1def2c) + -0x3784,\n                                  *(int *)(pcVar22 + 0x1def30) + -0x288c,0x544,\n                                  *(int *)(pcVar22 + 0x1def30) + -0x26f8)" identifier = (cast_expression "(Image *)(**(code **)(pcVar22 + 0x1dfc4c))\n                                 (*(int *)(pcVar22 + 0x1def2c) + -0x3784,\n                                  *(int *)(pcVar22 + 0x1def30) + -0x288c,0x544,\n                                  *(int *)(pcVar22 + 0x1def30) + -0x26f8)" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(pcVar22 + 0x1dfc4c))\n                                 (*(int *)(pcVar22 + 0x1def2c) + -0x3784,\n                                  *(int *)(pcVar22 + 0x1def30) + -0x288c,0x544,\n                                  *(int *)(pcVar22 + 0x1def30) + -0x26f8)" (parenthesized_expression "(**(code **)(pcVar22 + 0x1dfc4c))" ( (pointer_expression "**(code **)(pcVar22 + 0x1dfc4c)" * (pointer_expression "*(code **)(pcVar22 + 0x1dfc4c)" * (cast_expression "(code **)(pcVar22 + 0x1dfc4c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar22 + 0x1dfc4c)" ( (binary_expression "pcVar22 + 0x1dfc4c" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar22 + 0x1def2c) + -0x3784,\n                                  *(int *)(pcVar22 + 0x1def30) + -0x288c,0x544,\n                                  *(int *)(pcVar22 + 0x1def30) + -0x26f8)" ( (binary_expression "*(int *)(pcVar22 + 0x1def2c) + -0x3784" (pointer_expression "*(int *)(pcVar22 + 0x1def2c)" * (cast_expression "(int *)(pcVar22 + 0x1def2c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + 0x1def2c)" ( (binary_expression "pcVar22 + 0x1def2c" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar22 + 0x1def30) + -0x288c" (pointer_expression "*(int *)(pcVar22 + 0x1def30)" * (cast_expression "(int *)(pcVar22 + 0x1def30)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + 0x1def30)" ( (binary_expression "pcVar22 + 0x1def30" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar22 + 0x1def30) + -0x26f8" (pointer_expression "*(int *)(pcVar22 + 0x1def30)" * (cast_expression "(int *)(pcVar22 + 0x1def30)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + 0x1def30)" ( (binary_expression "pcVar22 + 0x1def30" identifier + number_literal) )))) + number_literal) ))))) ;) (return_statement "return pIVar11;" return identifier ;) })) (if_statement "if (*(int *)(iVar2 + 0x3350) != 0) {\n    (**(code **)(pcVar22 + 0x1df824))\n              (0x8000,*(int *)(pcVar22 + 0x1def30) + -0x288c,*(int *)(pcVar22 + 0x1def30) + -0x2704,\n               0x546,*(int *)(pcVar22 + 0x1def28) + -0x62ac,iVar2 + 0x340);\n  }" if (parenthesized_expression "(*(int *)(iVar2 + 0x3350) != 0)" ( (binary_expression "*(int *)(iVar2 + 0x3350) != 0" (pointer_expression "*(int *)(iVar2 + 0x3350)" * (cast_expression "(int *)(iVar2 + 0x3350)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x3350)" ( (binary_expression "iVar2 + 0x3350" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n    (**(code **)(pcVar22 + 0x1df824))\n              (0x8000,*(int *)(pcVar22 + 0x1def30) + -0x288c,*(int *)(pcVar22 + 0x1def30) + -0x2704,\n               0x546,*(int *)(pcVar22 + 0x1def28) + -0x62ac,iVar2 + 0x340);\n  }" { (expression_statement "(**(code **)(pcVar22 + 0x1df824))\n              (0x8000,*(int *)(pcVar22 + 0x1def30) + -0x288c,*(int *)(pcVar22 + 0x1def30) + -0x2704,\n               0x546,*(int *)(pcVar22 + 0x1def28) + -0x62ac,iVar2 + 0x340);" (call_expression "(**(code **)(pcVar22 + 0x1df824))\n              (0x8000,*(int *)(pcVar22 + 0x1def30) + -0x288c,*(int *)(pcVar22 + 0x1def30) + -0x2704,\n               0x546,*(int *)(pcVar22 + 0x1def28) + -0x62ac,iVar2 + 0x340)" (parenthesized_expression "(**(code **)(pcVar22 + 0x1df824))" ( (pointer_expression "**(code **)(pcVar22 + 0x1df824)" * (pointer_expression "*(code **)(pcVar22 + 0x1df824)" * (cast_expression "(code **)(pcVar22 + 0x1df824)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar22 + 0x1df824)" ( (binary_expression "pcVar22 + 0x1df824" identifier + number_literal) ))))) )) (argument_list "(0x8000,*(int *)(pcVar22 + 0x1def30) + -0x288c,*(int *)(pcVar22 + 0x1def30) + -0x2704,\n               0x546,*(int *)(pcVar22 + 0x1def28) + -0x62ac,iVar2 + 0x340)" ( number_literal , (binary_expression "*(int *)(pcVar22 + 0x1def30) + -0x288c" (pointer_expression "*(int *)(pcVar22 + 0x1def30)" * (cast_expression "(int *)(pcVar22 + 0x1def30)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + 0x1def30)" ( (binary_expression "pcVar22 + 0x1def30" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar22 + 0x1def30) + -0x2704" (pointer_expression "*(int *)(pcVar22 + 0x1def30)" * (cast_expression "(int *)(pcVar22 + 0x1def30)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + 0x1def30)" ( (binary_expression "pcVar22 + 0x1def30" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar22 + 0x1def28) + -0x62ac" (pointer_expression "*(int *)(pcVar22 + 0x1def28)" * (cast_expression "(int *)(pcVar22 + 0x1def28)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + 0x1def28)" ( (binary_expression "pcVar22 + 0x1def28" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar2 + 0x340" identifier + number_literal) ))) ;) })) (if_statement "if (iVar10 == 0) {\n    pIVar11 = (Image *)(**(code **)(pcVar22 + 0x1dfc4c))\n                                 (*(int *)(pcVar22 + 0x1def24) + 0x1cac,\n                                  *(int *)(pcVar22 + 0x1def30) + -0x288c,0x547,\n                                  *(int *)(pcVar22 + 0x1def30) + -0x26f8);\n    return pIVar11;\n  }" if (parenthesized_expression "(iVar10 == 0)" ( (binary_expression "iVar10 == 0" identifier == number_literal) )) (compound_statement "{\n    pIVar11 = (Image *)(**(code **)(pcVar22 + 0x1dfc4c))\n                                 (*(int *)(pcVar22 + 0x1def24) + 0x1cac,\n                                  *(int *)(pcVar22 + 0x1def30) + -0x288c,0x547,\n                                  *(int *)(pcVar22 + 0x1def30) + -0x26f8);\n    return pIVar11;\n  }" { (expression_statement "pIVar11 = (Image *)(**(code **)(pcVar22 + 0x1dfc4c))\n                                 (*(int *)(pcVar22 + 0x1def24) + 0x1cac,\n                                  *(int *)(pcVar22 + 0x1def30) + -0x288c,0x547,\n                                  *(int *)(pcVar22 + 0x1def30) + -0x26f8);" (assignment_expression "pIVar11 = (Image *)(**(code **)(pcVar22 + 0x1dfc4c))\n                                 (*(int *)(pcVar22 + 0x1def24) + 0x1cac,\n                                  *(int *)(pcVar22 + 0x1def30) + -0x288c,0x547,\n                                  *(int *)(pcVar22 + 0x1def30) + -0x26f8)" identifier = (cast_expression "(Image *)(**(code **)(pcVar22 + 0x1dfc4c))\n                                 (*(int *)(pcVar22 + 0x1def24) + 0x1cac,\n                                  *(int *)(pcVar22 + 0x1def30) + -0x288c,0x547,\n                                  *(int *)(pcVar22 + 0x1def30) + -0x26f8)" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(pcVar22 + 0x1dfc4c))\n                                 (*(int *)(pcVar22 + 0x1def24) + 0x1cac,\n                                  *(int *)(pcVar22 + 0x1def30) + -0x288c,0x547,\n                                  *(int *)(pcVar22 + 0x1def30) + -0x26f8)" (parenthesized_expression "(**(code **)(pcVar22 + 0x1dfc4c))" ( (pointer_expression "**(code **)(pcVar22 + 0x1dfc4c)" * (pointer_expression "*(code **)(pcVar22 + 0x1dfc4c)" * (cast_expression "(code **)(pcVar22 + 0x1dfc4c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar22 + 0x1dfc4c)" ( (binary_expression "pcVar22 + 0x1dfc4c" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar22 + 0x1def24) + 0x1cac,\n                                  *(int *)(pcVar22 + 0x1def30) + -0x288c,0x547,\n                                  *(int *)(pcVar22 + 0x1def30) + -0x26f8)" ( (binary_expression "*(int *)(pcVar22 + 0x1def24) + 0x1cac" (pointer_expression "*(int *)(pcVar22 + 0x1def24)" * (cast_expression "(int *)(pcVar22 + 0x1def24)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + 0x1def24)" ( (binary_expression "pcVar22 + 0x1def24" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar22 + 0x1def30) + -0x288c" (pointer_expression "*(int *)(pcVar22 + 0x1def30)" * (cast_expression "(int *)(pcVar22 + 0x1def30)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + 0x1def30)" ( (binary_expression "pcVar22 + 0x1def30" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar22 + 0x1def30) + -0x26f8" (pointer_expression "*(int *)(pcVar22 + 0x1def30)" * (cast_expression "(int *)(pcVar22 + 0x1def30)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + 0x1def30)" ( (binary_expression "pcVar22 + 0x1def30" identifier + number_literal) )))) + number_literal) ))))) ;) (return_statement "return pIVar11;" return identifier ;) })) (if_statement "if (*(int *)(iVar10 + 0x1c) != -0x54535255) goto LAB_001c9db0;" if (parenthesized_expression "(*(int *)(iVar10 + 0x1c) != -0x54535255)" ( (binary_expression "*(int *)(iVar10 + 0x1c) != -0x54535255" (pointer_expression "*(int *)(iVar10 + 0x1c)" * (cast_expression "(int *)(iVar10 + 0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar10 + 0x1c)" ( (binary_expression "iVar10 + 0x1c" identifier + number_literal) )))) != number_literal) )) (goto_statement "goto LAB_001c9db0;" goto statement_identifier ;)) (expression_statement "pIVar11 = (Image *)(**(code **)(pcVar22 + 0x1dfe74))(iVar2,0,0,1,iVar10);" (assignment_expression "pIVar11 = (Image *)(**(code **)(pcVar22 + 0x1dfe74))(iVar2,0,0,1,iVar10)" identifier = (cast_expression "(Image *)(**(code **)(pcVar22 + 0x1dfe74))(iVar2,0,0,1,iVar10)" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(pcVar22 + 0x1dfe74))(iVar2,0,0,1,iVar10)" (parenthesized_expression "(**(code **)(pcVar22 + 0x1dfe74))" ( (pointer_expression "**(code **)(pcVar22 + 0x1dfe74)" * (pointer_expression "*(code **)(pcVar22 + 0x1dfe74)" * (cast_expression "(code **)(pcVar22 + 0x1dfe74)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar22 + 0x1dfe74)" ( (binary_expression "pcVar22 + 0x1dfe74" identifier + number_literal) ))))) )) (argument_list "(iVar2,0,0,1,iVar10)" ( identifier , number_literal , number_literal , number_literal , identifier ))))) ;) (if_statement "if (pIVar11 != (Image *)0x0) {\n    sVar5 = *(ssize_t *)(iVar2 + 0x234);\n    sVar9 = *(size_t *)(iVar2 + 0x228);\n    sVar24 = *(size_t *)(iVar2 + 0x22c);\n    sVar20 = *(int *)(iVar2 + 0x230);\n    uStack_26c = 0;\n    uStack_270 = 0;\n    uVar6 = (**(code **)(pcVar22 + 0x1dfd98))(iVar2,iVar10);\n    uVar7 = (**(code **)(pcVar22 + 0x1df518))(pIVar11,iVar10);\n    iVar4 = (**(code **)(pcVar22 + 0x1dfaf8))(iVar2);\n    if (((iVar4 == 4) || (iVar4 = (**(code **)(pcVar22 + 0x1dfaf8))(iVar2), iVar4 == 3)) &&\n       ((iVar4 = (**(code **)(pcVar22 + 0x1dfaf8))(pIVar11), iVar4 == 4 ||\n        (iVar4 = (**(code **)(pcVar22 + 0x1dfaf8))(pIVar11), iVar4 == 3)))) {\n      (**(code **)(pcVar22 + 0x1df780))(7);\n      sVar8 = pIVar11->rows;\n      if ((int)sVar8 < 0) {\n        pcVar25 = *(code **)(pcVar22 + 0x1df780);\n        if (extraout_v1_07 < (int)(sVar8 + 0x3f) >> 6) goto LAB_001c9d10;\nLAB_001c9c58:\n        bVar1 = (int)sVar8 < 0x80;\n      }\n      else {\n        pcVar25 = *(code **)(pcVar22 + 0x1df780);\n        if ((int)sVar8 >> 6 <= extraout_v1_07) goto LAB_001c9c58;\nLAB_001c9d10:\n        (*pcVar25)(7);\n        bVar1 = extraout_v1_09 < 2;\n      }\n      iVar4 = 1;\n      if ((bool)(bVar1 ^ 1)) {\n        (**(code **)(pcVar22 + 0x1df780))(7);\n        sVar8 = pIVar11->rows;\n        if ((int)sVar8 < 0) {\n          sVar8 = sVar8 + 0x3f;\n        }\n        iVar4 = (int)sVar8 >> 6;\n        pcVar25 = *(code **)(pcVar22 + 0x1df780);\n        if (extraout_v1_10 < iVar4) {\nLAB_001c9ce8:\n          (*pcVar25)(7);\n          iVar4 = extraout_v1_08;\n        }\n        goto LAB_001c9b14;\n      }\n      iVar13 = *(int *)(pcVar22 + 0x1defe4);\n    }\n    else {\n      uVar38 = (**(code **)(pcVar22 + 0x1df780))(7);\n      if ((int)((ulonglong)uVar38 >> 0x20) == 0) {\n        pcVar25 = *(code **)(pcVar22 + 0x1df780);\n        if (1 < (uint)uVar38) goto LAB_001c9b00;\n        uVar38 = (*pcVar25)(7);\n        if ((int)((ulonglong)uVar38 >> 0x20) != 0) goto LAB_001c9afc;\n        pcVar25 = *(code **)(pcVar22 + 0x1df780);\n        if (1 < (uint)uVar38) goto LAB_001c9b00;\n        iVar4 = 1;\n      }\n      else {\nLAB_001c9afc:\n        pcVar25 = *(code **)(pcVar22 + 0x1df780);\nLAB_001c9b00:\n        uVar38 = (*pcVar25)(7);\n        if (((int)((ulonglong)uVar38 >> 0x20) == 0) &&\n           (pcVar25 = *(code **)(pcVar22 + 0x1df780), (uint)uVar38 < 2)) goto LAB_001c9ce8;\n        iVar4 = 2;\n      }\nLAB_001c9b14:\n      iVar13 = *(int *)(pcVar22 + 0x1defe4);\n    }\n    puStack_254 = &uStack_270;\n    iStack_250 = 1;\n    iStack_268 = iVar2;\n    iStack_264 = iVar10;\n    uStack_260 = uVar7;\n    uStack_25c = uVar6;\n    pIStack_258 = pIVar11;\n    (**(code **)(pcVar22 + 0x1df7dc))(iVar13 + 0x594c,&iStack_268,iVar4,0);\n    iVar10 = iStack_250;\n    (**(code **)(pcVar22 + 0x1df538))(uVar7);\n    (**(code **)(pcVar22 + 0x1df538))(uVar6);\n    pIVar11->type = *(ImageType *)(iVar2 + 0x2a0);\n    if (sVar9 != 0) {\n      sVar20 = (sVar9 - pIVar11->columns) - sVar20;\n    }\n    (pIVar11->page).width = sVar9;\n    (pIVar11->page).height = sVar24;\n    (pIVar11->page).x = sVar20;\n    (pIVar11->page).y = sVar5;\n    if (iVar10 == 0) {\n      pIVar11 = (Image *)(**(code **)(pcVar22 + 0x1df590))(pIVar11);\n    }\n  }" if (parenthesized_expression "(pIVar11 != (Image *)0x0)" ( (binary_expression "pIVar11 != (Image *)0x0" identifier != (cast_expression "(Image *)0x0" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    sVar5 = *(ssize_t *)(iVar2 + 0x234);\n    sVar9 = *(size_t *)(iVar2 + 0x228);\n    sVar24 = *(size_t *)(iVar2 + 0x22c);\n    sVar20 = *(int *)(iVar2 + 0x230);\n    uStack_26c = 0;\n    uStack_270 = 0;\n    uVar6 = (**(code **)(pcVar22 + 0x1dfd98))(iVar2,iVar10);\n    uVar7 = (**(code **)(pcVar22 + 0x1df518))(pIVar11,iVar10);\n    iVar4 = (**(code **)(pcVar22 + 0x1dfaf8))(iVar2);\n    if (((iVar4 == 4) || (iVar4 = (**(code **)(pcVar22 + 0x1dfaf8))(iVar2), iVar4 == 3)) &&\n       ((iVar4 = (**(code **)(pcVar22 + 0x1dfaf8))(pIVar11), iVar4 == 4 ||\n        (iVar4 = (**(code **)(pcVar22 + 0x1dfaf8))(pIVar11), iVar4 == 3)))) {\n      (**(code **)(pcVar22 + 0x1df780))(7);\n      sVar8 = pIVar11->rows;\n      if ((int)sVar8 < 0) {\n        pcVar25 = *(code **)(pcVar22 + 0x1df780);\n        if (extraout_v1_07 < (int)(sVar8 + 0x3f) >> 6) goto LAB_001c9d10;\nLAB_001c9c58:\n        bVar1 = (int)sVar8 < 0x80;\n      }\n      else {\n        pcVar25 = *(code **)(pcVar22 + 0x1df780);\n        if ((int)sVar8 >> 6 <= extraout_v1_07) goto LAB_001c9c58;\nLAB_001c9d10:\n        (*pcVar25)(7);\n        bVar1 = extraout_v1_09 < 2;\n      }\n      iVar4 = 1;\n      if ((bool)(bVar1 ^ 1)) {\n        (**(code **)(pcVar22 + 0x1df780))(7);\n        sVar8 = pIVar11->rows;\n        if ((int)sVar8 < 0) {\n          sVar8 = sVar8 + 0x3f;\n        }\n        iVar4 = (int)sVar8 >> 6;\n        pcVar25 = *(code **)(pcVar22 + 0x1df780);\n        if (extraout_v1_10 < iVar4) {\nLAB_001c9ce8:\n          (*pcVar25)(7);\n          iVar4 = extraout_v1_08;\n        }\n        goto LAB_001c9b14;\n      }\n      iVar13 = *(int *)(pcVar22 + 0x1defe4);\n    }\n    else {\n      uVar38 = (**(code **)(pcVar22 + 0x1df780))(7);\n      if ((int)((ulonglong)uVar38 >> 0x20) == 0) {\n        pcVar25 = *(code **)(pcVar22 + 0x1df780);\n        if (1 < (uint)uVar38) goto LAB_001c9b00;\n        uVar38 = (*pcVar25)(7);\n        if ((int)((ulonglong)uVar38 >> 0x20) != 0) goto LAB_001c9afc;\n        pcVar25 = *(code **)(pcVar22 + 0x1df780);\n        if (1 < (uint)uVar38) goto LAB_001c9b00;\n        iVar4 = 1;\n      }\n      else {\nLAB_001c9afc:\n        pcVar25 = *(code **)(pcVar22 + 0x1df780);\nLAB_001c9b00:\n        uVar38 = (*pcVar25)(7);\n        if (((int)((ulonglong)uVar38 >> 0x20) == 0) &&\n           (pcVar25 = *(code **)(pcVar22 + 0x1df780), (uint)uVar38 < 2)) goto LAB_001c9ce8;\n        iVar4 = 2;\n      }\nLAB_001c9b14:\n      iVar13 = *(int *)(pcVar22 + 0x1defe4);\n    }\n    puStack_254 = &uStack_270;\n    iStack_250 = 1;\n    iStack_268 = iVar2;\n    iStack_264 = iVar10;\n    uStack_260 = uVar7;\n    uStack_25c = uVar6;\n    pIStack_258 = pIVar11;\n    (**(code **)(pcVar22 + 0x1df7dc))(iVar13 + 0x594c,&iStack_268,iVar4,0);\n    iVar10 = iStack_250;\n    (**(code **)(pcVar22 + 0x1df538))(uVar7);\n    (**(code **)(pcVar22 + 0x1df538))(uVar6);\n    pIVar11->type = *(ImageType *)(iVar2 + 0x2a0);\n    if (sVar9 != 0) {\n      sVar20 = (sVar9 - pIVar11->columns) - sVar20;\n    }\n    (pIVar11->page).width = sVar9;\n    (pIVar11->page).height = sVar24;\n    (pIVar11->page).x = sVar20;\n    (pIVar11->page).y = sVar5;\n    if (iVar10 == 0) {\n      pIVar11 = (Image *)(**(code **)(pcVar22 + 0x1df590))(pIVar11);\n    }\n  }" { (expression_statement "sVar5 = *(ssize_t *)(iVar2 + 0x234);" (assignment_expression "sVar5 = *(ssize_t *)(iVar2 + 0x234)" identifier = (pointer_expression "*(ssize_t *)(iVar2 + 0x234)" * (cast_expression "(ssize_t *)(iVar2 + 0x234)" ( (type_descriptor "ssize_t *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x234)" ( (binary_expression "iVar2 + 0x234" identifier + number_literal) ))))) ;) (expression_statement "sVar9 = *(size_t *)(iVar2 + 0x228);" (assignment_expression "sVar9 = *(size_t *)(iVar2 + 0x228)" identifier = (pointer_expression "*(size_t *)(iVar2 + 0x228)" * (cast_expression "(size_t *)(iVar2 + 0x228)" ( (type_descriptor "size_t *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x228)" ( (binary_expression "iVar2 + 0x228" identifier + number_literal) ))))) ;) (expression_statement "sVar24 = *(size_t *)(iVar2 + 0x22c);" (assignment_expression "sVar24 = *(size_t *)(iVar2 + 0x22c)" identifier = (pointer_expression "*(size_t *)(iVar2 + 0x22c)" * (cast_expression "(size_t *)(iVar2 + 0x22c)" ( (type_descriptor "size_t *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x22c)" ( (binary_expression "iVar2 + 0x22c" identifier + number_literal) ))))) ;) (expression_statement "sVar20 = *(int *)(iVar2 + 0x230);" (assignment_expression "sVar20 = *(int *)(iVar2 + 0x230)" identifier = (pointer_expression "*(int *)(iVar2 + 0x230)" * (cast_expression "(int *)(iVar2 + 0x230)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x230)" ( (binary_expression "iVar2 + 0x230" identifier + number_literal) ))))) ;) (expression_statement "uStack_26c = 0;" (assignment_expression "uStack_26c = 0" identifier = number_literal) ;) (expression_statement "uStack_270 = 0;" (assignment_expression "uStack_270 = 0" identifier = number_literal) ;) (expression_statement "uVar6 = (**(code **)(pcVar22 + 0x1dfd98))(iVar2,iVar10);" (assignment_expression "uVar6 = (**(code **)(pcVar22 + 0x1dfd98))(iVar2,iVar10)" identifier = (call_expression "(**(code **)(pcVar22 + 0x1dfd98))(iVar2,iVar10)" (parenthesized_expression "(**(code **)(pcVar22 + 0x1dfd98))" ( (pointer_expression "**(code **)(pcVar22 + 0x1dfd98)" * (pointer_expression "*(code **)(pcVar22 + 0x1dfd98)" * (cast_expression "(code **)(pcVar22 + 0x1dfd98)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar22 + 0x1dfd98)" ( (binary_expression "pcVar22 + 0x1dfd98" identifier + number_literal) ))))) )) (argument_list "(iVar2,iVar10)" ( identifier , identifier )))) ;) (expression_statement "uVar7 = (**(code **)(pcVar22 + 0x1df518))(pIVar11,iVar10);" (assignment_expression "uVar7 = (**(code **)(pcVar22 + 0x1df518))(pIVar11,iVar10)" identifier = (call_expression "(**(code **)(pcVar22 + 0x1df518))(pIVar11,iVar10)" (parenthesized_expression "(**(code **)(pcVar22 + 0x1df518))" ( (pointer_expression "**(code **)(pcVar22 + 0x1df518)" * (pointer_expression "*(code **)(pcVar22 + 0x1df518)" * (cast_expression "(code **)(pcVar22 + 0x1df518)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar22 + 0x1df518)" ( (binary_expression "pcVar22 + 0x1df518" identifier + number_literal) ))))) )) (argument_list "(pIVar11,iVar10)" ( identifier , identifier )))) ;) (expression_statement "iVar4 = (**(code **)(pcVar22 + 0x1dfaf8))(iVar2);" (assignment_expression "iVar4 = (**(code **)(pcVar22 + 0x1dfaf8))(iVar2)" identifier = (call_expression "(**(code **)(pcVar22 + 0x1dfaf8))(iVar2)" (parenthesized_expression "(**(code **)(pcVar22 + 0x1dfaf8))" ( (pointer_expression "**(code **)(pcVar22 + 0x1dfaf8)" * (pointer_expression "*(code **)(pcVar22 + 0x1dfaf8)" * (cast_expression "(code **)(pcVar22 + 0x1dfaf8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar22 + 0x1dfaf8)" ( (binary_expression "pcVar22 + 0x1dfaf8" identifier + number_literal) ))))) )) (argument_list "(iVar2)" ( identifier )))) ;) (if_statement "if (((iVar4 == 4) || (iVar4 = (**(code **)(pcVar22 + 0x1dfaf8))(iVar2), iVar4 == 3)) &&\n       ((iVar4 = (**(code **)(pcVar22 + 0x1dfaf8))(pIVar11), iVar4 == 4 ||\n        (iVar4 = (**(code **)(pcVar22 + 0x1dfaf8))(pIVar11), iVar4 == 3)))) {\n      (**(code **)(pcVar22 + 0x1df780))(7);\n      sVar8 = pIVar11->rows;\n      if ((int)sVar8 < 0) {\n        pcVar25 = *(code **)(pcVar22 + 0x1df780);\n        if (extraout_v1_07 < (int)(sVar8 + 0x3f) >> 6) goto LAB_001c9d10;\nLAB_001c9c58:\n        bVar1 = (int)sVar8 < 0x80;\n      }\n      else {\n        pcVar25 = *(code **)(pcVar22 + 0x1df780);\n        if ((int)sVar8 >> 6 <= extraout_v1_07) goto LAB_001c9c58;\nLAB_001c9d10:\n        (*pcVar25)(7);\n        bVar1 = extraout_v1_09 < 2;\n      }\n      iVar4 = 1;\n      if ((bool)(bVar1 ^ 1)) {\n        (**(code **)(pcVar22 + 0x1df780))(7);\n        sVar8 = pIVar11->rows;\n        if ((int)sVar8 < 0) {\n          sVar8 = sVar8 + 0x3f;\n        }\n        iVar4 = (int)sVar8 >> 6;\n        pcVar25 = *(code **)(pcVar22 + 0x1df780);\n        if (extraout_v1_10 < iVar4) {\nLAB_001c9ce8:\n          (*pcVar25)(7);\n          iVar4 = extraout_v1_08;\n        }\n        goto LAB_001c9b14;\n      }\n      iVar13 = *(int *)(pcVar22 + 0x1defe4);\n    }\n    else {\n      uVar38 = (**(code **)(pcVar22 + 0x1df780))(7);\n      if ((int)((ulonglong)uVar38 >> 0x20) == 0) {\n        pcVar25 = *(code **)(pcVar22 + 0x1df780);\n        if (1 < (uint)uVar38) goto LAB_001c9b00;\n        uVar38 = (*pcVar25)(7);\n        if ((int)((ulonglong)uVar38 >> 0x20) != 0) goto LAB_001c9afc;\n        pcVar25 = *(code **)(pcVar22 + 0x1df780);\n        if (1 < (uint)uVar38) goto LAB_001c9b00;\n        iVar4 = 1;\n      }\n      else {\nLAB_001c9afc:\n        pcVar25 = *(code **)(pcVar22 + 0x1df780);\nLAB_001c9b00:\n        uVar38 = (*pcVar25)(7);\n        if (((int)((ulonglong)uVar38 >> 0x20) == 0) &&\n           (pcVar25 = *(code **)(pcVar22 + 0x1df780), (uint)uVar38 < 2)) goto LAB_001c9ce8;\n        iVar4 = 2;\n      }\nLAB_001c9b14:\n      iVar13 = *(int *)(pcVar22 + 0x1defe4);\n    }" if (parenthesized_expression "(((iVar4 == 4) || (iVar4 = (**(code **)(pcVar22 + 0x1dfaf8))(iVar2), iVar4 == 3)) &&\n       ((iVar4 = (**(code **)(pcVar22 + 0x1dfaf8))(pIVar11), iVar4 == 4 ||\n        (iVar4 = (**(code **)(pcVar22 + 0x1dfaf8))(pIVar11), iVar4 == 3))))" ( (binary_expression "((iVar4 == 4) || (iVar4 = (**(code **)(pcVar22 + 0x1dfaf8))(iVar2), iVar4 == 3)) &&\n       ((iVar4 = (**(code **)(pcVar22 + 0x1dfaf8))(pIVar11), iVar4 == 4 ||\n        (iVar4 = (**(code **)(pcVar22 + 0x1dfaf8))(pIVar11), iVar4 == 3)))" (parenthesized_expression "((iVar4 == 4) || (iVar4 = (**(code **)(pcVar22 + 0x1dfaf8))(iVar2), iVar4 == 3))" ( (binary_expression "(iVar4 == 4) || (iVar4 = (**(code **)(pcVar22 + 0x1dfaf8))(iVar2), iVar4 == 3)" (parenthesized_expression "(iVar4 == 4)" ( (binary_expression "iVar4 == 4" identifier == number_literal) )) || (parenthesized_expression "(iVar4 = (**(code **)(pcVar22 + 0x1dfaf8))(iVar2), iVar4 == 3)" ( (comma_expression "iVar4 = (**(code **)(pcVar22 + 0x1dfaf8))(iVar2), iVar4 == 3" (assignment_expression "iVar4 = (**(code **)(pcVar22 + 0x1dfaf8))(iVar2)" identifier = (call_expression "(**(code **)(pcVar22 + 0x1dfaf8))(iVar2)" (parenthesized_expression "(**(code **)(pcVar22 + 0x1dfaf8))" ( (pointer_expression "**(code **)(pcVar22 + 0x1dfaf8)" * (pointer_expression "*(code **)(pcVar22 + 0x1dfaf8)" * (cast_expression "(code **)(pcVar22 + 0x1dfaf8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar22 + 0x1dfaf8)" ( (binary_expression "pcVar22 + 0x1dfaf8" identifier + number_literal) ))))) )) (argument_list "(iVar2)" ( identifier )))) , (binary_expression "iVar4 == 3" identifier == number_literal)) ))) )) && (parenthesized_expression "((iVar4 = (**(code **)(pcVar22 + 0x1dfaf8))(pIVar11), iVar4 == 4 ||\n        (iVar4 = (**(code **)(pcVar22 + 0x1dfaf8))(pIVar11), iVar4 == 3)))" ( (parenthesized_expression "(iVar4 = (**(code **)(pcVar22 + 0x1dfaf8))(pIVar11), iVar4 == 4 ||\n        (iVar4 = (**(code **)(pcVar22 + 0x1dfaf8))(pIVar11), iVar4 == 3))" ( (comma_expression "iVar4 = (**(code **)(pcVar22 + 0x1dfaf8))(pIVar11), iVar4 == 4 ||\n        (iVar4 = (**(code **)(pcVar22 + 0x1dfaf8))(pIVar11), iVar4 == 3)" (assignment_expression "iVar4 = (**(code **)(pcVar22 + 0x1dfaf8))(pIVar11)" identifier = (call_expression "(**(code **)(pcVar22 + 0x1dfaf8))(pIVar11)" (parenthesized_expression "(**(code **)(pcVar22 + 0x1dfaf8))" ( (pointer_expression "**(code **)(pcVar22 + 0x1dfaf8)" * (pointer_expression "*(code **)(pcVar22 + 0x1dfaf8)" * (cast_expression "(code **)(pcVar22 + 0x1dfaf8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar22 + 0x1dfaf8)" ( (binary_expression "pcVar22 + 0x1dfaf8" identifier + number_literal) ))))) )) (argument_list "(pIVar11)" ( identifier )))) , (binary_expression "iVar4 == 4 ||\n        (iVar4 = (**(code **)(pcVar22 + 0x1dfaf8))(pIVar11), iVar4 == 3)" (binary_expression "iVar4 == 4" identifier == number_literal) || (parenthesized_expression "(iVar4 = (**(code **)(pcVar22 + 0x1dfaf8))(pIVar11), iVar4 == 3)" ( (comma_expression "iVar4 = (**(code **)(pcVar22 + 0x1dfaf8))(pIVar11), iVar4 == 3" (assignment_expression "iVar4 = (**(code **)(pcVar22 + 0x1dfaf8))(pIVar11)" identifier = (call_expression "(**(code **)(pcVar22 + 0x1dfaf8))(pIVar11)" (parenthesized_expression "(**(code **)(pcVar22 + 0x1dfaf8))" ( (pointer_expression "**(code **)(pcVar22 + 0x1dfaf8)" * (pointer_expression "*(code **)(pcVar22 + 0x1dfaf8)" * (cast_expression "(code **)(pcVar22 + 0x1dfaf8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar22 + 0x1dfaf8)" ( (binary_expression "pcVar22 + 0x1dfaf8" identifier + number_literal) ))))) )) (argument_list "(pIVar11)" ( identifier )))) , (binary_expression "iVar4 == 3" identifier == number_literal)) )))) )) ))) )) (compound_statement "{\n      (**(code **)(pcVar22 + 0x1df780))(7);\n      sVar8 = pIVar11->rows;\n      if ((int)sVar8 < 0) {\n        pcVar25 = *(code **)(pcVar22 + 0x1df780);\n        if (extraout_v1_07 < (int)(sVar8 + 0x3f) >> 6) goto LAB_001c9d10;\nLAB_001c9c58:\n        bVar1 = (int)sVar8 < 0x80;\n      }\n      else {\n        pcVar25 = *(code **)(pcVar22 + 0x1df780);\n        if ((int)sVar8 >> 6 <= extraout_v1_07) goto LAB_001c9c58;\nLAB_001c9d10:\n        (*pcVar25)(7);\n        bVar1 = extraout_v1_09 < 2;\n      }\n      iVar4 = 1;\n      if ((bool)(bVar1 ^ 1)) {\n        (**(code **)(pcVar22 + 0x1df780))(7);\n        sVar8 = pIVar11->rows;\n        if ((int)sVar8 < 0) {\n          sVar8 = sVar8 + 0x3f;\n        }\n        iVar4 = (int)sVar8 >> 6;\n        pcVar25 = *(code **)(pcVar22 + 0x1df780);\n        if (extraout_v1_10 < iVar4) {\nLAB_001c9ce8:\n          (*pcVar25)(7);\n          iVar4 = extraout_v1_08;\n        }\n        goto LAB_001c9b14;\n      }\n      iVar13 = *(int *)(pcVar22 + 0x1defe4);\n    }" { (expression_statement "(**(code **)(pcVar22 + 0x1df780))(7);" (call_expression "(**(code **)(pcVar22 + 0x1df780))(7)" (parenthesized_expression "(**(code **)(pcVar22 + 0x1df780))" ( (pointer_expression "**(code **)(pcVar22 + 0x1df780)" * (pointer_expression "*(code **)(pcVar22 + 0x1df780)" * (cast_expression "(code **)(pcVar22 + 0x1df780)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar22 + 0x1df780)" ( (binary_expression "pcVar22 + 0x1df780" identifier + number_literal) ))))) )) (argument_list "(7)" ( number_literal ))) ;) (expression_statement "sVar8 = pIVar11->rows;" (assignment_expression "sVar8 = pIVar11->rows" identifier = (field_expression "pIVar11->rows" identifier -> field_identifier)) ;) (if_statement "if ((int)sVar8 < 0) {\n        pcVar25 = *(code **)(pcVar22 + 0x1df780);\n        if (extraout_v1_07 < (int)(sVar8 + 0x3f) >> 6) goto LAB_001c9d10;\nLAB_001c9c58:\n        bVar1 = (int)sVar8 < 0x80;\n      }\n      else {\n        pcVar25 = *(code **)(pcVar22 + 0x1df780);\n        if ((int)sVar8 >> 6 <= extraout_v1_07) goto LAB_001c9c58;\nLAB_001c9d10:\n        (*pcVar25)(7);\n        bVar1 = extraout_v1_09 < 2;\n      }" if (parenthesized_expression "((int)sVar8 < 0)" ( (binary_expression "(int)sVar8 < 0" (cast_expression "(int)sVar8" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n        pcVar25 = *(code **)(pcVar22 + 0x1df780);\n        if (extraout_v1_07 < (int)(sVar8 + 0x3f) >> 6) goto LAB_001c9d10;\nLAB_001c9c58:\n        bVar1 = (int)sVar8 < 0x80;\n      }" { (expression_statement "pcVar25 = *(code **)(pcVar22 + 0x1df780);" (assignment_expression "pcVar25 = *(code **)(pcVar22 + 0x1df780)" identifier = (pointer_expression "*(code **)(pcVar22 + 0x1df780)" * (cast_expression "(code **)(pcVar22 + 0x1df780)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar22 + 0x1df780)" ( (binary_expression "pcVar22 + 0x1df780" identifier + number_literal) ))))) ;) (if_statement "if (extraout_v1_07 < (int)(sVar8 + 0x3f) >> 6) goto LAB_001c9d10;" if (parenthesized_expression "(extraout_v1_07 < (int)(sVar8 + 0x3f) >> 6)" ( (binary_expression "extraout_v1_07 < (int)(sVar8 + 0x3f) >> 6" identifier < (binary_expression "(int)(sVar8 + 0x3f) >> 6" (cast_expression "(int)(sVar8 + 0x3f)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(sVar8 + 0x3f)" ( (binary_expression "sVar8 + 0x3f" identifier + number_literal) ))) >> number_literal)) )) (goto_statement "goto LAB_001c9d10;" goto statement_identifier ;)) (labeled_statement "LAB_001c9c58:\n        bVar1 = (int)sVar8 < 0x80;" statement_identifier : (expression_statement "bVar1 = (int)sVar8 < 0x80;" (assignment_expression "bVar1 = (int)sVar8 < 0x80" identifier = (binary_expression "(int)sVar8 < 0x80" (cast_expression "(int)sVar8" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal)) ;)) }) (else_clause "else {\n        pcVar25 = *(code **)(pcVar22 + 0x1df780);\n        if ((int)sVar8 >> 6 <= extraout_v1_07) goto LAB_001c9c58;\nLAB_001c9d10:\n        (*pcVar25)(7);\n        bVar1 = extraout_v1_09 < 2;\n      }" else (compound_statement "{\n        pcVar25 = *(code **)(pcVar22 + 0x1df780);\n        if ((int)sVar8 >> 6 <= extraout_v1_07) goto LAB_001c9c58;\nLAB_001c9d10:\n        (*pcVar25)(7);\n        bVar1 = extraout_v1_09 < 2;\n      }" { (expression_statement "pcVar25 = *(code **)(pcVar22 + 0x1df780);" (assignment_expression "pcVar25 = *(code **)(pcVar22 + 0x1df780)" identifier = (pointer_expression "*(code **)(pcVar22 + 0x1df780)" * (cast_expression "(code **)(pcVar22 + 0x1df780)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar22 + 0x1df780)" ( (binary_expression "pcVar22 + 0x1df780" identifier + number_literal) ))))) ;) (if_statement "if ((int)sVar8 >> 6 <= extraout_v1_07) goto LAB_001c9c58;" if (parenthesized_expression "((int)sVar8 >> 6 <= extraout_v1_07)" ( (binary_expression "(int)sVar8 >> 6 <= extraout_v1_07" (binary_expression "(int)sVar8 >> 6" (cast_expression "(int)sVar8" ( (type_descriptor "int" primitive_type) ) identifier) >> number_literal) <= identifier) )) (goto_statement "goto LAB_001c9c58;" goto statement_identifier ;)) (labeled_statement "LAB_001c9d10:\n        (*pcVar25)(7);" statement_identifier : (expression_statement "(*pcVar25)(7);" (call_expression "(*pcVar25)(7)" (parenthesized_expression "(*pcVar25)" ( (pointer_expression "*pcVar25" * identifier) )) (argument_list "(7)" ( number_literal ))) ;)) (expression_statement "bVar1 = extraout_v1_09 < 2;" (assignment_expression "bVar1 = extraout_v1_09 < 2" identifier = (binary_expression "extraout_v1_09 < 2" identifier < number_literal)) ;) }))) (expression_statement "iVar4 = 1;" (assignment_expression "iVar4 = 1" identifier = number_literal) ;) (if_statement "if ((bool)(bVar1 ^ 1)) {\n        (**(code **)(pcVar22 + 0x1df780))(7);\n        sVar8 = pIVar11->rows;\n        if ((int)sVar8 < 0) {\n          sVar8 = sVar8 + 0x3f;\n        }\n        iVar4 = (int)sVar8 >> 6;\n        pcVar25 = *(code **)(pcVar22 + 0x1df780);\n        if (extraout_v1_10 < iVar4) {\nLAB_001c9ce8:\n          (*pcVar25)(7);\n          iVar4 = extraout_v1_08;\n        }\n        goto LAB_001c9b14;\n      }" if (parenthesized_expression "((bool)(bVar1 ^ 1))" ( (cast_expression "(bool)(bVar1 ^ 1)" ( (type_descriptor "bool" primitive_type) ) (parenthesized_expression "(bVar1 ^ 1)" ( (binary_expression "bVar1 ^ 1" identifier ^ number_literal) ))) )) (compound_statement "{\n        (**(code **)(pcVar22 + 0x1df780))(7);\n        sVar8 = pIVar11->rows;\n        if ((int)sVar8 < 0) {\n          sVar8 = sVar8 + 0x3f;\n        }\n        iVar4 = (int)sVar8 >> 6;\n        pcVar25 = *(code **)(pcVar22 + 0x1df780);\n        if (extraout_v1_10 < iVar4) {\nLAB_001c9ce8:\n          (*pcVar25)(7);\n          iVar4 = extraout_v1_08;\n        }\n        goto LAB_001c9b14;\n      }" { (expression_statement "(**(code **)(pcVar22 + 0x1df780))(7);" (call_expression "(**(code **)(pcVar22 + 0x1df780))(7)" (parenthesized_expression "(**(code **)(pcVar22 + 0x1df780))" ( (pointer_expression "**(code **)(pcVar22 + 0x1df780)" * (pointer_expression "*(code **)(pcVar22 + 0x1df780)" * (cast_expression "(code **)(pcVar22 + 0x1df780)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar22 + 0x1df780)" ( (binary_expression "pcVar22 + 0x1df780" identifier + number_literal) ))))) )) (argument_list "(7)" ( number_literal ))) ;) (expression_statement "sVar8 = pIVar11->rows;" (assignment_expression "sVar8 = pIVar11->rows" identifier = (field_expression "pIVar11->rows" identifier -> field_identifier)) ;) (if_statement "if ((int)sVar8 < 0) {\n          sVar8 = sVar8 + 0x3f;\n        }" if (parenthesized_expression "((int)sVar8 < 0)" ( (binary_expression "(int)sVar8 < 0" (cast_expression "(int)sVar8" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n          sVar8 = sVar8 + 0x3f;\n        }" { (expression_statement "sVar8 = sVar8 + 0x3f;" (assignment_expression "sVar8 = sVar8 + 0x3f" identifier = (binary_expression "sVar8 + 0x3f" identifier + number_literal)) ;) })) (expression_statement "iVar4 = (int)sVar8 >> 6;" (assignment_expression "iVar4 = (int)sVar8 >> 6" identifier = (binary_expression "(int)sVar8 >> 6" (cast_expression "(int)sVar8" ( (type_descriptor "int" primitive_type) ) identifier) >> number_literal)) ;) (expression_statement "pcVar25 = *(code **)(pcVar22 + 0x1df780);" (assignment_expression "pcVar25 = *(code **)(pcVar22 + 0x1df780)" identifier = (pointer_expression "*(code **)(pcVar22 + 0x1df780)" * (cast_expression "(code **)(pcVar22 + 0x1df780)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar22 + 0x1df780)" ( (binary_expression "pcVar22 + 0x1df780" identifier + number_literal) ))))) ;) (if_statement "if (extraout_v1_10 < iVar4) {\nLAB_001c9ce8:\n          (*pcVar25)(7);\n          iVar4 = extraout_v1_08;\n        }" if (parenthesized_expression "(extraout_v1_10 < iVar4)" ( (binary_expression "extraout_v1_10 < iVar4" identifier < identifier) )) (compound_statement "{\nLAB_001c9ce8:\n          (*pcVar25)(7);\n          iVar4 = extraout_v1_08;\n        }" { (labeled_statement "LAB_001c9ce8:\n          (*pcVar25)(7);" statement_identifier : (expression_statement "(*pcVar25)(7);" (call_expression "(*pcVar25)(7)" (parenthesized_expression "(*pcVar25)" ( (pointer_expression "*pcVar25" * identifier) )) (argument_list "(7)" ( number_literal ))) ;)) (expression_statement "iVar4 = extraout_v1_08;" (assignment_expression "iVar4 = extraout_v1_08" identifier = identifier) ;) })) (goto_statement "goto LAB_001c9b14;" goto statement_identifier ;) })) (expression_statement "iVar13 = *(int *)(pcVar22 + 0x1defe4);" (assignment_expression "iVar13 = *(int *)(pcVar22 + 0x1defe4)" identifier = (pointer_expression "*(int *)(pcVar22 + 0x1defe4)" * (cast_expression "(int *)(pcVar22 + 0x1defe4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + 0x1defe4)" ( (binary_expression "pcVar22 + 0x1defe4" identifier + number_literal) ))))) ;) }) (else_clause "else {\n      uVar38 = (**(code **)(pcVar22 + 0x1df780))(7);\n      if ((int)((ulonglong)uVar38 >> 0x20) == 0) {\n        pcVar25 = *(code **)(pcVar22 + 0x1df780);\n        if (1 < (uint)uVar38) goto LAB_001c9b00;\n        uVar38 = (*pcVar25)(7);\n        if ((int)((ulonglong)uVar38 >> 0x20) != 0) goto LAB_001c9afc;\n        pcVar25 = *(code **)(pcVar22 + 0x1df780);\n        if (1 < (uint)uVar38) goto LAB_001c9b00;\n        iVar4 = 1;\n      }\n      else {\nLAB_001c9afc:\n        pcVar25 = *(code **)(pcVar22 + 0x1df780);\nLAB_001c9b00:\n        uVar38 = (*pcVar25)(7);\n        if (((int)((ulonglong)uVar38 >> 0x20) == 0) &&\n           (pcVar25 = *(code **)(pcVar22 + 0x1df780), (uint)uVar38 < 2)) goto LAB_001c9ce8;\n        iVar4 = 2;\n      }\nLAB_001c9b14:\n      iVar13 = *(int *)(pcVar22 + 0x1defe4);\n    }" else (compound_statement "{\n      uVar38 = (**(code **)(pcVar22 + 0x1df780))(7);\n      if ((int)((ulonglong)uVar38 >> 0x20) == 0) {\n        pcVar25 = *(code **)(pcVar22 + 0x1df780);\n        if (1 < (uint)uVar38) goto LAB_001c9b00;\n        uVar38 = (*pcVar25)(7);\n        if ((int)((ulonglong)uVar38 >> 0x20) != 0) goto LAB_001c9afc;\n        pcVar25 = *(code **)(pcVar22 + 0x1df780);\n        if (1 < (uint)uVar38) goto LAB_001c9b00;\n        iVar4 = 1;\n      }\n      else {\nLAB_001c9afc:\n        pcVar25 = *(code **)(pcVar22 + 0x1df780);\nLAB_001c9b00:\n        uVar38 = (*pcVar25)(7);\n        if (((int)((ulonglong)uVar38 >> 0x20) == 0) &&\n           (pcVar25 = *(code **)(pcVar22 + 0x1df780), (uint)uVar38 < 2)) goto LAB_001c9ce8;\n        iVar4 = 2;\n      }\nLAB_001c9b14:\n      iVar13 = *(int *)(pcVar22 + 0x1defe4);\n    }" { (expression_statement "uVar38 = (**(code **)(pcVar22 + 0x1df780))(7);" (assignment_expression "uVar38 = (**(code **)(pcVar22 + 0x1df780))(7)" identifier = (call_expression "(**(code **)(pcVar22 + 0x1df780))(7)" (parenthesized_expression "(**(code **)(pcVar22 + 0x1df780))" ( (pointer_expression "**(code **)(pcVar22 + 0x1df780)" * (pointer_expression "*(code **)(pcVar22 + 0x1df780)" * (cast_expression "(code **)(pcVar22 + 0x1df780)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar22 + 0x1df780)" ( (binary_expression "pcVar22 + 0x1df780" identifier + number_literal) ))))) )) (argument_list "(7)" ( number_literal )))) ;) (if_statement "if ((int)((ulonglong)uVar38 >> 0x20) == 0) {\n        pcVar25 = *(code **)(pcVar22 + 0x1df780);\n        if (1 < (uint)uVar38) goto LAB_001c9b00;\n        uVar38 = (*pcVar25)(7);\n        if ((int)((ulonglong)uVar38 >> 0x20) != 0) goto LAB_001c9afc;\n        pcVar25 = *(code **)(pcVar22 + 0x1df780);\n        if (1 < (uint)uVar38) goto LAB_001c9b00;\n        iVar4 = 1;\n      }\n      else {\nLAB_001c9afc:\n        pcVar25 = *(code **)(pcVar22 + 0x1df780);\nLAB_001c9b00:\n        uVar38 = (*pcVar25)(7);\n        if (((int)((ulonglong)uVar38 >> 0x20) == 0) &&\n           (pcVar25 = *(code **)(pcVar22 + 0x1df780), (uint)uVar38 < 2)) goto LAB_001c9ce8;\n        iVar4 = 2;\n      }" if (parenthesized_expression "((int)((ulonglong)uVar38 >> 0x20) == 0)" ( (binary_expression "(int)((ulonglong)uVar38 >> 0x20) == 0" (cast_expression "(int)((ulonglong)uVar38 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)uVar38 >> 0x20)" ( (binary_expression "(ulonglong)uVar38 >> 0x20" (cast_expression "(ulonglong)uVar38" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) ))) == number_literal) )) (compound_statement "{\n        pcVar25 = *(code **)(pcVar22 + 0x1df780);\n        if (1 < (uint)uVar38) goto LAB_001c9b00;\n        uVar38 = (*pcVar25)(7);\n        if ((int)((ulonglong)uVar38 >> 0x20) != 0) goto LAB_001c9afc;\n        pcVar25 = *(code **)(pcVar22 + 0x1df780);\n        if (1 < (uint)uVar38) goto LAB_001c9b00;\n        iVar4 = 1;\n      }" { (expression_statement "pcVar25 = *(code **)(pcVar22 + 0x1df780);" (assignment_expression "pcVar25 = *(code **)(pcVar22 + 0x1df780)" identifier = (pointer_expression "*(code **)(pcVar22 + 0x1df780)" * (cast_expression "(code **)(pcVar22 + 0x1df780)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar22 + 0x1df780)" ( (binary_expression "pcVar22 + 0x1df780" identifier + number_literal) ))))) ;) (if_statement "if (1 < (uint)uVar38) goto LAB_001c9b00;" if (parenthesized_expression "(1 < (uint)uVar38)" ( (binary_expression "1 < (uint)uVar38" number_literal < (cast_expression "(uint)uVar38" ( (type_descriptor "uint" type_identifier) ) identifier)) )) (goto_statement "goto LAB_001c9b00;" goto statement_identifier ;)) (expression_statement "uVar38 = (*pcVar25)(7);" (assignment_expression "uVar38 = (*pcVar25)(7)" identifier = (call_expression "(*pcVar25)(7)" (parenthesized_expression "(*pcVar25)" ( (pointer_expression "*pcVar25" * identifier) )) (argument_list "(7)" ( number_literal )))) ;) (if_statement "if ((int)((ulonglong)uVar38 >> 0x20) != 0) goto LAB_001c9afc;" if (parenthesized_expression "((int)((ulonglong)uVar38 >> 0x20) != 0)" ( (binary_expression "(int)((ulonglong)uVar38 >> 0x20) != 0" (cast_expression "(int)((ulonglong)uVar38 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)uVar38 >> 0x20)" ( (binary_expression "(ulonglong)uVar38 >> 0x20" (cast_expression "(ulonglong)uVar38" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) ))) != number_literal) )) (goto_statement "goto LAB_001c9afc;" goto statement_identifier ;)) (expression_statement "pcVar25 = *(code **)(pcVar22 + 0x1df780);" (assignment_expression "pcVar25 = *(code **)(pcVar22 + 0x1df780)" identifier = (pointer_expression "*(code **)(pcVar22 + 0x1df780)" * (cast_expression "(code **)(pcVar22 + 0x1df780)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar22 + 0x1df780)" ( (binary_expression "pcVar22 + 0x1df780" identifier + number_literal) ))))) ;) (if_statement "if (1 < (uint)uVar38) goto LAB_001c9b00;" if (parenthesized_expression "(1 < (uint)uVar38)" ( (binary_expression "1 < (uint)uVar38" number_literal < (cast_expression "(uint)uVar38" ( (type_descriptor "uint" type_identifier) ) identifier)) )) (goto_statement "goto LAB_001c9b00;" goto statement_identifier ;)) (expression_statement "iVar4 = 1;" (assignment_expression "iVar4 = 1" identifier = number_literal) ;) }) (else_clause "else {\nLAB_001c9afc:\n        pcVar25 = *(code **)(pcVar22 + 0x1df780);\nLAB_001c9b00:\n        uVar38 = (*pcVar25)(7);\n        if (((int)((ulonglong)uVar38 >> 0x20) == 0) &&\n           (pcVar25 = *(code **)(pcVar22 + 0x1df780), (uint)uVar38 < 2)) goto LAB_001c9ce8;\n        iVar4 = 2;\n      }" else (compound_statement "{\nLAB_001c9afc:\n        pcVar25 = *(code **)(pcVar22 + 0x1df780);\nLAB_001c9b00:\n        uVar38 = (*pcVar25)(7);\n        if (((int)((ulonglong)uVar38 >> 0x20) == 0) &&\n           (pcVar25 = *(code **)(pcVar22 + 0x1df780), (uint)uVar38 < 2)) goto LAB_001c9ce8;\n        iVar4 = 2;\n      }" { (labeled_statement "LAB_001c9afc:\n        pcVar25 = *(code **)(pcVar22 + 0x1df780);" statement_identifier : (expression_statement "pcVar25 = *(code **)(pcVar22 + 0x1df780);" (assignment_expression "pcVar25 = *(code **)(pcVar22 + 0x1df780)" identifier = (pointer_expression "*(code **)(pcVar22 + 0x1df780)" * (cast_expression "(code **)(pcVar22 + 0x1df780)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar22 + 0x1df780)" ( (binary_expression "pcVar22 + 0x1df780" identifier + number_literal) ))))) ;)) (labeled_statement "LAB_001c9b00:\n        uVar38 = (*pcVar25)(7);" statement_identifier : (expression_statement "uVar38 = (*pcVar25)(7);" (assignment_expression "uVar38 = (*pcVar25)(7)" identifier = (call_expression "(*pcVar25)(7)" (parenthesized_expression "(*pcVar25)" ( (pointer_expression "*pcVar25" * identifier) )) (argument_list "(7)" ( number_literal )))) ;)) (if_statement "if (((int)((ulonglong)uVar38 >> 0x20) == 0) &&\n           (pcVar25 = *(code **)(pcVar22 + 0x1df780), (uint)uVar38 < 2)) goto LAB_001c9ce8;" if (parenthesized_expression "(((int)((ulonglong)uVar38 >> 0x20) == 0) &&\n           (pcVar25 = *(code **)(pcVar22 + 0x1df780), (uint)uVar38 < 2))" ( (binary_expression "((int)((ulonglong)uVar38 >> 0x20) == 0) &&\n           (pcVar25 = *(code **)(pcVar22 + 0x1df780), (uint)uVar38 < 2)" (parenthesized_expression "((int)((ulonglong)uVar38 >> 0x20) == 0)" ( (binary_expression "(int)((ulonglong)uVar38 >> 0x20) == 0" (cast_expression "(int)((ulonglong)uVar38 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)uVar38 >> 0x20)" ( (binary_expression "(ulonglong)uVar38 >> 0x20" (cast_expression "(ulonglong)uVar38" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) ))) == number_literal) )) && (parenthesized_expression "(pcVar25 = *(code **)(pcVar22 + 0x1df780), (uint)uVar38 < 2)" ( (comma_expression "pcVar25 = *(code **)(pcVar22 + 0x1df780), (uint)uVar38 < 2" (assignment_expression "pcVar25 = *(code **)(pcVar22 + 0x1df780)" identifier = (pointer_expression "*(code **)(pcVar22 + 0x1df780)" * (cast_expression "(code **)(pcVar22 + 0x1df780)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar22 + 0x1df780)" ( (binary_expression "pcVar22 + 0x1df780" identifier + number_literal) ))))) , (binary_expression "(uint)uVar38 < 2" (cast_expression "(uint)uVar38" ( (type_descriptor "uint" type_identifier) ) identifier) < number_literal)) ))) )) (goto_statement "goto LAB_001c9ce8;" goto statement_identifier ;)) (expression_statement "iVar4 = 2;" (assignment_expression "iVar4 = 2" identifier = number_literal) ;) }))) (labeled_statement "LAB_001c9b14:\n      iVar13 = *(int *)(pcVar22 + 0x1defe4);" statement_identifier : (expression_statement "iVar13 = *(int *)(pcVar22 + 0x1defe4);" (assignment_expression "iVar13 = *(int *)(pcVar22 + 0x1defe4)" identifier = (pointer_expression "*(int *)(pcVar22 + 0x1defe4)" * (cast_expression "(int *)(pcVar22 + 0x1defe4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + 0x1defe4)" ( (binary_expression "pcVar22 + 0x1defe4" identifier + number_literal) ))))) ;)) }))) (expression_statement "puStack_254 = &uStack_270;" (assignment_expression "puStack_254 = &uStack_270" identifier = (pointer_expression "&uStack_270" & identifier)) ;) (expression_statement "iStack_250 = 1;" (assignment_expression "iStack_250 = 1" identifier = number_literal) ;) (expression_statement "iStack_268 = iVar2;" (assignment_expression "iStack_268 = iVar2" identifier = identifier) ;) (expression_statement "iStack_264 = iVar10;" (assignment_expression "iStack_264 = iVar10" identifier = identifier) ;) (expression_statement "uStack_260 = uVar7;" (assignment_expression "uStack_260 = uVar7" identifier = identifier) ;) (expression_statement "uStack_25c = uVar6;" (assignment_expression "uStack_25c = uVar6" identifier = identifier) ;) (expression_statement "pIStack_258 = pIVar11;" (assignment_expression "pIStack_258 = pIVar11" identifier = identifier) ;) (expression_statement "(**(code **)(pcVar22 + 0x1df7dc))(iVar13 + 0x594c,&iStack_268,iVar4,0);" (call_expression "(**(code **)(pcVar22 + 0x1df7dc))(iVar13 + 0x594c,&iStack_268,iVar4,0)" (parenthesized_expression "(**(code **)(pcVar22 + 0x1df7dc))" ( (pointer_expression "**(code **)(pcVar22 + 0x1df7dc)" * (pointer_expression "*(code **)(pcVar22 + 0x1df7dc)" * (cast_expression "(code **)(pcVar22 + 0x1df7dc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar22 + 0x1df7dc)" ( (binary_expression "pcVar22 + 0x1df7dc" identifier + number_literal) ))))) )) (argument_list "(iVar13 + 0x594c,&iStack_268,iVar4,0)" ( (binary_expression "iVar13 + 0x594c" identifier + number_literal) , (pointer_expression "&iStack_268" & identifier) , identifier , number_literal ))) ;) (expression_statement "iVar10 = iStack_250;" (assignment_expression "iVar10 = iStack_250" identifier = identifier) ;) (expression_statement "(**(code **)(pcVar22 + 0x1df538))(uVar7);" (call_expression "(**(code **)(pcVar22 + 0x1df538))(uVar7)" (parenthesized_expression "(**(code **)(pcVar22 + 0x1df538))" ( (pointer_expression "**(code **)(pcVar22 + 0x1df538)" * (pointer_expression "*(code **)(pcVar22 + 0x1df538)" * (cast_expression "(code **)(pcVar22 + 0x1df538)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar22 + 0x1df538)" ( (binary_expression "pcVar22 + 0x1df538" identifier + number_literal) ))))) )) (argument_list "(uVar7)" ( identifier ))) ;) (expression_statement "(**(code **)(pcVar22 + 0x1df538))(uVar6);" (call_expression "(**(code **)(pcVar22 + 0x1df538))(uVar6)" (parenthesized_expression "(**(code **)(pcVar22 + 0x1df538))" ( (pointer_expression "**(code **)(pcVar22 + 0x1df538)" * (pointer_expression "*(code **)(pcVar22 + 0x1df538)" * (cast_expression "(code **)(pcVar22 + 0x1df538)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar22 + 0x1df538)" ( (binary_expression "pcVar22 + 0x1df538" identifier + number_literal) ))))) )) (argument_list "(uVar6)" ( identifier ))) ;) (expression_statement "pIVar11->type = *(ImageType *)(iVar2 + 0x2a0);" (assignment_expression "pIVar11->type = *(ImageType *)(iVar2 + 0x2a0)" (field_expression "pIVar11->type" identifier -> field_identifier) = (pointer_expression "*(ImageType *)(iVar2 + 0x2a0)" * (cast_expression "(ImageType *)(iVar2 + 0x2a0)" ( (type_descriptor "ImageType *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x2a0)" ( (binary_expression "iVar2 + 0x2a0" identifier + number_literal) ))))) ;) (if_statement "if (sVar9 != 0) {\n      sVar20 = (sVar9 - pIVar11->columns) - sVar20;\n    }" if (parenthesized_expression "(sVar9 != 0)" ( (binary_expression "sVar9 != 0" identifier != number_literal) )) (compound_statement "{\n      sVar20 = (sVar9 - pIVar11->columns) - sVar20;\n    }" { (expression_statement "sVar20 = (sVar9 - pIVar11->columns) - sVar20;" (assignment_expression "sVar20 = (sVar9 - pIVar11->columns) - sVar20" identifier = (binary_expression "(sVar9 - pIVar11->columns) - sVar20" (parenthesized_expression "(sVar9 - pIVar11->columns)" ( (binary_expression "sVar9 - pIVar11->columns" identifier - (field_expression "pIVar11->columns" identifier -> field_identifier)) )) - identifier)) ;) })) (expression_statement "(pIVar11->page).width = sVar9;" (assignment_expression "(pIVar11->page).width = sVar9" (field_expression "(pIVar11->page).width" (parenthesized_expression "(pIVar11->page)" ( (field_expression "pIVar11->page" identifier -> field_identifier) )) . field_identifier) = identifier) ;) (expression_statement "(pIVar11->page).height = sVar24;" (assignment_expression "(pIVar11->page).height = sVar24" (field_expression "(pIVar11->page).height" (parenthesized_expression "(pIVar11->page)" ( (field_expression "pIVar11->page" identifier -> field_identifier) )) . field_identifier) = identifier) ;) (expression_statement "(pIVar11->page).x = sVar20;" (assignment_expression "(pIVar11->page).x = sVar20" (field_expression "(pIVar11->page).x" (parenthesized_expression "(pIVar11->page)" ( (field_expression "pIVar11->page" identifier -> field_identifier) )) . field_identifier) = identifier) ;) (expression_statement "(pIVar11->page).y = sVar5;" (assignment_expression "(pIVar11->page).y = sVar5" (field_expression "(pIVar11->page).y" (parenthesized_expression "(pIVar11->page)" ( (field_expression "pIVar11->page" identifier -> field_identifier) )) . field_identifier) = identifier) ;) (if_statement "if (iVar10 == 0) {\n      pIVar11 = (Image *)(**(code **)(pcVar22 + 0x1df590))(pIVar11);\n    }" if (parenthesized_expression "(iVar10 == 0)" ( (binary_expression "iVar10 == 0" identifier == number_literal) )) (compound_statement "{\n      pIVar11 = (Image *)(**(code **)(pcVar22 + 0x1df590))(pIVar11);\n    }" { (expression_statement "pIVar11 = (Image *)(**(code **)(pcVar22 + 0x1df590))(pIVar11);" (assignment_expression "pIVar11 = (Image *)(**(code **)(pcVar22 + 0x1df590))(pIVar11)" identifier = (cast_expression "(Image *)(**(code **)(pcVar22 + 0x1df590))(pIVar11)" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(pcVar22 + 0x1df590))(pIVar11)" (parenthesized_expression "(**(code **)(pcVar22 + 0x1df590))" ( (pointer_expression "**(code **)(pcVar22 + 0x1df590)" * (pointer_expression "*(code **)(pcVar22 + 0x1df590)" * (cast_expression "(code **)(pcVar22 + 0x1df590)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar22 + 0x1df590)" ( (binary_expression "pcVar22 + 0x1df590" identifier + number_literal) ))))) )) (argument_list "(pIVar11)" ( identifier ))))) ;) })) })) (if_statement "if (iStack_24c == *piVar18) {\n    return pIVar11;\n  }" if (parenthesized_expression "(iStack_24c == *piVar18)" ( (binary_expression "iStack_24c == *piVar18" identifier == (pointer_expression "*piVar18" * identifier)) )) (compound_statement "{\n    return pIVar11;\n  }" { (return_statement "return pIVar11;" return identifier ;) })) (expression_statement "(**(code **)(pcVar22 + 0x1df6a8))();" (call_expression "(**(code **)(pcVar22 + 0x1df6a8))()" (parenthesized_expression "(**(code **)(pcVar22 + 0x1df6a8))" ( (pointer_expression "**(code **)(pcVar22 + 0x1df6a8)" * (pointer_expression "*(code **)(pcVar22 + 0x1df6a8)" * (cast_expression "(code **)(pcVar22 + 0x1df6a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar22 + 0x1df6a8)" ( (binary_expression "pcVar22 + 0x1df6a8" identifier + number_literal) ))))) )) (argument_list "()" ( ))) ;) (labeled_statement "LAB_001c9db0:\n  pIVar11 = (Image *)(**(code **)(pcVar22 + 0x1dfc4c))\n                               (*(int *)(pcVar22 + 0x1def24) + 0x294c,\n                                *(int *)(pcVar22 + 0x1def30) + -0x288c,0x548,\n                                *(int *)(pcVar22 + 0x1def30) + -0x26f8);" statement_identifier : (expression_statement "pIVar11 = (Image *)(**(code **)(pcVar22 + 0x1dfc4c))\n                               (*(int *)(pcVar22 + 0x1def24) + 0x294c,\n                                *(int *)(pcVar22 + 0x1def30) + -0x288c,0x548,\n                                *(int *)(pcVar22 + 0x1def30) + -0x26f8);" (assignment_expression "pIVar11 = (Image *)(**(code **)(pcVar22 + 0x1dfc4c))\n                               (*(int *)(pcVar22 + 0x1def24) + 0x294c,\n                                *(int *)(pcVar22 + 0x1def30) + -0x288c,0x548,\n                                *(int *)(pcVar22 + 0x1def30) + -0x26f8)" identifier = (cast_expression "(Image *)(**(code **)(pcVar22 + 0x1dfc4c))\n                               (*(int *)(pcVar22 + 0x1def24) + 0x294c,\n                                *(int *)(pcVar22 + 0x1def30) + -0x288c,0x548,\n                                *(int *)(pcVar22 + 0x1def30) + -0x26f8)" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(pcVar22 + 0x1dfc4c))\n                               (*(int *)(pcVar22 + 0x1def24) + 0x294c,\n                                *(int *)(pcVar22 + 0x1def30) + -0x288c,0x548,\n                                *(int *)(pcVar22 + 0x1def30) + -0x26f8)" (parenthesized_expression "(**(code **)(pcVar22 + 0x1dfc4c))" ( (pointer_expression "**(code **)(pcVar22 + 0x1dfc4c)" * (pointer_expression "*(code **)(pcVar22 + 0x1dfc4c)" * (cast_expression "(code **)(pcVar22 + 0x1dfc4c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar22 + 0x1dfc4c)" ( (binary_expression "pcVar22 + 0x1dfc4c" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar22 + 0x1def24) + 0x294c,\n                                *(int *)(pcVar22 + 0x1def30) + -0x288c,0x548,\n                                *(int *)(pcVar22 + 0x1def30) + -0x26f8)" ( (binary_expression "*(int *)(pcVar22 + 0x1def24) + 0x294c" (pointer_expression "*(int *)(pcVar22 + 0x1def24)" * (cast_expression "(int *)(pcVar22 + 0x1def24)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + 0x1def24)" ( (binary_expression "pcVar22 + 0x1def24" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar22 + 0x1def30) + -0x288c" (pointer_expression "*(int *)(pcVar22 + 0x1def30)" * (cast_expression "(int *)(pcVar22 + 0x1def30)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + 0x1def30)" ( (binary_expression "pcVar22 + 0x1def30" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar22 + 0x1def30) + -0x26f8" (pointer_expression "*(int *)(pcVar22 + 0x1def30)" * (cast_expression "(int *)(pcVar22 + 0x1def30)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + 0x1def30)" ( (binary_expression "pcVar22 + 0x1def30" identifier + number_literal) )))) + number_literal) ))))) ;)) (return_statement "return pIVar11;" return identifier ;) })))
(translation_unit "undefined4 *******\nCropImageToTiles(undefined4 *******param_1,undefined4 *******param_2,undefined4 ******param_3)\n\n{\n  bool bVar1;\n  undefined4 ******ppppppuVar2;\n  undefined *puVar3;\n  undefined4 uVar4;\n  undefined4 uVar5;\n  undefined4 ******ppppppuVar6;\n  undefined4 ******ppppppuVar7;\n  int extraout_v1;\n  int extraout_v1_00;\n  int extraout_v1_01;\n  int extraout_v1_02;\n  int extraout_v1_03;\n  int extraout_v1_04;\n  int extraout_v1_05;\n  int extraout_v1_06;\n  int extraout_v1_07;\n  int extraout_v1_08;\n  int extraout_v1_09;\n  int extraout_v1_10;\n  undefined *puVar8;\n  undefined4 *******pppppppuVar9;\n  int iVar10;\n  int iVar11;\n  undefined4 *******pppppppuVar12;\n  undefined4 *******pppppppuVar13;\n  int iVar14;\n  int iVar15;\n  undefined4 *******unaff_s0;\n  undefined4 *******unaff_s1;\n  undefined4 ******unaff_s2;\n  undefined4 *******unaff_s3;\n  int *piVar16;\n  int *piVar17;\n  undefined4 ******unaff_s4;\n  int *piVar18;\n  undefined4 *******unaff_s5;\n  undefined4 *******unaff_s6;\n  undefined4 ******ppppppuVar19;\n  undefined4 *******unaff_s7;\n  undefined *puVar20;\n  code *pcVar21;\n  undefined4 *******unaff_s8;\n  undefined4 ******ppppppuVar22;\n  code *pcVar23;\n  code *pcVar24;\n  double dVar25;\n  double dVar26;\n  double dVar27;\n  double dVar28;\n  double dVar29;\n  double dVar30;\n  double dVar31;\n  double dVar32;\n  double dVar33;\n  double dVar34;\n  double dVar35;\n  undefined8 uVar36;\n  undefined4 uStack_270;\n  undefined4 uStack_26c;\n  int iStack_268;\n  int iStack_264;\n  undefined4 uStack_260;\n  undefined4 uStack_25c;\n  undefined4 *******pppppppuStack_258;\n  undefined4 *puStack_254;\n  int iStack_250;\n  int iStack_24c;\n  undefined4 *******pppppppuStack_248;\n  undefined4 *******pppppppuStack_244;\n  undefined4 ******ppppppuStack_240;\n  int *piStack_23c;\n  int *piStack_238;\n  undefined4 *******pppppppuStack_234;\n  undefined4 *******pppppppuStack_230;\n  undefined4 *******pppppppuStack_22c;\n  undefined4 *******pppppppuStack_228;\n  code *pcStack_224;\n  undefined4 *******pppppppuStack_210;\n  undefined4 *******pppppppuStack_20c;\n  code *pcStack_208;\n  undefined4 ******ppppppuStack_1fc;\n  undefined4 uStack_1f8;\n  undefined4 uStack_1f4;\n  undefined4 *******pppppppuStack_1f0;\n  undefined4 *******pppppppuStack_1ec;\n  undefined4 *******pppppppuStack_1e8;\n  int *piStack_1e4;\n  undefined4 *******pppppppuStack_1e0;\n  undefined4 *puStack_1dc;\n  undefined4 *******pppppppuStack_1d8;\n  int iStack_1d4;\n  undefined4 *******pppppppuStack_1d0;\n  undefined4 *******pppppppuStack_1cc;\n  undefined4 ******ppppppuStack_1c8;\n  undefined4 *******pppppppuStack_1c4;\n  int *piStack_1c0;\n  undefined4 *******pppppppuStack_1bc;\n  undefined4 *******pppppppuStack_1b8;\n  undefined4 *******pppppppuStack_1b4;\n  undefined4 *******pppppppuStack_1b0;\n  code *pcStack_1ac;\n  undefined4 ******ppppppuStack_198;\n  undefined4 *******pppppppuStack_194;\n  undefined4 ******ppppppuStack_190;\n  code *pcStack_188;\n  undefined4 *******pppppppuStack_17c;\n  undefined4 *******pppppppuStack_178;\n  undefined4 ******ppppppuStack_174;\n  undefined4 *******pppppppuStack_170;\n  code *pcStack_16c;\n  undefined4 ******ppppppuStack_158;\n  undefined4 *******pppppppuStack_154;\n  undefined *puStack_150;\n  undefined4 uStack_148;\n  undefined4 uStack_144;\n  undefined4 *******pppppppuStack_13c;\n  undefined4 *******pppppppuStack_138;\n  undefined4 ******ppppppuStack_134;\n  undefined4 *******pppppppuStack_130;\n  undefined4 *******pppppppuStack_12c;\n  undefined4 *******pppppppuStack_128;\n  undefined4 ******ppppppuStack_124;\n  undefined4 *puStack_120;\n  int iStack_11c;\n  undefined4 *******pppppppuStack_118;\n  undefined4 *******pppppppuStack_114;\n  undefined4 ******ppppppuStack_110;\n  undefined4 *******pppppppuStack_10c;\n  undefined4 ******ppppppuStack_108;\n  undefined4 *******pppppppuStack_104;\n  undefined4 *******pppppppuStack_100;\n  code *pcStack_fc;\n  undefined4 ******local_e8;\n  undefined4 *******local_e4;\n  double local_c8;\n  double local_a0;\n  undefined4 *******local_80;\n  undefined4 *******local_7c;\n  undefined4 ******local_78;\n  undefined4 *******local_74;\n  undefined4 *******local_70;\n  undefined4 *******local_6c;\n  undefined4 *******local_68;\n  undefined4 *******local_64;\n  undefined4 *******local_60;\n  int local_5c;\n  \n  puVar20 = PTR___stack_chk_guard_003a9230;\n  local_5c = *(int *)PTR___stack_chk_guard_003a9230;\n  if (param_1 == (undefined4 *******)0x0) {\nLAB_001c8ef8:\n    param_1 = unaff_s1;\n    (*(code *)PTR___assert_fail_003a9608)\n              (PTR_LAB_003a88e0 + 0xdd0,PTR_s_courses_003a88ec + -0x288c,0x322,\n               PTR_s_courses_003a88ec + -0x2688);\n  }\n  else if (param_1[0xcdb] == (undefined4 ******)0xabacadab) {\n    if (param_1[0xcd4] != (undefined4 ******)0x0) {\n      local_e4 = param_1 + 0xd0;\n      local_e8 = (undefined4 ******)(PTR_s_t_to_left_003a88e4 + -0x62ac);\n      (*(code *)PTR_LogMagickEvent_003a91e0)\n                (0x8000,PTR_s_courses_003a88ec + -0x288c,PTR_s_courses_003a88ec + -0x269c,0x325);\n    }\n    unaff_s6 = (undefined4 *******)(*(code *)PTR_NewImageList_003a8e84)();\n    local_80 = unaff_s6;\n    ppppppuVar2 = (undefined4 ******)\n                  (*(code *)PTR_ParseGravityGeometry_003a97fc)(param_1,param_2,&local_7c,param_3);\n    unaff_s4 = local_78;\n    unaff_s0 = local_7c;\n    unaff_s3 = (undefined4 *******)PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;\n    if ((int)ppppppuVar2 << 0xe < 0) {\n      ppppppuVar7 = param_1[7];\n      if (local_7c == (undefined4 *******)0x0) {\n        local_7c = (undefined4 *******)0x1;\n        dVar35 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n      }\n      else {\n        dVar35 = (double)(int)local_7c;\n        if ((int)local_7c < 0) {\n          dVar35 = dVar35 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n      }\n      if (local_78 == (undefined4 ******)0x0) {\n        dVar30 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n        local_78 = (undefined4 ******)0x1;\n        if (((uint)ppppppuVar2 & 0x2000) != 0) goto LAB_001c8e14;\nLAB_001c8484:\n        pppppppuVar9 = local_74;\n        if ((int)local_74 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_74;\n        }\n        puVar8 = (undefined *)((int)param_1[6] - (int)pppppppuVar9);\n        pppppppuVar9 = local_70;\n        if ((int)local_70 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_70;\n        }\n        puVar3 = (undefined *)((int)ppppppuVar7 - (int)pppppppuVar9);\n      }\n      else {\n        dVar30 = (double)(int)local_78;\n        if ((int)local_78 < 0) {\n          dVar30 = dVar30 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n        if (((uint)ppppppuVar2 & 0x2000) == 0) goto LAB_001c8484;\nLAB_001c8e14:\n        pppppppuVar9 = local_74;\n        if ((int)local_74 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_74;\n        }\n        puVar8 = (undefined *)((int)pppppppuVar9 + (int)param_1[6]);\n        if ((int)local_70 < 0) {\n          puVar3 = (undefined *)((int)ppppppuVar7 - (int)local_70);\n        }\n        else {\n          puVar3 = (undefined *)((int)local_70 + (int)ppppppuVar7);\n        }\n      }\n      unaff_s4 = (undefined4 ******)((uint)ppppppuVar2 & 0x2000);\n      dVar34 = (double)(int)puVar8;\n      if ((int)puVar8 < 0) {\n        dVar34 = dVar34 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n      }\n      dVar35 = dVar34 / dVar35;\n      local_c8 = (double)(int)puVar3;\n      if ((int)puVar3 < 0) {\n        local_c8 = local_c8 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n      }\n      dVar25 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n      local_a0 = dVar25;\n      if (dVar35 < dVar25) {\n        local_a0 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n        dVar35 = dVar25;\n      }\n      if (local_a0 <= local_c8 / dVar30) {\n        local_a0 = local_c8 / dVar30;\n      }\n      dVar30 = 0.0;\n      unaff_s7 = local_70;\n      if (0.0 < local_c8) {\n        dVar25 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4780);\n        dVar31 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4788);\n        if (unaff_s4 != (undefined4 ******)0x0) goto LAB_001c8b70;\nLAB_001c854c:\n        unaff_s7 = local_70;\n        dVar32 = dVar30;\n        if ((int)local_70 < 1) {\n          dVar32 = dVar30 - (double)(int)local_70;\n        }\n        dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n        dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n        if (dVar32 - dVar26 < dVar27 - dVar32) {\n          dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar23 = (code *)PTR_floor_003a9670;\n          if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d7c;\n        }\n        else {\n          if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d7c:\n            iVar15 = -0x7ffffdff;\n            goto joined_r0x001c8cbc;\n          }\n          dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar23 = (code *)PTR_ceil_003a8c20;\n        }\n        if (dVar26 < dVar32) {\n          iVar15 = 0x7ffffdff;\n        }\n        else {\n          dVar32 = (double)(*pcVar23)(dVar32);\n          iVar15 = (int)dVar32;\n        }\njoined_r0x001c8cbc:\n        dVar30 = dVar30 + local_a0;\n        if ((int)unaff_s7 < 0) {\n          dVar32 = 0.0;\n        }\n        else {\n          dVar32 = (double)(int)unaff_s7;\n        }\n        dVar32 = dVar30 + dVar32;\n        dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n        dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n        if (dVar32 - dVar26 < dVar27 - dVar32) {\n          if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8630;\n            goto LAB_001c8cec;\n          }\n        }\n        else if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;\n          goto LAB_001c8d18;\n        }\nLAB_001c8c88:\n        iVar14 = -0x7ffffdff;\nLAB_001c8644:\n        do {\n          unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n          param_2 = (undefined4 *******)((int)param_1[0x8d] + iVar15);\n          dVar32 = 0.0;\n          local_68 = unaff_s8;\n          local_60 = param_2;\n          if (0.0 < dVar34) {\n            dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n            unaff_s6 = &local_6c;\n            dVar27 = *(double *)((int)unaff_s3 + 0x4780);\n            do {\n              unaff_s7 = local_74;\n              if (unaff_s4 == (undefined4 ******)0x0) {\n                dVar33 = dVar32;\n                if ((int)local_74 < 1) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }\nLAB_001c8b04:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;\nLAB_001c8708:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8700:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar33 = 0.0;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8768:\n                  dVar33 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar33 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n              }\n              else {\n                dVar33 = dVar32;\n                if (0 < (int)local_74) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar27 <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar33 = 0.0;\n                }\n                else {\n                  if (dVar33 < dVar27) goto LAB_001c8b24;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (dVar26 < dVar33) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8850:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < dVar25) goto LAB_001c8a44;\n                  if (dVar33 <= dVar26) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar14 = 0x7ffffdff;\n                }\n                else if (dVar25 <= dVar33) {\n                  if (dVar33 <= dVar31) goto LAB_001c8abc;\n                  iVar14 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar14 = -0x7ffffdff;\n                }\n              }\n              unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n              param_2 = (undefined4 *******)((int)param_1[0x8c] + iVar15);\n              local_6c = unaff_s8;\n              local_64 = param_2;\n              iVar15 = (*(code *)PTR_CropImage_003a90b8)(param_1,unaff_s6,param_3);\n              if (iVar15 != 0) {\n                (*(code *)PTR_AppendImageToList_003a9880)(&local_80,iVar15);\n              }\n            } while (dVar32 < dVar34);\n          }\n          unaff_s5 = unaff_s3;\n          if (local_c8 <= dVar30) break;\n          if (unaff_s4 == (undefined4 ******)0x0) goto LAB_001c854c;\nLAB_001c8b70:\n          unaff_s7 = local_70;\n          dVar32 = dVar30;\n          if (0 < (int)local_70) {\n            dVar32 = dVar30 - (double)(int)local_70;\n          }\n          dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n          dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          if (dVar32 - dVar26 < dVar27 - dVar32) {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d8c;\n            pcVar23 = (code *)PTR_floor_003a9670;\n            if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8d50;\nLAB_001c8bd8:\n            dVar32 = (double)(*pcVar23)(dVar32);\n            iVar15 = (int)dVar32;\nLAB_001c8bf0:\n            dVar30 = dVar30 + local_a0;\n            if (-2 < (int)unaff_s7) goto LAB_001c8c00;\nLAB_001c8d6c:\n            dVar32 = (double)(int)unaff_s7;\n          }\n          else {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d8c:\n              iVar15 = -0x7ffffdff;\n              goto LAB_001c8bf0;\n            }\n            pcVar23 = (code *)PTR_ceil_003a8c20;\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8bd8;\nLAB_001c8d50:\n            iVar15 = 0x7ffffdff;\n            dVar30 = dVar30 + local_a0;\n            if ((int)unaff_s7 < -1) goto LAB_001c8d6c;\nLAB_001c8c00:\n            dVar32 = 0.0;\n          }\n          dVar32 = dVar30 + dVar32;\n          dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n          dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          if (dVar32 - dVar26 < dVar27 - dVar32) {\n            if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n              if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) {\nLAB_001c8cec:\n                iVar14 = 0x7ffffdff;\n              }\n              else {\nLAB_001c8630:\n                dVar32 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n                iVar14 = (int)dVar32;\n              }\n              goto LAB_001c8644;\n            }\n            goto LAB_001c8c88;\n          }\n          if (dVar32 < dVar25) goto LAB_001c8c88;\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;\nLAB_001c8d18:\n          dVar32 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          iVar14 = (int)dVar32;\n        } while( true );\n      }\n      (*(code *)PTR_ClearMagickException_003a90f8)(param_3);\n      pppppppuVar9 = local_80;\n      unaff_s0 = param_2;\n    }\n    else {\n      unaff_s3 = &local_7c;\n      if (((local_7c == (undefined4 *******)0x0) && (local_78 == (undefined4 ******)0x0)) ||\n         (((uint)ppppppuVar2 & 3) != 0)) {\n        local_80 = (undefined4 *******)(*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n        pppppppuVar9 = local_80;\n        unaff_s4 = ppppppuVar2;\n        if ((local_80 != (undefined4 *******)0x0) &&\n           (unaff_s4 = (undefined4 ******)((uint)ppppppuVar2 & 0x2000),\n           unaff_s4 != (undefined4 ******)0x0)) {\n          local_80[0x8c] = (undefined4 ******)((int)local_80[0x8c] - (int)local_74);\n          local_80[0x8d] = (undefined4 ******)((int)local_80[0x8d] - (int)local_70);\n          local_80[0x8a] = local_7c;\n          local_80[0x8b] = local_78;\n        }\n      }\n      else {\n        unaff_s7 = (undefined4 *******)param_1[6];\n        if ((local_7c < unaff_s7) || (local_78 < param_1[7])) {\n          ppppppuVar2 = param_1[0x8b];\n          if ((undefined4 *******)param_1[0x8a] != (undefined4 *******)0x0) {\n            unaff_s7 = (undefined4 *******)param_1[0x8a];\n          }\n          if (ppppppuVar2 == (undefined4 ******)0x0) {\n            ppppppuVar2 = param_1[7];\n          }\n          if (local_7c == (undefined4 *******)0x0) {\n            unaff_s0 = unaff_s7;\n          }\n          if (local_78 == (undefined4 ******)0x0) {\n            unaff_s4 = ppppppuVar2;\n          }\n          pppppppuVar9 = local_80;\n          if (0 < (int)ppppppuVar2) {\n            unaff_s3 = (undefined4 *******)0x0;\n            unaff_s8 = &local_80;\n            do {\n              unaff_s5 = (undefined4 *******)0x0;\n              if ((int)unaff_s7 < 1) {\n                pppppppuVar9 = local_80;\n                if (unaff_s6 == (undefined4 *******)0x0) break;\n              }\n              else {\n                do {\n                  local_7c = unaff_s0;\n                  local_78 = unaff_s4;\n                  local_74 = unaff_s5;\n                  local_70 = unaff_s3;\n                  unaff_s6 = (undefined4 *******)\n                             (*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n                  pppppppuVar9 = local_80;\n                  if (unaff_s6 == (undefined4 *******)0x0) goto LAB_001c8908;\n                  unaff_s5 = (undefined4 *******)((int)unaff_s5 + (int)unaff_s0);\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);\n              }\n              unaff_s3 = (undefined4 *******)((int)unaff_s3 + (int)unaff_s4);\n              pppppppuVar9 = local_80;\n            } while ((int)unaff_s3 < (int)ppppppuVar2);\n          }\n        }\n        else {\n          local_e8 = param_3;\n          pppppppuVar9 = (undefined4 *******)(*(code *)PTR_CloneImage_003a9830)(param_1,0,0,1);\n        }\n      }\n    }\nLAB_001c8908:\n    if (local_5c == *(int *)puVar20) {\n      return pppppppuVar9;\n    }\n    (*(code *)PTR___stack_chk_fail_003a9064)();\n    unaff_s1 = param_1;\n    unaff_s2 = param_3;\n    goto LAB_001c8ef8;\n  }\n  ppppppuVar2 = (undefined4 ******)0x323;\n  pppppppuVar12 = (undefined4 *******)(PTR_s_courses_003a88ec + -0x288c);\n  pcVar23 = ExcerptImage;\n  pppppppuVar9 = (undefined4 *******)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3784);\n  puVar20 = PTR___assert_fail_003a9608;\n  (*(code *)PTR___assert_fail_003a9608)();\n  puVar8 = puVar20 + 0x1e7970;\n  piVar18 = *(int **)(puVar20 + 0x1e02f0);\n  iStack_11c = *piVar18;\n  puStack_150 = puVar8;\n  pppppppuStack_118 = unaff_s0;\n  pppppppuStack_114 = param_1;\n  ppppppuStack_110 = unaff_s2;\n  pppppppuStack_10c = unaff_s3;\n  ppppppuStack_108 = unaff_s4;\n  pppppppuStack_104 = unaff_s5;\n  pppppppuStack_100 = unaff_s6;\n  pcStack_fc = pcVar23;\n  if (pppppppuVar9 == (undefined4 *******)0x0) {\n    iVar15 = *(int *)(puVar20 + 0x1df9ac) + -0x26ac;\n    (**(code **)(puVar20 + 0x1e06c8))\n              (*(int *)(puVar20 + 0x1df9a8) + -0x37b0,*(int *)(puVar20 + 0x1df9ac) + -0x288c,0x3f4,\n               iVar15);\nLAB_001c92d4:\n    iVar15 = iVar15 + -0x26ac;\n    (**(code **)(puVar8 + -0x72a8))\n              (*(int *)(puVar8 + -0x7fd0) + 0x294c,*(int *)(puVar8 + -0x7fc4) + -0x288c,0x3fa,iVar15\n              );\n    ppppppuVar2 = unaff_s2;\nLAB_001c92f4:\n    iVar15 = iVar15 + -0x26ac;\n    (**(code **)(puVar8 + -0x72a8))\n              (*(int *)(puVar8 + -0x7fd0) + 0x1cac,*(int *)(puVar8 + -0x7fc4) + -0x288c,0x3f9,iVar15\n              );\nLAB_001c9314:\n    (**(code **)(puVar8 + -0x784c))();\n    pppppppuVar9 = unaff_s0;\nLAB_001c9320:\n    (**(code **)(puVar8 + -0x72a8))\n              (*(int *)(puVar8 + -0x7fc4) + -0x2850,*(int *)(puVar8 + -0x7fc4) + -0x288c,0x3f8,\n               iVar15 + -0x26ac);\n    unaff_s2 = ppppppuVar2;\n  }\n  else if (pppppppuVar9[0xcdb] == (undefined4 ******)0xabacadab) {\n    if (pppppppuVar9[0xcd4] != (undefined4 ******)0x0) {\n      pppppppuStack_154 = pppppppuVar9 + 0xd0;\n      ppppppuStack_158 = (undefined4 ******)(*(int *)(puVar20 + 0x1df9a4) + -0x62ac);\n      (**(code **)(puVar20 + 0x1e02a0))\n                (0x8000,*(int *)(puVar20 + 0x1df9ac) + -0x288c,\n                 *(int *)(puVar20 + 0x1df9ac) + -0x26bc,0x3f7);\n    }\n    iVar15 = *(int *)(puStack_150 + -0x7fc4);\n    unaff_s3 = pppppppuVar12;\n    puVar8 = puStack_150;\n    if (pppppppuVar12 != (undefined4 *******)0x0) {\n      unaff_s0 = pppppppuVar9;\n      if (ppppppuVar2 == (undefined4 ******)0x0) goto LAB_001c92f4;\n      unaff_s2 = ppppppuVar2;\n      if (ppppppuVar2[7] != (undefined4 *****)0xabacadab) goto LAB_001c92d4;\n      iVar15 = 1;\n      ppppppuStack_158 = ppppppuVar2;\n      param_1 = (undefined4 *******)\n                (**(code **)(puStack_150 + -0x7080))(pppppppuVar9,*pppppppuVar12,pppppppuVar12[1],1)\n      ;\n      if (param_1 != (undefined4 *******)0x0) {\n        uStack_144 = 0;\n        uStack_148 = 0;\n        unaff_s5 = (undefined4 *******)\n                   (**(code **)(puStack_150 + -0x715c))(pppppppuVar9,ppppppuVar2);\n        unaff_s6 = (undefined4 *******)(**(code **)(puStack_150 + -0x79dc))(param_1,ppppppuVar2);\n        iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9);\n        if (((iVar15 == 4) ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9), iVar15 == 3)) &&\n           ((iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 4 ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 3)))) {\n          (**(code **)(puStack_150 + -0x7774))(7);\n          ppppppuVar7 = param_1[7];\n          if ((int)ppppppuVar7 < 0) {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1 < (int)ppppppuVar7 + 0x3f >> 6) goto LAB_001c9298;\nLAB_001c91a4:\n            bVar1 = (int)ppppppuVar7 < 0x80;\n          }\n          else {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if ((int)ppppppuVar7 >> 6 <= extraout_v1) goto LAB_001c91a4;\nLAB_001c9298:\n            (*pcVar23)(7);\n            bVar1 = extraout_v1_02 < 2;\n          }\n          iVar14 = 1;\n          if ((bool)(bVar1 ^ 1)) {\n            (**(code **)(puStack_150 + -0x7774))(7);\n            ppppppuVar7 = param_1[7];\n            if ((int)ppppppuVar7 < 0) {\n              ppppppuVar7 = (undefined4 ******)((int)ppppppuVar7 + 0x3f);\n            }\n            iVar14 = (int)ppppppuVar7 >> 6;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1_01 < iVar14) {\nLAB_001c9234:\n              (*pcVar23)(7);\n              iVar14 = extraout_v1_00;\n            }\n            goto LAB_001c9088;\n          }\n          iVar10 = *(int *)(puStack_150 + -0x7f10);\n        }\n        else {\n          uVar36 = (**(code **)(puStack_150 + -0x7774))(7);\n          if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            uVar36 = (*pcVar23)(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c9070;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            iVar14 = 1;\n          }\n          else {\nLAB_001c9070:\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\nLAB_001c9074:\n            uVar36 = (*pcVar23)(7);\n            if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n               (pcVar23 = *(code **)(puStack_150 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c9234;\n            iVar14 = 2;\n          }\nLAB_001c9088:\n          iVar10 = *(int *)(puStack_150 + -0x7f10);\n        }\n        iVar15 = 0;\n        ppppppuStack_124 = (undefined4 ******)0x1;\n        puStack_120 = &uStack_148;\n        pppppppuStack_13c = pppppppuVar9;\n        pppppppuStack_138 = pppppppuVar12;\n        ppppppuStack_134 = ppppppuVar2;\n        pppppppuStack_130 = unaff_s6;\n        pppppppuStack_12c = unaff_s5;\n        pppppppuStack_128 = param_1;\n        (**(code **)(puStack_150 + -0x7718))(iVar10 + 0x5428,&pppppppuStack_13c,iVar14,0);\n        ppppppuVar2 = ppppppuStack_124;\n        (**(code **)(puStack_150 + -0x79bc))(unaff_s6);\n        (**(code **)(puStack_150 + -0x79bc))(unaff_s5);\n        param_1[0xa8] = pppppppuVar9[0xa8];\n        if (ppppppuVar2 == (undefined4 ******)0x0) {\n          param_1 = (undefined4 *******)(**(code **)(puStack_150 + -0x7964))(param_1);\n        }\n      }\n      puVar8 = puStack_150;\n      if (iStack_11c == *piVar18) {\n        return param_1;\n      }\n      goto LAB_001c9314;\n    }\n    goto LAB_001c9320;\n  }\n  ppppppuVar2 = (undefined4 ******)0x3f5;\n  pcVar21 = *(code **)(puVar8 + -0x72a8);\n  pppppppuVar13 = (undefined4 *******)(*(int *)(puVar8 + -0x7fc4) + -0x288c);\n  pcVar24 = ExtentImage;\n  pppppppuVar12 = (undefined4 *******)(*(int *)(puVar8 + -0x7fc8) + -0x3784);\n  (*pcVar21)();\n  pcVar23 = pcVar21 + 0x1e754c;\n  pcStack_188 = pcVar23;\n  pppppppuStack_17c = pppppppuVar9;\n  pppppppuStack_178 = param_1;\n  ppppppuStack_174 = unaff_s2;\n  pppppppuStack_170 = unaff_s3;\n  pcStack_16c = pcVar24;\n  if (pppppppuVar12 == (undefined4 *******)0x0) {\n    iVar15 = *(int *)(pcVar21 + 0x1df588) + -0x26c8;\n    (**(code **)(pcVar21 + 0x1e02a4))\n              (*(int *)(pcVar21 + 0x1df584) + -0x37b0,*(int *)(pcVar21 + 0x1df588) + -0x288c,0x474,\n               iVar15);\nLAB_001c94fc:\n    iVar15 = iVar15 + -0x26c8;\n    (**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fc4) + -0x2850,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x478,\n               iVar15);\nLAB_001c951c:\n    iVar15 = iVar15 + -0x26c8;\n    (**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fd0) + 0x294c,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x47a,\n               iVar15);\n    pppppppuVar12 = pppppppuVar9;\nLAB_001c953c:\n    (**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fd0) + 0x1cac,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x479,\n               iVar15 + -0x26c8);\n  }\n  else if (pppppppuVar12[0xcdb] == (undefined4 ******)0xabacadab) {\n    if (pppppppuVar12[0xcd4] != (undefined4 ******)0x0) {\n      pppppppuStack_194 = pppppppuVar12 + 0xd0;\n      ppppppuStack_198 = (undefined4 ******)(*(int *)(pcVar21 + 0x1df580) + -0x62ac);\n      (**(code **)(pcVar21 + 0x1dfe7c))\n                (0x8000,*(int *)(pcVar21 + 0x1df588) + -0x288c,\n                 *(int *)(pcVar21 + 0x1df588) + -0x26d4,0x477);\n    }\n    iVar15 = *(int *)(pcStack_188 + -0x7fc4);\n    pppppppuVar9 = pppppppuVar12;\n    param_1 = pppppppuVar13;\n    unaff_s2 = ppppppuVar2;\n    pcVar23 = pcStack_188;\n    if (pppppppuVar13 == (undefined4 *******)0x0) goto LAB_001c94fc;\n    if (ppppppuVar2 != (undefined4 ******)0x0) {\n      if (ppppppuVar2[7] == (undefined4 *****)0xabacadab) {\n        ppppppuStack_198 = ppppppuVar2;\n        pppppppuVar9 = (undefined4 *******)\n                       (**(code **)(pcStack_188 + -0x7080))\n                                 (pppppppuVar12,*pppppppuVar13,pppppppuVar13[1],1);\n        if (pppppppuVar9 != (undefined4 *******)0x0) {\n          iVar15 = (**(code **)(pcStack_188 + -0x7a20))(pppppppuVar9,ppppppuVar2);\n          if (iVar15 == 0) {\n            (**(code **)(pcStack_188 + -0x7964))(pppppppuVar9);\n            pppppppuVar9 = (undefined4 *******)0x0;\n          }\n          else {\n            pppppppuStack_194 = (undefined4 *******)-(int)pppppppuVar13[3];\n            ppppppuStack_198 = (undefined4 ******)-(int)pppppppuVar13[2];\n            ppppppuStack_190 = ppppppuVar2;\n            iVar15 = (**(code **)(pcStack_188 + -0x7bec))\n                               (pppppppuVar9,pppppppuVar12,pppppppuVar12[0x99],1);\n            if (iVar15 != 0) {\n              (**(code **)(pcStack_188 + -0x7d18))\n                        (pppppppuVar9,pppppppuVar12[6],pppppppuVar12[7],pppppppuVar13);\n            }\n          }\n        }\n        return pppppppuVar9;\n      }\n      goto LAB_001c951c;\n    }\n    goto LAB_001c953c;\n  }\n  pcVar21 = *(code **)(pcVar23 + -0x72a8);\n  pppppppuVar9 = (undefined4 *******)(*(int *)(pcVar23 + -0x7fc4) + -0x288c);\n  pcVar24 = FlipImage;\n  pppppppuVar13 = (undefined4 *******)(*(int *)(pcVar23 + -0x7fc8) + -0x3784);\n  (*pcVar21)(pppppppuVar13,pppppppuVar9,0x475,*(int *)(pcVar23 + -0x7fc4) + -0x26c8);\n  pcVar23 = pcVar21 + 0x1e7330;\n  piVar16 = *(int **)(pcVar21 + 0x1dfcb0);\n  iStack_1d4 = *piVar16;\n  pcStack_208 = pcVar23;\n  pppppppuStack_1d0 = pppppppuVar12;\n  pppppppuStack_1cc = param_1;\n  ppppppuStack_1c8 = unaff_s2;\n  pppppppuStack_1c4 = unaff_s3;\n  piStack_1c0 = piVar18;\n  pppppppuStack_1bc = unaff_s5;\n  pppppppuStack_1b8 = unaff_s6;\n  pppppppuStack_1b4 = unaff_s7;\n  pppppppuStack_1b0 = unaff_s8;\n  pcStack_1ac = pcVar24;\n  if (pppppppuVar13 == (undefined4 *******)0x0) {\n    (**(code **)(pcVar21 + 0x1e0088))\n              (*(int *)(pcVar21 + 0x1df368) + -0x37b0,*(int *)(pcVar21 + 0x1df36c) + -0x288c,0x4bc,\n               *(int *)(pcVar21 + 0x1df36c) + -0x26e0);\n    pppppppuVar9 = param_1;\nLAB_001c9944:\n    (**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fd0) + 0x1cac,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x4c0,\n               *(int *)(pcVar23 + -0x7fc4) + -0x26e0);\nLAB_001c9968:\n    (**(code **)(pcVar23 + -0x784c))();\n    pppppppuVar13 = unaff_s7;\nLAB_001c9974:\n    (**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fd0) + 0x294c,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x4c1,\n               *(int *)(pcVar23 + -0x7fc4) + -0x26e0);\n    pppppppuStack_244 = pppppppuVar9;\n  }\n  else {\n    pppppppuStack_244 = param_1;\n    if (pppppppuVar13[0xcdb] == (undefined4 ******)0xabacadab) {\n      if (pppppppuVar13[0xcd4] != (undefined4 ******)0x0) {\n        pppppppuStack_20c = pppppppuVar13 + 0xd0;\n        pppppppuStack_210 = (undefined4 *******)(*(int *)(pcVar21 + 0x1df364) + -0x62ac);\n        (**(code **)(pcVar21 + 0x1dfc60))\n                  (0x8000,*(int *)(pcVar21 + 0x1df36c) + -0x288c,\n                   *(int *)(pcVar21 + 0x1df36c) + -0x26ec,0x4bf);\n      }\n      unaff_s7 = pppppppuVar13;\n      pcVar23 = pcStack_208;\n      if (pppppppuVar9 == (undefined4 *******)0x0) goto LAB_001c9944;\n      if (pppppppuVar9[7] == (undefined4 ******)0xabacadab) {\n        pppppppuStack_210 = pppppppuVar9;\n        pppppppuVar12 =\n             (undefined4 *******)(**(code **)(pcStack_208 + -0x7080))(pppppppuVar13,0,0,1);\n        if (pppppppuVar12 != (undefined4 *******)0x0) {\n          ppppppuStack_1fc = pppppppuVar13[0x8c];\n          unaff_s8 = (undefined4 *******)pppppppuVar13[0x8a];\n          unaff_s2 = pppppppuVar13[0x8b];\n          unaff_s6 = (undefined4 *******)pppppppuVar13[0x8d];\n          uStack_1f4 = 0;\n          uStack_1f8 = 0;\n          piVar18 = (int *)(**(code **)(pcStack_208 + -0x715c))(pppppppuVar13,pppppppuVar9);\n          unaff_s5 = (undefined4 *******)\n                     (**(code **)(pcStack_208 + -0x79dc))(pppppppuVar12,pppppppuVar9);\n          iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13);\n          if (((iVar15 == 4) ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13), iVar15 == 3)) &&\n             ((iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 4 ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 3)))) {\n            (**(code **)(pcStack_208 + -0x7774))(7);\n            ppppppuVar2 = pppppppuVar12[7];\n            if ((int)ppppppuVar2 < 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_03 < (int)ppppppuVar2 + 0x3f >> 6) goto LAB_001c98d4;\nLAB_001c981c:\n              bVar1 = (int)ppppppuVar2 < 0x80;\n            }\n            else {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if ((int)ppppppuVar2 >> 6 <= extraout_v1_03) goto LAB_001c981c;\nLAB_001c98d4:\n              (*pcVar23)(7);\n              bVar1 = extraout_v1_05 < 2;\n            }\n            iVar15 = 1;\n            if ((bool)(bVar1 ^ 1)) {\n              (**(code **)(pcStack_208 + -0x7774))(7);\n              ppppppuVar2 = pppppppuVar12[7];\n              if ((int)ppppppuVar2 < 0) {\n                ppppppuVar2 = (undefined4 ******)((int)ppppppuVar2 + 0x3f);\n              }\n              iVar15 = (int)ppppppuVar2 >> 6;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_06 < iVar15) {\nLAB_001c98ac:\n                (*pcVar23)(7);\n                iVar15 = extraout_v1_04;\n              }\n              goto LAB_001c96d8;\n            }\n            iVar14 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          else {\n            uVar36 = (**(code **)(pcStack_208 + -0x7774))(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              uVar36 = (*pcVar23)(7);\n              if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c96c0;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              iVar15 = 1;\n            }\n            else {\nLAB_001c96c0:\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\nLAB_001c96c4:\n              uVar36 = (*pcVar23)(7);\n              if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n                 (pcVar23 = *(code **)(pcStack_208 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c98ac;\n              iVar15 = 2;\n            }\nLAB_001c96d8:\n            iVar14 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          puStack_1dc = &uStack_1f8;\n          pppppppuStack_1d8 = (undefined4 *******)0x1;\n          pppppppuStack_1f0 = pppppppuVar13;\n          pppppppuStack_1ec = pppppppuVar9;\n          pppppppuStack_1e8 = unaff_s5;\n          piStack_1e4 = piVar18;\n          pppppppuStack_1e0 = pppppppuVar12;\n          (**(code **)(pcStack_208 + -0x7718))(iVar14 + 0x56bc,&pppppppuStack_1f0,iVar15,0);\n          pppppppuVar9 = pppppppuStack_1d8;\n          (**(code **)(pcStack_208 + -0x79bc))(unaff_s5);\n          (**(code **)(pcStack_208 + -0x79bc))(piVar18);\n          pppppppuVar12[0xa8] = pppppppuVar13[0xa8];\n          if (unaff_s2 != (undefined4 ******)0x0) {\n            unaff_s6 = (undefined4 *******)\n                       ((int)unaff_s2 + (-(int)unaff_s6 - (int)pppppppuVar12[7]));\n          }\n          pppppppuVar12[0x8a] = unaff_s8;\n          pppppppuVar12[0x8b] = unaff_s2;\n          pppppppuVar12[0x8c] = ppppppuStack_1fc;\n          pppppppuVar12[0x8d] = unaff_s6;\n          if (pppppppuVar9 == (undefined4 *******)0x0) {\n            pppppppuVar12 = (undefined4 *******)(**(code **)(pcStack_208 + -0x7964))(pppppppuVar12);\n          }\n        }\n        pcVar23 = pcStack_208;\n        if (iStack_1d4 == *piVar16) {\n          return pppppppuVar12;\n        }\n        goto LAB_001c9968;\n      }\n      goto LAB_001c9974;\n    }\n  }\n  pcVar21 = *(code **)(pcVar23 + -0x72a8);\n  iVar14 = *(int *)(pcVar23 + -0x7fc4) + -0x288c;\n  pcVar24 = FlopImage;\n  iVar15 = *(int *)(pcVar23 + -0x7fc8) + -0x3784;\n  (*pcVar21)(iVar15,iVar14,0x4bd,*(int *)(pcVar23 + -0x7fc4) + -0x26e0);\n  piVar17 = *(int **)(pcVar21 + 0x1df874);\n  iStack_24c = *piVar17;\n  pppppppuStack_248 = pppppppuVar12;\n  ppppppuStack_240 = unaff_s2;\n  piStack_23c = piVar16;\n  piStack_238 = piVar18;\n  pppppppuStack_234 = unaff_s5;\n  pppppppuStack_230 = unaff_s6;\n  pppppppuStack_22c = pppppppuVar13;\n  pppppppuStack_228 = unaff_s8;\n  pcStack_224 = pcVar24;\n  if (iVar15 == 0) {\n    pppppppuVar9 = (undefined4 *******)\n                   (**(code **)(pcVar21 + 0x1dfc4c))\n                             (*(int *)(pcVar21 + 0x1def2c) + -0x37b0,\n                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x543,\n                              *(int *)(pcVar21 + 0x1def30) + -0x26f8);\n    return pppppppuVar9;\n  }\n  if (*(int *)(iVar15 + 0x336c) != -0x54535255) {\n    pppppppuVar9 = (undefined4 *******)\n                   (**(code **)(pcVar21 + 0x1dfc4c))\n                             (*(int *)(pcVar21 + 0x1def2c) + -0x3784,\n                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x544,\n                              *(int *)(pcVar21 + 0x1def30) + -0x26f8);\n    return pppppppuVar9;\n  }\n  if (*(int *)(iVar15 + 0x3350) != 0) {\n    (**(code **)(pcVar21 + 0x1df824))\n              (0x8000,*(int *)(pcVar21 + 0x1def30) + -0x288c,*(int *)(pcVar21 + 0x1def30) + -0x2704,\n               0x546,*(int *)(pcVar21 + 0x1def28) + -0x62ac,iVar15 + 0x340);\n  }\n  if (iVar14 == 0) {\n    pppppppuVar9 = (undefined4 *******)\n                   (**(code **)(pcVar21 + 0x1dfc4c))\n                             (*(int *)(pcVar21 + 0x1def24) + 0x1cac,\n                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x547,\n                              *(int *)(pcVar21 + 0x1def30) + -0x26f8);\n    return pppppppuVar9;\n  }\n  if (*(int *)(iVar14 + 0x1c) != -0x54535255) goto LAB_001c9db0;\n  pppppppuVar9 = (undefined4 *******)(**(code **)(pcVar21 + 0x1dfe74))(iVar15,0,0,1,iVar14);\n  if (pppppppuVar9 != (undefined4 *******)0x0) {\n    ppppppuVar2 = *(undefined4 *******)(iVar15 + 0x234);\n    ppppppuVar7 = *(undefined4 *******)(iVar15 + 0x228);\n    ppppppuVar22 = *(undefined4 *******)(iVar15 + 0x22c);\n    ppppppuVar19 = *(undefined4 *******)(iVar15 + 0x230);\n    uStack_26c = 0;\n    uStack_270 = 0;\n    uVar4 = (**(code **)(pcVar21 + 0x1dfd98))(iVar15,iVar14);\n    uVar5 = (**(code **)(pcVar21 + 0x1df518))(pppppppuVar9,iVar14);\n    iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(iVar15);\n    if (((iVar10 == 4) || (iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(iVar15), iVar10 == 3)) &&\n       ((iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(pppppppuVar9), iVar10 == 4 ||\n        (iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(pppppppuVar9), iVar10 == 3)))) {\n      (**(code **)(pcVar21 + 0x1df780))(7);\n      ppppppuVar6 = pppppppuVar9[7];\n      if ((int)ppppppuVar6 < 0) {\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (extraout_v1_07 < (int)ppppppuVar6 + 0x3f >> 6) goto LAB_001c9d10;\nLAB_001c9c58:\n        bVar1 = (int)ppppppuVar6 < 0x80;\n      }\n      else {\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if ((int)ppppppuVar6 >> 6 <= extraout_v1_07) goto LAB_001c9c58;\nLAB_001c9d10:\n        (*pcVar23)(7);\n        bVar1 = extraout_v1_09 < 2;\n      }\n      iVar10 = 1;\n      if ((bool)(bVar1 ^ 1)) {\n        (**(code **)(pcVar21 + 0x1df780))(7);\n        ppppppuVar6 = pppppppuVar9[7];\n        if ((int)ppppppuVar6 < 0) {\n          ppppppuVar6 = (undefined4 ******)((int)ppppppuVar6 + 0x3f);\n        }\n        iVar10 = (int)ppppppuVar6 >> 6;\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (extraout_v1_10 < iVar10) {\nLAB_001c9ce8:\n          (*pcVar23)(7);\n          iVar10 = extraout_v1_08;\n        }\n        goto LAB_001c9b14;\n      }\n      iVar11 = *(int *)(pcVar21 + 0x1defe4);\n    }\n    else {\n      uVar36 = (**(code **)(pcVar21 + 0x1df780))(7);\n      if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (1 < (uint)uVar36) goto LAB_001c9b00;\n        uVar36 = (*pcVar23)(7);\n        if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c9afc;\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (1 < (uint)uVar36) goto LAB_001c9b00;\n        iVar10 = 1;\n      }\n      else {\nLAB_001c9afc:\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\nLAB_001c9b00:\n        uVar36 = (*pcVar23)(7);\n        if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n           (pcVar23 = *(code **)(pcVar21 + 0x1df780), (uint)uVar36 < 2)) goto LAB_001c9ce8;\n        iVar10 = 2;\n      }\nLAB_001c9b14:\n      iVar11 = *(int *)(pcVar21 + 0x1defe4);\n    }\n    puStack_254 = &uStack_270;\n    iStack_250 = 1;\n    iStack_268 = iVar15;\n    iStack_264 = iVar14;\n    uStack_260 = uVar5;\n    uStack_25c = uVar4;\n    pppppppuStack_258 = pppppppuVar9;\n    (**(code **)(pcVar21 + 0x1df7dc))(iVar11 + 0x594c,&iStack_268,iVar10,0);\n    iVar14 = iStack_250;\n    (**(code **)(pcVar21 + 0x1df538))(uVar5);\n    (**(code **)(pcVar21 + 0x1df538))(uVar4);\n    pppppppuVar9[0xa8] = *(undefined4 *******)(iVar15 + 0x2a0);\n    if (ppppppuVar7 != (undefined4 ******)0x0) {\n      ppppppuVar19 = (undefined4 ******)\n                     ((int)ppppppuVar7 + (-(int)ppppppuVar19 - (int)pppppppuVar9[6]));\n    }\n    pppppppuVar9[0x8a] = ppppppuVar7;\n    pppppppuVar9[0x8b] = ppppppuVar22;\n    pppppppuVar9[0x8c] = ppppppuVar19;\n    pppppppuVar9[0x8d] = ppppppuVar2;\n    if (iVar14 == 0) {\n      pppppppuVar9 = (undefined4 *******)(**(code **)(pcVar21 + 0x1df590))(pppppppuVar9);\n    }\n  }\n  if (iStack_24c == *piVar17) {\n    return pppppppuVar9;\n  }\n  (**(code **)(pcVar21 + 0x1df6a8))();\nLAB_001c9db0:\n  pppppppuVar9 = (undefined4 *******)\n                 (**(code **)(pcVar21 + 0x1dfc4c))\n                           (*(int *)(pcVar21 + 0x1def24) + 0x294c,\n                            *(int *)(pcVar21 + 0x1def30) + -0x288c,0x548,\n                            *(int *)(pcVar21 + 0x1def30) + -0x26f8);\n  return pppppppuVar9;\n}\n\n" (function_definition "undefined4 *******\nCropImageToTiles(undefined4 *******param_1,undefined4 *******param_2,undefined4 ******param_3)\n\n{\n  bool bVar1;\n  undefined4 ******ppppppuVar2;\n  undefined *puVar3;\n  undefined4 uVar4;\n  undefined4 uVar5;\n  undefined4 ******ppppppuVar6;\n  undefined4 ******ppppppuVar7;\n  int extraout_v1;\n  int extraout_v1_00;\n  int extraout_v1_01;\n  int extraout_v1_02;\n  int extraout_v1_03;\n  int extraout_v1_04;\n  int extraout_v1_05;\n  int extraout_v1_06;\n  int extraout_v1_07;\n  int extraout_v1_08;\n  int extraout_v1_09;\n  int extraout_v1_10;\n  undefined *puVar8;\n  undefined4 *******pppppppuVar9;\n  int iVar10;\n  int iVar11;\n  undefined4 *******pppppppuVar12;\n  undefined4 *******pppppppuVar13;\n  int iVar14;\n  int iVar15;\n  undefined4 *******unaff_s0;\n  undefined4 *******unaff_s1;\n  undefined4 ******unaff_s2;\n  undefined4 *******unaff_s3;\n  int *piVar16;\n  int *piVar17;\n  undefined4 ******unaff_s4;\n  int *piVar18;\n  undefined4 *******unaff_s5;\n  undefined4 *******unaff_s6;\n  undefined4 ******ppppppuVar19;\n  undefined4 *******unaff_s7;\n  undefined *puVar20;\n  code *pcVar21;\n  undefined4 *******unaff_s8;\n  undefined4 ******ppppppuVar22;\n  code *pcVar23;\n  code *pcVar24;\n  double dVar25;\n  double dVar26;\n  double dVar27;\n  double dVar28;\n  double dVar29;\n  double dVar30;\n  double dVar31;\n  double dVar32;\n  double dVar33;\n  double dVar34;\n  double dVar35;\n  undefined8 uVar36;\n  undefined4 uStack_270;\n  undefined4 uStack_26c;\n  int iStack_268;\n  int iStack_264;\n  undefined4 uStack_260;\n  undefined4 uStack_25c;\n  undefined4 *******pppppppuStack_258;\n  undefined4 *puStack_254;\n  int iStack_250;\n  int iStack_24c;\n  undefined4 *******pppppppuStack_248;\n  undefined4 *******pppppppuStack_244;\n  undefined4 ******ppppppuStack_240;\n  int *piStack_23c;\n  int *piStack_238;\n  undefined4 *******pppppppuStack_234;\n  undefined4 *******pppppppuStack_230;\n  undefined4 *******pppppppuStack_22c;\n  undefined4 *******pppppppuStack_228;\n  code *pcStack_224;\n  undefined4 *******pppppppuStack_210;\n  undefined4 *******pppppppuStack_20c;\n  code *pcStack_208;\n  undefined4 ******ppppppuStack_1fc;\n  undefined4 uStack_1f8;\n  undefined4 uStack_1f4;\n  undefined4 *******pppppppuStack_1f0;\n  undefined4 *******pppppppuStack_1ec;\n  undefined4 *******pppppppuStack_1e8;\n  int *piStack_1e4;\n  undefined4 *******pppppppuStack_1e0;\n  undefined4 *puStack_1dc;\n  undefined4 *******pppppppuStack_1d8;\n  int iStack_1d4;\n  undefined4 *******pppppppuStack_1d0;\n  undefined4 *******pppppppuStack_1cc;\n  undefined4 ******ppppppuStack_1c8;\n  undefined4 *******pppppppuStack_1c4;\n  int *piStack_1c0;\n  undefined4 *******pppppppuStack_1bc;\n  undefined4 *******pppppppuStack_1b8;\n  undefined4 *******pppppppuStack_1b4;\n  undefined4 *******pppppppuStack_1b0;\n  code *pcStack_1ac;\n  undefined4 ******ppppppuStack_198;\n  undefined4 *******pppppppuStack_194;\n  undefined4 ******ppppppuStack_190;\n  code *pcStack_188;\n  undefined4 *******pppppppuStack_17c;\n  undefined4 *******pppppppuStack_178;\n  undefined4 ******ppppppuStack_174;\n  undefined4 *******pppppppuStack_170;\n  code *pcStack_16c;\n  undefined4 ******ppppppuStack_158;\n  undefined4 *******pppppppuStack_154;\n  undefined *puStack_150;\n  undefined4 uStack_148;\n  undefined4 uStack_144;\n  undefined4 *******pppppppuStack_13c;\n  undefined4 *******pppppppuStack_138;\n  undefined4 ******ppppppuStack_134;\n  undefined4 *******pppppppuStack_130;\n  undefined4 *******pppppppuStack_12c;\n  undefined4 *******pppppppuStack_128;\n  undefined4 ******ppppppuStack_124;\n  undefined4 *puStack_120;\n  int iStack_11c;\n  undefined4 *******pppppppuStack_118;\n  undefined4 *******pppppppuStack_114;\n  undefined4 ******ppppppuStack_110;\n  undefined4 *******pppppppuStack_10c;\n  undefined4 ******ppppppuStack_108;\n  undefined4 *******pppppppuStack_104;\n  undefined4 *******pppppppuStack_100;\n  code *pcStack_fc;\n  undefined4 ******local_e8;\n  undefined4 *******local_e4;\n  double local_c8;\n  double local_a0;\n  undefined4 *******local_80;\n  undefined4 *******local_7c;\n  undefined4 ******local_78;\n  undefined4 *******local_74;\n  undefined4 *******local_70;\n  undefined4 *******local_6c;\n  undefined4 *******local_68;\n  undefined4 *******local_64;\n  undefined4 *******local_60;\n  int local_5c;\n  \n  puVar20 = PTR___stack_chk_guard_003a9230;\n  local_5c = *(int *)PTR___stack_chk_guard_003a9230;\n  if (param_1 == (undefined4 *******)0x0) {\nLAB_001c8ef8:\n    param_1 = unaff_s1;\n    (*(code *)PTR___assert_fail_003a9608)\n              (PTR_LAB_003a88e0 + 0xdd0,PTR_s_courses_003a88ec + -0x288c,0x322,\n               PTR_s_courses_003a88ec + -0x2688);\n  }\n  else if (param_1[0xcdb] == (undefined4 ******)0xabacadab) {\n    if (param_1[0xcd4] != (undefined4 ******)0x0) {\n      local_e4 = param_1 + 0xd0;\n      local_e8 = (undefined4 ******)(PTR_s_t_to_left_003a88e4 + -0x62ac);\n      (*(code *)PTR_LogMagickEvent_003a91e0)\n                (0x8000,PTR_s_courses_003a88ec + -0x288c,PTR_s_courses_003a88ec + -0x269c,0x325);\n    }\n    unaff_s6 = (undefined4 *******)(*(code *)PTR_NewImageList_003a8e84)();\n    local_80 = unaff_s6;\n    ppppppuVar2 = (undefined4 ******)\n                  (*(code *)PTR_ParseGravityGeometry_003a97fc)(param_1,param_2,&local_7c,param_3);\n    unaff_s4 = local_78;\n    unaff_s0 = local_7c;\n    unaff_s3 = (undefined4 *******)PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;\n    if ((int)ppppppuVar2 << 0xe < 0) {\n      ppppppuVar7 = param_1[7];\n      if (local_7c == (undefined4 *******)0x0) {\n        local_7c = (undefined4 *******)0x1;\n        dVar35 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n      }\n      else {\n        dVar35 = (double)(int)local_7c;\n        if ((int)local_7c < 0) {\n          dVar35 = dVar35 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n      }\n      if (local_78 == (undefined4 ******)0x0) {\n        dVar30 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n        local_78 = (undefined4 ******)0x1;\n        if (((uint)ppppppuVar2 & 0x2000) != 0) goto LAB_001c8e14;\nLAB_001c8484:\n        pppppppuVar9 = local_74;\n        if ((int)local_74 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_74;\n        }\n        puVar8 = (undefined *)((int)param_1[6] - (int)pppppppuVar9);\n        pppppppuVar9 = local_70;\n        if ((int)local_70 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_70;\n        }\n        puVar3 = (undefined *)((int)ppppppuVar7 - (int)pppppppuVar9);\n      }\n      else {\n        dVar30 = (double)(int)local_78;\n        if ((int)local_78 < 0) {\n          dVar30 = dVar30 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n        if (((uint)ppppppuVar2 & 0x2000) == 0) goto LAB_001c8484;\nLAB_001c8e14:\n        pppppppuVar9 = local_74;\n        if ((int)local_74 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_74;\n        }\n        puVar8 = (undefined *)((int)pppppppuVar9 + (int)param_1[6]);\n        if ((int)local_70 < 0) {\n          puVar3 = (undefined *)((int)ppppppuVar7 - (int)local_70);\n        }\n        else {\n          puVar3 = (undefined *)((int)local_70 + (int)ppppppuVar7);\n        }\n      }\n      unaff_s4 = (undefined4 ******)((uint)ppppppuVar2 & 0x2000);\n      dVar34 = (double)(int)puVar8;\n      if ((int)puVar8 < 0) {\n        dVar34 = dVar34 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n      }\n      dVar35 = dVar34 / dVar35;\n      local_c8 = (double)(int)puVar3;\n      if ((int)puVar3 < 0) {\n        local_c8 = local_c8 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n      }\n      dVar25 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n      local_a0 = dVar25;\n      if (dVar35 < dVar25) {\n        local_a0 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n        dVar35 = dVar25;\n      }\n      if (local_a0 <= local_c8 / dVar30) {\n        local_a0 = local_c8 / dVar30;\n      }\n      dVar30 = 0.0;\n      unaff_s7 = local_70;\n      if (0.0 < local_c8) {\n        dVar25 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4780);\n        dVar31 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4788);\n        if (unaff_s4 != (undefined4 ******)0x0) goto LAB_001c8b70;\nLAB_001c854c:\n        unaff_s7 = local_70;\n        dVar32 = dVar30;\n        if ((int)local_70 < 1) {\n          dVar32 = dVar30 - (double)(int)local_70;\n        }\n        dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n        dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n        if (dVar32 - dVar26 < dVar27 - dVar32) {\n          dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar23 = (code *)PTR_floor_003a9670;\n          if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d7c;\n        }\n        else {\n          if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d7c:\n            iVar15 = -0x7ffffdff;\n            goto joined_r0x001c8cbc;\n          }\n          dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar23 = (code *)PTR_ceil_003a8c20;\n        }\n        if (dVar26 < dVar32) {\n          iVar15 = 0x7ffffdff;\n        }\n        else {\n          dVar32 = (double)(*pcVar23)(dVar32);\n          iVar15 = (int)dVar32;\n        }\njoined_r0x001c8cbc:\n        dVar30 = dVar30 + local_a0;\n        if ((int)unaff_s7 < 0) {\n          dVar32 = 0.0;\n        }\n        else {\n          dVar32 = (double)(int)unaff_s7;\n        }\n        dVar32 = dVar30 + dVar32;\n        dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n        dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n        if (dVar32 - dVar26 < dVar27 - dVar32) {\n          if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8630;\n            goto LAB_001c8cec;\n          }\n        }\n        else if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;\n          goto LAB_001c8d18;\n        }\nLAB_001c8c88:\n        iVar14 = -0x7ffffdff;\nLAB_001c8644:\n        do {\n          unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n          param_2 = (undefined4 *******)((int)param_1[0x8d] + iVar15);\n          dVar32 = 0.0;\n          local_68 = unaff_s8;\n          local_60 = param_2;\n          if (0.0 < dVar34) {\n            dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n            unaff_s6 = &local_6c;\n            dVar27 = *(double *)((int)unaff_s3 + 0x4780);\n            do {\n              unaff_s7 = local_74;\n              if (unaff_s4 == (undefined4 ******)0x0) {\n                dVar33 = dVar32;\n                if ((int)local_74 < 1) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }\nLAB_001c8b04:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;\nLAB_001c8708:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8700:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar33 = 0.0;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8768:\n                  dVar33 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar33 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n              }\n              else {\n                dVar33 = dVar32;\n                if (0 < (int)local_74) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar27 <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar33 = 0.0;\n                }\n                else {\n                  if (dVar33 < dVar27) goto LAB_001c8b24;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (dVar26 < dVar33) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8850:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < dVar25) goto LAB_001c8a44;\n                  if (dVar33 <= dVar26) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar14 = 0x7ffffdff;\n                }\n                else if (dVar25 <= dVar33) {\n                  if (dVar33 <= dVar31) goto LAB_001c8abc;\n                  iVar14 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar14 = -0x7ffffdff;\n                }\n              }\n              unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n              param_2 = (undefined4 *******)((int)param_1[0x8c] + iVar15);\n              local_6c = unaff_s8;\n              local_64 = param_2;\n              iVar15 = (*(code *)PTR_CropImage_003a90b8)(param_1,unaff_s6,param_3);\n              if (iVar15 != 0) {\n                (*(code *)PTR_AppendImageToList_003a9880)(&local_80,iVar15);\n              }\n            } while (dVar32 < dVar34);\n          }\n          unaff_s5 = unaff_s3;\n          if (local_c8 <= dVar30) break;\n          if (unaff_s4 == (undefined4 ******)0x0) goto LAB_001c854c;\nLAB_001c8b70:\n          unaff_s7 = local_70;\n          dVar32 = dVar30;\n          if (0 < (int)local_70) {\n            dVar32 = dVar30 - (double)(int)local_70;\n          }\n          dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n          dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          if (dVar32 - dVar26 < dVar27 - dVar32) {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d8c;\n            pcVar23 = (code *)PTR_floor_003a9670;\n            if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8d50;\nLAB_001c8bd8:\n            dVar32 = (double)(*pcVar23)(dVar32);\n            iVar15 = (int)dVar32;\nLAB_001c8bf0:\n            dVar30 = dVar30 + local_a0;\n            if (-2 < (int)unaff_s7) goto LAB_001c8c00;\nLAB_001c8d6c:\n            dVar32 = (double)(int)unaff_s7;\n          }\n          else {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d8c:\n              iVar15 = -0x7ffffdff;\n              goto LAB_001c8bf0;\n            }\n            pcVar23 = (code *)PTR_ceil_003a8c20;\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8bd8;\nLAB_001c8d50:\n            iVar15 = 0x7ffffdff;\n            dVar30 = dVar30 + local_a0;\n            if ((int)unaff_s7 < -1) goto LAB_001c8d6c;\nLAB_001c8c00:\n            dVar32 = 0.0;\n          }\n          dVar32 = dVar30 + dVar32;\n          dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n          dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          if (dVar32 - dVar26 < dVar27 - dVar32) {\n            if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n              if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) {\nLAB_001c8cec:\n                iVar14 = 0x7ffffdff;\n              }\n              else {\nLAB_001c8630:\n                dVar32 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n                iVar14 = (int)dVar32;\n              }\n              goto LAB_001c8644;\n            }\n            goto LAB_001c8c88;\n          }\n          if (dVar32 < dVar25) goto LAB_001c8c88;\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;\nLAB_001c8d18:\n          dVar32 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          iVar14 = (int)dVar32;\n        } while( true );\n      }\n      (*(code *)PTR_ClearMagickException_003a90f8)(param_3);\n      pppppppuVar9 = local_80;\n      unaff_s0 = param_2;\n    }\n    else {\n      unaff_s3 = &local_7c;\n      if (((local_7c == (undefined4 *******)0x0) && (local_78 == (undefined4 ******)0x0)) ||\n         (((uint)ppppppuVar2 & 3) != 0)) {\n        local_80 = (undefined4 *******)(*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n        pppppppuVar9 = local_80;\n        unaff_s4 = ppppppuVar2;\n        if ((local_80 != (undefined4 *******)0x0) &&\n           (unaff_s4 = (undefined4 ******)((uint)ppppppuVar2 & 0x2000),\n           unaff_s4 != (undefined4 ******)0x0)) {\n          local_80[0x8c] = (undefined4 ******)((int)local_80[0x8c] - (int)local_74);\n          local_80[0x8d] = (undefined4 ******)((int)local_80[0x8d] - (int)local_70);\n          local_80[0x8a] = local_7c;\n          local_80[0x8b] = local_78;\n        }\n      }\n      else {\n        unaff_s7 = (undefined4 *******)param_1[6];\n        if ((local_7c < unaff_s7) || (local_78 < param_1[7])) {\n          ppppppuVar2 = param_1[0x8b];\n          if ((undefined4 *******)param_1[0x8a] != (undefined4 *******)0x0) {\n            unaff_s7 = (undefined4 *******)param_1[0x8a];\n          }\n          if (ppppppuVar2 == (undefined4 ******)0x0) {\n            ppppppuVar2 = param_1[7];\n          }\n          if (local_7c == (undefined4 *******)0x0) {\n            unaff_s0 = unaff_s7;\n          }\n          if (local_78 == (undefined4 ******)0x0) {\n            unaff_s4 = ppppppuVar2;\n          }\n          pppppppuVar9 = local_80;\n          if (0 < (int)ppppppuVar2) {\n            unaff_s3 = (undefined4 *******)0x0;\n            unaff_s8 = &local_80;\n            do {\n              unaff_s5 = (undefined4 *******)0x0;\n              if ((int)unaff_s7 < 1) {\n                pppppppuVar9 = local_80;\n                if (unaff_s6 == (undefined4 *******)0x0) break;\n              }\n              else {\n                do {\n                  local_7c = unaff_s0;\n                  local_78 = unaff_s4;\n                  local_74 = unaff_s5;\n                  local_70 = unaff_s3;\n                  unaff_s6 = (undefined4 *******)\n                             (*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n                  pppppppuVar9 = local_80;\n                  if (unaff_s6 == (undefined4 *******)0x0) goto LAB_001c8908;\n                  unaff_s5 = (undefined4 *******)((int)unaff_s5 + (int)unaff_s0);\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);\n              }\n              unaff_s3 = (undefined4 *******)((int)unaff_s3 + (int)unaff_s4);\n              pppppppuVar9 = local_80;\n            } while ((int)unaff_s3 < (int)ppppppuVar2);\n          }\n        }\n        else {\n          local_e8 = param_3;\n          pppppppuVar9 = (undefined4 *******)(*(code *)PTR_CloneImage_003a9830)(param_1,0,0,1);\n        }\n      }\n    }\nLAB_001c8908:\n    if (local_5c == *(int *)puVar20) {\n      return pppppppuVar9;\n    }\n    (*(code *)PTR___stack_chk_fail_003a9064)();\n    unaff_s1 = param_1;\n    unaff_s2 = param_3;\n    goto LAB_001c8ef8;\n  }\n  ppppppuVar2 = (undefined4 ******)0x323;\n  pppppppuVar12 = (undefined4 *******)(PTR_s_courses_003a88ec + -0x288c);\n  pcVar23 = ExcerptImage;\n  pppppppuVar9 = (undefined4 *******)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3784);\n  puVar20 = PTR___assert_fail_003a9608;\n  (*(code *)PTR___assert_fail_003a9608)();\n  puVar8 = puVar20 + 0x1e7970;\n  piVar18 = *(int **)(puVar20 + 0x1e02f0);\n  iStack_11c = *piVar18;\n  puStack_150 = puVar8;\n  pppppppuStack_118 = unaff_s0;\n  pppppppuStack_114 = param_1;\n  ppppppuStack_110 = unaff_s2;\n  pppppppuStack_10c = unaff_s3;\n  ppppppuStack_108 = unaff_s4;\n  pppppppuStack_104 = unaff_s5;\n  pppppppuStack_100 = unaff_s6;\n  pcStack_fc = pcVar23;\n  if (pppppppuVar9 == (undefined4 *******)0x0) {\n    iVar15 = *(int *)(puVar20 + 0x1df9ac) + -0x26ac;\n    (**(code **)(puVar20 + 0x1e06c8))\n              (*(int *)(puVar20 + 0x1df9a8) + -0x37b0,*(int *)(puVar20 + 0x1df9ac) + -0x288c,0x3f4,\n               iVar15);\nLAB_001c92d4:\n    iVar15 = iVar15 + -0x26ac;\n    (**(code **)(puVar8 + -0x72a8))\n              (*(int *)(puVar8 + -0x7fd0) + 0x294c,*(int *)(puVar8 + -0x7fc4) + -0x288c,0x3fa,iVar15\n              );\n    ppppppuVar2 = unaff_s2;\nLAB_001c92f4:\n    iVar15 = iVar15 + -0x26ac;\n    (**(code **)(puVar8 + -0x72a8))\n              (*(int *)(puVar8 + -0x7fd0) + 0x1cac,*(int *)(puVar8 + -0x7fc4) + -0x288c,0x3f9,iVar15\n              );\nLAB_001c9314:\n    (**(code **)(puVar8 + -0x784c))();\n    pppppppuVar9 = unaff_s0;\nLAB_001c9320:\n    (**(code **)(puVar8 + -0x72a8))\n              (*(int *)(puVar8 + -0x7fc4) + -0x2850,*(int *)(puVar8 + -0x7fc4) + -0x288c,0x3f8,\n               iVar15 + -0x26ac);\n    unaff_s2 = ppppppuVar2;\n  }\n  else if (pppppppuVar9[0xcdb] == (undefined4 ******)0xabacadab) {\n    if (pppppppuVar9[0xcd4] != (undefined4 ******)0x0) {\n      pppppppuStack_154 = pppppppuVar9 + 0xd0;\n      ppppppuStack_158 = (undefined4 ******)(*(int *)(puVar20 + 0x1df9a4) + -0x62ac);\n      (**(code **)(puVar20 + 0x1e02a0))\n                (0x8000,*(int *)(puVar20 + 0x1df9ac) + -0x288c,\n                 *(int *)(puVar20 + 0x1df9ac) + -0x26bc,0x3f7);\n    }\n    iVar15 = *(int *)(puStack_150 + -0x7fc4);\n    unaff_s3 = pppppppuVar12;\n    puVar8 = puStack_150;\n    if (pppppppuVar12 != (undefined4 *******)0x0) {\n      unaff_s0 = pppppppuVar9;\n      if (ppppppuVar2 == (undefined4 ******)0x0) goto LAB_001c92f4;\n      unaff_s2 = ppppppuVar2;\n      if (ppppppuVar2[7] != (undefined4 *****)0xabacadab) goto LAB_001c92d4;\n      iVar15 = 1;\n      ppppppuStack_158 = ppppppuVar2;\n      param_1 = (undefined4 *******)\n                (**(code **)(puStack_150 + -0x7080))(pppppppuVar9,*pppppppuVar12,pppppppuVar12[1],1)\n      ;\n      if (param_1 != (undefined4 *******)0x0) {\n        uStack_144 = 0;\n        uStack_148 = 0;\n        unaff_s5 = (undefined4 *******)\n                   (**(code **)(puStack_150 + -0x715c))(pppppppuVar9,ppppppuVar2);\n        unaff_s6 = (undefined4 *******)(**(code **)(puStack_150 + -0x79dc))(param_1,ppppppuVar2);\n        iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9);\n        if (((iVar15 == 4) ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9), iVar15 == 3)) &&\n           ((iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 4 ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 3)))) {\n          (**(code **)(puStack_150 + -0x7774))(7);\n          ppppppuVar7 = param_1[7];\n          if ((int)ppppppuVar7 < 0) {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1 < (int)ppppppuVar7 + 0x3f >> 6) goto LAB_001c9298;\nLAB_001c91a4:\n            bVar1 = (int)ppppppuVar7 < 0x80;\n          }\n          else {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if ((int)ppppppuVar7 >> 6 <= extraout_v1) goto LAB_001c91a4;\nLAB_001c9298:\n            (*pcVar23)(7);\n            bVar1 = extraout_v1_02 < 2;\n          }\n          iVar14 = 1;\n          if ((bool)(bVar1 ^ 1)) {\n            (**(code **)(puStack_150 + -0x7774))(7);\n            ppppppuVar7 = param_1[7];\n            if ((int)ppppppuVar7 < 0) {\n              ppppppuVar7 = (undefined4 ******)((int)ppppppuVar7 + 0x3f);\n            }\n            iVar14 = (int)ppppppuVar7 >> 6;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1_01 < iVar14) {\nLAB_001c9234:\n              (*pcVar23)(7);\n              iVar14 = extraout_v1_00;\n            }\n            goto LAB_001c9088;\n          }\n          iVar10 = *(int *)(puStack_150 + -0x7f10);\n        }\n        else {\n          uVar36 = (**(code **)(puStack_150 + -0x7774))(7);\n          if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            uVar36 = (*pcVar23)(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c9070;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            iVar14 = 1;\n          }\n          else {\nLAB_001c9070:\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\nLAB_001c9074:\n            uVar36 = (*pcVar23)(7);\n            if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n               (pcVar23 = *(code **)(puStack_150 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c9234;\n            iVar14 = 2;\n          }\nLAB_001c9088:\n          iVar10 = *(int *)(puStack_150 + -0x7f10);\n        }\n        iVar15 = 0;\n        ppppppuStack_124 = (undefined4 ******)0x1;\n        puStack_120 = &uStack_148;\n        pppppppuStack_13c = pppppppuVar9;\n        pppppppuStack_138 = pppppppuVar12;\n        ppppppuStack_134 = ppppppuVar2;\n        pppppppuStack_130 = unaff_s6;\n        pppppppuStack_12c = unaff_s5;\n        pppppppuStack_128 = param_1;\n        (**(code **)(puStack_150 + -0x7718))(iVar10 + 0x5428,&pppppppuStack_13c,iVar14,0);\n        ppppppuVar2 = ppppppuStack_124;\n        (**(code **)(puStack_150 + -0x79bc))(unaff_s6);\n        (**(code **)(puStack_150 + -0x79bc))(unaff_s5);\n        param_1[0xa8] = pppppppuVar9[0xa8];\n        if (ppppppuVar2 == (undefined4 ******)0x0) {\n          param_1 = (undefined4 *******)(**(code **)(puStack_150 + -0x7964))(param_1);\n        }\n      }\n      puVar8 = puStack_150;\n      if (iStack_11c == *piVar18) {\n        return param_1;\n      }\n      goto LAB_001c9314;\n    }\n    goto LAB_001c9320;\n  }\n  ppppppuVar2 = (undefined4 ******)0x3f5;\n  pcVar21 = *(code **)(puVar8 + -0x72a8);\n  pppppppuVar13 = (undefined4 *******)(*(int *)(puVar8 + -0x7fc4) + -0x288c);\n  pcVar24 = ExtentImage;\n  pppppppuVar12 = (undefined4 *******)(*(int *)(puVar8 + -0x7fc8) + -0x3784);\n  (*pcVar21)();\n  pcVar23 = pcVar21 + 0x1e754c;\n  pcStack_188 = pcVar23;\n  pppppppuStack_17c = pppppppuVar9;\n  pppppppuStack_178 = param_1;\n  ppppppuStack_174 = unaff_s2;\n  pppppppuStack_170 = unaff_s3;\n  pcStack_16c = pcVar24;\n  if (pppppppuVar12 == (undefined4 *******)0x0) {\n    iVar15 = *(int *)(pcVar21 + 0x1df588) + -0x26c8;\n    (**(code **)(pcVar21 + 0x1e02a4))\n              (*(int *)(pcVar21 + 0x1df584) + -0x37b0,*(int *)(pcVar21 + 0x1df588) + -0x288c,0x474,\n               iVar15);\nLAB_001c94fc:\n    iVar15 = iVar15 + -0x26c8;\n    (**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fc4) + -0x2850,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x478,\n               iVar15);\nLAB_001c951c:\n    iVar15 = iVar15 + -0x26c8;\n    (**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fd0) + 0x294c,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x47a,\n               iVar15);\n    pppppppuVar12 = pppppppuVar9;\nLAB_001c953c:\n    (**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fd0) + 0x1cac,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x479,\n               iVar15 + -0x26c8);\n  }\n  else if (pppppppuVar12[0xcdb] == (undefined4 ******)0xabacadab) {\n    if (pppppppuVar12[0xcd4] != (undefined4 ******)0x0) {\n      pppppppuStack_194 = pppppppuVar12 + 0xd0;\n      ppppppuStack_198 = (undefined4 ******)(*(int *)(pcVar21 + 0x1df580) + -0x62ac);\n      (**(code **)(pcVar21 + 0x1dfe7c))\n                (0x8000,*(int *)(pcVar21 + 0x1df588) + -0x288c,\n                 *(int *)(pcVar21 + 0x1df588) + -0x26d4,0x477);\n    }\n    iVar15 = *(int *)(pcStack_188 + -0x7fc4);\n    pppppppuVar9 = pppppppuVar12;\n    param_1 = pppppppuVar13;\n    unaff_s2 = ppppppuVar2;\n    pcVar23 = pcStack_188;\n    if (pppppppuVar13 == (undefined4 *******)0x0) goto LAB_001c94fc;\n    if (ppppppuVar2 != (undefined4 ******)0x0) {\n      if (ppppppuVar2[7] == (undefined4 *****)0xabacadab) {\n        ppppppuStack_198 = ppppppuVar2;\n        pppppppuVar9 = (undefined4 *******)\n                       (**(code **)(pcStack_188 + -0x7080))\n                                 (pppppppuVar12,*pppppppuVar13,pppppppuVar13[1],1);\n        if (pppppppuVar9 != (undefined4 *******)0x0) {\n          iVar15 = (**(code **)(pcStack_188 + -0x7a20))(pppppppuVar9,ppppppuVar2);\n          if (iVar15 == 0) {\n            (**(code **)(pcStack_188 + -0x7964))(pppppppuVar9);\n            pppppppuVar9 = (undefined4 *******)0x0;\n          }\n          else {\n            pppppppuStack_194 = (undefined4 *******)-(int)pppppppuVar13[3];\n            ppppppuStack_198 = (undefined4 ******)-(int)pppppppuVar13[2];\n            ppppppuStack_190 = ppppppuVar2;\n            iVar15 = (**(code **)(pcStack_188 + -0x7bec))\n                               (pppppppuVar9,pppppppuVar12,pppppppuVar12[0x99],1);\n            if (iVar15 != 0) {\n              (**(code **)(pcStack_188 + -0x7d18))\n                        (pppppppuVar9,pppppppuVar12[6],pppppppuVar12[7],pppppppuVar13);\n            }\n          }\n        }\n        return pppppppuVar9;\n      }\n      goto LAB_001c951c;\n    }\n    goto LAB_001c953c;\n  }\n  pcVar21 = *(code **)(pcVar23 + -0x72a8);\n  pppppppuVar9 = (undefined4 *******)(*(int *)(pcVar23 + -0x7fc4) + -0x288c);\n  pcVar24 = FlipImage;\n  pppppppuVar13 = (undefined4 *******)(*(int *)(pcVar23 + -0x7fc8) + -0x3784);\n  (*pcVar21)(pppppppuVar13,pppppppuVar9,0x475,*(int *)(pcVar23 + -0x7fc4) + -0x26c8);\n  pcVar23 = pcVar21 + 0x1e7330;\n  piVar16 = *(int **)(pcVar21 + 0x1dfcb0);\n  iStack_1d4 = *piVar16;\n  pcStack_208 = pcVar23;\n  pppppppuStack_1d0 = pppppppuVar12;\n  pppppppuStack_1cc = param_1;\n  ppppppuStack_1c8 = unaff_s2;\n  pppppppuStack_1c4 = unaff_s3;\n  piStack_1c0 = piVar18;\n  pppppppuStack_1bc = unaff_s5;\n  pppppppuStack_1b8 = unaff_s6;\n  pppppppuStack_1b4 = unaff_s7;\n  pppppppuStack_1b0 = unaff_s8;\n  pcStack_1ac = pcVar24;\n  if (pppppppuVar13 == (undefined4 *******)0x0) {\n    (**(code **)(pcVar21 + 0x1e0088))\n              (*(int *)(pcVar21 + 0x1df368) + -0x37b0,*(int *)(pcVar21 + 0x1df36c) + -0x288c,0x4bc,\n               *(int *)(pcVar21 + 0x1df36c) + -0x26e0);\n    pppppppuVar9 = param_1;\nLAB_001c9944:\n    (**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fd0) + 0x1cac,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x4c0,\n               *(int *)(pcVar23 + -0x7fc4) + -0x26e0);\nLAB_001c9968:\n    (**(code **)(pcVar23 + -0x784c))();\n    pppppppuVar13 = unaff_s7;\nLAB_001c9974:\n    (**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fd0) + 0x294c,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x4c1,\n               *(int *)(pcVar23 + -0x7fc4) + -0x26e0);\n    pppppppuStack_244 = pppppppuVar9;\n  }\n  else {\n    pppppppuStack_244 = param_1;\n    if (pppppppuVar13[0xcdb] == (undefined4 ******)0xabacadab) {\n      if (pppppppuVar13[0xcd4] != (undefined4 ******)0x0) {\n        pppppppuStack_20c = pppppppuVar13 + 0xd0;\n        pppppppuStack_210 = (undefined4 *******)(*(int *)(pcVar21 + 0x1df364) + -0x62ac);\n        (**(code **)(pcVar21 + 0x1dfc60))\n                  (0x8000,*(int *)(pcVar21 + 0x1df36c) + -0x288c,\n                   *(int *)(pcVar21 + 0x1df36c) + -0x26ec,0x4bf);\n      }\n      unaff_s7 = pppppppuVar13;\n      pcVar23 = pcStack_208;\n      if (pppppppuVar9 == (undefined4 *******)0x0) goto LAB_001c9944;\n      if (pppppppuVar9[7] == (undefined4 ******)0xabacadab) {\n        pppppppuStack_210 = pppppppuVar9;\n        pppppppuVar12 =\n             (undefined4 *******)(**(code **)(pcStack_208 + -0x7080))(pppppppuVar13,0,0,1);\n        if (pppppppuVar12 != (undefined4 *******)0x0) {\n          ppppppuStack_1fc = pppppppuVar13[0x8c];\n          unaff_s8 = (undefined4 *******)pppppppuVar13[0x8a];\n          unaff_s2 = pppppppuVar13[0x8b];\n          unaff_s6 = (undefined4 *******)pppppppuVar13[0x8d];\n          uStack_1f4 = 0;\n          uStack_1f8 = 0;\n          piVar18 = (int *)(**(code **)(pcStack_208 + -0x715c))(pppppppuVar13,pppppppuVar9);\n          unaff_s5 = (undefined4 *******)\n                     (**(code **)(pcStack_208 + -0x79dc))(pppppppuVar12,pppppppuVar9);\n          iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13);\n          if (((iVar15 == 4) ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13), iVar15 == 3)) &&\n             ((iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 4 ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 3)))) {\n            (**(code **)(pcStack_208 + -0x7774))(7);\n            ppppppuVar2 = pppppppuVar12[7];\n            if ((int)ppppppuVar2 < 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_03 < (int)ppppppuVar2 + 0x3f >> 6) goto LAB_001c98d4;\nLAB_001c981c:\n              bVar1 = (int)ppppppuVar2 < 0x80;\n            }\n            else {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if ((int)ppppppuVar2 >> 6 <= extraout_v1_03) goto LAB_001c981c;\nLAB_001c98d4:\n              (*pcVar23)(7);\n              bVar1 = extraout_v1_05 < 2;\n            }\n            iVar15 = 1;\n            if ((bool)(bVar1 ^ 1)) {\n              (**(code **)(pcStack_208 + -0x7774))(7);\n              ppppppuVar2 = pppppppuVar12[7];\n              if ((int)ppppppuVar2 < 0) {\n                ppppppuVar2 = (undefined4 ******)((int)ppppppuVar2 + 0x3f);\n              }\n              iVar15 = (int)ppppppuVar2 >> 6;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_06 < iVar15) {\nLAB_001c98ac:\n                (*pcVar23)(7);\n                iVar15 = extraout_v1_04;\n              }\n              goto LAB_001c96d8;\n            }\n            iVar14 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          else {\n            uVar36 = (**(code **)(pcStack_208 + -0x7774))(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              uVar36 = (*pcVar23)(7);\n              if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c96c0;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              iVar15 = 1;\n            }\n            else {\nLAB_001c96c0:\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\nLAB_001c96c4:\n              uVar36 = (*pcVar23)(7);\n              if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n                 (pcVar23 = *(code **)(pcStack_208 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c98ac;\n              iVar15 = 2;\n            }\nLAB_001c96d8:\n            iVar14 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          puStack_1dc = &uStack_1f8;\n          pppppppuStack_1d8 = (undefined4 *******)0x1;\n          pppppppuStack_1f0 = pppppppuVar13;\n          pppppppuStack_1ec = pppppppuVar9;\n          pppppppuStack_1e8 = unaff_s5;\n          piStack_1e4 = piVar18;\n          pppppppuStack_1e0 = pppppppuVar12;\n          (**(code **)(pcStack_208 + -0x7718))(iVar14 + 0x56bc,&pppppppuStack_1f0,iVar15,0);\n          pppppppuVar9 = pppppppuStack_1d8;\n          (**(code **)(pcStack_208 + -0x79bc))(unaff_s5);\n          (**(code **)(pcStack_208 + -0x79bc))(piVar18);\n          pppppppuVar12[0xa8] = pppppppuVar13[0xa8];\n          if (unaff_s2 != (undefined4 ******)0x0) {\n            unaff_s6 = (undefined4 *******)\n                       ((int)unaff_s2 + (-(int)unaff_s6 - (int)pppppppuVar12[7]));\n          }\n          pppppppuVar12[0x8a] = unaff_s8;\n          pppppppuVar12[0x8b] = unaff_s2;\n          pppppppuVar12[0x8c] = ppppppuStack_1fc;\n          pppppppuVar12[0x8d] = unaff_s6;\n          if (pppppppuVar9 == (undefined4 *******)0x0) {\n            pppppppuVar12 = (undefined4 *******)(**(code **)(pcStack_208 + -0x7964))(pppppppuVar12);\n          }\n        }\n        pcVar23 = pcStack_208;\n        if (iStack_1d4 == *piVar16) {\n          return pppppppuVar12;\n        }\n        goto LAB_001c9968;\n      }\n      goto LAB_001c9974;\n    }\n  }\n  pcVar21 = *(code **)(pcVar23 + -0x72a8);\n  iVar14 = *(int *)(pcVar23 + -0x7fc4) + -0x288c;\n  pcVar24 = FlopImage;\n  iVar15 = *(int *)(pcVar23 + -0x7fc8) + -0x3784;\n  (*pcVar21)(iVar15,iVar14,0x4bd,*(int *)(pcVar23 + -0x7fc4) + -0x26e0);\n  piVar17 = *(int **)(pcVar21 + 0x1df874);\n  iStack_24c = *piVar17;\n  pppppppuStack_248 = pppppppuVar12;\n  ppppppuStack_240 = unaff_s2;\n  piStack_23c = piVar16;\n  piStack_238 = piVar18;\n  pppppppuStack_234 = unaff_s5;\n  pppppppuStack_230 = unaff_s6;\n  pppppppuStack_22c = pppppppuVar13;\n  pppppppuStack_228 = unaff_s8;\n  pcStack_224 = pcVar24;\n  if (iVar15 == 0) {\n    pppppppuVar9 = (undefined4 *******)\n                   (**(code **)(pcVar21 + 0x1dfc4c))\n                             (*(int *)(pcVar21 + 0x1def2c) + -0x37b0,\n                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x543,\n                              *(int *)(pcVar21 + 0x1def30) + -0x26f8);\n    return pppppppuVar9;\n  }\n  if (*(int *)(iVar15 + 0x336c) != -0x54535255) {\n    pppppppuVar9 = (undefined4 *******)\n                   (**(code **)(pcVar21 + 0x1dfc4c))\n                             (*(int *)(pcVar21 + 0x1def2c) + -0x3784,\n                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x544,\n                              *(int *)(pcVar21 + 0x1def30) + -0x26f8);\n    return pppppppuVar9;\n  }\n  if (*(int *)(iVar15 + 0x3350) != 0) {\n    (**(code **)(pcVar21 + 0x1df824))\n              (0x8000,*(int *)(pcVar21 + 0x1def30) + -0x288c,*(int *)(pcVar21 + 0x1def30) + -0x2704,\n               0x546,*(int *)(pcVar21 + 0x1def28) + -0x62ac,iVar15 + 0x340);\n  }\n  if (iVar14 == 0) {\n    pppppppuVar9 = (undefined4 *******)\n                   (**(code **)(pcVar21 + 0x1dfc4c))\n                             (*(int *)(pcVar21 + 0x1def24) + 0x1cac,\n                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x547,\n                              *(int *)(pcVar21 + 0x1def30) + -0x26f8);\n    return pppppppuVar9;\n  }\n  if (*(int *)(iVar14 + 0x1c) != -0x54535255) goto LAB_001c9db0;\n  pppppppuVar9 = (undefined4 *******)(**(code **)(pcVar21 + 0x1dfe74))(iVar15,0,0,1,iVar14);\n  if (pppppppuVar9 != (undefined4 *******)0x0) {\n    ppppppuVar2 = *(undefined4 *******)(iVar15 + 0x234);\n    ppppppuVar7 = *(undefined4 *******)(iVar15 + 0x228);\n    ppppppuVar22 = *(undefined4 *******)(iVar15 + 0x22c);\n    ppppppuVar19 = *(undefined4 *******)(iVar15 + 0x230);\n    uStack_26c = 0;\n    uStack_270 = 0;\n    uVar4 = (**(code **)(pcVar21 + 0x1dfd98))(iVar15,iVar14);\n    uVar5 = (**(code **)(pcVar21 + 0x1df518))(pppppppuVar9,iVar14);\n    iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(iVar15);\n    if (((iVar10 == 4) || (iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(iVar15), iVar10 == 3)) &&\n       ((iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(pppppppuVar9), iVar10 == 4 ||\n        (iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(pppppppuVar9), iVar10 == 3)))) {\n      (**(code **)(pcVar21 + 0x1df780))(7);\n      ppppppuVar6 = pppppppuVar9[7];\n      if ((int)ppppppuVar6 < 0) {\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (extraout_v1_07 < (int)ppppppuVar6 + 0x3f >> 6) goto LAB_001c9d10;\nLAB_001c9c58:\n        bVar1 = (int)ppppppuVar6 < 0x80;\n      }\n      else {\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if ((int)ppppppuVar6 >> 6 <= extraout_v1_07) goto LAB_001c9c58;\nLAB_001c9d10:\n        (*pcVar23)(7);\n        bVar1 = extraout_v1_09 < 2;\n      }\n      iVar10 = 1;\n      if ((bool)(bVar1 ^ 1)) {\n        (**(code **)(pcVar21 + 0x1df780))(7);\n        ppppppuVar6 = pppppppuVar9[7];\n        if ((int)ppppppuVar6 < 0) {\n          ppppppuVar6 = (undefined4 ******)((int)ppppppuVar6 + 0x3f);\n        }\n        iVar10 = (int)ppppppuVar6 >> 6;\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (extraout_v1_10 < iVar10) {\nLAB_001c9ce8:\n          (*pcVar23)(7);\n          iVar10 = extraout_v1_08;\n        }\n        goto LAB_001c9b14;\n      }\n      iVar11 = *(int *)(pcVar21 + 0x1defe4);\n    }\n    else {\n      uVar36 = (**(code **)(pcVar21 + 0x1df780))(7);\n      if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (1 < (uint)uVar36) goto LAB_001c9b00;\n        uVar36 = (*pcVar23)(7);\n        if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c9afc;\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (1 < (uint)uVar36) goto LAB_001c9b00;\n        iVar10 = 1;\n      }\n      else {\nLAB_001c9afc:\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\nLAB_001c9b00:\n        uVar36 = (*pcVar23)(7);\n        if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n           (pcVar23 = *(code **)(pcVar21 + 0x1df780), (uint)uVar36 < 2)) goto LAB_001c9ce8;\n        iVar10 = 2;\n      }\nLAB_001c9b14:\n      iVar11 = *(int *)(pcVar21 + 0x1defe4);\n    }\n    puStack_254 = &uStack_270;\n    iStack_250 = 1;\n    iStack_268 = iVar15;\n    iStack_264 = iVar14;\n    uStack_260 = uVar5;\n    uStack_25c = uVar4;\n    pppppppuStack_258 = pppppppuVar9;\n    (**(code **)(pcVar21 + 0x1df7dc))(iVar11 + 0x594c,&iStack_268,iVar10,0);\n    iVar14 = iStack_250;\n    (**(code **)(pcVar21 + 0x1df538))(uVar5);\n    (**(code **)(pcVar21 + 0x1df538))(uVar4);\n    pppppppuVar9[0xa8] = *(undefined4 *******)(iVar15 + 0x2a0);\n    if (ppppppuVar7 != (undefined4 ******)0x0) {\n      ppppppuVar19 = (undefined4 ******)\n                     ((int)ppppppuVar7 + (-(int)ppppppuVar19 - (int)pppppppuVar9[6]));\n    }\n    pppppppuVar9[0x8a] = ppppppuVar7;\n    pppppppuVar9[0x8b] = ppppppuVar22;\n    pppppppuVar9[0x8c] = ppppppuVar19;\n    pppppppuVar9[0x8d] = ppppppuVar2;\n    if (iVar14 == 0) {\n      pppppppuVar9 = (undefined4 *******)(**(code **)(pcVar21 + 0x1df590))(pppppppuVar9);\n    }\n  }\n  if (iStack_24c == *piVar17) {\n    return pppppppuVar9;\n  }\n  (**(code **)(pcVar21 + 0x1df6a8))();\nLAB_001c9db0:\n  pppppppuVar9 = (undefined4 *******)\n                 (**(code **)(pcVar21 + 0x1dfc4c))\n                           (*(int *)(pcVar21 + 0x1def24) + 0x294c,\n                            *(int *)(pcVar21 + 0x1def30) + -0x288c,0x548,\n                            *(int *)(pcVar21 + 0x1def30) + -0x26f8);\n  return pppppppuVar9;\n}" type_identifier (pointer_declarator "*******\nCropImageToTiles(undefined4 *******param_1,undefined4 *******param_2,undefined4 ******param_3)" * (pointer_declarator "******\nCropImageToTiles(undefined4 *******param_1,undefined4 *******param_2,undefined4 ******param_3)" * (pointer_declarator "*****\nCropImageToTiles(undefined4 *******param_1,undefined4 *******param_2,undefined4 ******param_3)" * (pointer_declarator "****\nCropImageToTiles(undefined4 *******param_1,undefined4 *******param_2,undefined4 ******param_3)" * (pointer_declarator "***\nCropImageToTiles(undefined4 *******param_1,undefined4 *******param_2,undefined4 ******param_3)" * (pointer_declarator "**\nCropImageToTiles(undefined4 *******param_1,undefined4 *******param_2,undefined4 ******param_3)" * (pointer_declarator "*\nCropImageToTiles(undefined4 *******param_1,undefined4 *******param_2,undefined4 ******param_3)" * (function_declarator "CropImageToTiles(undefined4 *******param_1,undefined4 *******param_2,undefined4 ******param_3)" identifier (parameter_list "(undefined4 *******param_1,undefined4 *******param_2,undefined4 ******param_3)" ( (parameter_declaration "undefined4 *******param_1" type_identifier (pointer_declarator "*******param_1" * (pointer_declarator "******param_1" * (pointer_declarator "*****param_1" * (pointer_declarator "****param_1" * (pointer_declarator "***param_1" * (pointer_declarator "**param_1" * (pointer_declarator "*param_1" * identifier)))))))) , (parameter_declaration "undefined4 *******param_2" type_identifier (pointer_declarator "*******param_2" * (pointer_declarator "******param_2" * (pointer_declarator "*****param_2" * (pointer_declarator "****param_2" * (pointer_declarator "***param_2" * (pointer_declarator "**param_2" * (pointer_declarator "*param_2" * identifier)))))))) , (parameter_declaration "undefined4 ******param_3" type_identifier (pointer_declarator "******param_3" * (pointer_declarator "*****param_3" * (pointer_declarator "****param_3" * (pointer_declarator "***param_3" * (pointer_declarator "**param_3" * (pointer_declarator "*param_3" * identifier))))))) )))))))))) (compound_statement "{\n  bool bVar1;\n  undefined4 ******ppppppuVar2;\n  undefined *puVar3;\n  undefined4 uVar4;\n  undefined4 uVar5;\n  undefined4 ******ppppppuVar6;\n  undefined4 ******ppppppuVar7;\n  int extraout_v1;\n  int extraout_v1_00;\n  int extraout_v1_01;\n  int extraout_v1_02;\n  int extraout_v1_03;\n  int extraout_v1_04;\n  int extraout_v1_05;\n  int extraout_v1_06;\n  int extraout_v1_07;\n  int extraout_v1_08;\n  int extraout_v1_09;\n  int extraout_v1_10;\n  undefined *puVar8;\n  undefined4 *******pppppppuVar9;\n  int iVar10;\n  int iVar11;\n  undefined4 *******pppppppuVar12;\n  undefined4 *******pppppppuVar13;\n  int iVar14;\n  int iVar15;\n  undefined4 *******unaff_s0;\n  undefined4 *******unaff_s1;\n  undefined4 ******unaff_s2;\n  undefined4 *******unaff_s3;\n  int *piVar16;\n  int *piVar17;\n  undefined4 ******unaff_s4;\n  int *piVar18;\n  undefined4 *******unaff_s5;\n  undefined4 *******unaff_s6;\n  undefined4 ******ppppppuVar19;\n  undefined4 *******unaff_s7;\n  undefined *puVar20;\n  code *pcVar21;\n  undefined4 *******unaff_s8;\n  undefined4 ******ppppppuVar22;\n  code *pcVar23;\n  code *pcVar24;\n  double dVar25;\n  double dVar26;\n  double dVar27;\n  double dVar28;\n  double dVar29;\n  double dVar30;\n  double dVar31;\n  double dVar32;\n  double dVar33;\n  double dVar34;\n  double dVar35;\n  undefined8 uVar36;\n  undefined4 uStack_270;\n  undefined4 uStack_26c;\n  int iStack_268;\n  int iStack_264;\n  undefined4 uStack_260;\n  undefined4 uStack_25c;\n  undefined4 *******pppppppuStack_258;\n  undefined4 *puStack_254;\n  int iStack_250;\n  int iStack_24c;\n  undefined4 *******pppppppuStack_248;\n  undefined4 *******pppppppuStack_244;\n  undefined4 ******ppppppuStack_240;\n  int *piStack_23c;\n  int *piStack_238;\n  undefined4 *******pppppppuStack_234;\n  undefined4 *******pppppppuStack_230;\n  undefined4 *******pppppppuStack_22c;\n  undefined4 *******pppppppuStack_228;\n  code *pcStack_224;\n  undefined4 *******pppppppuStack_210;\n  undefined4 *******pppppppuStack_20c;\n  code *pcStack_208;\n  undefined4 ******ppppppuStack_1fc;\n  undefined4 uStack_1f8;\n  undefined4 uStack_1f4;\n  undefined4 *******pppppppuStack_1f0;\n  undefined4 *******pppppppuStack_1ec;\n  undefined4 *******pppppppuStack_1e8;\n  int *piStack_1e4;\n  undefined4 *******pppppppuStack_1e0;\n  undefined4 *puStack_1dc;\n  undefined4 *******pppppppuStack_1d8;\n  int iStack_1d4;\n  undefined4 *******pppppppuStack_1d0;\n  undefined4 *******pppppppuStack_1cc;\n  undefined4 ******ppppppuStack_1c8;\n  undefined4 *******pppppppuStack_1c4;\n  int *piStack_1c0;\n  undefined4 *******pppppppuStack_1bc;\n  undefined4 *******pppppppuStack_1b8;\n  undefined4 *******pppppppuStack_1b4;\n  undefined4 *******pppppppuStack_1b0;\n  code *pcStack_1ac;\n  undefined4 ******ppppppuStack_198;\n  undefined4 *******pppppppuStack_194;\n  undefined4 ******ppppppuStack_190;\n  code *pcStack_188;\n  undefined4 *******pppppppuStack_17c;\n  undefined4 *******pppppppuStack_178;\n  undefined4 ******ppppppuStack_174;\n  undefined4 *******pppppppuStack_170;\n  code *pcStack_16c;\n  undefined4 ******ppppppuStack_158;\n  undefined4 *******pppppppuStack_154;\n  undefined *puStack_150;\n  undefined4 uStack_148;\n  undefined4 uStack_144;\n  undefined4 *******pppppppuStack_13c;\n  undefined4 *******pppppppuStack_138;\n  undefined4 ******ppppppuStack_134;\n  undefined4 *******pppppppuStack_130;\n  undefined4 *******pppppppuStack_12c;\n  undefined4 *******pppppppuStack_128;\n  undefined4 ******ppppppuStack_124;\n  undefined4 *puStack_120;\n  int iStack_11c;\n  undefined4 *******pppppppuStack_118;\n  undefined4 *******pppppppuStack_114;\n  undefined4 ******ppppppuStack_110;\n  undefined4 *******pppppppuStack_10c;\n  undefined4 ******ppppppuStack_108;\n  undefined4 *******pppppppuStack_104;\n  undefined4 *******pppppppuStack_100;\n  code *pcStack_fc;\n  undefined4 ******local_e8;\n  undefined4 *******local_e4;\n  double local_c8;\n  double local_a0;\n  undefined4 *******local_80;\n  undefined4 *******local_7c;\n  undefined4 ******local_78;\n  undefined4 *******local_74;\n  undefined4 *******local_70;\n  undefined4 *******local_6c;\n  undefined4 *******local_68;\n  undefined4 *******local_64;\n  undefined4 *******local_60;\n  int local_5c;\n  \n  puVar20 = PTR___stack_chk_guard_003a9230;\n  local_5c = *(int *)PTR___stack_chk_guard_003a9230;\n  if (param_1 == (undefined4 *******)0x0) {\nLAB_001c8ef8:\n    param_1 = unaff_s1;\n    (*(code *)PTR___assert_fail_003a9608)\n              (PTR_LAB_003a88e0 + 0xdd0,PTR_s_courses_003a88ec + -0x288c,0x322,\n               PTR_s_courses_003a88ec + -0x2688);\n  }\n  else if (param_1[0xcdb] == (undefined4 ******)0xabacadab) {\n    if (param_1[0xcd4] != (undefined4 ******)0x0) {\n      local_e4 = param_1 + 0xd0;\n      local_e8 = (undefined4 ******)(PTR_s_t_to_left_003a88e4 + -0x62ac);\n      (*(code *)PTR_LogMagickEvent_003a91e0)\n                (0x8000,PTR_s_courses_003a88ec + -0x288c,PTR_s_courses_003a88ec + -0x269c,0x325);\n    }\n    unaff_s6 = (undefined4 *******)(*(code *)PTR_NewImageList_003a8e84)();\n    local_80 = unaff_s6;\n    ppppppuVar2 = (undefined4 ******)\n                  (*(code *)PTR_ParseGravityGeometry_003a97fc)(param_1,param_2,&local_7c,param_3);\n    unaff_s4 = local_78;\n    unaff_s0 = local_7c;\n    unaff_s3 = (undefined4 *******)PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;\n    if ((int)ppppppuVar2 << 0xe < 0) {\n      ppppppuVar7 = param_1[7];\n      if (local_7c == (undefined4 *******)0x0) {\n        local_7c = (undefined4 *******)0x1;\n        dVar35 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n      }\n      else {\n        dVar35 = (double)(int)local_7c;\n        if ((int)local_7c < 0) {\n          dVar35 = dVar35 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n      }\n      if (local_78 == (undefined4 ******)0x0) {\n        dVar30 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n        local_78 = (undefined4 ******)0x1;\n        if (((uint)ppppppuVar2 & 0x2000) != 0) goto LAB_001c8e14;\nLAB_001c8484:\n        pppppppuVar9 = local_74;\n        if ((int)local_74 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_74;\n        }\n        puVar8 = (undefined *)((int)param_1[6] - (int)pppppppuVar9);\n        pppppppuVar9 = local_70;\n        if ((int)local_70 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_70;\n        }\n        puVar3 = (undefined *)((int)ppppppuVar7 - (int)pppppppuVar9);\n      }\n      else {\n        dVar30 = (double)(int)local_78;\n        if ((int)local_78 < 0) {\n          dVar30 = dVar30 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n        if (((uint)ppppppuVar2 & 0x2000) == 0) goto LAB_001c8484;\nLAB_001c8e14:\n        pppppppuVar9 = local_74;\n        if ((int)local_74 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_74;\n        }\n        puVar8 = (undefined *)((int)pppppppuVar9 + (int)param_1[6]);\n        if ((int)local_70 < 0) {\n          puVar3 = (undefined *)((int)ppppppuVar7 - (int)local_70);\n        }\n        else {\n          puVar3 = (undefined *)((int)local_70 + (int)ppppppuVar7);\n        }\n      }\n      unaff_s4 = (undefined4 ******)((uint)ppppppuVar2 & 0x2000);\n      dVar34 = (double)(int)puVar8;\n      if ((int)puVar8 < 0) {\n        dVar34 = dVar34 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n      }\n      dVar35 = dVar34 / dVar35;\n      local_c8 = (double)(int)puVar3;\n      if ((int)puVar3 < 0) {\n        local_c8 = local_c8 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n      }\n      dVar25 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n      local_a0 = dVar25;\n      if (dVar35 < dVar25) {\n        local_a0 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n        dVar35 = dVar25;\n      }\n      if (local_a0 <= local_c8 / dVar30) {\n        local_a0 = local_c8 / dVar30;\n      }\n      dVar30 = 0.0;\n      unaff_s7 = local_70;\n      if (0.0 < local_c8) {\n        dVar25 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4780);\n        dVar31 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4788);\n        if (unaff_s4 != (undefined4 ******)0x0) goto LAB_001c8b70;\nLAB_001c854c:\n        unaff_s7 = local_70;\n        dVar32 = dVar30;\n        if ((int)local_70 < 1) {\n          dVar32 = dVar30 - (double)(int)local_70;\n        }\n        dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n        dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n        if (dVar32 - dVar26 < dVar27 - dVar32) {\n          dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar23 = (code *)PTR_floor_003a9670;\n          if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d7c;\n        }\n        else {\n          if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d7c:\n            iVar15 = -0x7ffffdff;\n            goto joined_r0x001c8cbc;\n          }\n          dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar23 = (code *)PTR_ceil_003a8c20;\n        }\n        if (dVar26 < dVar32) {\n          iVar15 = 0x7ffffdff;\n        }\n        else {\n          dVar32 = (double)(*pcVar23)(dVar32);\n          iVar15 = (int)dVar32;\n        }\njoined_r0x001c8cbc:\n        dVar30 = dVar30 + local_a0;\n        if ((int)unaff_s7 < 0) {\n          dVar32 = 0.0;\n        }\n        else {\n          dVar32 = (double)(int)unaff_s7;\n        }\n        dVar32 = dVar30 + dVar32;\n        dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n        dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n        if (dVar32 - dVar26 < dVar27 - dVar32) {\n          if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8630;\n            goto LAB_001c8cec;\n          }\n        }\n        else if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;\n          goto LAB_001c8d18;\n        }\nLAB_001c8c88:\n        iVar14 = -0x7ffffdff;\nLAB_001c8644:\n        do {\n          unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n          param_2 = (undefined4 *******)((int)param_1[0x8d] + iVar15);\n          dVar32 = 0.0;\n          local_68 = unaff_s8;\n          local_60 = param_2;\n          if (0.0 < dVar34) {\n            dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n            unaff_s6 = &local_6c;\n            dVar27 = *(double *)((int)unaff_s3 + 0x4780);\n            do {\n              unaff_s7 = local_74;\n              if (unaff_s4 == (undefined4 ******)0x0) {\n                dVar33 = dVar32;\n                if ((int)local_74 < 1) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }\nLAB_001c8b04:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;\nLAB_001c8708:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8700:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar33 = 0.0;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8768:\n                  dVar33 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar33 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n              }\n              else {\n                dVar33 = dVar32;\n                if (0 < (int)local_74) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar27 <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar33 = 0.0;\n                }\n                else {\n                  if (dVar33 < dVar27) goto LAB_001c8b24;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (dVar26 < dVar33) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8850:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < dVar25) goto LAB_001c8a44;\n                  if (dVar33 <= dVar26) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar14 = 0x7ffffdff;\n                }\n                else if (dVar25 <= dVar33) {\n                  if (dVar33 <= dVar31) goto LAB_001c8abc;\n                  iVar14 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar14 = -0x7ffffdff;\n                }\n              }\n              unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n              param_2 = (undefined4 *******)((int)param_1[0x8c] + iVar15);\n              local_6c = unaff_s8;\n              local_64 = param_2;\n              iVar15 = (*(code *)PTR_CropImage_003a90b8)(param_1,unaff_s6,param_3);\n              if (iVar15 != 0) {\n                (*(code *)PTR_AppendImageToList_003a9880)(&local_80,iVar15);\n              }\n            } while (dVar32 < dVar34);\n          }\n          unaff_s5 = unaff_s3;\n          if (local_c8 <= dVar30) break;\n          if (unaff_s4 == (undefined4 ******)0x0) goto LAB_001c854c;\nLAB_001c8b70:\n          unaff_s7 = local_70;\n          dVar32 = dVar30;\n          if (0 < (int)local_70) {\n            dVar32 = dVar30 - (double)(int)local_70;\n          }\n          dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n          dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          if (dVar32 - dVar26 < dVar27 - dVar32) {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d8c;\n            pcVar23 = (code *)PTR_floor_003a9670;\n            if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8d50;\nLAB_001c8bd8:\n            dVar32 = (double)(*pcVar23)(dVar32);\n            iVar15 = (int)dVar32;\nLAB_001c8bf0:\n            dVar30 = dVar30 + local_a0;\n            if (-2 < (int)unaff_s7) goto LAB_001c8c00;\nLAB_001c8d6c:\n            dVar32 = (double)(int)unaff_s7;\n          }\n          else {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d8c:\n              iVar15 = -0x7ffffdff;\n              goto LAB_001c8bf0;\n            }\n            pcVar23 = (code *)PTR_ceil_003a8c20;\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8bd8;\nLAB_001c8d50:\n            iVar15 = 0x7ffffdff;\n            dVar30 = dVar30 + local_a0;\n            if ((int)unaff_s7 < -1) goto LAB_001c8d6c;\nLAB_001c8c00:\n            dVar32 = 0.0;\n          }\n          dVar32 = dVar30 + dVar32;\n          dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n          dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          if (dVar32 - dVar26 < dVar27 - dVar32) {\n            if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n              if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) {\nLAB_001c8cec:\n                iVar14 = 0x7ffffdff;\n              }\n              else {\nLAB_001c8630:\n                dVar32 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n                iVar14 = (int)dVar32;\n              }\n              goto LAB_001c8644;\n            }\n            goto LAB_001c8c88;\n          }\n          if (dVar32 < dVar25) goto LAB_001c8c88;\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;\nLAB_001c8d18:\n          dVar32 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          iVar14 = (int)dVar32;\n        } while( true );\n      }\n      (*(code *)PTR_ClearMagickException_003a90f8)(param_3);\n      pppppppuVar9 = local_80;\n      unaff_s0 = param_2;\n    }\n    else {\n      unaff_s3 = &local_7c;\n      if (((local_7c == (undefined4 *******)0x0) && (local_78 == (undefined4 ******)0x0)) ||\n         (((uint)ppppppuVar2 & 3) != 0)) {\n        local_80 = (undefined4 *******)(*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n        pppppppuVar9 = local_80;\n        unaff_s4 = ppppppuVar2;\n        if ((local_80 != (undefined4 *******)0x0) &&\n           (unaff_s4 = (undefined4 ******)((uint)ppppppuVar2 & 0x2000),\n           unaff_s4 != (undefined4 ******)0x0)) {\n          local_80[0x8c] = (undefined4 ******)((int)local_80[0x8c] - (int)local_74);\n          local_80[0x8d] = (undefined4 ******)((int)local_80[0x8d] - (int)local_70);\n          local_80[0x8a] = local_7c;\n          local_80[0x8b] = local_78;\n        }\n      }\n      else {\n        unaff_s7 = (undefined4 *******)param_1[6];\n        if ((local_7c < unaff_s7) || (local_78 < param_1[7])) {\n          ppppppuVar2 = param_1[0x8b];\n          if ((undefined4 *******)param_1[0x8a] != (undefined4 *******)0x0) {\n            unaff_s7 = (undefined4 *******)param_1[0x8a];\n          }\n          if (ppppppuVar2 == (undefined4 ******)0x0) {\n            ppppppuVar2 = param_1[7];\n          }\n          if (local_7c == (undefined4 *******)0x0) {\n            unaff_s0 = unaff_s7;\n          }\n          if (local_78 == (undefined4 ******)0x0) {\n            unaff_s4 = ppppppuVar2;\n          }\n          pppppppuVar9 = local_80;\n          if (0 < (int)ppppppuVar2) {\n            unaff_s3 = (undefined4 *******)0x0;\n            unaff_s8 = &local_80;\n            do {\n              unaff_s5 = (undefined4 *******)0x0;\n              if ((int)unaff_s7 < 1) {\n                pppppppuVar9 = local_80;\n                if (unaff_s6 == (undefined4 *******)0x0) break;\n              }\n              else {\n                do {\n                  local_7c = unaff_s0;\n                  local_78 = unaff_s4;\n                  local_74 = unaff_s5;\n                  local_70 = unaff_s3;\n                  unaff_s6 = (undefined4 *******)\n                             (*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n                  pppppppuVar9 = local_80;\n                  if (unaff_s6 == (undefined4 *******)0x0) goto LAB_001c8908;\n                  unaff_s5 = (undefined4 *******)((int)unaff_s5 + (int)unaff_s0);\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);\n              }\n              unaff_s3 = (undefined4 *******)((int)unaff_s3 + (int)unaff_s4);\n              pppppppuVar9 = local_80;\n            } while ((int)unaff_s3 < (int)ppppppuVar2);\n          }\n        }\n        else {\n          local_e8 = param_3;\n          pppppppuVar9 = (undefined4 *******)(*(code *)PTR_CloneImage_003a9830)(param_1,0,0,1);\n        }\n      }\n    }\nLAB_001c8908:\n    if (local_5c == *(int *)puVar20) {\n      return pppppppuVar9;\n    }\n    (*(code *)PTR___stack_chk_fail_003a9064)();\n    unaff_s1 = param_1;\n    unaff_s2 = param_3;\n    goto LAB_001c8ef8;\n  }\n  ppppppuVar2 = (undefined4 ******)0x323;\n  pppppppuVar12 = (undefined4 *******)(PTR_s_courses_003a88ec + -0x288c);\n  pcVar23 = ExcerptImage;\n  pppppppuVar9 = (undefined4 *******)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3784);\n  puVar20 = PTR___assert_fail_003a9608;\n  (*(code *)PTR___assert_fail_003a9608)();\n  puVar8 = puVar20 + 0x1e7970;\n  piVar18 = *(int **)(puVar20 + 0x1e02f0);\n  iStack_11c = *piVar18;\n  puStack_150 = puVar8;\n  pppppppuStack_118 = unaff_s0;\n  pppppppuStack_114 = param_1;\n  ppppppuStack_110 = unaff_s2;\n  pppppppuStack_10c = unaff_s3;\n  ppppppuStack_108 = unaff_s4;\n  pppppppuStack_104 = unaff_s5;\n  pppppppuStack_100 = unaff_s6;\n  pcStack_fc = pcVar23;\n  if (pppppppuVar9 == (undefined4 *******)0x0) {\n    iVar15 = *(int *)(puVar20 + 0x1df9ac) + -0x26ac;\n    (**(code **)(puVar20 + 0x1e06c8))\n              (*(int *)(puVar20 + 0x1df9a8) + -0x37b0,*(int *)(puVar20 + 0x1df9ac) + -0x288c,0x3f4,\n               iVar15);\nLAB_001c92d4:\n    iVar15 = iVar15 + -0x26ac;\n    (**(code **)(puVar8 + -0x72a8))\n              (*(int *)(puVar8 + -0x7fd0) + 0x294c,*(int *)(puVar8 + -0x7fc4) + -0x288c,0x3fa,iVar15\n              );\n    ppppppuVar2 = unaff_s2;\nLAB_001c92f4:\n    iVar15 = iVar15 + -0x26ac;\n    (**(code **)(puVar8 + -0x72a8))\n              (*(int *)(puVar8 + -0x7fd0) + 0x1cac,*(int *)(puVar8 + -0x7fc4) + -0x288c,0x3f9,iVar15\n              );\nLAB_001c9314:\n    (**(code **)(puVar8 + -0x784c))();\n    pppppppuVar9 = unaff_s0;\nLAB_001c9320:\n    (**(code **)(puVar8 + -0x72a8))\n              (*(int *)(puVar8 + -0x7fc4) + -0x2850,*(int *)(puVar8 + -0x7fc4) + -0x288c,0x3f8,\n               iVar15 + -0x26ac);\n    unaff_s2 = ppppppuVar2;\n  }\n  else if (pppppppuVar9[0xcdb] == (undefined4 ******)0xabacadab) {\n    if (pppppppuVar9[0xcd4] != (undefined4 ******)0x0) {\n      pppppppuStack_154 = pppppppuVar9 + 0xd0;\n      ppppppuStack_158 = (undefined4 ******)(*(int *)(puVar20 + 0x1df9a4) + -0x62ac);\n      (**(code **)(puVar20 + 0x1e02a0))\n                (0x8000,*(int *)(puVar20 + 0x1df9ac) + -0x288c,\n                 *(int *)(puVar20 + 0x1df9ac) + -0x26bc,0x3f7);\n    }\n    iVar15 = *(int *)(puStack_150 + -0x7fc4);\n    unaff_s3 = pppppppuVar12;\n    puVar8 = puStack_150;\n    if (pppppppuVar12 != (undefined4 *******)0x0) {\n      unaff_s0 = pppppppuVar9;\n      if (ppppppuVar2 == (undefined4 ******)0x0) goto LAB_001c92f4;\n      unaff_s2 = ppppppuVar2;\n      if (ppppppuVar2[7] != (undefined4 *****)0xabacadab) goto LAB_001c92d4;\n      iVar15 = 1;\n      ppppppuStack_158 = ppppppuVar2;\n      param_1 = (undefined4 *******)\n                (**(code **)(puStack_150 + -0x7080))(pppppppuVar9,*pppppppuVar12,pppppppuVar12[1],1)\n      ;\n      if (param_1 != (undefined4 *******)0x0) {\n        uStack_144 = 0;\n        uStack_148 = 0;\n        unaff_s5 = (undefined4 *******)\n                   (**(code **)(puStack_150 + -0x715c))(pppppppuVar9,ppppppuVar2);\n        unaff_s6 = (undefined4 *******)(**(code **)(puStack_150 + -0x79dc))(param_1,ppppppuVar2);\n        iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9);\n        if (((iVar15 == 4) ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9), iVar15 == 3)) &&\n           ((iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 4 ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 3)))) {\n          (**(code **)(puStack_150 + -0x7774))(7);\n          ppppppuVar7 = param_1[7];\n          if ((int)ppppppuVar7 < 0) {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1 < (int)ppppppuVar7 + 0x3f >> 6) goto LAB_001c9298;\nLAB_001c91a4:\n            bVar1 = (int)ppppppuVar7 < 0x80;\n          }\n          else {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if ((int)ppppppuVar7 >> 6 <= extraout_v1) goto LAB_001c91a4;\nLAB_001c9298:\n            (*pcVar23)(7);\n            bVar1 = extraout_v1_02 < 2;\n          }\n          iVar14 = 1;\n          if ((bool)(bVar1 ^ 1)) {\n            (**(code **)(puStack_150 + -0x7774))(7);\n            ppppppuVar7 = param_1[7];\n            if ((int)ppppppuVar7 < 0) {\n              ppppppuVar7 = (undefined4 ******)((int)ppppppuVar7 + 0x3f);\n            }\n            iVar14 = (int)ppppppuVar7 >> 6;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1_01 < iVar14) {\nLAB_001c9234:\n              (*pcVar23)(7);\n              iVar14 = extraout_v1_00;\n            }\n            goto LAB_001c9088;\n          }\n          iVar10 = *(int *)(puStack_150 + -0x7f10);\n        }\n        else {\n          uVar36 = (**(code **)(puStack_150 + -0x7774))(7);\n          if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            uVar36 = (*pcVar23)(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c9070;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            iVar14 = 1;\n          }\n          else {\nLAB_001c9070:\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\nLAB_001c9074:\n            uVar36 = (*pcVar23)(7);\n            if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n               (pcVar23 = *(code **)(puStack_150 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c9234;\n            iVar14 = 2;\n          }\nLAB_001c9088:\n          iVar10 = *(int *)(puStack_150 + -0x7f10);\n        }\n        iVar15 = 0;\n        ppppppuStack_124 = (undefined4 ******)0x1;\n        puStack_120 = &uStack_148;\n        pppppppuStack_13c = pppppppuVar9;\n        pppppppuStack_138 = pppppppuVar12;\n        ppppppuStack_134 = ppppppuVar2;\n        pppppppuStack_130 = unaff_s6;\n        pppppppuStack_12c = unaff_s5;\n        pppppppuStack_128 = param_1;\n        (**(code **)(puStack_150 + -0x7718))(iVar10 + 0x5428,&pppppppuStack_13c,iVar14,0);\n        ppppppuVar2 = ppppppuStack_124;\n        (**(code **)(puStack_150 + -0x79bc))(unaff_s6);\n        (**(code **)(puStack_150 + -0x79bc))(unaff_s5);\n        param_1[0xa8] = pppppppuVar9[0xa8];\n        if (ppppppuVar2 == (undefined4 ******)0x0) {\n          param_1 = (undefined4 *******)(**(code **)(puStack_150 + -0x7964))(param_1);\n        }\n      }\n      puVar8 = puStack_150;\n      if (iStack_11c == *piVar18) {\n        return param_1;\n      }\n      goto LAB_001c9314;\n    }\n    goto LAB_001c9320;\n  }\n  ppppppuVar2 = (undefined4 ******)0x3f5;\n  pcVar21 = *(code **)(puVar8 + -0x72a8);\n  pppppppuVar13 = (undefined4 *******)(*(int *)(puVar8 + -0x7fc4) + -0x288c);\n  pcVar24 = ExtentImage;\n  pppppppuVar12 = (undefined4 *******)(*(int *)(puVar8 + -0x7fc8) + -0x3784);\n  (*pcVar21)();\n  pcVar23 = pcVar21 + 0x1e754c;\n  pcStack_188 = pcVar23;\n  pppppppuStack_17c = pppppppuVar9;\n  pppppppuStack_178 = param_1;\n  ppppppuStack_174 = unaff_s2;\n  pppppppuStack_170 = unaff_s3;\n  pcStack_16c = pcVar24;\n  if (pppppppuVar12 == (undefined4 *******)0x0) {\n    iVar15 = *(int *)(pcVar21 + 0x1df588) + -0x26c8;\n    (**(code **)(pcVar21 + 0x1e02a4))\n              (*(int *)(pcVar21 + 0x1df584) + -0x37b0,*(int *)(pcVar21 + 0x1df588) + -0x288c,0x474,\n               iVar15);\nLAB_001c94fc:\n    iVar15 = iVar15 + -0x26c8;\n    (**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fc4) + -0x2850,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x478,\n               iVar15);\nLAB_001c951c:\n    iVar15 = iVar15 + -0x26c8;\n    (**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fd0) + 0x294c,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x47a,\n               iVar15);\n    pppppppuVar12 = pppppppuVar9;\nLAB_001c953c:\n    (**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fd0) + 0x1cac,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x479,\n               iVar15 + -0x26c8);\n  }\n  else if (pppppppuVar12[0xcdb] == (undefined4 ******)0xabacadab) {\n    if (pppppppuVar12[0xcd4] != (undefined4 ******)0x0) {\n      pppppppuStack_194 = pppppppuVar12 + 0xd0;\n      ppppppuStack_198 = (undefined4 ******)(*(int *)(pcVar21 + 0x1df580) + -0x62ac);\n      (**(code **)(pcVar21 + 0x1dfe7c))\n                (0x8000,*(int *)(pcVar21 + 0x1df588) + -0x288c,\n                 *(int *)(pcVar21 + 0x1df588) + -0x26d4,0x477);\n    }\n    iVar15 = *(int *)(pcStack_188 + -0x7fc4);\n    pppppppuVar9 = pppppppuVar12;\n    param_1 = pppppppuVar13;\n    unaff_s2 = ppppppuVar2;\n    pcVar23 = pcStack_188;\n    if (pppppppuVar13 == (undefined4 *******)0x0) goto LAB_001c94fc;\n    if (ppppppuVar2 != (undefined4 ******)0x0) {\n      if (ppppppuVar2[7] == (undefined4 *****)0xabacadab) {\n        ppppppuStack_198 = ppppppuVar2;\n        pppppppuVar9 = (undefined4 *******)\n                       (**(code **)(pcStack_188 + -0x7080))\n                                 (pppppppuVar12,*pppppppuVar13,pppppppuVar13[1],1);\n        if (pppppppuVar9 != (undefined4 *******)0x0) {\n          iVar15 = (**(code **)(pcStack_188 + -0x7a20))(pppppppuVar9,ppppppuVar2);\n          if (iVar15 == 0) {\n            (**(code **)(pcStack_188 + -0x7964))(pppppppuVar9);\n            pppppppuVar9 = (undefined4 *******)0x0;\n          }\n          else {\n            pppppppuStack_194 = (undefined4 *******)-(int)pppppppuVar13[3];\n            ppppppuStack_198 = (undefined4 ******)-(int)pppppppuVar13[2];\n            ppppppuStack_190 = ppppppuVar2;\n            iVar15 = (**(code **)(pcStack_188 + -0x7bec))\n                               (pppppppuVar9,pppppppuVar12,pppppppuVar12[0x99],1);\n            if (iVar15 != 0) {\n              (**(code **)(pcStack_188 + -0x7d18))\n                        (pppppppuVar9,pppppppuVar12[6],pppppppuVar12[7],pppppppuVar13);\n            }\n          }\n        }\n        return pppppppuVar9;\n      }\n      goto LAB_001c951c;\n    }\n    goto LAB_001c953c;\n  }\n  pcVar21 = *(code **)(pcVar23 + -0x72a8);\n  pppppppuVar9 = (undefined4 *******)(*(int *)(pcVar23 + -0x7fc4) + -0x288c);\n  pcVar24 = FlipImage;\n  pppppppuVar13 = (undefined4 *******)(*(int *)(pcVar23 + -0x7fc8) + -0x3784);\n  (*pcVar21)(pppppppuVar13,pppppppuVar9,0x475,*(int *)(pcVar23 + -0x7fc4) + -0x26c8);\n  pcVar23 = pcVar21 + 0x1e7330;\n  piVar16 = *(int **)(pcVar21 + 0x1dfcb0);\n  iStack_1d4 = *piVar16;\n  pcStack_208 = pcVar23;\n  pppppppuStack_1d0 = pppppppuVar12;\n  pppppppuStack_1cc = param_1;\n  ppppppuStack_1c8 = unaff_s2;\n  pppppppuStack_1c4 = unaff_s3;\n  piStack_1c0 = piVar18;\n  pppppppuStack_1bc = unaff_s5;\n  pppppppuStack_1b8 = unaff_s6;\n  pppppppuStack_1b4 = unaff_s7;\n  pppppppuStack_1b0 = unaff_s8;\n  pcStack_1ac = pcVar24;\n  if (pppppppuVar13 == (undefined4 *******)0x0) {\n    (**(code **)(pcVar21 + 0x1e0088))\n              (*(int *)(pcVar21 + 0x1df368) + -0x37b0,*(int *)(pcVar21 + 0x1df36c) + -0x288c,0x4bc,\n               *(int *)(pcVar21 + 0x1df36c) + -0x26e0);\n    pppppppuVar9 = param_1;\nLAB_001c9944:\n    (**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fd0) + 0x1cac,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x4c0,\n               *(int *)(pcVar23 + -0x7fc4) + -0x26e0);\nLAB_001c9968:\n    (**(code **)(pcVar23 + -0x784c))();\n    pppppppuVar13 = unaff_s7;\nLAB_001c9974:\n    (**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fd0) + 0x294c,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x4c1,\n               *(int *)(pcVar23 + -0x7fc4) + -0x26e0);\n    pppppppuStack_244 = pppppppuVar9;\n  }\n  else {\n    pppppppuStack_244 = param_1;\n    if (pppppppuVar13[0xcdb] == (undefined4 ******)0xabacadab) {\n      if (pppppppuVar13[0xcd4] != (undefined4 ******)0x0) {\n        pppppppuStack_20c = pppppppuVar13 + 0xd0;\n        pppppppuStack_210 = (undefined4 *******)(*(int *)(pcVar21 + 0x1df364) + -0x62ac);\n        (**(code **)(pcVar21 + 0x1dfc60))\n                  (0x8000,*(int *)(pcVar21 + 0x1df36c) + -0x288c,\n                   *(int *)(pcVar21 + 0x1df36c) + -0x26ec,0x4bf);\n      }\n      unaff_s7 = pppppppuVar13;\n      pcVar23 = pcStack_208;\n      if (pppppppuVar9 == (undefined4 *******)0x0) goto LAB_001c9944;\n      if (pppppppuVar9[7] == (undefined4 ******)0xabacadab) {\n        pppppppuStack_210 = pppppppuVar9;\n        pppppppuVar12 =\n             (undefined4 *******)(**(code **)(pcStack_208 + -0x7080))(pppppppuVar13,0,0,1);\n        if (pppppppuVar12 != (undefined4 *******)0x0) {\n          ppppppuStack_1fc = pppppppuVar13[0x8c];\n          unaff_s8 = (undefined4 *******)pppppppuVar13[0x8a];\n          unaff_s2 = pppppppuVar13[0x8b];\n          unaff_s6 = (undefined4 *******)pppppppuVar13[0x8d];\n          uStack_1f4 = 0;\n          uStack_1f8 = 0;\n          piVar18 = (int *)(**(code **)(pcStack_208 + -0x715c))(pppppppuVar13,pppppppuVar9);\n          unaff_s5 = (undefined4 *******)\n                     (**(code **)(pcStack_208 + -0x79dc))(pppppppuVar12,pppppppuVar9);\n          iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13);\n          if (((iVar15 == 4) ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13), iVar15 == 3)) &&\n             ((iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 4 ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 3)))) {\n            (**(code **)(pcStack_208 + -0x7774))(7);\n            ppppppuVar2 = pppppppuVar12[7];\n            if ((int)ppppppuVar2 < 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_03 < (int)ppppppuVar2 + 0x3f >> 6) goto LAB_001c98d4;\nLAB_001c981c:\n              bVar1 = (int)ppppppuVar2 < 0x80;\n            }\n            else {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if ((int)ppppppuVar2 >> 6 <= extraout_v1_03) goto LAB_001c981c;\nLAB_001c98d4:\n              (*pcVar23)(7);\n              bVar1 = extraout_v1_05 < 2;\n            }\n            iVar15 = 1;\n            if ((bool)(bVar1 ^ 1)) {\n              (**(code **)(pcStack_208 + -0x7774))(7);\n              ppppppuVar2 = pppppppuVar12[7];\n              if ((int)ppppppuVar2 < 0) {\n                ppppppuVar2 = (undefined4 ******)((int)ppppppuVar2 + 0x3f);\n              }\n              iVar15 = (int)ppppppuVar2 >> 6;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_06 < iVar15) {\nLAB_001c98ac:\n                (*pcVar23)(7);\n                iVar15 = extraout_v1_04;\n              }\n              goto LAB_001c96d8;\n            }\n            iVar14 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          else {\n            uVar36 = (**(code **)(pcStack_208 + -0x7774))(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              uVar36 = (*pcVar23)(7);\n              if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c96c0;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              iVar15 = 1;\n            }\n            else {\nLAB_001c96c0:\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\nLAB_001c96c4:\n              uVar36 = (*pcVar23)(7);\n              if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n                 (pcVar23 = *(code **)(pcStack_208 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c98ac;\n              iVar15 = 2;\n            }\nLAB_001c96d8:\n            iVar14 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          puStack_1dc = &uStack_1f8;\n          pppppppuStack_1d8 = (undefined4 *******)0x1;\n          pppppppuStack_1f0 = pppppppuVar13;\n          pppppppuStack_1ec = pppppppuVar9;\n          pppppppuStack_1e8 = unaff_s5;\n          piStack_1e4 = piVar18;\n          pppppppuStack_1e0 = pppppppuVar12;\n          (**(code **)(pcStack_208 + -0x7718))(iVar14 + 0x56bc,&pppppppuStack_1f0,iVar15,0);\n          pppppppuVar9 = pppppppuStack_1d8;\n          (**(code **)(pcStack_208 + -0x79bc))(unaff_s5);\n          (**(code **)(pcStack_208 + -0x79bc))(piVar18);\n          pppppppuVar12[0xa8] = pppppppuVar13[0xa8];\n          if (unaff_s2 != (undefined4 ******)0x0) {\n            unaff_s6 = (undefined4 *******)\n                       ((int)unaff_s2 + (-(int)unaff_s6 - (int)pppppppuVar12[7]));\n          }\n          pppppppuVar12[0x8a] = unaff_s8;\n          pppppppuVar12[0x8b] = unaff_s2;\n          pppppppuVar12[0x8c] = ppppppuStack_1fc;\n          pppppppuVar12[0x8d] = unaff_s6;\n          if (pppppppuVar9 == (undefined4 *******)0x0) {\n            pppppppuVar12 = (undefined4 *******)(**(code **)(pcStack_208 + -0x7964))(pppppppuVar12);\n          }\n        }\n        pcVar23 = pcStack_208;\n        if (iStack_1d4 == *piVar16) {\n          return pppppppuVar12;\n        }\n        goto LAB_001c9968;\n      }\n      goto LAB_001c9974;\n    }\n  }\n  pcVar21 = *(code **)(pcVar23 + -0x72a8);\n  iVar14 = *(int *)(pcVar23 + -0x7fc4) + -0x288c;\n  pcVar24 = FlopImage;\n  iVar15 = *(int *)(pcVar23 + -0x7fc8) + -0x3784;\n  (*pcVar21)(iVar15,iVar14,0x4bd,*(int *)(pcVar23 + -0x7fc4) + -0x26e0);\n  piVar17 = *(int **)(pcVar21 + 0x1df874);\n  iStack_24c = *piVar17;\n  pppppppuStack_248 = pppppppuVar12;\n  ppppppuStack_240 = unaff_s2;\n  piStack_23c = piVar16;\n  piStack_238 = piVar18;\n  pppppppuStack_234 = unaff_s5;\n  pppppppuStack_230 = unaff_s6;\n  pppppppuStack_22c = pppppppuVar13;\n  pppppppuStack_228 = unaff_s8;\n  pcStack_224 = pcVar24;\n  if (iVar15 == 0) {\n    pppppppuVar9 = (undefined4 *******)\n                   (**(code **)(pcVar21 + 0x1dfc4c))\n                             (*(int *)(pcVar21 + 0x1def2c) + -0x37b0,\n                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x543,\n                              *(int *)(pcVar21 + 0x1def30) + -0x26f8);\n    return pppppppuVar9;\n  }\n  if (*(int *)(iVar15 + 0x336c) != -0x54535255) {\n    pppppppuVar9 = (undefined4 *******)\n                   (**(code **)(pcVar21 + 0x1dfc4c))\n                             (*(int *)(pcVar21 + 0x1def2c) + -0x3784,\n                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x544,\n                              *(int *)(pcVar21 + 0x1def30) + -0x26f8);\n    return pppppppuVar9;\n  }\n  if (*(int *)(iVar15 + 0x3350) != 0) {\n    (**(code **)(pcVar21 + 0x1df824))\n              (0x8000,*(int *)(pcVar21 + 0x1def30) + -0x288c,*(int *)(pcVar21 + 0x1def30) + -0x2704,\n               0x546,*(int *)(pcVar21 + 0x1def28) + -0x62ac,iVar15 + 0x340);\n  }\n  if (iVar14 == 0) {\n    pppppppuVar9 = (undefined4 *******)\n                   (**(code **)(pcVar21 + 0x1dfc4c))\n                             (*(int *)(pcVar21 + 0x1def24) + 0x1cac,\n                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x547,\n                              *(int *)(pcVar21 + 0x1def30) + -0x26f8);\n    return pppppppuVar9;\n  }\n  if (*(int *)(iVar14 + 0x1c) != -0x54535255) goto LAB_001c9db0;\n  pppppppuVar9 = (undefined4 *******)(**(code **)(pcVar21 + 0x1dfe74))(iVar15,0,0,1,iVar14);\n  if (pppppppuVar9 != (undefined4 *******)0x0) {\n    ppppppuVar2 = *(undefined4 *******)(iVar15 + 0x234);\n    ppppppuVar7 = *(undefined4 *******)(iVar15 + 0x228);\n    ppppppuVar22 = *(undefined4 *******)(iVar15 + 0x22c);\n    ppppppuVar19 = *(undefined4 *******)(iVar15 + 0x230);\n    uStack_26c = 0;\n    uStack_270 = 0;\n    uVar4 = (**(code **)(pcVar21 + 0x1dfd98))(iVar15,iVar14);\n    uVar5 = (**(code **)(pcVar21 + 0x1df518))(pppppppuVar9,iVar14);\n    iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(iVar15);\n    if (((iVar10 == 4) || (iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(iVar15), iVar10 == 3)) &&\n       ((iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(pppppppuVar9), iVar10 == 4 ||\n        (iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(pppppppuVar9), iVar10 == 3)))) {\n      (**(code **)(pcVar21 + 0x1df780))(7);\n      ppppppuVar6 = pppppppuVar9[7];\n      if ((int)ppppppuVar6 < 0) {\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (extraout_v1_07 < (int)ppppppuVar6 + 0x3f >> 6) goto LAB_001c9d10;\nLAB_001c9c58:\n        bVar1 = (int)ppppppuVar6 < 0x80;\n      }\n      else {\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if ((int)ppppppuVar6 >> 6 <= extraout_v1_07) goto LAB_001c9c58;\nLAB_001c9d10:\n        (*pcVar23)(7);\n        bVar1 = extraout_v1_09 < 2;\n      }\n      iVar10 = 1;\n      if ((bool)(bVar1 ^ 1)) {\n        (**(code **)(pcVar21 + 0x1df780))(7);\n        ppppppuVar6 = pppppppuVar9[7];\n        if ((int)ppppppuVar6 < 0) {\n          ppppppuVar6 = (undefined4 ******)((int)ppppppuVar6 + 0x3f);\n        }\n        iVar10 = (int)ppppppuVar6 >> 6;\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (extraout_v1_10 < iVar10) {\nLAB_001c9ce8:\n          (*pcVar23)(7);\n          iVar10 = extraout_v1_08;\n        }\n        goto LAB_001c9b14;\n      }\n      iVar11 = *(int *)(pcVar21 + 0x1defe4);\n    }\n    else {\n      uVar36 = (**(code **)(pcVar21 + 0x1df780))(7);\n      if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (1 < (uint)uVar36) goto LAB_001c9b00;\n        uVar36 = (*pcVar23)(7);\n        if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c9afc;\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (1 < (uint)uVar36) goto LAB_001c9b00;\n        iVar10 = 1;\n      }\n      else {\nLAB_001c9afc:\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\nLAB_001c9b00:\n        uVar36 = (*pcVar23)(7);\n        if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n           (pcVar23 = *(code **)(pcVar21 + 0x1df780), (uint)uVar36 < 2)) goto LAB_001c9ce8;\n        iVar10 = 2;\n      }\nLAB_001c9b14:\n      iVar11 = *(int *)(pcVar21 + 0x1defe4);\n    }\n    puStack_254 = &uStack_270;\n    iStack_250 = 1;\n    iStack_268 = iVar15;\n    iStack_264 = iVar14;\n    uStack_260 = uVar5;\n    uStack_25c = uVar4;\n    pppppppuStack_258 = pppppppuVar9;\n    (**(code **)(pcVar21 + 0x1df7dc))(iVar11 + 0x594c,&iStack_268,iVar10,0);\n    iVar14 = iStack_250;\n    (**(code **)(pcVar21 + 0x1df538))(uVar5);\n    (**(code **)(pcVar21 + 0x1df538))(uVar4);\n    pppppppuVar9[0xa8] = *(undefined4 *******)(iVar15 + 0x2a0);\n    if (ppppppuVar7 != (undefined4 ******)0x0) {\n      ppppppuVar19 = (undefined4 ******)\n                     ((int)ppppppuVar7 + (-(int)ppppppuVar19 - (int)pppppppuVar9[6]));\n    }\n    pppppppuVar9[0x8a] = ppppppuVar7;\n    pppppppuVar9[0x8b] = ppppppuVar22;\n    pppppppuVar9[0x8c] = ppppppuVar19;\n    pppppppuVar9[0x8d] = ppppppuVar2;\n    if (iVar14 == 0) {\n      pppppppuVar9 = (undefined4 *******)(**(code **)(pcVar21 + 0x1df590))(pppppppuVar9);\n    }\n  }\n  if (iStack_24c == *piVar17) {\n    return pppppppuVar9;\n  }\n  (**(code **)(pcVar21 + 0x1df6a8))();\nLAB_001c9db0:\n  pppppppuVar9 = (undefined4 *******)\n                 (**(code **)(pcVar21 + 0x1dfc4c))\n                           (*(int *)(pcVar21 + 0x1def24) + 0x294c,\n                            *(int *)(pcVar21 + 0x1def30) + -0x288c,0x548,\n                            *(int *)(pcVar21 + 0x1def30) + -0x26f8);\n  return pppppppuVar9;\n}" { (declaration "bool bVar1;" primitive_type identifier ;) (declaration "undefined4 ******ppppppuVar2;" type_identifier (pointer_declarator "******ppppppuVar2" * (pointer_declarator "*****ppppppuVar2" * (pointer_declarator "****ppppppuVar2" * (pointer_declarator "***ppppppuVar2" * (pointer_declarator "**ppppppuVar2" * (pointer_declarator "*ppppppuVar2" * identifier)))))) ;) (declaration "undefined *puVar3;" type_identifier (pointer_declarator "*puVar3" * identifier) ;) (declaration "undefined4 uVar4;" type_identifier identifier ;) (declaration "undefined4 uVar5;" type_identifier identifier ;) (declaration "undefined4 ******ppppppuVar6;" type_identifier (pointer_declarator "******ppppppuVar6" * (pointer_declarator "*****ppppppuVar6" * (pointer_declarator "****ppppppuVar6" * (pointer_declarator "***ppppppuVar6" * (pointer_declarator "**ppppppuVar6" * (pointer_declarator "*ppppppuVar6" * identifier)))))) ;) (declaration "undefined4 ******ppppppuVar7;" type_identifier (pointer_declarator "******ppppppuVar7" * (pointer_declarator "*****ppppppuVar7" * (pointer_declarator "****ppppppuVar7" * (pointer_declarator "***ppppppuVar7" * (pointer_declarator "**ppppppuVar7" * (pointer_declarator "*ppppppuVar7" * identifier)))))) ;) (declaration "int extraout_v1;" primitive_type identifier ;) (declaration "int extraout_v1_00;" primitive_type identifier ;) (declaration "int extraout_v1_01;" primitive_type identifier ;) (declaration "int extraout_v1_02;" primitive_type identifier ;) (declaration "int extraout_v1_03;" primitive_type identifier ;) (declaration "int extraout_v1_04;" primitive_type identifier ;) (declaration "int extraout_v1_05;" primitive_type identifier ;) (declaration "int extraout_v1_06;" primitive_type identifier ;) (declaration "int extraout_v1_07;" primitive_type identifier ;) (declaration "int extraout_v1_08;" primitive_type identifier ;) (declaration "int extraout_v1_09;" primitive_type identifier ;) (declaration "int extraout_v1_10;" primitive_type identifier ;) (declaration "undefined *puVar8;" type_identifier (pointer_declarator "*puVar8" * identifier) ;) (declaration "undefined4 *******pppppppuVar9;" type_identifier (pointer_declarator "*******pppppppuVar9" * (pointer_declarator "******pppppppuVar9" * (pointer_declarator "*****pppppppuVar9" * (pointer_declarator "****pppppppuVar9" * (pointer_declarator "***pppppppuVar9" * (pointer_declarator "**pppppppuVar9" * (pointer_declarator "*pppppppuVar9" * identifier))))))) ;) (declaration "int iVar10;" primitive_type identifier ;) (declaration "int iVar11;" primitive_type identifier ;) (declaration "undefined4 *******pppppppuVar12;" type_identifier (pointer_declarator "*******pppppppuVar12" * (pointer_declarator "******pppppppuVar12" * (pointer_declarator "*****pppppppuVar12" * (pointer_declarator "****pppppppuVar12" * (pointer_declarator "***pppppppuVar12" * (pointer_declarator "**pppppppuVar12" * (pointer_declarator "*pppppppuVar12" * identifier))))))) ;) (declaration "undefined4 *******pppppppuVar13;" type_identifier (pointer_declarator "*******pppppppuVar13" * (pointer_declarator "******pppppppuVar13" * (pointer_declarator "*****pppppppuVar13" * (pointer_declarator "****pppppppuVar13" * (pointer_declarator "***pppppppuVar13" * (pointer_declarator "**pppppppuVar13" * (pointer_declarator "*pppppppuVar13" * identifier))))))) ;) (declaration "int iVar14;" primitive_type identifier ;) (declaration "int iVar15;" primitive_type identifier ;) (declaration "undefined4 *******unaff_s0;" type_identifier (pointer_declarator "*******unaff_s0" * (pointer_declarator "******unaff_s0" * (pointer_declarator "*****unaff_s0" * (pointer_declarator "****unaff_s0" * (pointer_declarator "***unaff_s0" * (pointer_declarator "**unaff_s0" * (pointer_declarator "*unaff_s0" * identifier))))))) ;) (declaration "undefined4 *******unaff_s1;" type_identifier (pointer_declarator "*******unaff_s1" * (pointer_declarator "******unaff_s1" * (pointer_declarator "*****unaff_s1" * (pointer_declarator "****unaff_s1" * (pointer_declarator "***unaff_s1" * (pointer_declarator "**unaff_s1" * (pointer_declarator "*unaff_s1" * identifier))))))) ;) (declaration "undefined4 ******unaff_s2;" type_identifier (pointer_declarator "******unaff_s2" * (pointer_declarator "*****unaff_s2" * (pointer_declarator "****unaff_s2" * (pointer_declarator "***unaff_s2" * (pointer_declarator "**unaff_s2" * (pointer_declarator "*unaff_s2" * identifier)))))) ;) (declaration "undefined4 *******unaff_s3;" type_identifier (pointer_declarator "*******unaff_s3" * (pointer_declarator "******unaff_s3" * (pointer_declarator "*****unaff_s3" * (pointer_declarator "****unaff_s3" * (pointer_declarator "***unaff_s3" * (pointer_declarator "**unaff_s3" * (pointer_declarator "*unaff_s3" * identifier))))))) ;) (declaration "int *piVar16;" primitive_type (pointer_declarator "*piVar16" * identifier) ;) (declaration "int *piVar17;" primitive_type (pointer_declarator "*piVar17" * identifier) ;) (declaration "undefined4 ******unaff_s4;" type_identifier (pointer_declarator "******unaff_s4" * (pointer_declarator "*****unaff_s4" * (pointer_declarator "****unaff_s4" * (pointer_declarator "***unaff_s4" * (pointer_declarator "**unaff_s4" * (pointer_declarator "*unaff_s4" * identifier)))))) ;) (declaration "int *piVar18;" primitive_type (pointer_declarator "*piVar18" * identifier) ;) (declaration "undefined4 *******unaff_s5;" type_identifier (pointer_declarator "*******unaff_s5" * (pointer_declarator "******unaff_s5" * (pointer_declarator "*****unaff_s5" * (pointer_declarator "****unaff_s5" * (pointer_declarator "***unaff_s5" * (pointer_declarator "**unaff_s5" * (pointer_declarator "*unaff_s5" * identifier))))))) ;) (declaration "undefined4 *******unaff_s6;" type_identifier (pointer_declarator "*******unaff_s6" * (pointer_declarator "******unaff_s6" * (pointer_declarator "*****unaff_s6" * (pointer_declarator "****unaff_s6" * (pointer_declarator "***unaff_s6" * (pointer_declarator "**unaff_s6" * (pointer_declarator "*unaff_s6" * identifier))))))) ;) (declaration "undefined4 ******ppppppuVar19;" type_identifier (pointer_declarator "******ppppppuVar19" * (pointer_declarator "*****ppppppuVar19" * (pointer_declarator "****ppppppuVar19" * (pointer_declarator "***ppppppuVar19" * (pointer_declarator "**ppppppuVar19" * (pointer_declarator "*ppppppuVar19" * identifier)))))) ;) (declaration "undefined4 *******unaff_s7;" type_identifier (pointer_declarator "*******unaff_s7" * (pointer_declarator "******unaff_s7" * (pointer_declarator "*****unaff_s7" * (pointer_declarator "****unaff_s7" * (pointer_declarator "***unaff_s7" * (pointer_declarator "**unaff_s7" * (pointer_declarator "*unaff_s7" * identifier))))))) ;) (declaration "undefined *puVar20;" type_identifier (pointer_declarator "*puVar20" * identifier) ;) (declaration "code *pcVar21;" type_identifier (pointer_declarator "*pcVar21" * identifier) ;) (declaration "undefined4 *******unaff_s8;" type_identifier (pointer_declarator "*******unaff_s8" * (pointer_declarator "******unaff_s8" * (pointer_declarator "*****unaff_s8" * (pointer_declarator "****unaff_s8" * (pointer_declarator "***unaff_s8" * (pointer_declarator "**unaff_s8" * (pointer_declarator "*unaff_s8" * identifier))))))) ;) (declaration "undefined4 ******ppppppuVar22;" type_identifier (pointer_declarator "******ppppppuVar22" * (pointer_declarator "*****ppppppuVar22" * (pointer_declarator "****ppppppuVar22" * (pointer_declarator "***ppppppuVar22" * (pointer_declarator "**ppppppuVar22" * (pointer_declarator "*ppppppuVar22" * identifier)))))) ;) (declaration "code *pcVar23;" type_identifier (pointer_declarator "*pcVar23" * identifier) ;) (declaration "code *pcVar24;" type_identifier (pointer_declarator "*pcVar24" * identifier) ;) (declaration "double dVar25;" primitive_type identifier ;) (declaration "double dVar26;" primitive_type identifier ;) (declaration "double dVar27;" primitive_type identifier ;) (declaration "double dVar28;" primitive_type identifier ;) (declaration "double dVar29;" primitive_type identifier ;) (declaration "double dVar30;" primitive_type identifier ;) (declaration "double dVar31;" primitive_type identifier ;) (declaration "double dVar32;" primitive_type identifier ;) (declaration "double dVar33;" primitive_type identifier ;) (declaration "double dVar34;" primitive_type identifier ;) (declaration "double dVar35;" primitive_type identifier ;) (declaration "undefined8 uVar36;" type_identifier identifier ;) (declaration "undefined4 uStack_270;" type_identifier identifier ;) (declaration "undefined4 uStack_26c;" type_identifier identifier ;) (declaration "int iStack_268;" primitive_type identifier ;) (declaration "int iStack_264;" primitive_type identifier ;) (declaration "undefined4 uStack_260;" type_identifier identifier ;) (declaration "undefined4 uStack_25c;" type_identifier identifier ;) (declaration "undefined4 *******pppppppuStack_258;" type_identifier (pointer_declarator "*******pppppppuStack_258" * (pointer_declarator "******pppppppuStack_258" * (pointer_declarator "*****pppppppuStack_258" * (pointer_declarator "****pppppppuStack_258" * (pointer_declarator "***pppppppuStack_258" * (pointer_declarator "**pppppppuStack_258" * (pointer_declarator "*pppppppuStack_258" * identifier))))))) ;) (declaration "undefined4 *puStack_254;" type_identifier (pointer_declarator "*puStack_254" * identifier) ;) (declaration "int iStack_250;" primitive_type identifier ;) (declaration "int iStack_24c;" primitive_type identifier ;) (declaration "undefined4 *******pppppppuStack_248;" type_identifier (pointer_declarator "*******pppppppuStack_248" * (pointer_declarator "******pppppppuStack_248" * (pointer_declarator "*****pppppppuStack_248" * (pointer_declarator "****pppppppuStack_248" * (pointer_declarator "***pppppppuStack_248" * (pointer_declarator "**pppppppuStack_248" * (pointer_declarator "*pppppppuStack_248" * identifier))))))) ;) (declaration "undefined4 *******pppppppuStack_244;" type_identifier (pointer_declarator "*******pppppppuStack_244" * (pointer_declarator "******pppppppuStack_244" * (pointer_declarator "*****pppppppuStack_244" * (pointer_declarator "****pppppppuStack_244" * (pointer_declarator "***pppppppuStack_244" * (pointer_declarator "**pppppppuStack_244" * (pointer_declarator "*pppppppuStack_244" * identifier))))))) ;) (declaration "undefined4 ******ppppppuStack_240;" type_identifier (pointer_declarator "******ppppppuStack_240" * (pointer_declarator "*****ppppppuStack_240" * (pointer_declarator "****ppppppuStack_240" * (pointer_declarator "***ppppppuStack_240" * (pointer_declarator "**ppppppuStack_240" * (pointer_declarator "*ppppppuStack_240" * identifier)))))) ;) (declaration "int *piStack_23c;" primitive_type (pointer_declarator "*piStack_23c" * identifier) ;) (declaration "int *piStack_238;" primitive_type (pointer_declarator "*piStack_238" * identifier) ;) (declaration "undefined4 *******pppppppuStack_234;" type_identifier (pointer_declarator "*******pppppppuStack_234" * (pointer_declarator "******pppppppuStack_234" * (pointer_declarator "*****pppppppuStack_234" * (pointer_declarator "****pppppppuStack_234" * (pointer_declarator "***pppppppuStack_234" * (pointer_declarator "**pppppppuStack_234" * (pointer_declarator "*pppppppuStack_234" * identifier))))))) ;) (declaration "undefined4 *******pppppppuStack_230;" type_identifier (pointer_declarator "*******pppppppuStack_230" * (pointer_declarator "******pppppppuStack_230" * (pointer_declarator "*****pppppppuStack_230" * (pointer_declarator "****pppppppuStack_230" * (pointer_declarator "***pppppppuStack_230" * (pointer_declarator "**pppppppuStack_230" * (pointer_declarator "*pppppppuStack_230" * identifier))))))) ;) (declaration "undefined4 *******pppppppuStack_22c;" type_identifier (pointer_declarator "*******pppppppuStack_22c" * (pointer_declarator "******pppppppuStack_22c" * (pointer_declarator "*****pppppppuStack_22c" * (pointer_declarator "****pppppppuStack_22c" * (pointer_declarator "***pppppppuStack_22c" * (pointer_declarator "**pppppppuStack_22c" * (pointer_declarator "*pppppppuStack_22c" * identifier))))))) ;) (declaration "undefined4 *******pppppppuStack_228;" type_identifier (pointer_declarator "*******pppppppuStack_228" * (pointer_declarator "******pppppppuStack_228" * (pointer_declarator "*****pppppppuStack_228" * (pointer_declarator "****pppppppuStack_228" * (pointer_declarator "***pppppppuStack_228" * (pointer_declarator "**pppppppuStack_228" * (pointer_declarator "*pppppppuStack_228" * identifier))))))) ;) (declaration "code *pcStack_224;" type_identifier (pointer_declarator "*pcStack_224" * identifier) ;) (declaration "undefined4 *******pppppppuStack_210;" type_identifier (pointer_declarator "*******pppppppuStack_210" * (pointer_declarator "******pppppppuStack_210" * (pointer_declarator "*****pppppppuStack_210" * (pointer_declarator "****pppppppuStack_210" * (pointer_declarator "***pppppppuStack_210" * (pointer_declarator "**pppppppuStack_210" * (pointer_declarator "*pppppppuStack_210" * identifier))))))) ;) (declaration "undefined4 *******pppppppuStack_20c;" type_identifier (pointer_declarator "*******pppppppuStack_20c" * (pointer_declarator "******pppppppuStack_20c" * (pointer_declarator "*****pppppppuStack_20c" * (pointer_declarator "****pppppppuStack_20c" * (pointer_declarator "***pppppppuStack_20c" * (pointer_declarator "**pppppppuStack_20c" * (pointer_declarator "*pppppppuStack_20c" * identifier))))))) ;) (declaration "code *pcStack_208;" type_identifier (pointer_declarator "*pcStack_208" * identifier) ;) (declaration "undefined4 ******ppppppuStack_1fc;" type_identifier (pointer_declarator "******ppppppuStack_1fc" * (pointer_declarator "*****ppppppuStack_1fc" * (pointer_declarator "****ppppppuStack_1fc" * (pointer_declarator "***ppppppuStack_1fc" * (pointer_declarator "**ppppppuStack_1fc" * (pointer_declarator "*ppppppuStack_1fc" * identifier)))))) ;) (declaration "undefined4 uStack_1f8;" type_identifier identifier ;) (declaration "undefined4 uStack_1f4;" type_identifier identifier ;) (declaration "undefined4 *******pppppppuStack_1f0;" type_identifier (pointer_declarator "*******pppppppuStack_1f0" * (pointer_declarator "******pppppppuStack_1f0" * (pointer_declarator "*****pppppppuStack_1f0" * (pointer_declarator "****pppppppuStack_1f0" * (pointer_declarator "***pppppppuStack_1f0" * (pointer_declarator "**pppppppuStack_1f0" * (pointer_declarator "*pppppppuStack_1f0" * identifier))))))) ;) (declaration "undefined4 *******pppppppuStack_1ec;" type_identifier (pointer_declarator "*******pppppppuStack_1ec" * (pointer_declarator "******pppppppuStack_1ec" * (pointer_declarator "*****pppppppuStack_1ec" * (pointer_declarator "****pppppppuStack_1ec" * (pointer_declarator "***pppppppuStack_1ec" * (pointer_declarator "**pppppppuStack_1ec" * (pointer_declarator "*pppppppuStack_1ec" * identifier))))))) ;) (declaration "undefined4 *******pppppppuStack_1e8;" type_identifier (pointer_declarator "*******pppppppuStack_1e8" * (pointer_declarator "******pppppppuStack_1e8" * (pointer_declarator "*****pppppppuStack_1e8" * (pointer_declarator "****pppppppuStack_1e8" * (pointer_declarator "***pppppppuStack_1e8" * (pointer_declarator "**pppppppuStack_1e8" * (pointer_declarator "*pppppppuStack_1e8" * identifier))))))) ;) (declaration "int *piStack_1e4;" primitive_type (pointer_declarator "*piStack_1e4" * identifier) ;) (declaration "undefined4 *******pppppppuStack_1e0;" type_identifier (pointer_declarator "*******pppppppuStack_1e0" * (pointer_declarator "******pppppppuStack_1e0" * (pointer_declarator "*****pppppppuStack_1e0" * (pointer_declarator "****pppppppuStack_1e0" * (pointer_declarator "***pppppppuStack_1e0" * (pointer_declarator "**pppppppuStack_1e0" * (pointer_declarator "*pppppppuStack_1e0" * identifier))))))) ;) (declaration "undefined4 *puStack_1dc;" type_identifier (pointer_declarator "*puStack_1dc" * identifier) ;) (declaration "undefined4 *******pppppppuStack_1d8;" type_identifier (pointer_declarator "*******pppppppuStack_1d8" * (pointer_declarator "******pppppppuStack_1d8" * (pointer_declarator "*****pppppppuStack_1d8" * (pointer_declarator "****pppppppuStack_1d8" * (pointer_declarator "***pppppppuStack_1d8" * (pointer_declarator "**pppppppuStack_1d8" * (pointer_declarator "*pppppppuStack_1d8" * identifier))))))) ;) (declaration "int iStack_1d4;" primitive_type identifier ;) (declaration "undefined4 *******pppppppuStack_1d0;" type_identifier (pointer_declarator "*******pppppppuStack_1d0" * (pointer_declarator "******pppppppuStack_1d0" * (pointer_declarator "*****pppppppuStack_1d0" * (pointer_declarator "****pppppppuStack_1d0" * (pointer_declarator "***pppppppuStack_1d0" * (pointer_declarator "**pppppppuStack_1d0" * (pointer_declarator "*pppppppuStack_1d0" * identifier))))))) ;) (declaration "undefined4 *******pppppppuStack_1cc;" type_identifier (pointer_declarator "*******pppppppuStack_1cc" * (pointer_declarator "******pppppppuStack_1cc" * (pointer_declarator "*****pppppppuStack_1cc" * (pointer_declarator "****pppppppuStack_1cc" * (pointer_declarator "***pppppppuStack_1cc" * (pointer_declarator "**pppppppuStack_1cc" * (pointer_declarator "*pppppppuStack_1cc" * identifier))))))) ;) (declaration "undefined4 ******ppppppuStack_1c8;" type_identifier (pointer_declarator "******ppppppuStack_1c8" * (pointer_declarator "*****ppppppuStack_1c8" * (pointer_declarator "****ppppppuStack_1c8" * (pointer_declarator "***ppppppuStack_1c8" * (pointer_declarator "**ppppppuStack_1c8" * (pointer_declarator "*ppppppuStack_1c8" * identifier)))))) ;) (declaration "undefined4 *******pppppppuStack_1c4;" type_identifier (pointer_declarator "*******pppppppuStack_1c4" * (pointer_declarator "******pppppppuStack_1c4" * (pointer_declarator "*****pppppppuStack_1c4" * (pointer_declarator "****pppppppuStack_1c4" * (pointer_declarator "***pppppppuStack_1c4" * (pointer_declarator "**pppppppuStack_1c4" * (pointer_declarator "*pppppppuStack_1c4" * identifier))))))) ;) (declaration "int *piStack_1c0;" primitive_type (pointer_declarator "*piStack_1c0" * identifier) ;) (declaration "undefined4 *******pppppppuStack_1bc;" type_identifier (pointer_declarator "*******pppppppuStack_1bc" * (pointer_declarator "******pppppppuStack_1bc" * (pointer_declarator "*****pppppppuStack_1bc" * (pointer_declarator "****pppppppuStack_1bc" * (pointer_declarator "***pppppppuStack_1bc" * (pointer_declarator "**pppppppuStack_1bc" * (pointer_declarator "*pppppppuStack_1bc" * identifier))))))) ;) (declaration "undefined4 *******pppppppuStack_1b8;" type_identifier (pointer_declarator "*******pppppppuStack_1b8" * (pointer_declarator "******pppppppuStack_1b8" * (pointer_declarator "*****pppppppuStack_1b8" * (pointer_declarator "****pppppppuStack_1b8" * (pointer_declarator "***pppppppuStack_1b8" * (pointer_declarator "**pppppppuStack_1b8" * (pointer_declarator "*pppppppuStack_1b8" * identifier))))))) ;) (declaration "undefined4 *******pppppppuStack_1b4;" type_identifier (pointer_declarator "*******pppppppuStack_1b4" * (pointer_declarator "******pppppppuStack_1b4" * (pointer_declarator "*****pppppppuStack_1b4" * (pointer_declarator "****pppppppuStack_1b4" * (pointer_declarator "***pppppppuStack_1b4" * (pointer_declarator "**pppppppuStack_1b4" * (pointer_declarator "*pppppppuStack_1b4" * identifier))))))) ;) (declaration "undefined4 *******pppppppuStack_1b0;" type_identifier (pointer_declarator "*******pppppppuStack_1b0" * (pointer_declarator "******pppppppuStack_1b0" * (pointer_declarator "*****pppppppuStack_1b0" * (pointer_declarator "****pppppppuStack_1b0" * (pointer_declarator "***pppppppuStack_1b0" * (pointer_declarator "**pppppppuStack_1b0" * (pointer_declarator "*pppppppuStack_1b0" * identifier))))))) ;) (declaration "code *pcStack_1ac;" type_identifier (pointer_declarator "*pcStack_1ac" * identifier) ;) (declaration "undefined4 ******ppppppuStack_198;" type_identifier (pointer_declarator "******ppppppuStack_198" * (pointer_declarator "*****ppppppuStack_198" * (pointer_declarator "****ppppppuStack_198" * (pointer_declarator "***ppppppuStack_198" * (pointer_declarator "**ppppppuStack_198" * (pointer_declarator "*ppppppuStack_198" * identifier)))))) ;) (declaration "undefined4 *******pppppppuStack_194;" type_identifier (pointer_declarator "*******pppppppuStack_194" * (pointer_declarator "******pppppppuStack_194" * (pointer_declarator "*****pppppppuStack_194" * (pointer_declarator "****pppppppuStack_194" * (pointer_declarator "***pppppppuStack_194" * (pointer_declarator "**pppppppuStack_194" * (pointer_declarator "*pppppppuStack_194" * identifier))))))) ;) (declaration "undefined4 ******ppppppuStack_190;" type_identifier (pointer_declarator "******ppppppuStack_190" * (pointer_declarator "*****ppppppuStack_190" * (pointer_declarator "****ppppppuStack_190" * (pointer_declarator "***ppppppuStack_190" * (pointer_declarator "**ppppppuStack_190" * (pointer_declarator "*ppppppuStack_190" * identifier)))))) ;) (declaration "code *pcStack_188;" type_identifier (pointer_declarator "*pcStack_188" * identifier) ;) (declaration "undefined4 *******pppppppuStack_17c;" type_identifier (pointer_declarator "*******pppppppuStack_17c" * (pointer_declarator "******pppppppuStack_17c" * (pointer_declarator "*****pppppppuStack_17c" * (pointer_declarator "****pppppppuStack_17c" * (pointer_declarator "***pppppppuStack_17c" * (pointer_declarator "**pppppppuStack_17c" * (pointer_declarator "*pppppppuStack_17c" * identifier))))))) ;) (declaration "undefined4 *******pppppppuStack_178;" type_identifier (pointer_declarator "*******pppppppuStack_178" * (pointer_declarator "******pppppppuStack_178" * (pointer_declarator "*****pppppppuStack_178" * (pointer_declarator "****pppppppuStack_178" * (pointer_declarator "***pppppppuStack_178" * (pointer_declarator "**pppppppuStack_178" * (pointer_declarator "*pppppppuStack_178" * identifier))))))) ;) (declaration "undefined4 ******ppppppuStack_174;" type_identifier (pointer_declarator "******ppppppuStack_174" * (pointer_declarator "*****ppppppuStack_174" * (pointer_declarator "****ppppppuStack_174" * (pointer_declarator "***ppppppuStack_174" * (pointer_declarator "**ppppppuStack_174" * (pointer_declarator "*ppppppuStack_174" * identifier)))))) ;) (declaration "undefined4 *******pppppppuStack_170;" type_identifier (pointer_declarator "*******pppppppuStack_170" * (pointer_declarator "******pppppppuStack_170" * (pointer_declarator "*****pppppppuStack_170" * (pointer_declarator "****pppppppuStack_170" * (pointer_declarator "***pppppppuStack_170" * (pointer_declarator "**pppppppuStack_170" * (pointer_declarator "*pppppppuStack_170" * identifier))))))) ;) (declaration "code *pcStack_16c;" type_identifier (pointer_declarator "*pcStack_16c" * identifier) ;) (declaration "undefined4 ******ppppppuStack_158;" type_identifier (pointer_declarator "******ppppppuStack_158" * (pointer_declarator "*****ppppppuStack_158" * (pointer_declarator "****ppppppuStack_158" * (pointer_declarator "***ppppppuStack_158" * (pointer_declarator "**ppppppuStack_158" * (pointer_declarator "*ppppppuStack_158" * identifier)))))) ;) (declaration "undefined4 *******pppppppuStack_154;" type_identifier (pointer_declarator "*******pppppppuStack_154" * (pointer_declarator "******pppppppuStack_154" * (pointer_declarator "*****pppppppuStack_154" * (pointer_declarator "****pppppppuStack_154" * (pointer_declarator "***pppppppuStack_154" * (pointer_declarator "**pppppppuStack_154" * (pointer_declarator "*pppppppuStack_154" * identifier))))))) ;) (declaration "undefined *puStack_150;" type_identifier (pointer_declarator "*puStack_150" * identifier) ;) (declaration "undefined4 uStack_148;" type_identifier identifier ;) (declaration "undefined4 uStack_144;" type_identifier identifier ;) (declaration "undefined4 *******pppppppuStack_13c;" type_identifier (pointer_declarator "*******pppppppuStack_13c" * (pointer_declarator "******pppppppuStack_13c" * (pointer_declarator "*****pppppppuStack_13c" * (pointer_declarator "****pppppppuStack_13c" * (pointer_declarator "***pppppppuStack_13c" * (pointer_declarator "**pppppppuStack_13c" * (pointer_declarator "*pppppppuStack_13c" * identifier))))))) ;) (declaration "undefined4 *******pppppppuStack_138;" type_identifier (pointer_declarator "*******pppppppuStack_138" * (pointer_declarator "******pppppppuStack_138" * (pointer_declarator "*****pppppppuStack_138" * (pointer_declarator "****pppppppuStack_138" * (pointer_declarator "***pppppppuStack_138" * (pointer_declarator "**pppppppuStack_138" * (pointer_declarator "*pppppppuStack_138" * identifier))))))) ;) (declaration "undefined4 ******ppppppuStack_134;" type_identifier (pointer_declarator "******ppppppuStack_134" * (pointer_declarator "*****ppppppuStack_134" * (pointer_declarator "****ppppppuStack_134" * (pointer_declarator "***ppppppuStack_134" * (pointer_declarator "**ppppppuStack_134" * (pointer_declarator "*ppppppuStack_134" * identifier)))))) ;) (declaration "undefined4 *******pppppppuStack_130;" type_identifier (pointer_declarator "*******pppppppuStack_130" * (pointer_declarator "******pppppppuStack_130" * (pointer_declarator "*****pppppppuStack_130" * (pointer_declarator "****pppppppuStack_130" * (pointer_declarator "***pppppppuStack_130" * (pointer_declarator "**pppppppuStack_130" * (pointer_declarator "*pppppppuStack_130" * identifier))))))) ;) (declaration "undefined4 *******pppppppuStack_12c;" type_identifier (pointer_declarator "*******pppppppuStack_12c" * (pointer_declarator "******pppppppuStack_12c" * (pointer_declarator "*****pppppppuStack_12c" * (pointer_declarator "****pppppppuStack_12c" * (pointer_declarator "***pppppppuStack_12c" * (pointer_declarator "**pppppppuStack_12c" * (pointer_declarator "*pppppppuStack_12c" * identifier))))))) ;) (declaration "undefined4 *******pppppppuStack_128;" type_identifier (pointer_declarator "*******pppppppuStack_128" * (pointer_declarator "******pppppppuStack_128" * (pointer_declarator "*****pppppppuStack_128" * (pointer_declarator "****pppppppuStack_128" * (pointer_declarator "***pppppppuStack_128" * (pointer_declarator "**pppppppuStack_128" * (pointer_declarator "*pppppppuStack_128" * identifier))))))) ;) (declaration "undefined4 ******ppppppuStack_124;" type_identifier (pointer_declarator "******ppppppuStack_124" * (pointer_declarator "*****ppppppuStack_124" * (pointer_declarator "****ppppppuStack_124" * (pointer_declarator "***ppppppuStack_124" * (pointer_declarator "**ppppppuStack_124" * (pointer_declarator "*ppppppuStack_124" * identifier)))))) ;) (declaration "undefined4 *puStack_120;" type_identifier (pointer_declarator "*puStack_120" * identifier) ;) (declaration "int iStack_11c;" primitive_type identifier ;) (declaration "undefined4 *******pppppppuStack_118;" type_identifier (pointer_declarator "*******pppppppuStack_118" * (pointer_declarator "******pppppppuStack_118" * (pointer_declarator "*****pppppppuStack_118" * (pointer_declarator "****pppppppuStack_118" * (pointer_declarator "***pppppppuStack_118" * (pointer_declarator "**pppppppuStack_118" * (pointer_declarator "*pppppppuStack_118" * identifier))))))) ;) (declaration "undefined4 *******pppppppuStack_114;" type_identifier (pointer_declarator "*******pppppppuStack_114" * (pointer_declarator "******pppppppuStack_114" * (pointer_declarator "*****pppppppuStack_114" * (pointer_declarator "****pppppppuStack_114" * (pointer_declarator "***pppppppuStack_114" * (pointer_declarator "**pppppppuStack_114" * (pointer_declarator "*pppppppuStack_114" * identifier))))))) ;) (declaration "undefined4 ******ppppppuStack_110;" type_identifier (pointer_declarator "******ppppppuStack_110" * (pointer_declarator "*****ppppppuStack_110" * (pointer_declarator "****ppppppuStack_110" * (pointer_declarator "***ppppppuStack_110" * (pointer_declarator "**ppppppuStack_110" * (pointer_declarator "*ppppppuStack_110" * identifier)))))) ;) (declaration "undefined4 *******pppppppuStack_10c;" type_identifier (pointer_declarator "*******pppppppuStack_10c" * (pointer_declarator "******pppppppuStack_10c" * (pointer_declarator "*****pppppppuStack_10c" * (pointer_declarator "****pppppppuStack_10c" * (pointer_declarator "***pppppppuStack_10c" * (pointer_declarator "**pppppppuStack_10c" * (pointer_declarator "*pppppppuStack_10c" * identifier))))))) ;) (declaration "undefined4 ******ppppppuStack_108;" type_identifier (pointer_declarator "******ppppppuStack_108" * (pointer_declarator "*****ppppppuStack_108" * (pointer_declarator "****ppppppuStack_108" * (pointer_declarator "***ppppppuStack_108" * (pointer_declarator "**ppppppuStack_108" * (pointer_declarator "*ppppppuStack_108" * identifier)))))) ;) (declaration "undefined4 *******pppppppuStack_104;" type_identifier (pointer_declarator "*******pppppppuStack_104" * (pointer_declarator "******pppppppuStack_104" * (pointer_declarator "*****pppppppuStack_104" * (pointer_declarator "****pppppppuStack_104" * (pointer_declarator "***pppppppuStack_104" * (pointer_declarator "**pppppppuStack_104" * (pointer_declarator "*pppppppuStack_104" * identifier))))))) ;) (declaration "undefined4 *******pppppppuStack_100;" type_identifier (pointer_declarator "*******pppppppuStack_100" * (pointer_declarator "******pppppppuStack_100" * (pointer_declarator "*****pppppppuStack_100" * (pointer_declarator "****pppppppuStack_100" * (pointer_declarator "***pppppppuStack_100" * (pointer_declarator "**pppppppuStack_100" * (pointer_declarator "*pppppppuStack_100" * identifier))))))) ;) (declaration "code *pcStack_fc;" type_identifier (pointer_declarator "*pcStack_fc" * identifier) ;) (declaration "undefined4 ******local_e8;" type_identifier (pointer_declarator "******local_e8" * (pointer_declarator "*****local_e8" * (pointer_declarator "****local_e8" * (pointer_declarator "***local_e8" * (pointer_declarator "**local_e8" * (pointer_declarator "*local_e8" * identifier)))))) ;) (declaration "undefined4 *******local_e4;" type_identifier (pointer_declarator "*******local_e4" * (pointer_declarator "******local_e4" * (pointer_declarator "*****local_e4" * (pointer_declarator "****local_e4" * (pointer_declarator "***local_e4" * (pointer_declarator "**local_e4" * (pointer_declarator "*local_e4" * identifier))))))) ;) (declaration "double local_c8;" primitive_type identifier ;) (declaration "double local_a0;" primitive_type identifier ;) (declaration "undefined4 *******local_80;" type_identifier (pointer_declarator "*******local_80" * (pointer_declarator "******local_80" * (pointer_declarator "*****local_80" * (pointer_declarator "****local_80" * (pointer_declarator "***local_80" * (pointer_declarator "**local_80" * (pointer_declarator "*local_80" * identifier))))))) ;) (declaration "undefined4 *******local_7c;" type_identifier (pointer_declarator "*******local_7c" * (pointer_declarator "******local_7c" * (pointer_declarator "*****local_7c" * (pointer_declarator "****local_7c" * (pointer_declarator "***local_7c" * (pointer_declarator "**local_7c" * (pointer_declarator "*local_7c" * identifier))))))) ;) (declaration "undefined4 ******local_78;" type_identifier (pointer_declarator "******local_78" * (pointer_declarator "*****local_78" * (pointer_declarator "****local_78" * (pointer_declarator "***local_78" * (pointer_declarator "**local_78" * (pointer_declarator "*local_78" * identifier)))))) ;) (declaration "undefined4 *******local_74;" type_identifier (pointer_declarator "*******local_74" * (pointer_declarator "******local_74" * (pointer_declarator "*****local_74" * (pointer_declarator "****local_74" * (pointer_declarator "***local_74" * (pointer_declarator "**local_74" * (pointer_declarator "*local_74" * identifier))))))) ;) (declaration "undefined4 *******local_70;" type_identifier (pointer_declarator "*******local_70" * (pointer_declarator "******local_70" * (pointer_declarator "*****local_70" * (pointer_declarator "****local_70" * (pointer_declarator "***local_70" * (pointer_declarator "**local_70" * (pointer_declarator "*local_70" * identifier))))))) ;) (declaration "undefined4 *******local_6c;" type_identifier (pointer_declarator "*******local_6c" * (pointer_declarator "******local_6c" * (pointer_declarator "*****local_6c" * (pointer_declarator "****local_6c" * (pointer_declarator "***local_6c" * (pointer_declarator "**local_6c" * (pointer_declarator "*local_6c" * identifier))))))) ;) (declaration "undefined4 *******local_68;" type_identifier (pointer_declarator "*******local_68" * (pointer_declarator "******local_68" * (pointer_declarator "*****local_68" * (pointer_declarator "****local_68" * (pointer_declarator "***local_68" * (pointer_declarator "**local_68" * (pointer_declarator "*local_68" * identifier))))))) ;) (declaration "undefined4 *******local_64;" type_identifier (pointer_declarator "*******local_64" * (pointer_declarator "******local_64" * (pointer_declarator "*****local_64" * (pointer_declarator "****local_64" * (pointer_declarator "***local_64" * (pointer_declarator "**local_64" * (pointer_declarator "*local_64" * identifier))))))) ;) (declaration "undefined4 *******local_60;" type_identifier (pointer_declarator "*******local_60" * (pointer_declarator "******local_60" * (pointer_declarator "*****local_60" * (pointer_declarator "****local_60" * (pointer_declarator "***local_60" * (pointer_declarator "**local_60" * (pointer_declarator "*local_60" * identifier))))))) ;) (declaration "int local_5c;" primitive_type identifier ;) (expression_statement "puVar20 = PTR___stack_chk_guard_003a9230;" (assignment_expression "puVar20 = PTR___stack_chk_guard_003a9230" identifier = identifier) ;) (expression_statement "local_5c = *(int *)PTR___stack_chk_guard_003a9230;" (assignment_expression "local_5c = *(int *)PTR___stack_chk_guard_003a9230" identifier = (pointer_expression "*(int *)PTR___stack_chk_guard_003a9230" * (cast_expression "(int *)PTR___stack_chk_guard_003a9230" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;) (if_statement "if (param_1 == (undefined4 *******)0x0) {\nLAB_001c8ef8:\n    param_1 = unaff_s1;\n    (*(code *)PTR___assert_fail_003a9608)\n              (PTR_LAB_003a88e0 + 0xdd0,PTR_s_courses_003a88ec + -0x288c,0x322,\n               PTR_s_courses_003a88ec + -0x2688);\n  }\n  else if (param_1[0xcdb] == (undefined4 ******)0xabacadab) {\n    if (param_1[0xcd4] != (undefined4 ******)0x0) {\n      local_e4 = param_1 + 0xd0;\n      local_e8 = (undefined4 ******)(PTR_s_t_to_left_003a88e4 + -0x62ac);\n      (*(code *)PTR_LogMagickEvent_003a91e0)\n                (0x8000,PTR_s_courses_003a88ec + -0x288c,PTR_s_courses_003a88ec + -0x269c,0x325);\n    }\n    unaff_s6 = (undefined4 *******)(*(code *)PTR_NewImageList_003a8e84)();\n    local_80 = unaff_s6;\n    ppppppuVar2 = (undefined4 ******)\n                  (*(code *)PTR_ParseGravityGeometry_003a97fc)(param_1,param_2,&local_7c,param_3);\n    unaff_s4 = local_78;\n    unaff_s0 = local_7c;\n    unaff_s3 = (undefined4 *******)PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;\n    if ((int)ppppppuVar2 << 0xe < 0) {\n      ppppppuVar7 = param_1[7];\n      if (local_7c == (undefined4 *******)0x0) {\n        local_7c = (undefined4 *******)0x1;\n        dVar35 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n      }\n      else {\n        dVar35 = (double)(int)local_7c;\n        if ((int)local_7c < 0) {\n          dVar35 = dVar35 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n      }\n      if (local_78 == (undefined4 ******)0x0) {\n        dVar30 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n        local_78 = (undefined4 ******)0x1;\n        if (((uint)ppppppuVar2 & 0x2000) != 0) goto LAB_001c8e14;\nLAB_001c8484:\n        pppppppuVar9 = local_74;\n        if ((int)local_74 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_74;\n        }\n        puVar8 = (undefined *)((int)param_1[6] - (int)pppppppuVar9);\n        pppppppuVar9 = local_70;\n        if ((int)local_70 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_70;\n        }\n        puVar3 = (undefined *)((int)ppppppuVar7 - (int)pppppppuVar9);\n      }\n      else {\n        dVar30 = (double)(int)local_78;\n        if ((int)local_78 < 0) {\n          dVar30 = dVar30 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n        if (((uint)ppppppuVar2 & 0x2000) == 0) goto LAB_001c8484;\nLAB_001c8e14:\n        pppppppuVar9 = local_74;\n        if ((int)local_74 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_74;\n        }\n        puVar8 = (undefined *)((int)pppppppuVar9 + (int)param_1[6]);\n        if ((int)local_70 < 0) {\n          puVar3 = (undefined *)((int)ppppppuVar7 - (int)local_70);\n        }\n        else {\n          puVar3 = (undefined *)((int)local_70 + (int)ppppppuVar7);\n        }\n      }\n      unaff_s4 = (undefined4 ******)((uint)ppppppuVar2 & 0x2000);\n      dVar34 = (double)(int)puVar8;\n      if ((int)puVar8 < 0) {\n        dVar34 = dVar34 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n      }\n      dVar35 = dVar34 / dVar35;\n      local_c8 = (double)(int)puVar3;\n      if ((int)puVar3 < 0) {\n        local_c8 = local_c8 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n      }\n      dVar25 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n      local_a0 = dVar25;\n      if (dVar35 < dVar25) {\n        local_a0 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n        dVar35 = dVar25;\n      }\n      if (local_a0 <= local_c8 / dVar30) {\n        local_a0 = local_c8 / dVar30;\n      }\n      dVar30 = 0.0;\n      unaff_s7 = local_70;\n      if (0.0 < local_c8) {\n        dVar25 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4780);\n        dVar31 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4788);\n        if (unaff_s4 != (undefined4 ******)0x0) goto LAB_001c8b70;\nLAB_001c854c:\n        unaff_s7 = local_70;\n        dVar32 = dVar30;\n        if ((int)local_70 < 1) {\n          dVar32 = dVar30 - (double)(int)local_70;\n        }\n        dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n        dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n        if (dVar32 - dVar26 < dVar27 - dVar32) {\n          dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar23 = (code *)PTR_floor_003a9670;\n          if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d7c;\n        }\n        else {\n          if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d7c:\n            iVar15 = -0x7ffffdff;\n            goto joined_r0x001c8cbc;\n          }\n          dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar23 = (code *)PTR_ceil_003a8c20;\n        }\n        if (dVar26 < dVar32) {\n          iVar15 = 0x7ffffdff;\n        }\n        else {\n          dVar32 = (double)(*pcVar23)(dVar32);\n          iVar15 = (int)dVar32;\n        }\njoined_r0x001c8cbc:\n        dVar30 = dVar30 + local_a0;\n        if ((int)unaff_s7 < 0) {\n          dVar32 = 0.0;\n        }\n        else {\n          dVar32 = (double)(int)unaff_s7;\n        }\n        dVar32 = dVar30 + dVar32;\n        dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n        dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n        if (dVar32 - dVar26 < dVar27 - dVar32) {\n          if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8630;\n            goto LAB_001c8cec;\n          }\n        }\n        else if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;\n          goto LAB_001c8d18;\n        }\nLAB_001c8c88:\n        iVar14 = -0x7ffffdff;\nLAB_001c8644:\n        do {\n          unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n          param_2 = (undefined4 *******)((int)param_1[0x8d] + iVar15);\n          dVar32 = 0.0;\n          local_68 = unaff_s8;\n          local_60 = param_2;\n          if (0.0 < dVar34) {\n            dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n            unaff_s6 = &local_6c;\n            dVar27 = *(double *)((int)unaff_s3 + 0x4780);\n            do {\n              unaff_s7 = local_74;\n              if (unaff_s4 == (undefined4 ******)0x0) {\n                dVar33 = dVar32;\n                if ((int)local_74 < 1) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }\nLAB_001c8b04:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;\nLAB_001c8708:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8700:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar33 = 0.0;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8768:\n                  dVar33 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar33 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n              }\n              else {\n                dVar33 = dVar32;\n                if (0 < (int)local_74) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar27 <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar33 = 0.0;\n                }\n                else {\n                  if (dVar33 < dVar27) goto LAB_001c8b24;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (dVar26 < dVar33) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8850:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < dVar25) goto LAB_001c8a44;\n                  if (dVar33 <= dVar26) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar14 = 0x7ffffdff;\n                }\n                else if (dVar25 <= dVar33) {\n                  if (dVar33 <= dVar31) goto LAB_001c8abc;\n                  iVar14 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar14 = -0x7ffffdff;\n                }\n              }\n              unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n              param_2 = (undefined4 *******)((int)param_1[0x8c] + iVar15);\n              local_6c = unaff_s8;\n              local_64 = param_2;\n              iVar15 = (*(code *)PTR_CropImage_003a90b8)(param_1,unaff_s6,param_3);\n              if (iVar15 != 0) {\n                (*(code *)PTR_AppendImageToList_003a9880)(&local_80,iVar15);\n              }\n            } while (dVar32 < dVar34);\n          }\n          unaff_s5 = unaff_s3;\n          if (local_c8 <= dVar30) break;\n          if (unaff_s4 == (undefined4 ******)0x0) goto LAB_001c854c;\nLAB_001c8b70:\n          unaff_s7 = local_70;\n          dVar32 = dVar30;\n          if (0 < (int)local_70) {\n            dVar32 = dVar30 - (double)(int)local_70;\n          }\n          dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n          dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          if (dVar32 - dVar26 < dVar27 - dVar32) {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d8c;\n            pcVar23 = (code *)PTR_floor_003a9670;\n            if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8d50;\nLAB_001c8bd8:\n            dVar32 = (double)(*pcVar23)(dVar32);\n            iVar15 = (int)dVar32;\nLAB_001c8bf0:\n            dVar30 = dVar30 + local_a0;\n            if (-2 < (int)unaff_s7) goto LAB_001c8c00;\nLAB_001c8d6c:\n            dVar32 = (double)(int)unaff_s7;\n          }\n          else {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d8c:\n              iVar15 = -0x7ffffdff;\n              goto LAB_001c8bf0;\n            }\n            pcVar23 = (code *)PTR_ceil_003a8c20;\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8bd8;\nLAB_001c8d50:\n            iVar15 = 0x7ffffdff;\n            dVar30 = dVar30 + local_a0;\n            if ((int)unaff_s7 < -1) goto LAB_001c8d6c;\nLAB_001c8c00:\n            dVar32 = 0.0;\n          }\n          dVar32 = dVar30 + dVar32;\n          dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n          dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          if (dVar32 - dVar26 < dVar27 - dVar32) {\n            if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n              if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) {\nLAB_001c8cec:\n                iVar14 = 0x7ffffdff;\n              }\n              else {\nLAB_001c8630:\n                dVar32 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n                iVar14 = (int)dVar32;\n              }\n              goto LAB_001c8644;\n            }\n            goto LAB_001c8c88;\n          }\n          if (dVar32 < dVar25) goto LAB_001c8c88;\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;\nLAB_001c8d18:\n          dVar32 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          iVar14 = (int)dVar32;\n        } while( true );\n      }\n      (*(code *)PTR_ClearMagickException_003a90f8)(param_3);\n      pppppppuVar9 = local_80;\n      unaff_s0 = param_2;\n    }\n    else {\n      unaff_s3 = &local_7c;\n      if (((local_7c == (undefined4 *******)0x0) && (local_78 == (undefined4 ******)0x0)) ||\n         (((uint)ppppppuVar2 & 3) != 0)) {\n        local_80 = (undefined4 *******)(*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n        pppppppuVar9 = local_80;\n        unaff_s4 = ppppppuVar2;\n        if ((local_80 != (undefined4 *******)0x0) &&\n           (unaff_s4 = (undefined4 ******)((uint)ppppppuVar2 & 0x2000),\n           unaff_s4 != (undefined4 ******)0x0)) {\n          local_80[0x8c] = (undefined4 ******)((int)local_80[0x8c] - (int)local_74);\n          local_80[0x8d] = (undefined4 ******)((int)local_80[0x8d] - (int)local_70);\n          local_80[0x8a] = local_7c;\n          local_80[0x8b] = local_78;\n        }\n      }\n      else {\n        unaff_s7 = (undefined4 *******)param_1[6];\n        if ((local_7c < unaff_s7) || (local_78 < param_1[7])) {\n          ppppppuVar2 = param_1[0x8b];\n          if ((undefined4 *******)param_1[0x8a] != (undefined4 *******)0x0) {\n            unaff_s7 = (undefined4 *******)param_1[0x8a];\n          }\n          if (ppppppuVar2 == (undefined4 ******)0x0) {\n            ppppppuVar2 = param_1[7];\n          }\n          if (local_7c == (undefined4 *******)0x0) {\n            unaff_s0 = unaff_s7;\n          }\n          if (local_78 == (undefined4 ******)0x0) {\n            unaff_s4 = ppppppuVar2;\n          }\n          pppppppuVar9 = local_80;\n          if (0 < (int)ppppppuVar2) {\n            unaff_s3 = (undefined4 *******)0x0;\n            unaff_s8 = &local_80;\n            do {\n              unaff_s5 = (undefined4 *******)0x0;\n              if ((int)unaff_s7 < 1) {\n                pppppppuVar9 = local_80;\n                if (unaff_s6 == (undefined4 *******)0x0) break;\n              }\n              else {\n                do {\n                  local_7c = unaff_s0;\n                  local_78 = unaff_s4;\n                  local_74 = unaff_s5;\n                  local_70 = unaff_s3;\n                  unaff_s6 = (undefined4 *******)\n                             (*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n                  pppppppuVar9 = local_80;\n                  if (unaff_s6 == (undefined4 *******)0x0) goto LAB_001c8908;\n                  unaff_s5 = (undefined4 *******)((int)unaff_s5 + (int)unaff_s0);\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);\n              }\n              unaff_s3 = (undefined4 *******)((int)unaff_s3 + (int)unaff_s4);\n              pppppppuVar9 = local_80;\n            } while ((int)unaff_s3 < (int)ppppppuVar2);\n          }\n        }\n        else {\n          local_e8 = param_3;\n          pppppppuVar9 = (undefined4 *******)(*(code *)PTR_CloneImage_003a9830)(param_1,0,0,1);\n        }\n      }\n    }\nLAB_001c8908:\n    if (local_5c == *(int *)puVar20) {\n      return pppppppuVar9;\n    }\n    (*(code *)PTR___stack_chk_fail_003a9064)();\n    unaff_s1 = param_1;\n    unaff_s2 = param_3;\n    goto LAB_001c8ef8;\n  }" if (parenthesized_expression "(param_1 == (undefined4 *******)0x0)" ( (binary_expression "param_1 == (undefined4 *******)0x0" identifier == (cast_expression "(undefined4 *******)0x0" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\nLAB_001c8ef8:\n    param_1 = unaff_s1;\n    (*(code *)PTR___assert_fail_003a9608)\n              (PTR_LAB_003a88e0 + 0xdd0,PTR_s_courses_003a88ec + -0x288c,0x322,\n               PTR_s_courses_003a88ec + -0x2688);\n  }" { (labeled_statement "LAB_001c8ef8:\n    param_1 = unaff_s1;" statement_identifier : (expression_statement "param_1 = unaff_s1;" (assignment_expression "param_1 = unaff_s1" identifier = identifier) ;)) (expression_statement "(*(code *)PTR___assert_fail_003a9608)\n              (PTR_LAB_003a88e0 + 0xdd0,PTR_s_courses_003a88ec + -0x288c,0x322,\n               PTR_s_courses_003a88ec + -0x2688);" (call_expression "(*(code *)PTR___assert_fail_003a9608)\n              (PTR_LAB_003a88e0 + 0xdd0,PTR_s_courses_003a88ec + -0x288c,0x322,\n               PTR_s_courses_003a88ec + -0x2688)" (parenthesized_expression "(*(code *)PTR___assert_fail_003a9608)" ( (pointer_expression "*(code *)PTR___assert_fail_003a9608" * (cast_expression "(code *)PTR___assert_fail_003a9608" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(PTR_LAB_003a88e0 + 0xdd0,PTR_s_courses_003a88ec + -0x288c,0x322,\n               PTR_s_courses_003a88ec + -0x2688)" ( (binary_expression "PTR_LAB_003a88e0 + 0xdd0" identifier + number_literal) , (binary_expression "PTR_s_courses_003a88ec + -0x288c" identifier + number_literal) , number_literal , (binary_expression "PTR_s_courses_003a88ec + -0x2688" identifier + number_literal) ))) ;) }) (else_clause "else if (param_1[0xcdb] == (undefined4 ******)0xabacadab) {\n    if (param_1[0xcd4] != (undefined4 ******)0x0) {\n      local_e4 = param_1 + 0xd0;\n      local_e8 = (undefined4 ******)(PTR_s_t_to_left_003a88e4 + -0x62ac);\n      (*(code *)PTR_LogMagickEvent_003a91e0)\n                (0x8000,PTR_s_courses_003a88ec + -0x288c,PTR_s_courses_003a88ec + -0x269c,0x325);\n    }\n    unaff_s6 = (undefined4 *******)(*(code *)PTR_NewImageList_003a8e84)();\n    local_80 = unaff_s6;\n    ppppppuVar2 = (undefined4 ******)\n                  (*(code *)PTR_ParseGravityGeometry_003a97fc)(param_1,param_2,&local_7c,param_3);\n    unaff_s4 = local_78;\n    unaff_s0 = local_7c;\n    unaff_s3 = (undefined4 *******)PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;\n    if ((int)ppppppuVar2 << 0xe < 0) {\n      ppppppuVar7 = param_1[7];\n      if (local_7c == (undefined4 *******)0x0) {\n        local_7c = (undefined4 *******)0x1;\n        dVar35 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n      }\n      else {\n        dVar35 = (double)(int)local_7c;\n        if ((int)local_7c < 0) {\n          dVar35 = dVar35 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n      }\n      if (local_78 == (undefined4 ******)0x0) {\n        dVar30 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n        local_78 = (undefined4 ******)0x1;\n        if (((uint)ppppppuVar2 & 0x2000) != 0) goto LAB_001c8e14;\nLAB_001c8484:\n        pppppppuVar9 = local_74;\n        if ((int)local_74 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_74;\n        }\n        puVar8 = (undefined *)((int)param_1[6] - (int)pppppppuVar9);\n        pppppppuVar9 = local_70;\n        if ((int)local_70 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_70;\n        }\n        puVar3 = (undefined *)((int)ppppppuVar7 - (int)pppppppuVar9);\n      }\n      else {\n        dVar30 = (double)(int)local_78;\n        if ((int)local_78 < 0) {\n          dVar30 = dVar30 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n        if (((uint)ppppppuVar2 & 0x2000) == 0) goto LAB_001c8484;\nLAB_001c8e14:\n        pppppppuVar9 = local_74;\n        if ((int)local_74 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_74;\n        }\n        puVar8 = (undefined *)((int)pppppppuVar9 + (int)param_1[6]);\n        if ((int)local_70 < 0) {\n          puVar3 = (undefined *)((int)ppppppuVar7 - (int)local_70);\n        }\n        else {\n          puVar3 = (undefined *)((int)local_70 + (int)ppppppuVar7);\n        }\n      }\n      unaff_s4 = (undefined4 ******)((uint)ppppppuVar2 & 0x2000);\n      dVar34 = (double)(int)puVar8;\n      if ((int)puVar8 < 0) {\n        dVar34 = dVar34 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n      }\n      dVar35 = dVar34 / dVar35;\n      local_c8 = (double)(int)puVar3;\n      if ((int)puVar3 < 0) {\n        local_c8 = local_c8 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n      }\n      dVar25 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n      local_a0 = dVar25;\n      if (dVar35 < dVar25) {\n        local_a0 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n        dVar35 = dVar25;\n      }\n      if (local_a0 <= local_c8 / dVar30) {\n        local_a0 = local_c8 / dVar30;\n      }\n      dVar30 = 0.0;\n      unaff_s7 = local_70;\n      if (0.0 < local_c8) {\n        dVar25 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4780);\n        dVar31 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4788);\n        if (unaff_s4 != (undefined4 ******)0x0) goto LAB_001c8b70;\nLAB_001c854c:\n        unaff_s7 = local_70;\n        dVar32 = dVar30;\n        if ((int)local_70 < 1) {\n          dVar32 = dVar30 - (double)(int)local_70;\n        }\n        dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n        dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n        if (dVar32 - dVar26 < dVar27 - dVar32) {\n          dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar23 = (code *)PTR_floor_003a9670;\n          if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d7c;\n        }\n        else {\n          if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d7c:\n            iVar15 = -0x7ffffdff;\n            goto joined_r0x001c8cbc;\n          }\n          dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar23 = (code *)PTR_ceil_003a8c20;\n        }\n        if (dVar26 < dVar32) {\n          iVar15 = 0x7ffffdff;\n        }\n        else {\n          dVar32 = (double)(*pcVar23)(dVar32);\n          iVar15 = (int)dVar32;\n        }\njoined_r0x001c8cbc:\n        dVar30 = dVar30 + local_a0;\n        if ((int)unaff_s7 < 0) {\n          dVar32 = 0.0;\n        }\n        else {\n          dVar32 = (double)(int)unaff_s7;\n        }\n        dVar32 = dVar30 + dVar32;\n        dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n        dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n        if (dVar32 - dVar26 < dVar27 - dVar32) {\n          if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8630;\n            goto LAB_001c8cec;\n          }\n        }\n        else if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;\n          goto LAB_001c8d18;\n        }\nLAB_001c8c88:\n        iVar14 = -0x7ffffdff;\nLAB_001c8644:\n        do {\n          unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n          param_2 = (undefined4 *******)((int)param_1[0x8d] + iVar15);\n          dVar32 = 0.0;\n          local_68 = unaff_s8;\n          local_60 = param_2;\n          if (0.0 < dVar34) {\n            dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n            unaff_s6 = &local_6c;\n            dVar27 = *(double *)((int)unaff_s3 + 0x4780);\n            do {\n              unaff_s7 = local_74;\n              if (unaff_s4 == (undefined4 ******)0x0) {\n                dVar33 = dVar32;\n                if ((int)local_74 < 1) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }\nLAB_001c8b04:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;\nLAB_001c8708:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8700:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar33 = 0.0;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8768:\n                  dVar33 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar33 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n              }\n              else {\n                dVar33 = dVar32;\n                if (0 < (int)local_74) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar27 <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar33 = 0.0;\n                }\n                else {\n                  if (dVar33 < dVar27) goto LAB_001c8b24;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (dVar26 < dVar33) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8850:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < dVar25) goto LAB_001c8a44;\n                  if (dVar33 <= dVar26) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar14 = 0x7ffffdff;\n                }\n                else if (dVar25 <= dVar33) {\n                  if (dVar33 <= dVar31) goto LAB_001c8abc;\n                  iVar14 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar14 = -0x7ffffdff;\n                }\n              }\n              unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n              param_2 = (undefined4 *******)((int)param_1[0x8c] + iVar15);\n              local_6c = unaff_s8;\n              local_64 = param_2;\n              iVar15 = (*(code *)PTR_CropImage_003a90b8)(param_1,unaff_s6,param_3);\n              if (iVar15 != 0) {\n                (*(code *)PTR_AppendImageToList_003a9880)(&local_80,iVar15);\n              }\n            } while (dVar32 < dVar34);\n          }\n          unaff_s5 = unaff_s3;\n          if (local_c8 <= dVar30) break;\n          if (unaff_s4 == (undefined4 ******)0x0) goto LAB_001c854c;\nLAB_001c8b70:\n          unaff_s7 = local_70;\n          dVar32 = dVar30;\n          if (0 < (int)local_70) {\n            dVar32 = dVar30 - (double)(int)local_70;\n          }\n          dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n          dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          if (dVar32 - dVar26 < dVar27 - dVar32) {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d8c;\n            pcVar23 = (code *)PTR_floor_003a9670;\n            if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8d50;\nLAB_001c8bd8:\n            dVar32 = (double)(*pcVar23)(dVar32);\n            iVar15 = (int)dVar32;\nLAB_001c8bf0:\n            dVar30 = dVar30 + local_a0;\n            if (-2 < (int)unaff_s7) goto LAB_001c8c00;\nLAB_001c8d6c:\n            dVar32 = (double)(int)unaff_s7;\n          }\n          else {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d8c:\n              iVar15 = -0x7ffffdff;\n              goto LAB_001c8bf0;\n            }\n            pcVar23 = (code *)PTR_ceil_003a8c20;\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8bd8;\nLAB_001c8d50:\n            iVar15 = 0x7ffffdff;\n            dVar30 = dVar30 + local_a0;\n            if ((int)unaff_s7 < -1) goto LAB_001c8d6c;\nLAB_001c8c00:\n            dVar32 = 0.0;\n          }\n          dVar32 = dVar30 + dVar32;\n          dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n          dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          if (dVar32 - dVar26 < dVar27 - dVar32) {\n            if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n              if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) {\nLAB_001c8cec:\n                iVar14 = 0x7ffffdff;\n              }\n              else {\nLAB_001c8630:\n                dVar32 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n                iVar14 = (int)dVar32;\n              }\n              goto LAB_001c8644;\n            }\n            goto LAB_001c8c88;\n          }\n          if (dVar32 < dVar25) goto LAB_001c8c88;\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;\nLAB_001c8d18:\n          dVar32 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          iVar14 = (int)dVar32;\n        } while( true );\n      }\n      (*(code *)PTR_ClearMagickException_003a90f8)(param_3);\n      pppppppuVar9 = local_80;\n      unaff_s0 = param_2;\n    }\n    else {\n      unaff_s3 = &local_7c;\n      if (((local_7c == (undefined4 *******)0x0) && (local_78 == (undefined4 ******)0x0)) ||\n         (((uint)ppppppuVar2 & 3) != 0)) {\n        local_80 = (undefined4 *******)(*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n        pppppppuVar9 = local_80;\n        unaff_s4 = ppppppuVar2;\n        if ((local_80 != (undefined4 *******)0x0) &&\n           (unaff_s4 = (undefined4 ******)((uint)ppppppuVar2 & 0x2000),\n           unaff_s4 != (undefined4 ******)0x0)) {\n          local_80[0x8c] = (undefined4 ******)((int)local_80[0x8c] - (int)local_74);\n          local_80[0x8d] = (undefined4 ******)((int)local_80[0x8d] - (int)local_70);\n          local_80[0x8a] = local_7c;\n          local_80[0x8b] = local_78;\n        }\n      }\n      else {\n        unaff_s7 = (undefined4 *******)param_1[6];\n        if ((local_7c < unaff_s7) || (local_78 < param_1[7])) {\n          ppppppuVar2 = param_1[0x8b];\n          if ((undefined4 *******)param_1[0x8a] != (undefined4 *******)0x0) {\n            unaff_s7 = (undefined4 *******)param_1[0x8a];\n          }\n          if (ppppppuVar2 == (undefined4 ******)0x0) {\n            ppppppuVar2 = param_1[7];\n          }\n          if (local_7c == (undefined4 *******)0x0) {\n            unaff_s0 = unaff_s7;\n          }\n          if (local_78 == (undefined4 ******)0x0) {\n            unaff_s4 = ppppppuVar2;\n          }\n          pppppppuVar9 = local_80;\n          if (0 < (int)ppppppuVar2) {\n            unaff_s3 = (undefined4 *******)0x0;\n            unaff_s8 = &local_80;\n            do {\n              unaff_s5 = (undefined4 *******)0x0;\n              if ((int)unaff_s7 < 1) {\n                pppppppuVar9 = local_80;\n                if (unaff_s6 == (undefined4 *******)0x0) break;\n              }\n              else {\n                do {\n                  local_7c = unaff_s0;\n                  local_78 = unaff_s4;\n                  local_74 = unaff_s5;\n                  local_70 = unaff_s3;\n                  unaff_s6 = (undefined4 *******)\n                             (*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n                  pppppppuVar9 = local_80;\n                  if (unaff_s6 == (undefined4 *******)0x0) goto LAB_001c8908;\n                  unaff_s5 = (undefined4 *******)((int)unaff_s5 + (int)unaff_s0);\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);\n              }\n              unaff_s3 = (undefined4 *******)((int)unaff_s3 + (int)unaff_s4);\n              pppppppuVar9 = local_80;\n            } while ((int)unaff_s3 < (int)ppppppuVar2);\n          }\n        }\n        else {\n          local_e8 = param_3;\n          pppppppuVar9 = (undefined4 *******)(*(code *)PTR_CloneImage_003a9830)(param_1,0,0,1);\n        }\n      }\n    }\nLAB_001c8908:\n    if (local_5c == *(int *)puVar20) {\n      return pppppppuVar9;\n    }\n    (*(code *)PTR___stack_chk_fail_003a9064)();\n    unaff_s1 = param_1;\n    unaff_s2 = param_3;\n    goto LAB_001c8ef8;\n  }" else (if_statement "if (param_1[0xcdb] == (undefined4 ******)0xabacadab) {\n    if (param_1[0xcd4] != (undefined4 ******)0x0) {\n      local_e4 = param_1 + 0xd0;\n      local_e8 = (undefined4 ******)(PTR_s_t_to_left_003a88e4 + -0x62ac);\n      (*(code *)PTR_LogMagickEvent_003a91e0)\n                (0x8000,PTR_s_courses_003a88ec + -0x288c,PTR_s_courses_003a88ec + -0x269c,0x325);\n    }\n    unaff_s6 = (undefined4 *******)(*(code *)PTR_NewImageList_003a8e84)();\n    local_80 = unaff_s6;\n    ppppppuVar2 = (undefined4 ******)\n                  (*(code *)PTR_ParseGravityGeometry_003a97fc)(param_1,param_2,&local_7c,param_3);\n    unaff_s4 = local_78;\n    unaff_s0 = local_7c;\n    unaff_s3 = (undefined4 *******)PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;\n    if ((int)ppppppuVar2 << 0xe < 0) {\n      ppppppuVar7 = param_1[7];\n      if (local_7c == (undefined4 *******)0x0) {\n        local_7c = (undefined4 *******)0x1;\n        dVar35 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n      }\n      else {\n        dVar35 = (double)(int)local_7c;\n        if ((int)local_7c < 0) {\n          dVar35 = dVar35 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n      }\n      if (local_78 == (undefined4 ******)0x0) {\n        dVar30 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n        local_78 = (undefined4 ******)0x1;\n        if (((uint)ppppppuVar2 & 0x2000) != 0) goto LAB_001c8e14;\nLAB_001c8484:\n        pppppppuVar9 = local_74;\n        if ((int)local_74 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_74;\n        }\n        puVar8 = (undefined *)((int)param_1[6] - (int)pppppppuVar9);\n        pppppppuVar9 = local_70;\n        if ((int)local_70 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_70;\n        }\n        puVar3 = (undefined *)((int)ppppppuVar7 - (int)pppppppuVar9);\n      }\n      else {\n        dVar30 = (double)(int)local_78;\n        if ((int)local_78 < 0) {\n          dVar30 = dVar30 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n        if (((uint)ppppppuVar2 & 0x2000) == 0) goto LAB_001c8484;\nLAB_001c8e14:\n        pppppppuVar9 = local_74;\n        if ((int)local_74 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_74;\n        }\n        puVar8 = (undefined *)((int)pppppppuVar9 + (int)param_1[6]);\n        if ((int)local_70 < 0) {\n          puVar3 = (undefined *)((int)ppppppuVar7 - (int)local_70);\n        }\n        else {\n          puVar3 = (undefined *)((int)local_70 + (int)ppppppuVar7);\n        }\n      }\n      unaff_s4 = (undefined4 ******)((uint)ppppppuVar2 & 0x2000);\n      dVar34 = (double)(int)puVar8;\n      if ((int)puVar8 < 0) {\n        dVar34 = dVar34 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n      }\n      dVar35 = dVar34 / dVar35;\n      local_c8 = (double)(int)puVar3;\n      if ((int)puVar3 < 0) {\n        local_c8 = local_c8 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n      }\n      dVar25 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n      local_a0 = dVar25;\n      if (dVar35 < dVar25) {\n        local_a0 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n        dVar35 = dVar25;\n      }\n      if (local_a0 <= local_c8 / dVar30) {\n        local_a0 = local_c8 / dVar30;\n      }\n      dVar30 = 0.0;\n      unaff_s7 = local_70;\n      if (0.0 < local_c8) {\n        dVar25 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4780);\n        dVar31 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4788);\n        if (unaff_s4 != (undefined4 ******)0x0) goto LAB_001c8b70;\nLAB_001c854c:\n        unaff_s7 = local_70;\n        dVar32 = dVar30;\n        if ((int)local_70 < 1) {\n          dVar32 = dVar30 - (double)(int)local_70;\n        }\n        dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n        dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n        if (dVar32 - dVar26 < dVar27 - dVar32) {\n          dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar23 = (code *)PTR_floor_003a9670;\n          if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d7c;\n        }\n        else {\n          if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d7c:\n            iVar15 = -0x7ffffdff;\n            goto joined_r0x001c8cbc;\n          }\n          dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar23 = (code *)PTR_ceil_003a8c20;\n        }\n        if (dVar26 < dVar32) {\n          iVar15 = 0x7ffffdff;\n        }\n        else {\n          dVar32 = (double)(*pcVar23)(dVar32);\n          iVar15 = (int)dVar32;\n        }\njoined_r0x001c8cbc:\n        dVar30 = dVar30 + local_a0;\n        if ((int)unaff_s7 < 0) {\n          dVar32 = 0.0;\n        }\n        else {\n          dVar32 = (double)(int)unaff_s7;\n        }\n        dVar32 = dVar30 + dVar32;\n        dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n        dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n        if (dVar32 - dVar26 < dVar27 - dVar32) {\n          if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8630;\n            goto LAB_001c8cec;\n          }\n        }\n        else if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;\n          goto LAB_001c8d18;\n        }\nLAB_001c8c88:\n        iVar14 = -0x7ffffdff;\nLAB_001c8644:\n        do {\n          unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n          param_2 = (undefined4 *******)((int)param_1[0x8d] + iVar15);\n          dVar32 = 0.0;\n          local_68 = unaff_s8;\n          local_60 = param_2;\n          if (0.0 < dVar34) {\n            dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n            unaff_s6 = &local_6c;\n            dVar27 = *(double *)((int)unaff_s3 + 0x4780);\n            do {\n              unaff_s7 = local_74;\n              if (unaff_s4 == (undefined4 ******)0x0) {\n                dVar33 = dVar32;\n                if ((int)local_74 < 1) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }\nLAB_001c8b04:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;\nLAB_001c8708:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8700:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar33 = 0.0;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8768:\n                  dVar33 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar33 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n              }\n              else {\n                dVar33 = dVar32;\n                if (0 < (int)local_74) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar27 <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar33 = 0.0;\n                }\n                else {\n                  if (dVar33 < dVar27) goto LAB_001c8b24;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (dVar26 < dVar33) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8850:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < dVar25) goto LAB_001c8a44;\n                  if (dVar33 <= dVar26) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar14 = 0x7ffffdff;\n                }\n                else if (dVar25 <= dVar33) {\n                  if (dVar33 <= dVar31) goto LAB_001c8abc;\n                  iVar14 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar14 = -0x7ffffdff;\n                }\n              }\n              unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n              param_2 = (undefined4 *******)((int)param_1[0x8c] + iVar15);\n              local_6c = unaff_s8;\n              local_64 = param_2;\n              iVar15 = (*(code *)PTR_CropImage_003a90b8)(param_1,unaff_s6,param_3);\n              if (iVar15 != 0) {\n                (*(code *)PTR_AppendImageToList_003a9880)(&local_80,iVar15);\n              }\n            } while (dVar32 < dVar34);\n          }\n          unaff_s5 = unaff_s3;\n          if (local_c8 <= dVar30) break;\n          if (unaff_s4 == (undefined4 ******)0x0) goto LAB_001c854c;\nLAB_001c8b70:\n          unaff_s7 = local_70;\n          dVar32 = dVar30;\n          if (0 < (int)local_70) {\n            dVar32 = dVar30 - (double)(int)local_70;\n          }\n          dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n          dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          if (dVar32 - dVar26 < dVar27 - dVar32) {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d8c;\n            pcVar23 = (code *)PTR_floor_003a9670;\n            if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8d50;\nLAB_001c8bd8:\n            dVar32 = (double)(*pcVar23)(dVar32);\n            iVar15 = (int)dVar32;\nLAB_001c8bf0:\n            dVar30 = dVar30 + local_a0;\n            if (-2 < (int)unaff_s7) goto LAB_001c8c00;\nLAB_001c8d6c:\n            dVar32 = (double)(int)unaff_s7;\n          }\n          else {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d8c:\n              iVar15 = -0x7ffffdff;\n              goto LAB_001c8bf0;\n            }\n            pcVar23 = (code *)PTR_ceil_003a8c20;\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8bd8;\nLAB_001c8d50:\n            iVar15 = 0x7ffffdff;\n            dVar30 = dVar30 + local_a0;\n            if ((int)unaff_s7 < -1) goto LAB_001c8d6c;\nLAB_001c8c00:\n            dVar32 = 0.0;\n          }\n          dVar32 = dVar30 + dVar32;\n          dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n          dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          if (dVar32 - dVar26 < dVar27 - dVar32) {\n            if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n              if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) {\nLAB_001c8cec:\n                iVar14 = 0x7ffffdff;\n              }\n              else {\nLAB_001c8630:\n                dVar32 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n                iVar14 = (int)dVar32;\n              }\n              goto LAB_001c8644;\n            }\n            goto LAB_001c8c88;\n          }\n          if (dVar32 < dVar25) goto LAB_001c8c88;\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;\nLAB_001c8d18:\n          dVar32 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          iVar14 = (int)dVar32;\n        } while( true );\n      }\n      (*(code *)PTR_ClearMagickException_003a90f8)(param_3);\n      pppppppuVar9 = local_80;\n      unaff_s0 = param_2;\n    }\n    else {\n      unaff_s3 = &local_7c;\n      if (((local_7c == (undefined4 *******)0x0) && (local_78 == (undefined4 ******)0x0)) ||\n         (((uint)ppppppuVar2 & 3) != 0)) {\n        local_80 = (undefined4 *******)(*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n        pppppppuVar9 = local_80;\n        unaff_s4 = ppppppuVar2;\n        if ((local_80 != (undefined4 *******)0x0) &&\n           (unaff_s4 = (undefined4 ******)((uint)ppppppuVar2 & 0x2000),\n           unaff_s4 != (undefined4 ******)0x0)) {\n          local_80[0x8c] = (undefined4 ******)((int)local_80[0x8c] - (int)local_74);\n          local_80[0x8d] = (undefined4 ******)((int)local_80[0x8d] - (int)local_70);\n          local_80[0x8a] = local_7c;\n          local_80[0x8b] = local_78;\n        }\n      }\n      else {\n        unaff_s7 = (undefined4 *******)param_1[6];\n        if ((local_7c < unaff_s7) || (local_78 < param_1[7])) {\n          ppppppuVar2 = param_1[0x8b];\n          if ((undefined4 *******)param_1[0x8a] != (undefined4 *******)0x0) {\n            unaff_s7 = (undefined4 *******)param_1[0x8a];\n          }\n          if (ppppppuVar2 == (undefined4 ******)0x0) {\n            ppppppuVar2 = param_1[7];\n          }\n          if (local_7c == (undefined4 *******)0x0) {\n            unaff_s0 = unaff_s7;\n          }\n          if (local_78 == (undefined4 ******)0x0) {\n            unaff_s4 = ppppppuVar2;\n          }\n          pppppppuVar9 = local_80;\n          if (0 < (int)ppppppuVar2) {\n            unaff_s3 = (undefined4 *******)0x0;\n            unaff_s8 = &local_80;\n            do {\n              unaff_s5 = (undefined4 *******)0x0;\n              if ((int)unaff_s7 < 1) {\n                pppppppuVar9 = local_80;\n                if (unaff_s6 == (undefined4 *******)0x0) break;\n              }\n              else {\n                do {\n                  local_7c = unaff_s0;\n                  local_78 = unaff_s4;\n                  local_74 = unaff_s5;\n                  local_70 = unaff_s3;\n                  unaff_s6 = (undefined4 *******)\n                             (*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n                  pppppppuVar9 = local_80;\n                  if (unaff_s6 == (undefined4 *******)0x0) goto LAB_001c8908;\n                  unaff_s5 = (undefined4 *******)((int)unaff_s5 + (int)unaff_s0);\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);\n              }\n              unaff_s3 = (undefined4 *******)((int)unaff_s3 + (int)unaff_s4);\n              pppppppuVar9 = local_80;\n            } while ((int)unaff_s3 < (int)ppppppuVar2);\n          }\n        }\n        else {\n          local_e8 = param_3;\n          pppppppuVar9 = (undefined4 *******)(*(code *)PTR_CloneImage_003a9830)(param_1,0,0,1);\n        }\n      }\n    }\nLAB_001c8908:\n    if (local_5c == *(int *)puVar20) {\n      return pppppppuVar9;\n    }\n    (*(code *)PTR___stack_chk_fail_003a9064)();\n    unaff_s1 = param_1;\n    unaff_s2 = param_3;\n    goto LAB_001c8ef8;\n  }" if (parenthesized_expression "(param_1[0xcdb] == (undefined4 ******)0xabacadab)" ( (binary_expression "param_1[0xcdb] == (undefined4 ******)0xabacadab" (subscript_expression "param_1[0xcdb]" identifier [ number_literal ]) == (cast_expression "(undefined4 ******)0xabacadab" ( (type_descriptor "undefined4 ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n    if (param_1[0xcd4] != (undefined4 ******)0x0) {\n      local_e4 = param_1 + 0xd0;\n      local_e8 = (undefined4 ******)(PTR_s_t_to_left_003a88e4 + -0x62ac);\n      (*(code *)PTR_LogMagickEvent_003a91e0)\n                (0x8000,PTR_s_courses_003a88ec + -0x288c,PTR_s_courses_003a88ec + -0x269c,0x325);\n    }\n    unaff_s6 = (undefined4 *******)(*(code *)PTR_NewImageList_003a8e84)();\n    local_80 = unaff_s6;\n    ppppppuVar2 = (undefined4 ******)\n                  (*(code *)PTR_ParseGravityGeometry_003a97fc)(param_1,param_2,&local_7c,param_3);\n    unaff_s4 = local_78;\n    unaff_s0 = local_7c;\n    unaff_s3 = (undefined4 *******)PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;\n    if ((int)ppppppuVar2 << 0xe < 0) {\n      ppppppuVar7 = param_1[7];\n      if (local_7c == (undefined4 *******)0x0) {\n        local_7c = (undefined4 *******)0x1;\n        dVar35 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n      }\n      else {\n        dVar35 = (double)(int)local_7c;\n        if ((int)local_7c < 0) {\n          dVar35 = dVar35 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n      }\n      if (local_78 == (undefined4 ******)0x0) {\n        dVar30 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n        local_78 = (undefined4 ******)0x1;\n        if (((uint)ppppppuVar2 & 0x2000) != 0) goto LAB_001c8e14;\nLAB_001c8484:\n        pppppppuVar9 = local_74;\n        if ((int)local_74 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_74;\n        }\n        puVar8 = (undefined *)((int)param_1[6] - (int)pppppppuVar9);\n        pppppppuVar9 = local_70;\n        if ((int)local_70 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_70;\n        }\n        puVar3 = (undefined *)((int)ppppppuVar7 - (int)pppppppuVar9);\n      }\n      else {\n        dVar30 = (double)(int)local_78;\n        if ((int)local_78 < 0) {\n          dVar30 = dVar30 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n        if (((uint)ppppppuVar2 & 0x2000) == 0) goto LAB_001c8484;\nLAB_001c8e14:\n        pppppppuVar9 = local_74;\n        if ((int)local_74 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_74;\n        }\n        puVar8 = (undefined *)((int)pppppppuVar9 + (int)param_1[6]);\n        if ((int)local_70 < 0) {\n          puVar3 = (undefined *)((int)ppppppuVar7 - (int)local_70);\n        }\n        else {\n          puVar3 = (undefined *)((int)local_70 + (int)ppppppuVar7);\n        }\n      }\n      unaff_s4 = (undefined4 ******)((uint)ppppppuVar2 & 0x2000);\n      dVar34 = (double)(int)puVar8;\n      if ((int)puVar8 < 0) {\n        dVar34 = dVar34 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n      }\n      dVar35 = dVar34 / dVar35;\n      local_c8 = (double)(int)puVar3;\n      if ((int)puVar3 < 0) {\n        local_c8 = local_c8 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n      }\n      dVar25 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n      local_a0 = dVar25;\n      if (dVar35 < dVar25) {\n        local_a0 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n        dVar35 = dVar25;\n      }\n      if (local_a0 <= local_c8 / dVar30) {\n        local_a0 = local_c8 / dVar30;\n      }\n      dVar30 = 0.0;\n      unaff_s7 = local_70;\n      if (0.0 < local_c8) {\n        dVar25 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4780);\n        dVar31 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4788);\n        if (unaff_s4 != (undefined4 ******)0x0) goto LAB_001c8b70;\nLAB_001c854c:\n        unaff_s7 = local_70;\n        dVar32 = dVar30;\n        if ((int)local_70 < 1) {\n          dVar32 = dVar30 - (double)(int)local_70;\n        }\n        dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n        dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n        if (dVar32 - dVar26 < dVar27 - dVar32) {\n          dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar23 = (code *)PTR_floor_003a9670;\n          if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d7c;\n        }\n        else {\n          if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d7c:\n            iVar15 = -0x7ffffdff;\n            goto joined_r0x001c8cbc;\n          }\n          dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar23 = (code *)PTR_ceil_003a8c20;\n        }\n        if (dVar26 < dVar32) {\n          iVar15 = 0x7ffffdff;\n        }\n        else {\n          dVar32 = (double)(*pcVar23)(dVar32);\n          iVar15 = (int)dVar32;\n        }\njoined_r0x001c8cbc:\n        dVar30 = dVar30 + local_a0;\n        if ((int)unaff_s7 < 0) {\n          dVar32 = 0.0;\n        }\n        else {\n          dVar32 = (double)(int)unaff_s7;\n        }\n        dVar32 = dVar30 + dVar32;\n        dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n        dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n        if (dVar32 - dVar26 < dVar27 - dVar32) {\n          if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8630;\n            goto LAB_001c8cec;\n          }\n        }\n        else if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;\n          goto LAB_001c8d18;\n        }\nLAB_001c8c88:\n        iVar14 = -0x7ffffdff;\nLAB_001c8644:\n        do {\n          unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n          param_2 = (undefined4 *******)((int)param_1[0x8d] + iVar15);\n          dVar32 = 0.0;\n          local_68 = unaff_s8;\n          local_60 = param_2;\n          if (0.0 < dVar34) {\n            dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n            unaff_s6 = &local_6c;\n            dVar27 = *(double *)((int)unaff_s3 + 0x4780);\n            do {\n              unaff_s7 = local_74;\n              if (unaff_s4 == (undefined4 ******)0x0) {\n                dVar33 = dVar32;\n                if ((int)local_74 < 1) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }\nLAB_001c8b04:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;\nLAB_001c8708:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8700:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar33 = 0.0;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8768:\n                  dVar33 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar33 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n              }\n              else {\n                dVar33 = dVar32;\n                if (0 < (int)local_74) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar27 <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar33 = 0.0;\n                }\n                else {\n                  if (dVar33 < dVar27) goto LAB_001c8b24;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (dVar26 < dVar33) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8850:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < dVar25) goto LAB_001c8a44;\n                  if (dVar33 <= dVar26) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar14 = 0x7ffffdff;\n                }\n                else if (dVar25 <= dVar33) {\n                  if (dVar33 <= dVar31) goto LAB_001c8abc;\n                  iVar14 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar14 = -0x7ffffdff;\n                }\n              }\n              unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n              param_2 = (undefined4 *******)((int)param_1[0x8c] + iVar15);\n              local_6c = unaff_s8;\n              local_64 = param_2;\n              iVar15 = (*(code *)PTR_CropImage_003a90b8)(param_1,unaff_s6,param_3);\n              if (iVar15 != 0) {\n                (*(code *)PTR_AppendImageToList_003a9880)(&local_80,iVar15);\n              }\n            } while (dVar32 < dVar34);\n          }\n          unaff_s5 = unaff_s3;\n          if (local_c8 <= dVar30) break;\n          if (unaff_s4 == (undefined4 ******)0x0) goto LAB_001c854c;\nLAB_001c8b70:\n          unaff_s7 = local_70;\n          dVar32 = dVar30;\n          if (0 < (int)local_70) {\n            dVar32 = dVar30 - (double)(int)local_70;\n          }\n          dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n          dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          if (dVar32 - dVar26 < dVar27 - dVar32) {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d8c;\n            pcVar23 = (code *)PTR_floor_003a9670;\n            if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8d50;\nLAB_001c8bd8:\n            dVar32 = (double)(*pcVar23)(dVar32);\n            iVar15 = (int)dVar32;\nLAB_001c8bf0:\n            dVar30 = dVar30 + local_a0;\n            if (-2 < (int)unaff_s7) goto LAB_001c8c00;\nLAB_001c8d6c:\n            dVar32 = (double)(int)unaff_s7;\n          }\n          else {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d8c:\n              iVar15 = -0x7ffffdff;\n              goto LAB_001c8bf0;\n            }\n            pcVar23 = (code *)PTR_ceil_003a8c20;\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8bd8;\nLAB_001c8d50:\n            iVar15 = 0x7ffffdff;\n            dVar30 = dVar30 + local_a0;\n            if ((int)unaff_s7 < -1) goto LAB_001c8d6c;\nLAB_001c8c00:\n            dVar32 = 0.0;\n          }\n          dVar32 = dVar30 + dVar32;\n          dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n          dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          if (dVar32 - dVar26 < dVar27 - dVar32) {\n            if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n              if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) {\nLAB_001c8cec:\n                iVar14 = 0x7ffffdff;\n              }\n              else {\nLAB_001c8630:\n                dVar32 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n                iVar14 = (int)dVar32;\n              }\n              goto LAB_001c8644;\n            }\n            goto LAB_001c8c88;\n          }\n          if (dVar32 < dVar25) goto LAB_001c8c88;\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;\nLAB_001c8d18:\n          dVar32 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          iVar14 = (int)dVar32;\n        } while( true );\n      }\n      (*(code *)PTR_ClearMagickException_003a90f8)(param_3);\n      pppppppuVar9 = local_80;\n      unaff_s0 = param_2;\n    }\n    else {\n      unaff_s3 = &local_7c;\n      if (((local_7c == (undefined4 *******)0x0) && (local_78 == (undefined4 ******)0x0)) ||\n         (((uint)ppppppuVar2 & 3) != 0)) {\n        local_80 = (undefined4 *******)(*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n        pppppppuVar9 = local_80;\n        unaff_s4 = ppppppuVar2;\n        if ((local_80 != (undefined4 *******)0x0) &&\n           (unaff_s4 = (undefined4 ******)((uint)ppppppuVar2 & 0x2000),\n           unaff_s4 != (undefined4 ******)0x0)) {\n          local_80[0x8c] = (undefined4 ******)((int)local_80[0x8c] - (int)local_74);\n          local_80[0x8d] = (undefined4 ******)((int)local_80[0x8d] - (int)local_70);\n          local_80[0x8a] = local_7c;\n          local_80[0x8b] = local_78;\n        }\n      }\n      else {\n        unaff_s7 = (undefined4 *******)param_1[6];\n        if ((local_7c < unaff_s7) || (local_78 < param_1[7])) {\n          ppppppuVar2 = param_1[0x8b];\n          if ((undefined4 *******)param_1[0x8a] != (undefined4 *******)0x0) {\n            unaff_s7 = (undefined4 *******)param_1[0x8a];\n          }\n          if (ppppppuVar2 == (undefined4 ******)0x0) {\n            ppppppuVar2 = param_1[7];\n          }\n          if (local_7c == (undefined4 *******)0x0) {\n            unaff_s0 = unaff_s7;\n          }\n          if (local_78 == (undefined4 ******)0x0) {\n            unaff_s4 = ppppppuVar2;\n          }\n          pppppppuVar9 = local_80;\n          if (0 < (int)ppppppuVar2) {\n            unaff_s3 = (undefined4 *******)0x0;\n            unaff_s8 = &local_80;\n            do {\n              unaff_s5 = (undefined4 *******)0x0;\n              if ((int)unaff_s7 < 1) {\n                pppppppuVar9 = local_80;\n                if (unaff_s6 == (undefined4 *******)0x0) break;\n              }\n              else {\n                do {\n                  local_7c = unaff_s0;\n                  local_78 = unaff_s4;\n                  local_74 = unaff_s5;\n                  local_70 = unaff_s3;\n                  unaff_s6 = (undefined4 *******)\n                             (*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n                  pppppppuVar9 = local_80;\n                  if (unaff_s6 == (undefined4 *******)0x0) goto LAB_001c8908;\n                  unaff_s5 = (undefined4 *******)((int)unaff_s5 + (int)unaff_s0);\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);\n              }\n              unaff_s3 = (undefined4 *******)((int)unaff_s3 + (int)unaff_s4);\n              pppppppuVar9 = local_80;\n            } while ((int)unaff_s3 < (int)ppppppuVar2);\n          }\n        }\n        else {\n          local_e8 = param_3;\n          pppppppuVar9 = (undefined4 *******)(*(code *)PTR_CloneImage_003a9830)(param_1,0,0,1);\n        }\n      }\n    }\nLAB_001c8908:\n    if (local_5c == *(int *)puVar20) {\n      return pppppppuVar9;\n    }\n    (*(code *)PTR___stack_chk_fail_003a9064)();\n    unaff_s1 = param_1;\n    unaff_s2 = param_3;\n    goto LAB_001c8ef8;\n  }" { (if_statement "if (param_1[0xcd4] != (undefined4 ******)0x0) {\n      local_e4 = param_1 + 0xd0;\n      local_e8 = (undefined4 ******)(PTR_s_t_to_left_003a88e4 + -0x62ac);\n      (*(code *)PTR_LogMagickEvent_003a91e0)\n                (0x8000,PTR_s_courses_003a88ec + -0x288c,PTR_s_courses_003a88ec + -0x269c,0x325);\n    }" if (parenthesized_expression "(param_1[0xcd4] != (undefined4 ******)0x0)" ( (binary_expression "param_1[0xcd4] != (undefined4 ******)0x0" (subscript_expression "param_1[0xcd4]" identifier [ number_literal ]) != (cast_expression "(undefined4 ******)0x0" ( (type_descriptor "undefined4 ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n      local_e4 = param_1 + 0xd0;\n      local_e8 = (undefined4 ******)(PTR_s_t_to_left_003a88e4 + -0x62ac);\n      (*(code *)PTR_LogMagickEvent_003a91e0)\n                (0x8000,PTR_s_courses_003a88ec + -0x288c,PTR_s_courses_003a88ec + -0x269c,0x325);\n    }" { (expression_statement "local_e4 = param_1 + 0xd0;" (assignment_expression "local_e4 = param_1 + 0xd0" identifier = (binary_expression "param_1 + 0xd0" identifier + number_literal)) ;) (expression_statement "local_e8 = (undefined4 ******)(PTR_s_t_to_left_003a88e4 + -0x62ac);" (assignment_expression "local_e8 = (undefined4 ******)(PTR_s_t_to_left_003a88e4 + -0x62ac)" identifier = (cast_expression "(undefined4 ******)(PTR_s_t_to_left_003a88e4 + -0x62ac)" ( (type_descriptor "undefined4 ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (parenthesized_expression "(PTR_s_t_to_left_003a88e4 + -0x62ac)" ( (binary_expression "PTR_s_t_to_left_003a88e4 + -0x62ac" identifier + number_literal) )))) ;) (expression_statement "(*(code *)PTR_LogMagickEvent_003a91e0)\n                (0x8000,PTR_s_courses_003a88ec + -0x288c,PTR_s_courses_003a88ec + -0x269c,0x325);" (call_expression "(*(code *)PTR_LogMagickEvent_003a91e0)\n                (0x8000,PTR_s_courses_003a88ec + -0x288c,PTR_s_courses_003a88ec + -0x269c,0x325)" (parenthesized_expression "(*(code *)PTR_LogMagickEvent_003a91e0)" ( (pointer_expression "*(code *)PTR_LogMagickEvent_003a91e0" * (cast_expression "(code *)PTR_LogMagickEvent_003a91e0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(0x8000,PTR_s_courses_003a88ec + -0x288c,PTR_s_courses_003a88ec + -0x269c,0x325)" ( number_literal , (binary_expression "PTR_s_courses_003a88ec + -0x288c" identifier + number_literal) , (binary_expression "PTR_s_courses_003a88ec + -0x269c" identifier + number_literal) , number_literal ))) ;) })) (expression_statement "unaff_s6 = (undefined4 *******)(*(code *)PTR_NewImageList_003a8e84)();" (assignment_expression "unaff_s6 = (undefined4 *******)(*(code *)PTR_NewImageList_003a8e84)()" identifier = (cast_expression "(undefined4 *******)(*(code *)PTR_NewImageList_003a8e84)()" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(*(code *)PTR_NewImageList_003a8e84)()" (parenthesized_expression "(*(code *)PTR_NewImageList_003a8e84)" ( (pointer_expression "*(code *)PTR_NewImageList_003a8e84" * (cast_expression "(code *)PTR_NewImageList_003a8e84" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))))) ;) (expression_statement "local_80 = unaff_s6;" (assignment_expression "local_80 = unaff_s6" identifier = identifier) ;) (expression_statement "ppppppuVar2 = (undefined4 ******)\n                  (*(code *)PTR_ParseGravityGeometry_003a97fc)(param_1,param_2,&local_7c,param_3);" (assignment_expression "ppppppuVar2 = (undefined4 ******)\n                  (*(code *)PTR_ParseGravityGeometry_003a97fc)(param_1,param_2,&local_7c,param_3)" identifier = (cast_expression "(undefined4 ******)\n                  (*(code *)PTR_ParseGravityGeometry_003a97fc)(param_1,param_2,&local_7c,param_3)" ( (type_descriptor "undefined4 ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (call_expression "(*(code *)PTR_ParseGravityGeometry_003a97fc)(param_1,param_2,&local_7c,param_3)" (parenthesized_expression "(*(code *)PTR_ParseGravityGeometry_003a97fc)" ( (pointer_expression "*(code *)PTR_ParseGravityGeometry_003a97fc" * (cast_expression "(code *)PTR_ParseGravityGeometry_003a97fc" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_1,param_2,&local_7c,param_3)" ( identifier , identifier , (pointer_expression "&local_7c" & identifier) , identifier ))))) ;) (expression_statement "unaff_s4 = local_78;" (assignment_expression "unaff_s4 = local_78" identifier = identifier) ;) (expression_statement "unaff_s0 = local_7c;" (assignment_expression "unaff_s0 = local_7c" identifier = identifier) ;) (expression_statement "unaff_s3 = (undefined4 *******)PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;" (assignment_expression "unaff_s3 = (undefined4 *******)PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8" identifier = (cast_expression "(undefined4 *******)PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) identifier)) ;) (if_statement "if ((int)ppppppuVar2 << 0xe < 0) {\n      ppppppuVar7 = param_1[7];\n      if (local_7c == (undefined4 *******)0x0) {\n        local_7c = (undefined4 *******)0x1;\n        dVar35 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n      }\n      else {\n        dVar35 = (double)(int)local_7c;\n        if ((int)local_7c < 0) {\n          dVar35 = dVar35 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n      }\n      if (local_78 == (undefined4 ******)0x0) {\n        dVar30 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n        local_78 = (undefined4 ******)0x1;\n        if (((uint)ppppppuVar2 & 0x2000) != 0) goto LAB_001c8e14;\nLAB_001c8484:\n        pppppppuVar9 = local_74;\n        if ((int)local_74 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_74;\n        }\n        puVar8 = (undefined *)((int)param_1[6] - (int)pppppppuVar9);\n        pppppppuVar9 = local_70;\n        if ((int)local_70 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_70;\n        }\n        puVar3 = (undefined *)((int)ppppppuVar7 - (int)pppppppuVar9);\n      }\n      else {\n        dVar30 = (double)(int)local_78;\n        if ((int)local_78 < 0) {\n          dVar30 = dVar30 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n        if (((uint)ppppppuVar2 & 0x2000) == 0) goto LAB_001c8484;\nLAB_001c8e14:\n        pppppppuVar9 = local_74;\n        if ((int)local_74 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_74;\n        }\n        puVar8 = (undefined *)((int)pppppppuVar9 + (int)param_1[6]);\n        if ((int)local_70 < 0) {\n          puVar3 = (undefined *)((int)ppppppuVar7 - (int)local_70);\n        }\n        else {\n          puVar3 = (undefined *)((int)local_70 + (int)ppppppuVar7);\n        }\n      }\n      unaff_s4 = (undefined4 ******)((uint)ppppppuVar2 & 0x2000);\n      dVar34 = (double)(int)puVar8;\n      if ((int)puVar8 < 0) {\n        dVar34 = dVar34 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n      }\n      dVar35 = dVar34 / dVar35;\n      local_c8 = (double)(int)puVar3;\n      if ((int)puVar3 < 0) {\n        local_c8 = local_c8 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n      }\n      dVar25 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n      local_a0 = dVar25;\n      if (dVar35 < dVar25) {\n        local_a0 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n        dVar35 = dVar25;\n      }\n      if (local_a0 <= local_c8 / dVar30) {\n        local_a0 = local_c8 / dVar30;\n      }\n      dVar30 = 0.0;\n      unaff_s7 = local_70;\n      if (0.0 < local_c8) {\n        dVar25 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4780);\n        dVar31 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4788);\n        if (unaff_s4 != (undefined4 ******)0x0) goto LAB_001c8b70;\nLAB_001c854c:\n        unaff_s7 = local_70;\n        dVar32 = dVar30;\n        if ((int)local_70 < 1) {\n          dVar32 = dVar30 - (double)(int)local_70;\n        }\n        dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n        dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n        if (dVar32 - dVar26 < dVar27 - dVar32) {\n          dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar23 = (code *)PTR_floor_003a9670;\n          if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d7c;\n        }\n        else {\n          if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d7c:\n            iVar15 = -0x7ffffdff;\n            goto joined_r0x001c8cbc;\n          }\n          dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar23 = (code *)PTR_ceil_003a8c20;\n        }\n        if (dVar26 < dVar32) {\n          iVar15 = 0x7ffffdff;\n        }\n        else {\n          dVar32 = (double)(*pcVar23)(dVar32);\n          iVar15 = (int)dVar32;\n        }\njoined_r0x001c8cbc:\n        dVar30 = dVar30 + local_a0;\n        if ((int)unaff_s7 < 0) {\n          dVar32 = 0.0;\n        }\n        else {\n          dVar32 = (double)(int)unaff_s7;\n        }\n        dVar32 = dVar30 + dVar32;\n        dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n        dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n        if (dVar32 - dVar26 < dVar27 - dVar32) {\n          if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8630;\n            goto LAB_001c8cec;\n          }\n        }\n        else if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;\n          goto LAB_001c8d18;\n        }\nLAB_001c8c88:\n        iVar14 = -0x7ffffdff;\nLAB_001c8644:\n        do {\n          unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n          param_2 = (undefined4 *******)((int)param_1[0x8d] + iVar15);\n          dVar32 = 0.0;\n          local_68 = unaff_s8;\n          local_60 = param_2;\n          if (0.0 < dVar34) {\n            dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n            unaff_s6 = &local_6c;\n            dVar27 = *(double *)((int)unaff_s3 + 0x4780);\n            do {\n              unaff_s7 = local_74;\n              if (unaff_s4 == (undefined4 ******)0x0) {\n                dVar33 = dVar32;\n                if ((int)local_74 < 1) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }\nLAB_001c8b04:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;\nLAB_001c8708:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8700:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar33 = 0.0;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8768:\n                  dVar33 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar33 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n              }\n              else {\n                dVar33 = dVar32;\n                if (0 < (int)local_74) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar27 <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar33 = 0.0;\n                }\n                else {\n                  if (dVar33 < dVar27) goto LAB_001c8b24;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (dVar26 < dVar33) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8850:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < dVar25) goto LAB_001c8a44;\n                  if (dVar33 <= dVar26) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar14 = 0x7ffffdff;\n                }\n                else if (dVar25 <= dVar33) {\n                  if (dVar33 <= dVar31) goto LAB_001c8abc;\n                  iVar14 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar14 = -0x7ffffdff;\n                }\n              }\n              unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n              param_2 = (undefined4 *******)((int)param_1[0x8c] + iVar15);\n              local_6c = unaff_s8;\n              local_64 = param_2;\n              iVar15 = (*(code *)PTR_CropImage_003a90b8)(param_1,unaff_s6,param_3);\n              if (iVar15 != 0) {\n                (*(code *)PTR_AppendImageToList_003a9880)(&local_80,iVar15);\n              }\n            } while (dVar32 < dVar34);\n          }\n          unaff_s5 = unaff_s3;\n          if (local_c8 <= dVar30) break;\n          if (unaff_s4 == (undefined4 ******)0x0) goto LAB_001c854c;\nLAB_001c8b70:\n          unaff_s7 = local_70;\n          dVar32 = dVar30;\n          if (0 < (int)local_70) {\n            dVar32 = dVar30 - (double)(int)local_70;\n          }\n          dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n          dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          if (dVar32 - dVar26 < dVar27 - dVar32) {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d8c;\n            pcVar23 = (code *)PTR_floor_003a9670;\n            if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8d50;\nLAB_001c8bd8:\n            dVar32 = (double)(*pcVar23)(dVar32);\n            iVar15 = (int)dVar32;\nLAB_001c8bf0:\n            dVar30 = dVar30 + local_a0;\n            if (-2 < (int)unaff_s7) goto LAB_001c8c00;\nLAB_001c8d6c:\n            dVar32 = (double)(int)unaff_s7;\n          }\n          else {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d8c:\n              iVar15 = -0x7ffffdff;\n              goto LAB_001c8bf0;\n            }\n            pcVar23 = (code *)PTR_ceil_003a8c20;\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8bd8;\nLAB_001c8d50:\n            iVar15 = 0x7ffffdff;\n            dVar30 = dVar30 + local_a0;\n            if ((int)unaff_s7 < -1) goto LAB_001c8d6c;\nLAB_001c8c00:\n            dVar32 = 0.0;\n          }\n          dVar32 = dVar30 + dVar32;\n          dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n          dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          if (dVar32 - dVar26 < dVar27 - dVar32) {\n            if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n              if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) {\nLAB_001c8cec:\n                iVar14 = 0x7ffffdff;\n              }\n              else {\nLAB_001c8630:\n                dVar32 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n                iVar14 = (int)dVar32;\n              }\n              goto LAB_001c8644;\n            }\n            goto LAB_001c8c88;\n          }\n          if (dVar32 < dVar25) goto LAB_001c8c88;\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;\nLAB_001c8d18:\n          dVar32 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          iVar14 = (int)dVar32;\n        } while( true );\n      }\n      (*(code *)PTR_ClearMagickException_003a90f8)(param_3);\n      pppppppuVar9 = local_80;\n      unaff_s0 = param_2;\n    }\n    else {\n      unaff_s3 = &local_7c;\n      if (((local_7c == (undefined4 *******)0x0) && (local_78 == (undefined4 ******)0x0)) ||\n         (((uint)ppppppuVar2 & 3) != 0)) {\n        local_80 = (undefined4 *******)(*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n        pppppppuVar9 = local_80;\n        unaff_s4 = ppppppuVar2;\n        if ((local_80 != (undefined4 *******)0x0) &&\n           (unaff_s4 = (undefined4 ******)((uint)ppppppuVar2 & 0x2000),\n           unaff_s4 != (undefined4 ******)0x0)) {\n          local_80[0x8c] = (undefined4 ******)((int)local_80[0x8c] - (int)local_74);\n          local_80[0x8d] = (undefined4 ******)((int)local_80[0x8d] - (int)local_70);\n          local_80[0x8a] = local_7c;\n          local_80[0x8b] = local_78;\n        }\n      }\n      else {\n        unaff_s7 = (undefined4 *******)param_1[6];\n        if ((local_7c < unaff_s7) || (local_78 < param_1[7])) {\n          ppppppuVar2 = param_1[0x8b];\n          if ((undefined4 *******)param_1[0x8a] != (undefined4 *******)0x0) {\n            unaff_s7 = (undefined4 *******)param_1[0x8a];\n          }\n          if (ppppppuVar2 == (undefined4 ******)0x0) {\n            ppppppuVar2 = param_1[7];\n          }\n          if (local_7c == (undefined4 *******)0x0) {\n            unaff_s0 = unaff_s7;\n          }\n          if (local_78 == (undefined4 ******)0x0) {\n            unaff_s4 = ppppppuVar2;\n          }\n          pppppppuVar9 = local_80;\n          if (0 < (int)ppppppuVar2) {\n            unaff_s3 = (undefined4 *******)0x0;\n            unaff_s8 = &local_80;\n            do {\n              unaff_s5 = (undefined4 *******)0x0;\n              if ((int)unaff_s7 < 1) {\n                pppppppuVar9 = local_80;\n                if (unaff_s6 == (undefined4 *******)0x0) break;\n              }\n              else {\n                do {\n                  local_7c = unaff_s0;\n                  local_78 = unaff_s4;\n                  local_74 = unaff_s5;\n                  local_70 = unaff_s3;\n                  unaff_s6 = (undefined4 *******)\n                             (*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n                  pppppppuVar9 = local_80;\n                  if (unaff_s6 == (undefined4 *******)0x0) goto LAB_001c8908;\n                  unaff_s5 = (undefined4 *******)((int)unaff_s5 + (int)unaff_s0);\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);\n              }\n              unaff_s3 = (undefined4 *******)((int)unaff_s3 + (int)unaff_s4);\n              pppppppuVar9 = local_80;\n            } while ((int)unaff_s3 < (int)ppppppuVar2);\n          }\n        }\n        else {\n          local_e8 = param_3;\n          pppppppuVar9 = (undefined4 *******)(*(code *)PTR_CloneImage_003a9830)(param_1,0,0,1);\n        }\n      }\n    }" if (parenthesized_expression "((int)ppppppuVar2 << 0xe < 0)" ( (binary_expression "(int)ppppppuVar2 << 0xe < 0" (binary_expression "(int)ppppppuVar2 << 0xe" (cast_expression "(int)ppppppuVar2" ( (type_descriptor "int" primitive_type) ) identifier) << number_literal) < number_literal) )) (compound_statement "{\n      ppppppuVar7 = param_1[7];\n      if (local_7c == (undefined4 *******)0x0) {\n        local_7c = (undefined4 *******)0x1;\n        dVar35 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n      }\n      else {\n        dVar35 = (double)(int)local_7c;\n        if ((int)local_7c < 0) {\n          dVar35 = dVar35 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n      }\n      if (local_78 == (undefined4 ******)0x0) {\n        dVar30 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n        local_78 = (undefined4 ******)0x1;\n        if (((uint)ppppppuVar2 & 0x2000) != 0) goto LAB_001c8e14;\nLAB_001c8484:\n        pppppppuVar9 = local_74;\n        if ((int)local_74 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_74;\n        }\n        puVar8 = (undefined *)((int)param_1[6] - (int)pppppppuVar9);\n        pppppppuVar9 = local_70;\n        if ((int)local_70 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_70;\n        }\n        puVar3 = (undefined *)((int)ppppppuVar7 - (int)pppppppuVar9);\n      }\n      else {\n        dVar30 = (double)(int)local_78;\n        if ((int)local_78 < 0) {\n          dVar30 = dVar30 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n        if (((uint)ppppppuVar2 & 0x2000) == 0) goto LAB_001c8484;\nLAB_001c8e14:\n        pppppppuVar9 = local_74;\n        if ((int)local_74 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_74;\n        }\n        puVar8 = (undefined *)((int)pppppppuVar9 + (int)param_1[6]);\n        if ((int)local_70 < 0) {\n          puVar3 = (undefined *)((int)ppppppuVar7 - (int)local_70);\n        }\n        else {\n          puVar3 = (undefined *)((int)local_70 + (int)ppppppuVar7);\n        }\n      }\n      unaff_s4 = (undefined4 ******)((uint)ppppppuVar2 & 0x2000);\n      dVar34 = (double)(int)puVar8;\n      if ((int)puVar8 < 0) {\n        dVar34 = dVar34 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n      }\n      dVar35 = dVar34 / dVar35;\n      local_c8 = (double)(int)puVar3;\n      if ((int)puVar3 < 0) {\n        local_c8 = local_c8 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n      }\n      dVar25 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n      local_a0 = dVar25;\n      if (dVar35 < dVar25) {\n        local_a0 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n        dVar35 = dVar25;\n      }\n      if (local_a0 <= local_c8 / dVar30) {\n        local_a0 = local_c8 / dVar30;\n      }\n      dVar30 = 0.0;\n      unaff_s7 = local_70;\n      if (0.0 < local_c8) {\n        dVar25 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4780);\n        dVar31 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4788);\n        if (unaff_s4 != (undefined4 ******)0x0) goto LAB_001c8b70;\nLAB_001c854c:\n        unaff_s7 = local_70;\n        dVar32 = dVar30;\n        if ((int)local_70 < 1) {\n          dVar32 = dVar30 - (double)(int)local_70;\n        }\n        dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n        dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n        if (dVar32 - dVar26 < dVar27 - dVar32) {\n          dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar23 = (code *)PTR_floor_003a9670;\n          if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d7c;\n        }\n        else {\n          if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d7c:\n            iVar15 = -0x7ffffdff;\n            goto joined_r0x001c8cbc;\n          }\n          dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar23 = (code *)PTR_ceil_003a8c20;\n        }\n        if (dVar26 < dVar32) {\n          iVar15 = 0x7ffffdff;\n        }\n        else {\n          dVar32 = (double)(*pcVar23)(dVar32);\n          iVar15 = (int)dVar32;\n        }\njoined_r0x001c8cbc:\n        dVar30 = dVar30 + local_a0;\n        if ((int)unaff_s7 < 0) {\n          dVar32 = 0.0;\n        }\n        else {\n          dVar32 = (double)(int)unaff_s7;\n        }\n        dVar32 = dVar30 + dVar32;\n        dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n        dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n        if (dVar32 - dVar26 < dVar27 - dVar32) {\n          if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8630;\n            goto LAB_001c8cec;\n          }\n        }\n        else if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;\n          goto LAB_001c8d18;\n        }\nLAB_001c8c88:\n        iVar14 = -0x7ffffdff;\nLAB_001c8644:\n        do {\n          unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n          param_2 = (undefined4 *******)((int)param_1[0x8d] + iVar15);\n          dVar32 = 0.0;\n          local_68 = unaff_s8;\n          local_60 = param_2;\n          if (0.0 < dVar34) {\n            dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n            unaff_s6 = &local_6c;\n            dVar27 = *(double *)((int)unaff_s3 + 0x4780);\n            do {\n              unaff_s7 = local_74;\n              if (unaff_s4 == (undefined4 ******)0x0) {\n                dVar33 = dVar32;\n                if ((int)local_74 < 1) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }\nLAB_001c8b04:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;\nLAB_001c8708:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8700:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar33 = 0.0;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8768:\n                  dVar33 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar33 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n              }\n              else {\n                dVar33 = dVar32;\n                if (0 < (int)local_74) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar27 <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar33 = 0.0;\n                }\n                else {\n                  if (dVar33 < dVar27) goto LAB_001c8b24;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (dVar26 < dVar33) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8850:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < dVar25) goto LAB_001c8a44;\n                  if (dVar33 <= dVar26) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar14 = 0x7ffffdff;\n                }\n                else if (dVar25 <= dVar33) {\n                  if (dVar33 <= dVar31) goto LAB_001c8abc;\n                  iVar14 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar14 = -0x7ffffdff;\n                }\n              }\n              unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n              param_2 = (undefined4 *******)((int)param_1[0x8c] + iVar15);\n              local_6c = unaff_s8;\n              local_64 = param_2;\n              iVar15 = (*(code *)PTR_CropImage_003a90b8)(param_1,unaff_s6,param_3);\n              if (iVar15 != 0) {\n                (*(code *)PTR_AppendImageToList_003a9880)(&local_80,iVar15);\n              }\n            } while (dVar32 < dVar34);\n          }\n          unaff_s5 = unaff_s3;\n          if (local_c8 <= dVar30) break;\n          if (unaff_s4 == (undefined4 ******)0x0) goto LAB_001c854c;\nLAB_001c8b70:\n          unaff_s7 = local_70;\n          dVar32 = dVar30;\n          if (0 < (int)local_70) {\n            dVar32 = dVar30 - (double)(int)local_70;\n          }\n          dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n          dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          if (dVar32 - dVar26 < dVar27 - dVar32) {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d8c;\n            pcVar23 = (code *)PTR_floor_003a9670;\n            if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8d50;\nLAB_001c8bd8:\n            dVar32 = (double)(*pcVar23)(dVar32);\n            iVar15 = (int)dVar32;\nLAB_001c8bf0:\n            dVar30 = dVar30 + local_a0;\n            if (-2 < (int)unaff_s7) goto LAB_001c8c00;\nLAB_001c8d6c:\n            dVar32 = (double)(int)unaff_s7;\n          }\n          else {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d8c:\n              iVar15 = -0x7ffffdff;\n              goto LAB_001c8bf0;\n            }\n            pcVar23 = (code *)PTR_ceil_003a8c20;\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8bd8;\nLAB_001c8d50:\n            iVar15 = 0x7ffffdff;\n            dVar30 = dVar30 + local_a0;\n            if ((int)unaff_s7 < -1) goto LAB_001c8d6c;\nLAB_001c8c00:\n            dVar32 = 0.0;\n          }\n          dVar32 = dVar30 + dVar32;\n          dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n          dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          if (dVar32 - dVar26 < dVar27 - dVar32) {\n            if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n              if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) {\nLAB_001c8cec:\n                iVar14 = 0x7ffffdff;\n              }\n              else {\nLAB_001c8630:\n                dVar32 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n                iVar14 = (int)dVar32;\n              }\n              goto LAB_001c8644;\n            }\n            goto LAB_001c8c88;\n          }\n          if (dVar32 < dVar25) goto LAB_001c8c88;\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;\nLAB_001c8d18:\n          dVar32 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          iVar14 = (int)dVar32;\n        } while( true );\n      }\n      (*(code *)PTR_ClearMagickException_003a90f8)(param_3);\n      pppppppuVar9 = local_80;\n      unaff_s0 = param_2;\n    }" { (expression_statement "ppppppuVar7 = param_1[7];" (assignment_expression "ppppppuVar7 = param_1[7]" identifier = (subscript_expression "param_1[7]" identifier [ number_literal ])) ;) (if_statement "if (local_7c == (undefined4 *******)0x0) {\n        local_7c = (undefined4 *******)0x1;\n        dVar35 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n      }\n      else {\n        dVar35 = (double)(int)local_7c;\n        if ((int)local_7c < 0) {\n          dVar35 = dVar35 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n      }" if (parenthesized_expression "(local_7c == (undefined4 *******)0x0)" ( (binary_expression "local_7c == (undefined4 *******)0x0" identifier == (cast_expression "(undefined4 *******)0x0" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n        local_7c = (undefined4 *******)0x1;\n        dVar35 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n      }" { (expression_statement "local_7c = (undefined4 *******)0x1;" (assignment_expression "local_7c = (undefined4 *******)0x1" identifier = (cast_expression "(undefined4 *******)0x1" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "dVar35 = *(double *)(PTR_LAB_003a88e0 + 0x1438);" (assignment_expression "dVar35 = *(double *)(PTR_LAB_003a88e0 + 0x1438)" identifier = (pointer_expression "*(double *)(PTR_LAB_003a88e0 + 0x1438)" * (cast_expression "(double *)(PTR_LAB_003a88e0 + 0x1438)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_003a88e0 + 0x1438)" ( (binary_expression "PTR_LAB_003a88e0 + 0x1438" identifier + number_literal) ))))) ;) }) (else_clause "else {\n        dVar35 = (double)(int)local_7c;\n        if ((int)local_7c < 0) {\n          dVar35 = dVar35 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n      }" else (compound_statement "{\n        dVar35 = (double)(int)local_7c;\n        if ((int)local_7c < 0) {\n          dVar35 = dVar35 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n      }" { (expression_statement "dVar35 = (double)(int)local_7c;" (assignment_expression "dVar35 = (double)(int)local_7c" identifier = (cast_expression "(double)(int)local_7c" ( (type_descriptor "double" primitive_type) ) (cast_expression "(int)local_7c" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (if_statement "if ((int)local_7c < 0) {\n          dVar35 = dVar35 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }" if (parenthesized_expression "((int)local_7c < 0)" ( (binary_expression "(int)local_7c < 0" (cast_expression "(int)local_7c" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n          dVar35 = dVar35 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }" { (expression_statement "dVar35 = dVar35 + *(double *)(PTR_LAB_003a88e0 + 0x1418);" (assignment_expression "dVar35 = dVar35 + *(double *)(PTR_LAB_003a88e0 + 0x1418)" identifier = (binary_expression "dVar35 + *(double *)(PTR_LAB_003a88e0 + 0x1418)" identifier + (pointer_expression "*(double *)(PTR_LAB_003a88e0 + 0x1418)" * (cast_expression "(double *)(PTR_LAB_003a88e0 + 0x1418)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_003a88e0 + 0x1418)" ( (binary_expression "PTR_LAB_003a88e0 + 0x1418" identifier + number_literal) )))))) ;) })) }))) (if_statement "if (local_78 == (undefined4 ******)0x0) {\n        dVar30 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n        local_78 = (undefined4 ******)0x1;\n        if (((uint)ppppppuVar2 & 0x2000) != 0) goto LAB_001c8e14;\nLAB_001c8484:\n        pppppppuVar9 = local_74;\n        if ((int)local_74 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_74;\n        }\n        puVar8 = (undefined *)((int)param_1[6] - (int)pppppppuVar9);\n        pppppppuVar9 = local_70;\n        if ((int)local_70 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_70;\n        }\n        puVar3 = (undefined *)((int)ppppppuVar7 - (int)pppppppuVar9);\n      }\n      else {\n        dVar30 = (double)(int)local_78;\n        if ((int)local_78 < 0) {\n          dVar30 = dVar30 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n        if (((uint)ppppppuVar2 & 0x2000) == 0) goto LAB_001c8484;\nLAB_001c8e14:\n        pppppppuVar9 = local_74;\n        if ((int)local_74 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_74;\n        }\n        puVar8 = (undefined *)((int)pppppppuVar9 + (int)param_1[6]);\n        if ((int)local_70 < 0) {\n          puVar3 = (undefined *)((int)ppppppuVar7 - (int)local_70);\n        }\n        else {\n          puVar3 = (undefined *)((int)local_70 + (int)ppppppuVar7);\n        }\n      }" if (parenthesized_expression "(local_78 == (undefined4 ******)0x0)" ( (binary_expression "local_78 == (undefined4 ******)0x0" identifier == (cast_expression "(undefined4 ******)0x0" ( (type_descriptor "undefined4 ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n        dVar30 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n        local_78 = (undefined4 ******)0x1;\n        if (((uint)ppppppuVar2 & 0x2000) != 0) goto LAB_001c8e14;\nLAB_001c8484:\n        pppppppuVar9 = local_74;\n        if ((int)local_74 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_74;\n        }\n        puVar8 = (undefined *)((int)param_1[6] - (int)pppppppuVar9);\n        pppppppuVar9 = local_70;\n        if ((int)local_70 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_70;\n        }\n        puVar3 = (undefined *)((int)ppppppuVar7 - (int)pppppppuVar9);\n      }" { (expression_statement "dVar30 = *(double *)(PTR_LAB_003a88e0 + 0x1438);" (assignment_expression "dVar30 = *(double *)(PTR_LAB_003a88e0 + 0x1438)" identifier = (pointer_expression "*(double *)(PTR_LAB_003a88e0 + 0x1438)" * (cast_expression "(double *)(PTR_LAB_003a88e0 + 0x1438)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_003a88e0 + 0x1438)" ( (binary_expression "PTR_LAB_003a88e0 + 0x1438" identifier + number_literal) ))))) ;) (expression_statement "local_78 = (undefined4 ******)0x1;" (assignment_expression "local_78 = (undefined4 ******)0x1" identifier = (cast_expression "(undefined4 ******)0x1" ( (type_descriptor "undefined4 ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) ;) (if_statement "if (((uint)ppppppuVar2 & 0x2000) != 0) goto LAB_001c8e14;" if (parenthesized_expression "(((uint)ppppppuVar2 & 0x2000) != 0)" ( (binary_expression "((uint)ppppppuVar2 & 0x2000) != 0" (parenthesized_expression "((uint)ppppppuVar2 & 0x2000)" ( (binary_expression "(uint)ppppppuVar2 & 0x2000" (cast_expression "(uint)ppppppuVar2" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )) != number_literal) )) (goto_statement "goto LAB_001c8e14;" goto statement_identifier ;)) (labeled_statement "LAB_001c8484:\n        pppppppuVar9 = local_74;" statement_identifier : (expression_statement "pppppppuVar9 = local_74;" (assignment_expression "pppppppuVar9 = local_74" identifier = identifier) ;)) (if_statement "if ((int)local_74 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_74;\n        }" if (parenthesized_expression "((int)local_74 < 0)" ( (binary_expression "(int)local_74 < 0" (cast_expression "(int)local_74" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n          pppppppuVar9 = (undefined4 *******)-(int)local_74;\n        }" { (expression_statement "pppppppuVar9 = (undefined4 *******)-(int)local_74;" (assignment_expression "pppppppuVar9 = (undefined4 *******)-(int)local_74" identifier = (cast_expression "(undefined4 *******)-(int)local_74" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (unary_expression "-(int)local_74" - (cast_expression "(int)local_74" ( (type_descriptor "int" primitive_type) ) identifier)))) ;) })) (expression_statement "puVar8 = (undefined *)((int)param_1[6] - (int)pppppppuVar9);" (assignment_expression "puVar8 = (undefined *)((int)param_1[6] - (int)pppppppuVar9)" identifier = (cast_expression "(undefined *)((int)param_1[6] - (int)pppppppuVar9)" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)param_1[6] - (int)pppppppuVar9)" ( (binary_expression "(int)param_1[6] - (int)pppppppuVar9" (cast_expression "(int)param_1[6]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "param_1[6]" identifier [ number_literal ])) - (cast_expression "(int)pppppppuVar9" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "pppppppuVar9 = local_70;" (assignment_expression "pppppppuVar9 = local_70" identifier = identifier) ;) (if_statement "if ((int)local_70 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_70;\n        }" if (parenthesized_expression "((int)local_70 < 0)" ( (binary_expression "(int)local_70 < 0" (cast_expression "(int)local_70" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n          pppppppuVar9 = (undefined4 *******)-(int)local_70;\n        }" { (expression_statement "pppppppuVar9 = (undefined4 *******)-(int)local_70;" (assignment_expression "pppppppuVar9 = (undefined4 *******)-(int)local_70" identifier = (cast_expression "(undefined4 *******)-(int)local_70" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (unary_expression "-(int)local_70" - (cast_expression "(int)local_70" ( (type_descriptor "int" primitive_type) ) identifier)))) ;) })) (expression_statement "puVar3 = (undefined *)((int)ppppppuVar7 - (int)pppppppuVar9);" (assignment_expression "puVar3 = (undefined *)((int)ppppppuVar7 - (int)pppppppuVar9)" identifier = (cast_expression "(undefined *)((int)ppppppuVar7 - (int)pppppppuVar9)" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)ppppppuVar7 - (int)pppppppuVar9)" ( (binary_expression "(int)ppppppuVar7 - (int)pppppppuVar9" (cast_expression "(int)ppppppuVar7" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pppppppuVar9" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) }) (else_clause "else {\n        dVar30 = (double)(int)local_78;\n        if ((int)local_78 < 0) {\n          dVar30 = dVar30 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n        if (((uint)ppppppuVar2 & 0x2000) == 0) goto LAB_001c8484;\nLAB_001c8e14:\n        pppppppuVar9 = local_74;\n        if ((int)local_74 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_74;\n        }\n        puVar8 = (undefined *)((int)pppppppuVar9 + (int)param_1[6]);\n        if ((int)local_70 < 0) {\n          puVar3 = (undefined *)((int)ppppppuVar7 - (int)local_70);\n        }\n        else {\n          puVar3 = (undefined *)((int)local_70 + (int)ppppppuVar7);\n        }\n      }" else (compound_statement "{\n        dVar30 = (double)(int)local_78;\n        if ((int)local_78 < 0) {\n          dVar30 = dVar30 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n        if (((uint)ppppppuVar2 & 0x2000) == 0) goto LAB_001c8484;\nLAB_001c8e14:\n        pppppppuVar9 = local_74;\n        if ((int)local_74 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_74;\n        }\n        puVar8 = (undefined *)((int)pppppppuVar9 + (int)param_1[6]);\n        if ((int)local_70 < 0) {\n          puVar3 = (undefined *)((int)ppppppuVar7 - (int)local_70);\n        }\n        else {\n          puVar3 = (undefined *)((int)local_70 + (int)ppppppuVar7);\n        }\n      }" { (expression_statement "dVar30 = (double)(int)local_78;" (assignment_expression "dVar30 = (double)(int)local_78" identifier = (cast_expression "(double)(int)local_78" ( (type_descriptor "double" primitive_type) ) (cast_expression "(int)local_78" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (if_statement "if ((int)local_78 < 0) {\n          dVar30 = dVar30 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }" if (parenthesized_expression "((int)local_78 < 0)" ( (binary_expression "(int)local_78 < 0" (cast_expression "(int)local_78" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n          dVar30 = dVar30 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }" { (expression_statement "dVar30 = dVar30 + *(double *)(PTR_LAB_003a88e0 + 0x1418);" (assignment_expression "dVar30 = dVar30 + *(double *)(PTR_LAB_003a88e0 + 0x1418)" identifier = (binary_expression "dVar30 + *(double *)(PTR_LAB_003a88e0 + 0x1418)" identifier + (pointer_expression "*(double *)(PTR_LAB_003a88e0 + 0x1418)" * (cast_expression "(double *)(PTR_LAB_003a88e0 + 0x1418)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_003a88e0 + 0x1418)" ( (binary_expression "PTR_LAB_003a88e0 + 0x1418" identifier + number_literal) )))))) ;) })) (if_statement "if (((uint)ppppppuVar2 & 0x2000) == 0) goto LAB_001c8484;" if (parenthesized_expression "(((uint)ppppppuVar2 & 0x2000) == 0)" ( (binary_expression "((uint)ppppppuVar2 & 0x2000) == 0" (parenthesized_expression "((uint)ppppppuVar2 & 0x2000)" ( (binary_expression "(uint)ppppppuVar2 & 0x2000" (cast_expression "(uint)ppppppuVar2" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )) == number_literal) )) (goto_statement "goto LAB_001c8484;" goto statement_identifier ;)) (labeled_statement "LAB_001c8e14:\n        pppppppuVar9 = local_74;" statement_identifier : (expression_statement "pppppppuVar9 = local_74;" (assignment_expression "pppppppuVar9 = local_74" identifier = identifier) ;)) (if_statement "if ((int)local_74 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_74;\n        }" if (parenthesized_expression "((int)local_74 < 0)" ( (binary_expression "(int)local_74 < 0" (cast_expression "(int)local_74" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n          pppppppuVar9 = (undefined4 *******)-(int)local_74;\n        }" { (expression_statement "pppppppuVar9 = (undefined4 *******)-(int)local_74;" (assignment_expression "pppppppuVar9 = (undefined4 *******)-(int)local_74" identifier = (cast_expression "(undefined4 *******)-(int)local_74" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (unary_expression "-(int)local_74" - (cast_expression "(int)local_74" ( (type_descriptor "int" primitive_type) ) identifier)))) ;) })) (expression_statement "puVar8 = (undefined *)((int)pppppppuVar9 + (int)param_1[6]);" (assignment_expression "puVar8 = (undefined *)((int)pppppppuVar9 + (int)param_1[6])" identifier = (cast_expression "(undefined *)((int)pppppppuVar9 + (int)param_1[6])" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pppppppuVar9 + (int)param_1[6])" ( (binary_expression "(int)pppppppuVar9 + (int)param_1[6]" (cast_expression "(int)pppppppuVar9" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)param_1[6]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "param_1[6]" identifier [ number_literal ]))) )))) ;) (if_statement "if ((int)local_70 < 0) {\n          puVar3 = (undefined *)((int)ppppppuVar7 - (int)local_70);\n        }\n        else {\n          puVar3 = (undefined *)((int)local_70 + (int)ppppppuVar7);\n        }" if (parenthesized_expression "((int)local_70 < 0)" ( (binary_expression "(int)local_70 < 0" (cast_expression "(int)local_70" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n          puVar3 = (undefined *)((int)ppppppuVar7 - (int)local_70);\n        }" { (expression_statement "puVar3 = (undefined *)((int)ppppppuVar7 - (int)local_70);" (assignment_expression "puVar3 = (undefined *)((int)ppppppuVar7 - (int)local_70)" identifier = (cast_expression "(undefined *)((int)ppppppuVar7 - (int)local_70)" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)ppppppuVar7 - (int)local_70)" ( (binary_expression "(int)ppppppuVar7 - (int)local_70" (cast_expression "(int)ppppppuVar7" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)local_70" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) }) (else_clause "else {\n          puVar3 = (undefined *)((int)local_70 + (int)ppppppuVar7);\n        }" else (compound_statement "{\n          puVar3 = (undefined *)((int)local_70 + (int)ppppppuVar7);\n        }" { (expression_statement "puVar3 = (undefined *)((int)local_70 + (int)ppppppuVar7);" (assignment_expression "puVar3 = (undefined *)((int)local_70 + (int)ppppppuVar7)" identifier = (cast_expression "(undefined *)((int)local_70 + (int)ppppppuVar7)" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_70 + (int)ppppppuVar7)" ( (binary_expression "(int)local_70 + (int)ppppppuVar7" (cast_expression "(int)local_70" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)ppppppuVar7" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) }))) }))) (expression_statement "unaff_s4 = (undefined4 ******)((uint)ppppppuVar2 & 0x2000);" (assignment_expression "unaff_s4 = (undefined4 ******)((uint)ppppppuVar2 & 0x2000)" identifier = (cast_expression "(undefined4 ******)((uint)ppppppuVar2 & 0x2000)" ( (type_descriptor "undefined4 ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (parenthesized_expression "((uint)ppppppuVar2 & 0x2000)" ( (binary_expression "(uint)ppppppuVar2 & 0x2000" (cast_expression "(uint)ppppppuVar2" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )))) ;) (expression_statement "dVar34 = (double)(int)puVar8;" (assignment_expression "dVar34 = (double)(int)puVar8" identifier = (cast_expression "(double)(int)puVar8" ( (type_descriptor "double" primitive_type) ) (cast_expression "(int)puVar8" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (if_statement "if ((int)puVar8 < 0) {\n        dVar34 = dVar34 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n      }" if (parenthesized_expression "((int)puVar8 < 0)" ( (binary_expression "(int)puVar8 < 0" (cast_expression "(int)puVar8" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n        dVar34 = dVar34 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n      }" { (expression_statement "dVar34 = dVar34 + *(double *)(PTR_LAB_003a88e0 + 0x1418);" (assignment_expression "dVar34 = dVar34 + *(double *)(PTR_LAB_003a88e0 + 0x1418)" identifier = (binary_expression "dVar34 + *(double *)(PTR_LAB_003a88e0 + 0x1418)" identifier + (pointer_expression "*(double *)(PTR_LAB_003a88e0 + 0x1418)" * (cast_expression "(double *)(PTR_LAB_003a88e0 + 0x1418)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_003a88e0 + 0x1418)" ( (binary_expression "PTR_LAB_003a88e0 + 0x1418" identifier + number_literal) )))))) ;) })) (expression_statement "dVar35 = dVar34 / dVar35;" (assignment_expression "dVar35 = dVar34 / dVar35" identifier = (binary_expression "dVar34 / dVar35" identifier / identifier)) ;) (expression_statement "local_c8 = (double)(int)puVar3;" (assignment_expression "local_c8 = (double)(int)puVar3" identifier = (cast_expression "(double)(int)puVar3" ( (type_descriptor "double" primitive_type) ) (cast_expression "(int)puVar3" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (if_statement "if ((int)puVar3 < 0) {\n        local_c8 = local_c8 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n      }" if (parenthesized_expression "((int)puVar3 < 0)" ( (binary_expression "(int)puVar3 < 0" (cast_expression "(int)puVar3" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n        local_c8 = local_c8 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n      }" { (expression_statement "local_c8 = local_c8 + *(double *)(PTR_LAB_003a88e0 + 0x1418);" (assignment_expression "local_c8 = local_c8 + *(double *)(PTR_LAB_003a88e0 + 0x1418)" identifier = (binary_expression "local_c8 + *(double *)(PTR_LAB_003a88e0 + 0x1418)" identifier + (pointer_expression "*(double *)(PTR_LAB_003a88e0 + 0x1418)" * (cast_expression "(double *)(PTR_LAB_003a88e0 + 0x1418)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_003a88e0 + 0x1418)" ( (binary_expression "PTR_LAB_003a88e0 + 0x1418" identifier + number_literal) )))))) ;) })) (expression_statement "dVar25 = *(double *)(PTR_LAB_003a88e0 + 0x1438);" (assignment_expression "dVar25 = *(double *)(PTR_LAB_003a88e0 + 0x1438)" identifier = (pointer_expression "*(double *)(PTR_LAB_003a88e0 + 0x1438)" * (cast_expression "(double *)(PTR_LAB_003a88e0 + 0x1438)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_003a88e0 + 0x1438)" ( (binary_expression "PTR_LAB_003a88e0 + 0x1438" identifier + number_literal) ))))) ;) (expression_statement "local_a0 = dVar25;" (assignment_expression "local_a0 = dVar25" identifier = identifier) ;) (if_statement "if (dVar35 < dVar25) {\n        local_a0 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n        dVar35 = dVar25;\n      }" if (parenthesized_expression "(dVar35 < dVar25)" ( (binary_expression "dVar35 < dVar25" identifier < identifier) )) (compound_statement "{\n        local_a0 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n        dVar35 = dVar25;\n      }" { (expression_statement "local_a0 = *(double *)(PTR_LAB_003a88e0 + 0x1438);" (assignment_expression "local_a0 = *(double *)(PTR_LAB_003a88e0 + 0x1438)" identifier = (pointer_expression "*(double *)(PTR_LAB_003a88e0 + 0x1438)" * (cast_expression "(double *)(PTR_LAB_003a88e0 + 0x1438)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_003a88e0 + 0x1438)" ( (binary_expression "PTR_LAB_003a88e0 + 0x1438" identifier + number_literal) ))))) ;) (expression_statement "dVar35 = dVar25;" (assignment_expression "dVar35 = dVar25" identifier = identifier) ;) })) (if_statement "if (local_a0 <= local_c8 / dVar30) {\n        local_a0 = local_c8 / dVar30;\n      }" if (parenthesized_expression "(local_a0 <= local_c8 / dVar30)" ( (binary_expression "local_a0 <= local_c8 / dVar30" identifier <= (binary_expression "local_c8 / dVar30" identifier / identifier)) )) (compound_statement "{\n        local_a0 = local_c8 / dVar30;\n      }" { (expression_statement "local_a0 = local_c8 / dVar30;" (assignment_expression "local_a0 = local_c8 / dVar30" identifier = (binary_expression "local_c8 / dVar30" identifier / identifier)) ;) })) (expression_statement "dVar30 = 0.0;" (assignment_expression "dVar30 = 0.0" identifier = number_literal) ;) (expression_statement "unaff_s7 = local_70;" (assignment_expression "unaff_s7 = local_70" identifier = identifier) ;) (if_statement "if (0.0 < local_c8) {\n        dVar25 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4780);\n        dVar31 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4788);\n        if (unaff_s4 != (undefined4 ******)0x0) goto LAB_001c8b70;\nLAB_001c854c:\n        unaff_s7 = local_70;\n        dVar32 = dVar30;\n        if ((int)local_70 < 1) {\n          dVar32 = dVar30 - (double)(int)local_70;\n        }\n        dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n        dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n        if (dVar32 - dVar26 < dVar27 - dVar32) {\n          dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar23 = (code *)PTR_floor_003a9670;\n          if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d7c;\n        }\n        else {\n          if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d7c:\n            iVar15 = -0x7ffffdff;\n            goto joined_r0x001c8cbc;\n          }\n          dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar23 = (code *)PTR_ceil_003a8c20;\n        }\n        if (dVar26 < dVar32) {\n          iVar15 = 0x7ffffdff;\n        }\n        else {\n          dVar32 = (double)(*pcVar23)(dVar32);\n          iVar15 = (int)dVar32;\n        }\njoined_r0x001c8cbc:\n        dVar30 = dVar30 + local_a0;\n        if ((int)unaff_s7 < 0) {\n          dVar32 = 0.0;\n        }\n        else {\n          dVar32 = (double)(int)unaff_s7;\n        }\n        dVar32 = dVar30 + dVar32;\n        dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n        dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n        if (dVar32 - dVar26 < dVar27 - dVar32) {\n          if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8630;\n            goto LAB_001c8cec;\n          }\n        }\n        else if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;\n          goto LAB_001c8d18;\n        }\nLAB_001c8c88:\n        iVar14 = -0x7ffffdff;\nLAB_001c8644:\n        do {\n          unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n          param_2 = (undefined4 *******)((int)param_1[0x8d] + iVar15);\n          dVar32 = 0.0;\n          local_68 = unaff_s8;\n          local_60 = param_2;\n          if (0.0 < dVar34) {\n            dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n            unaff_s6 = &local_6c;\n            dVar27 = *(double *)((int)unaff_s3 + 0x4780);\n            do {\n              unaff_s7 = local_74;\n              if (unaff_s4 == (undefined4 ******)0x0) {\n                dVar33 = dVar32;\n                if ((int)local_74 < 1) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }\nLAB_001c8b04:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;\nLAB_001c8708:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8700:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar33 = 0.0;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8768:\n                  dVar33 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar33 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n              }\n              else {\n                dVar33 = dVar32;\n                if (0 < (int)local_74) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar27 <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar33 = 0.0;\n                }\n                else {\n                  if (dVar33 < dVar27) goto LAB_001c8b24;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (dVar26 < dVar33) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8850:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < dVar25) goto LAB_001c8a44;\n                  if (dVar33 <= dVar26) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar14 = 0x7ffffdff;\n                }\n                else if (dVar25 <= dVar33) {\n                  if (dVar33 <= dVar31) goto LAB_001c8abc;\n                  iVar14 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar14 = -0x7ffffdff;\n                }\n              }\n              unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n              param_2 = (undefined4 *******)((int)param_1[0x8c] + iVar15);\n              local_6c = unaff_s8;\n              local_64 = param_2;\n              iVar15 = (*(code *)PTR_CropImage_003a90b8)(param_1,unaff_s6,param_3);\n              if (iVar15 != 0) {\n                (*(code *)PTR_AppendImageToList_003a9880)(&local_80,iVar15);\n              }\n            } while (dVar32 < dVar34);\n          }\n          unaff_s5 = unaff_s3;\n          if (local_c8 <= dVar30) break;\n          if (unaff_s4 == (undefined4 ******)0x0) goto LAB_001c854c;\nLAB_001c8b70:\n          unaff_s7 = local_70;\n          dVar32 = dVar30;\n          if (0 < (int)local_70) {\n            dVar32 = dVar30 - (double)(int)local_70;\n          }\n          dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n          dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          if (dVar32 - dVar26 < dVar27 - dVar32) {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d8c;\n            pcVar23 = (code *)PTR_floor_003a9670;\n            if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8d50;\nLAB_001c8bd8:\n            dVar32 = (double)(*pcVar23)(dVar32);\n            iVar15 = (int)dVar32;\nLAB_001c8bf0:\n            dVar30 = dVar30 + local_a0;\n            if (-2 < (int)unaff_s7) goto LAB_001c8c00;\nLAB_001c8d6c:\n            dVar32 = (double)(int)unaff_s7;\n          }\n          else {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d8c:\n              iVar15 = -0x7ffffdff;\n              goto LAB_001c8bf0;\n            }\n            pcVar23 = (code *)PTR_ceil_003a8c20;\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8bd8;\nLAB_001c8d50:\n            iVar15 = 0x7ffffdff;\n            dVar30 = dVar30 + local_a0;\n            if ((int)unaff_s7 < -1) goto LAB_001c8d6c;\nLAB_001c8c00:\n            dVar32 = 0.0;\n          }\n          dVar32 = dVar30 + dVar32;\n          dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n          dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          if (dVar32 - dVar26 < dVar27 - dVar32) {\n            if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n              if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) {\nLAB_001c8cec:\n                iVar14 = 0x7ffffdff;\n              }\n              else {\nLAB_001c8630:\n                dVar32 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n                iVar14 = (int)dVar32;\n              }\n              goto LAB_001c8644;\n            }\n            goto LAB_001c8c88;\n          }\n          if (dVar32 < dVar25) goto LAB_001c8c88;\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;\nLAB_001c8d18:\n          dVar32 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          iVar14 = (int)dVar32;\n        } while( true );\n      }" if (parenthesized_expression "(0.0 < local_c8)" ( (binary_expression "0.0 < local_c8" number_literal < identifier) )) (compound_statement "{\n        dVar25 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4780);\n        dVar31 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4788);\n        if (unaff_s4 != (undefined4 ******)0x0) goto LAB_001c8b70;\nLAB_001c854c:\n        unaff_s7 = local_70;\n        dVar32 = dVar30;\n        if ((int)local_70 < 1) {\n          dVar32 = dVar30 - (double)(int)local_70;\n        }\n        dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n        dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n        if (dVar32 - dVar26 < dVar27 - dVar32) {\n          dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar23 = (code *)PTR_floor_003a9670;\n          if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d7c;\n        }\n        else {\n          if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d7c:\n            iVar15 = -0x7ffffdff;\n            goto joined_r0x001c8cbc;\n          }\n          dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar23 = (code *)PTR_ceil_003a8c20;\n        }\n        if (dVar26 < dVar32) {\n          iVar15 = 0x7ffffdff;\n        }\n        else {\n          dVar32 = (double)(*pcVar23)(dVar32);\n          iVar15 = (int)dVar32;\n        }\njoined_r0x001c8cbc:\n        dVar30 = dVar30 + local_a0;\n        if ((int)unaff_s7 < 0) {\n          dVar32 = 0.0;\n        }\n        else {\n          dVar32 = (double)(int)unaff_s7;\n        }\n        dVar32 = dVar30 + dVar32;\n        dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n        dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n        if (dVar32 - dVar26 < dVar27 - dVar32) {\n          if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8630;\n            goto LAB_001c8cec;\n          }\n        }\n        else if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;\n          goto LAB_001c8d18;\n        }\nLAB_001c8c88:\n        iVar14 = -0x7ffffdff;\nLAB_001c8644:\n        do {\n          unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n          param_2 = (undefined4 *******)((int)param_1[0x8d] + iVar15);\n          dVar32 = 0.0;\n          local_68 = unaff_s8;\n          local_60 = param_2;\n          if (0.0 < dVar34) {\n            dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n            unaff_s6 = &local_6c;\n            dVar27 = *(double *)((int)unaff_s3 + 0x4780);\n            do {\n              unaff_s7 = local_74;\n              if (unaff_s4 == (undefined4 ******)0x0) {\n                dVar33 = dVar32;\n                if ((int)local_74 < 1) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }\nLAB_001c8b04:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;\nLAB_001c8708:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8700:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar33 = 0.0;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8768:\n                  dVar33 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar33 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n              }\n              else {\n                dVar33 = dVar32;\n                if (0 < (int)local_74) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar27 <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar33 = 0.0;\n                }\n                else {\n                  if (dVar33 < dVar27) goto LAB_001c8b24;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (dVar26 < dVar33) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8850:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < dVar25) goto LAB_001c8a44;\n                  if (dVar33 <= dVar26) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar14 = 0x7ffffdff;\n                }\n                else if (dVar25 <= dVar33) {\n                  if (dVar33 <= dVar31) goto LAB_001c8abc;\n                  iVar14 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar14 = -0x7ffffdff;\n                }\n              }\n              unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n              param_2 = (undefined4 *******)((int)param_1[0x8c] + iVar15);\n              local_6c = unaff_s8;\n              local_64 = param_2;\n              iVar15 = (*(code *)PTR_CropImage_003a90b8)(param_1,unaff_s6,param_3);\n              if (iVar15 != 0) {\n                (*(code *)PTR_AppendImageToList_003a9880)(&local_80,iVar15);\n              }\n            } while (dVar32 < dVar34);\n          }\n          unaff_s5 = unaff_s3;\n          if (local_c8 <= dVar30) break;\n          if (unaff_s4 == (undefined4 ******)0x0) goto LAB_001c854c;\nLAB_001c8b70:\n          unaff_s7 = local_70;\n          dVar32 = dVar30;\n          if (0 < (int)local_70) {\n            dVar32 = dVar30 - (double)(int)local_70;\n          }\n          dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n          dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          if (dVar32 - dVar26 < dVar27 - dVar32) {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d8c;\n            pcVar23 = (code *)PTR_floor_003a9670;\n            if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8d50;\nLAB_001c8bd8:\n            dVar32 = (double)(*pcVar23)(dVar32);\n            iVar15 = (int)dVar32;\nLAB_001c8bf0:\n            dVar30 = dVar30 + local_a0;\n            if (-2 < (int)unaff_s7) goto LAB_001c8c00;\nLAB_001c8d6c:\n            dVar32 = (double)(int)unaff_s7;\n          }\n          else {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d8c:\n              iVar15 = -0x7ffffdff;\n              goto LAB_001c8bf0;\n            }\n            pcVar23 = (code *)PTR_ceil_003a8c20;\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8bd8;\nLAB_001c8d50:\n            iVar15 = 0x7ffffdff;\n            dVar30 = dVar30 + local_a0;\n            if ((int)unaff_s7 < -1) goto LAB_001c8d6c;\nLAB_001c8c00:\n            dVar32 = 0.0;\n          }\n          dVar32 = dVar30 + dVar32;\n          dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n          dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          if (dVar32 - dVar26 < dVar27 - dVar32) {\n            if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n              if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) {\nLAB_001c8cec:\n                iVar14 = 0x7ffffdff;\n              }\n              else {\nLAB_001c8630:\n                dVar32 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n                iVar14 = (int)dVar32;\n              }\n              goto LAB_001c8644;\n            }\n            goto LAB_001c8c88;\n          }\n          if (dVar32 < dVar25) goto LAB_001c8c88;\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;\nLAB_001c8d18:\n          dVar32 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          iVar14 = (int)dVar32;\n        } while( true );\n      }" { (expression_statement "dVar25 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4780);" (assignment_expression "dVar25 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4780)" identifier = (pointer_expression "*(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4780)" * (cast_expression "(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4780)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4780)" ( (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4780" identifier + number_literal) ))))) ;) (expression_statement "dVar31 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4788);" (assignment_expression "dVar31 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4788)" identifier = (pointer_expression "*(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4788)" * (cast_expression "(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4788)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4788)" ( (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4788" identifier + number_literal) ))))) ;) (if_statement "if (unaff_s4 != (undefined4 ******)0x0) goto LAB_001c8b70;" if (parenthesized_expression "(unaff_s4 != (undefined4 ******)0x0)" ( (binary_expression "unaff_s4 != (undefined4 ******)0x0" identifier != (cast_expression "(undefined4 ******)0x0" ( (type_descriptor "undefined4 ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (goto_statement "goto LAB_001c8b70;" goto statement_identifier ;)) (labeled_statement "LAB_001c854c:\n        unaff_s7 = local_70;" statement_identifier : (expression_statement "unaff_s7 = local_70;" (assignment_expression "unaff_s7 = local_70" identifier = identifier) ;)) (expression_statement "dVar32 = dVar30;" (assignment_expression "dVar32 = dVar30" identifier = identifier) ;) (if_statement "if ((int)local_70 < 1) {\n          dVar32 = dVar30 - (double)(int)local_70;\n        }" if (parenthesized_expression "((int)local_70 < 1)" ( (binary_expression "(int)local_70 < 1" (cast_expression "(int)local_70" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n          dVar32 = dVar30 - (double)(int)local_70;\n        }" { (expression_statement "dVar32 = dVar30 - (double)(int)local_70;" (assignment_expression "dVar32 = dVar30 - (double)(int)local_70" identifier = (binary_expression "dVar30 - (double)(int)local_70" identifier - (cast_expression "(double)(int)local_70" ( (type_descriptor "double" primitive_type) ) (cast_expression "(int)local_70" ( (type_descriptor "int" primitive_type) ) identifier)))) ;) })) (expression_statement "dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);" (assignment_expression "dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32)" identifier = (cast_expression "(double)(*(code *)PTR_floor_003a9670)(dVar32)" ( (type_descriptor "double" primitive_type) ) (call_expression "(*(code *)PTR_floor_003a9670)(dVar32)" (parenthesized_expression "(*(code *)PTR_floor_003a9670)" ( (pointer_expression "*(code *)PTR_floor_003a9670" * (cast_expression "(code *)PTR_floor_003a9670" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(dVar32)" ( identifier ))))) ;) (expression_statement "dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);" (assignment_expression "dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32)" identifier = (cast_expression "(double)(*(code *)PTR_ceil_003a8c20)(dVar32)" ( (type_descriptor "double" primitive_type) ) (call_expression "(*(code *)PTR_ceil_003a8c20)(dVar32)" (parenthesized_expression "(*(code *)PTR_ceil_003a8c20)" ( (pointer_expression "*(code *)PTR_ceil_003a8c20" * (cast_expression "(code *)PTR_ceil_003a8c20" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(dVar32)" ( identifier ))))) ;) (if_statement "if (dVar32 - dVar26 < dVar27 - dVar32) {\n          dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar23 = (code *)PTR_floor_003a9670;\n          if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d7c;\n        }\n        else {\n          if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d7c:\n            iVar15 = -0x7ffffdff;\n            goto joined_r0x001c8cbc;\n          }\n          dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar23 = (code *)PTR_ceil_003a8c20;\n        }" if (parenthesized_expression "(dVar32 - dVar26 < dVar27 - dVar32)" ( (binary_expression "dVar32 - dVar26 < dVar27 - dVar32" (binary_expression "dVar32 - dVar26" identifier - identifier) < (binary_expression "dVar27 - dVar32" identifier - identifier)) )) (compound_statement "{\n          dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar23 = (code *)PTR_floor_003a9670;\n          if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d7c;\n        }" { (expression_statement "dVar26 = *(double *)((int)unaff_s3 + 0x4788);" (assignment_expression "dVar26 = *(double *)((int)unaff_s3 + 0x4788)" identifier = (pointer_expression "*(double *)((int)unaff_s3 + 0x4788)" * (cast_expression "(double *)((int)unaff_s3 + 0x4788)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s3 + 0x4788)" ( (binary_expression "(int)unaff_s3 + 0x4788" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) ;) (expression_statement "pcVar23 = (code *)PTR_floor_003a9670;" (assignment_expression "pcVar23 = (code *)PTR_floor_003a9670" identifier = (cast_expression "(code *)PTR_floor_003a9670" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (if_statement "if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d7c;" if (parenthesized_expression "(dVar32 < *(double *)((int)unaff_s3 + 0x4780))" ( (binary_expression "dVar32 < *(double *)((int)unaff_s3 + 0x4780)" identifier < (pointer_expression "*(double *)((int)unaff_s3 + 0x4780)" * (cast_expression "(double *)((int)unaff_s3 + 0x4780)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s3 + 0x4780)" ( (binary_expression "(int)unaff_s3 + 0x4780" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) )) (goto_statement "goto LAB_001c8d7c;" goto statement_identifier ;)) }) (else_clause "else {\n          if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d7c:\n            iVar15 = -0x7ffffdff;\n            goto joined_r0x001c8cbc;\n          }\n          dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar23 = (code *)PTR_ceil_003a8c20;\n        }" else (compound_statement "{\n          if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d7c:\n            iVar15 = -0x7ffffdff;\n            goto joined_r0x001c8cbc;\n          }\n          dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar23 = (code *)PTR_ceil_003a8c20;\n        }" { (if_statement "if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d7c:\n            iVar15 = -0x7ffffdff;\n            goto joined_r0x001c8cbc;\n          }" if (parenthesized_expression "(dVar32 < *(double *)((int)unaff_s3 + 0x4780))" ( (binary_expression "dVar32 < *(double *)((int)unaff_s3 + 0x4780)" identifier < (pointer_expression "*(double *)((int)unaff_s3 + 0x4780)" * (cast_expression "(double *)((int)unaff_s3 + 0x4780)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s3 + 0x4780)" ( (binary_expression "(int)unaff_s3 + 0x4780" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) )) (compound_statement "{\nLAB_001c8d7c:\n            iVar15 = -0x7ffffdff;\n            goto joined_r0x001c8cbc;\n          }" { (labeled_statement "LAB_001c8d7c:\n            iVar15 = -0x7ffffdff;" statement_identifier : (expression_statement "iVar15 = -0x7ffffdff;" (assignment_expression "iVar15 = -0x7ffffdff" identifier = number_literal) ;)) (goto_statement "goto joined_r0x001c8cbc;" goto statement_identifier ;) })) (expression_statement "dVar26 = *(double *)((int)unaff_s3 + 0x4788);" (assignment_expression "dVar26 = *(double *)((int)unaff_s3 + 0x4788)" identifier = (pointer_expression "*(double *)((int)unaff_s3 + 0x4788)" * (cast_expression "(double *)((int)unaff_s3 + 0x4788)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s3 + 0x4788)" ( (binary_expression "(int)unaff_s3 + 0x4788" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) ;) (expression_statement "pcVar23 = (code *)PTR_ceil_003a8c20;" (assignment_expression "pcVar23 = (code *)PTR_ceil_003a8c20" identifier = (cast_expression "(code *)PTR_ceil_003a8c20" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) }))) (if_statement "if (dVar26 < dVar32) {\n          iVar15 = 0x7ffffdff;\n        }\n        else {\n          dVar32 = (double)(*pcVar23)(dVar32);\n          iVar15 = (int)dVar32;\n        }" if (parenthesized_expression "(dVar26 < dVar32)" ( (binary_expression "dVar26 < dVar32" identifier < identifier) )) (compound_statement "{\n          iVar15 = 0x7ffffdff;\n        }" { (expression_statement "iVar15 = 0x7ffffdff;" (assignment_expression "iVar15 = 0x7ffffdff" identifier = number_literal) ;) }) (else_clause "else {\n          dVar32 = (double)(*pcVar23)(dVar32);\n          iVar15 = (int)dVar32;\n        }" else (compound_statement "{\n          dVar32 = (double)(*pcVar23)(dVar32);\n          iVar15 = (int)dVar32;\n        }" { (expression_statement "dVar32 = (double)(*pcVar23)(dVar32);" (assignment_expression "dVar32 = (double)(*pcVar23)(dVar32)" identifier = (cast_expression "(double)(*pcVar23)(dVar32)" ( (type_descriptor "double" primitive_type) ) (call_expression "(*pcVar23)(dVar32)" (parenthesized_expression "(*pcVar23)" ( (pointer_expression "*pcVar23" * identifier) )) (argument_list "(dVar32)" ( identifier ))))) ;) (expression_statement "iVar15 = (int)dVar32;" (assignment_expression "iVar15 = (int)dVar32" identifier = (cast_expression "(int)dVar32" ( (type_descriptor "int" primitive_type) ) identifier)) ;) }))) (labeled_statement "joined_r0x001c8cbc:\n        dVar30 = dVar30 + local_a0;" statement_identifier : (expression_statement "dVar30 = dVar30 + local_a0;" (assignment_expression "dVar30 = dVar30 + local_a0" identifier = (binary_expression "dVar30 + local_a0" identifier + identifier)) ;)) (if_statement "if ((int)unaff_s7 < 0) {\n          dVar32 = 0.0;\n        }\n        else {\n          dVar32 = (double)(int)unaff_s7;\n        }" if (parenthesized_expression "((int)unaff_s7 < 0)" ( (binary_expression "(int)unaff_s7 < 0" (cast_expression "(int)unaff_s7" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n          dVar32 = 0.0;\n        }" { (expression_statement "dVar32 = 0.0;" (assignment_expression "dVar32 = 0.0" identifier = number_literal) ;) }) (else_clause "else {\n          dVar32 = (double)(int)unaff_s7;\n        }" else (compound_statement "{\n          dVar32 = (double)(int)unaff_s7;\n        }" { (expression_statement "dVar32 = (double)(int)unaff_s7;" (assignment_expression "dVar32 = (double)(int)unaff_s7" identifier = (cast_expression "(double)(int)unaff_s7" ( (type_descriptor "double" primitive_type) ) (cast_expression "(int)unaff_s7" ( (type_descriptor "int" primitive_type) ) identifier))) ;) }))) (expression_statement "dVar32 = dVar30 + dVar32;" (assignment_expression "dVar32 = dVar30 + dVar32" identifier = (binary_expression "dVar30 + dVar32" identifier + identifier)) ;) (expression_statement "dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);" (assignment_expression "dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32)" identifier = (cast_expression "(double)(*(code *)PTR_floor_003a9670)(dVar32)" ( (type_descriptor "double" primitive_type) ) (call_expression "(*(code *)PTR_floor_003a9670)(dVar32)" (parenthesized_expression "(*(code *)PTR_floor_003a9670)" ( (pointer_expression "*(code *)PTR_floor_003a9670" * (cast_expression "(code *)PTR_floor_003a9670" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(dVar32)" ( identifier ))))) ;) (expression_statement "dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);" (assignment_expression "dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32)" identifier = (cast_expression "(double)(*(code *)PTR_ceil_003a8c20)(dVar32)" ( (type_descriptor "double" primitive_type) ) (call_expression "(*(code *)PTR_ceil_003a8c20)(dVar32)" (parenthesized_expression "(*(code *)PTR_ceil_003a8c20)" ( (pointer_expression "*(code *)PTR_ceil_003a8c20" * (cast_expression "(code *)PTR_ceil_003a8c20" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(dVar32)" ( identifier ))))) ;) (if_statement "if (dVar32 - dVar26 < dVar27 - dVar32) {\n          if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8630;\n            goto LAB_001c8cec;\n          }\n        }\n        else if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;\n          goto LAB_001c8d18;\n        }" if (parenthesized_expression "(dVar32 - dVar26 < dVar27 - dVar32)" ( (binary_expression "dVar32 - dVar26 < dVar27 - dVar32" (binary_expression "dVar32 - dVar26" identifier - identifier) < (binary_expression "dVar27 - dVar32" identifier - identifier)) )) (compound_statement "{\n          if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8630;\n            goto LAB_001c8cec;\n          }\n        }" { (if_statement "if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8630;\n            goto LAB_001c8cec;\n          }" if (parenthesized_expression "(*(double *)((int)unaff_s3 + 0x4780) <= dVar32)" ( (binary_expression "*(double *)((int)unaff_s3 + 0x4780) <= dVar32" (pointer_expression "*(double *)((int)unaff_s3 + 0x4780)" * (cast_expression "(double *)((int)unaff_s3 + 0x4780)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s3 + 0x4780)" ( (binary_expression "(int)unaff_s3 + 0x4780" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) <= identifier) )) (compound_statement "{\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8630;\n            goto LAB_001c8cec;\n          }" { (if_statement "if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8630;" if (parenthesized_expression "(dVar32 <= *(double *)((int)unaff_s3 + 0x4788))" ( (binary_expression "dVar32 <= *(double *)((int)unaff_s3 + 0x4788)" identifier <= (pointer_expression "*(double *)((int)unaff_s3 + 0x4788)" * (cast_expression "(double *)((int)unaff_s3 + 0x4788)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s3 + 0x4788)" ( (binary_expression "(int)unaff_s3 + 0x4788" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) )) (goto_statement "goto LAB_001c8630;" goto statement_identifier ;)) (goto_statement "goto LAB_001c8cec;" goto statement_identifier ;) })) }) (else_clause "else if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;\n          goto LAB_001c8d18;\n        }" else (if_statement "if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;\n          goto LAB_001c8d18;\n        }" if (parenthesized_expression "(*(double *)((int)unaff_s3 + 0x4780) <= dVar32)" ( (binary_expression "*(double *)((int)unaff_s3 + 0x4780) <= dVar32" (pointer_expression "*(double *)((int)unaff_s3 + 0x4780)" * (cast_expression "(double *)((int)unaff_s3 + 0x4780)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s3 + 0x4780)" ( (binary_expression "(int)unaff_s3 + 0x4780" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) <= identifier) )) (compound_statement "{\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;\n          goto LAB_001c8d18;\n        }" { (if_statement "if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;" if (parenthesized_expression "(*(double *)((int)unaff_s3 + 0x4788) < dVar32)" ( (binary_expression "*(double *)((int)unaff_s3 + 0x4788) < dVar32" (pointer_expression "*(double *)((int)unaff_s3 + 0x4788)" * (cast_expression "(double *)((int)unaff_s3 + 0x4788)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s3 + 0x4788)" ( (binary_expression "(int)unaff_s3 + 0x4788" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) < identifier) )) (goto_statement "goto LAB_001c8cec;" goto statement_identifier ;)) (goto_statement "goto LAB_001c8d18;" goto statement_identifier ;) })))) (labeled_statement "LAB_001c8c88:\n        iVar14 = -0x7ffffdff;" statement_identifier : (expression_statement "iVar14 = -0x7ffffdff;" (assignment_expression "iVar14 = -0x7ffffdff" identifier = number_literal) ;)) (labeled_statement "LAB_001c8644:\n        do {\n          unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n          param_2 = (undefined4 *******)((int)param_1[0x8d] + iVar15);\n          dVar32 = 0.0;\n          local_68 = unaff_s8;\n          local_60 = param_2;\n          if (0.0 < dVar34) {\n            dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n            unaff_s6 = &local_6c;\n            dVar27 = *(double *)((int)unaff_s3 + 0x4780);\n            do {\n              unaff_s7 = local_74;\n              if (unaff_s4 == (undefined4 ******)0x0) {\n                dVar33 = dVar32;\n                if ((int)local_74 < 1) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }\nLAB_001c8b04:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;\nLAB_001c8708:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8700:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar33 = 0.0;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8768:\n                  dVar33 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar33 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n              }\n              else {\n                dVar33 = dVar32;\n                if (0 < (int)local_74) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar27 <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar33 = 0.0;\n                }\n                else {\n                  if (dVar33 < dVar27) goto LAB_001c8b24;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (dVar26 < dVar33) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8850:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < dVar25) goto LAB_001c8a44;\n                  if (dVar33 <= dVar26) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar14 = 0x7ffffdff;\n                }\n                else if (dVar25 <= dVar33) {\n                  if (dVar33 <= dVar31) goto LAB_001c8abc;\n                  iVar14 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar14 = -0x7ffffdff;\n                }\n              }\n              unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n              param_2 = (undefined4 *******)((int)param_1[0x8c] + iVar15);\n              local_6c = unaff_s8;\n              local_64 = param_2;\n              iVar15 = (*(code *)PTR_CropImage_003a90b8)(param_1,unaff_s6,param_3);\n              if (iVar15 != 0) {\n                (*(code *)PTR_AppendImageToList_003a9880)(&local_80,iVar15);\n              }\n            } while (dVar32 < dVar34);\n          }\n          unaff_s5 = unaff_s3;\n          if (local_c8 <= dVar30) break;\n          if (unaff_s4 == (undefined4 ******)0x0) goto LAB_001c854c;\nLAB_001c8b70:\n          unaff_s7 = local_70;\n          dVar32 = dVar30;\n          if (0 < (int)local_70) {\n            dVar32 = dVar30 - (double)(int)local_70;\n          }\n          dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n          dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          if (dVar32 - dVar26 < dVar27 - dVar32) {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d8c;\n            pcVar23 = (code *)PTR_floor_003a9670;\n            if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8d50;\nLAB_001c8bd8:\n            dVar32 = (double)(*pcVar23)(dVar32);\n            iVar15 = (int)dVar32;\nLAB_001c8bf0:\n            dVar30 = dVar30 + local_a0;\n            if (-2 < (int)unaff_s7) goto LAB_001c8c00;\nLAB_001c8d6c:\n            dVar32 = (double)(int)unaff_s7;\n          }\n          else {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d8c:\n              iVar15 = -0x7ffffdff;\n              goto LAB_001c8bf0;\n            }\n            pcVar23 = (code *)PTR_ceil_003a8c20;\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8bd8;\nLAB_001c8d50:\n            iVar15 = 0x7ffffdff;\n            dVar30 = dVar30 + local_a0;\n            if ((int)unaff_s7 < -1) goto LAB_001c8d6c;\nLAB_001c8c00:\n            dVar32 = 0.0;\n          }\n          dVar32 = dVar30 + dVar32;\n          dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n          dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          if (dVar32 - dVar26 < dVar27 - dVar32) {\n            if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n              if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) {\nLAB_001c8cec:\n                iVar14 = 0x7ffffdff;\n              }\n              else {\nLAB_001c8630:\n                dVar32 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n                iVar14 = (int)dVar32;\n              }\n              goto LAB_001c8644;\n            }\n            goto LAB_001c8c88;\n          }\n          if (dVar32 < dVar25) goto LAB_001c8c88;\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;\nLAB_001c8d18:\n          dVar32 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          iVar14 = (int)dVar32;\n        } while( true );" statement_identifier : (do_statement "do {\n          unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n          param_2 = (undefined4 *******)((int)param_1[0x8d] + iVar15);\n          dVar32 = 0.0;\n          local_68 = unaff_s8;\n          local_60 = param_2;\n          if (0.0 < dVar34) {\n            dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n            unaff_s6 = &local_6c;\n            dVar27 = *(double *)((int)unaff_s3 + 0x4780);\n            do {\n              unaff_s7 = local_74;\n              if (unaff_s4 == (undefined4 ******)0x0) {\n                dVar33 = dVar32;\n                if ((int)local_74 < 1) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }\nLAB_001c8b04:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;\nLAB_001c8708:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8700:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar33 = 0.0;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8768:\n                  dVar33 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar33 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n              }\n              else {\n                dVar33 = dVar32;\n                if (0 < (int)local_74) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar27 <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar33 = 0.0;\n                }\n                else {\n                  if (dVar33 < dVar27) goto LAB_001c8b24;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (dVar26 < dVar33) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8850:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < dVar25) goto LAB_001c8a44;\n                  if (dVar33 <= dVar26) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar14 = 0x7ffffdff;\n                }\n                else if (dVar25 <= dVar33) {\n                  if (dVar33 <= dVar31) goto LAB_001c8abc;\n                  iVar14 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar14 = -0x7ffffdff;\n                }\n              }\n              unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n              param_2 = (undefined4 *******)((int)param_1[0x8c] + iVar15);\n              local_6c = unaff_s8;\n              local_64 = param_2;\n              iVar15 = (*(code *)PTR_CropImage_003a90b8)(param_1,unaff_s6,param_3);\n              if (iVar15 != 0) {\n                (*(code *)PTR_AppendImageToList_003a9880)(&local_80,iVar15);\n              }\n            } while (dVar32 < dVar34);\n          }\n          unaff_s5 = unaff_s3;\n          if (local_c8 <= dVar30) break;\n          if (unaff_s4 == (undefined4 ******)0x0) goto LAB_001c854c;\nLAB_001c8b70:\n          unaff_s7 = local_70;\n          dVar32 = dVar30;\n          if (0 < (int)local_70) {\n            dVar32 = dVar30 - (double)(int)local_70;\n          }\n          dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n          dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          if (dVar32 - dVar26 < dVar27 - dVar32) {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d8c;\n            pcVar23 = (code *)PTR_floor_003a9670;\n            if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8d50;\nLAB_001c8bd8:\n            dVar32 = (double)(*pcVar23)(dVar32);\n            iVar15 = (int)dVar32;\nLAB_001c8bf0:\n            dVar30 = dVar30 + local_a0;\n            if (-2 < (int)unaff_s7) goto LAB_001c8c00;\nLAB_001c8d6c:\n            dVar32 = (double)(int)unaff_s7;\n          }\n          else {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d8c:\n              iVar15 = -0x7ffffdff;\n              goto LAB_001c8bf0;\n            }\n            pcVar23 = (code *)PTR_ceil_003a8c20;\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8bd8;\nLAB_001c8d50:\n            iVar15 = 0x7ffffdff;\n            dVar30 = dVar30 + local_a0;\n            if ((int)unaff_s7 < -1) goto LAB_001c8d6c;\nLAB_001c8c00:\n            dVar32 = 0.0;\n          }\n          dVar32 = dVar30 + dVar32;\n          dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n          dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          if (dVar32 - dVar26 < dVar27 - dVar32) {\n            if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n              if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) {\nLAB_001c8cec:\n                iVar14 = 0x7ffffdff;\n              }\n              else {\nLAB_001c8630:\n                dVar32 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n                iVar14 = (int)dVar32;\n              }\n              goto LAB_001c8644;\n            }\n            goto LAB_001c8c88;\n          }\n          if (dVar32 < dVar25) goto LAB_001c8c88;\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;\nLAB_001c8d18:\n          dVar32 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          iVar14 = (int)dVar32;\n        } while( true );" do (compound_statement "{\n          unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n          param_2 = (undefined4 *******)((int)param_1[0x8d] + iVar15);\n          dVar32 = 0.0;\n          local_68 = unaff_s8;\n          local_60 = param_2;\n          if (0.0 < dVar34) {\n            dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n            unaff_s6 = &local_6c;\n            dVar27 = *(double *)((int)unaff_s3 + 0x4780);\n            do {\n              unaff_s7 = local_74;\n              if (unaff_s4 == (undefined4 ******)0x0) {\n                dVar33 = dVar32;\n                if ((int)local_74 < 1) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }\nLAB_001c8b04:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;\nLAB_001c8708:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8700:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar33 = 0.0;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8768:\n                  dVar33 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar33 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n              }\n              else {\n                dVar33 = dVar32;\n                if (0 < (int)local_74) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar27 <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar33 = 0.0;\n                }\n                else {\n                  if (dVar33 < dVar27) goto LAB_001c8b24;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (dVar26 < dVar33) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8850:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < dVar25) goto LAB_001c8a44;\n                  if (dVar33 <= dVar26) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar14 = 0x7ffffdff;\n                }\n                else if (dVar25 <= dVar33) {\n                  if (dVar33 <= dVar31) goto LAB_001c8abc;\n                  iVar14 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar14 = -0x7ffffdff;\n                }\n              }\n              unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n              param_2 = (undefined4 *******)((int)param_1[0x8c] + iVar15);\n              local_6c = unaff_s8;\n              local_64 = param_2;\n              iVar15 = (*(code *)PTR_CropImage_003a90b8)(param_1,unaff_s6,param_3);\n              if (iVar15 != 0) {\n                (*(code *)PTR_AppendImageToList_003a9880)(&local_80,iVar15);\n              }\n            } while (dVar32 < dVar34);\n          }\n          unaff_s5 = unaff_s3;\n          if (local_c8 <= dVar30) break;\n          if (unaff_s4 == (undefined4 ******)0x0) goto LAB_001c854c;\nLAB_001c8b70:\n          unaff_s7 = local_70;\n          dVar32 = dVar30;\n          if (0 < (int)local_70) {\n            dVar32 = dVar30 - (double)(int)local_70;\n          }\n          dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n          dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          if (dVar32 - dVar26 < dVar27 - dVar32) {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d8c;\n            pcVar23 = (code *)PTR_floor_003a9670;\n            if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8d50;\nLAB_001c8bd8:\n            dVar32 = (double)(*pcVar23)(dVar32);\n            iVar15 = (int)dVar32;\nLAB_001c8bf0:\n            dVar30 = dVar30 + local_a0;\n            if (-2 < (int)unaff_s7) goto LAB_001c8c00;\nLAB_001c8d6c:\n            dVar32 = (double)(int)unaff_s7;\n          }\n          else {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d8c:\n              iVar15 = -0x7ffffdff;\n              goto LAB_001c8bf0;\n            }\n            pcVar23 = (code *)PTR_ceil_003a8c20;\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8bd8;\nLAB_001c8d50:\n            iVar15 = 0x7ffffdff;\n            dVar30 = dVar30 + local_a0;\n            if ((int)unaff_s7 < -1) goto LAB_001c8d6c;\nLAB_001c8c00:\n            dVar32 = 0.0;\n          }\n          dVar32 = dVar30 + dVar32;\n          dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n          dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          if (dVar32 - dVar26 < dVar27 - dVar32) {\n            if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n              if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) {\nLAB_001c8cec:\n                iVar14 = 0x7ffffdff;\n              }\n              else {\nLAB_001c8630:\n                dVar32 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n                iVar14 = (int)dVar32;\n              }\n              goto LAB_001c8644;\n            }\n            goto LAB_001c8c88;\n          }\n          if (dVar32 < dVar25) goto LAB_001c8c88;\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;\nLAB_001c8d18:\n          dVar32 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          iVar14 = (int)dVar32;\n        }" { (expression_statement "unaff_s8 = (undefined4 *******)(iVar14 - iVar15);" (assignment_expression "unaff_s8 = (undefined4 *******)(iVar14 - iVar15)" identifier = (cast_expression "(undefined4 *******)(iVar14 - iVar15)" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(iVar14 - iVar15)" ( (binary_expression "iVar14 - iVar15" identifier - identifier) )))) ;) (expression_statement "param_2 = (undefined4 *******)((int)param_1[0x8d] + iVar15);" (assignment_expression "param_2 = (undefined4 *******)((int)param_1[0x8d] + iVar15)" identifier = (cast_expression "(undefined4 *******)((int)param_1[0x8d] + iVar15)" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)param_1[0x8d] + iVar15)" ( (binary_expression "(int)param_1[0x8d] + iVar15" (cast_expression "(int)param_1[0x8d]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "param_1[0x8d]" identifier [ number_literal ])) + identifier) )))) ;) (expression_statement "dVar32 = 0.0;" (assignment_expression "dVar32 = 0.0" identifier = number_literal) ;) (expression_statement "local_68 = unaff_s8;" (assignment_expression "local_68 = unaff_s8" identifier = identifier) ;) (expression_statement "local_60 = param_2;" (assignment_expression "local_60 = param_2" identifier = identifier) ;) (if_statement "if (0.0 < dVar34) {\n            dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n            unaff_s6 = &local_6c;\n            dVar27 = *(double *)((int)unaff_s3 + 0x4780);\n            do {\n              unaff_s7 = local_74;\n              if (unaff_s4 == (undefined4 ******)0x0) {\n                dVar33 = dVar32;\n                if ((int)local_74 < 1) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }\nLAB_001c8b04:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;\nLAB_001c8708:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8700:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar33 = 0.0;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8768:\n                  dVar33 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar33 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n              }\n              else {\n                dVar33 = dVar32;\n                if (0 < (int)local_74) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar27 <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar33 = 0.0;\n                }\n                else {\n                  if (dVar33 < dVar27) goto LAB_001c8b24;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (dVar26 < dVar33) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8850:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < dVar25) goto LAB_001c8a44;\n                  if (dVar33 <= dVar26) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar14 = 0x7ffffdff;\n                }\n                else if (dVar25 <= dVar33) {\n                  if (dVar33 <= dVar31) goto LAB_001c8abc;\n                  iVar14 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar14 = -0x7ffffdff;\n                }\n              }\n              unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n              param_2 = (undefined4 *******)((int)param_1[0x8c] + iVar15);\n              local_6c = unaff_s8;\n              local_64 = param_2;\n              iVar15 = (*(code *)PTR_CropImage_003a90b8)(param_1,unaff_s6,param_3);\n              if (iVar15 != 0) {\n                (*(code *)PTR_AppendImageToList_003a9880)(&local_80,iVar15);\n              }\n            } while (dVar32 < dVar34);\n          }" if (parenthesized_expression "(0.0 < dVar34)" ( (binary_expression "0.0 < dVar34" number_literal < identifier) )) (compound_statement "{\n            dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n            unaff_s6 = &local_6c;\n            dVar27 = *(double *)((int)unaff_s3 + 0x4780);\n            do {\n              unaff_s7 = local_74;\n              if (unaff_s4 == (undefined4 ******)0x0) {\n                dVar33 = dVar32;\n                if ((int)local_74 < 1) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }\nLAB_001c8b04:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;\nLAB_001c8708:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8700:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar33 = 0.0;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8768:\n                  dVar33 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar33 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n              }\n              else {\n                dVar33 = dVar32;\n                if (0 < (int)local_74) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar27 <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar33 = 0.0;\n                }\n                else {\n                  if (dVar33 < dVar27) goto LAB_001c8b24;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (dVar26 < dVar33) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8850:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < dVar25) goto LAB_001c8a44;\n                  if (dVar33 <= dVar26) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar14 = 0x7ffffdff;\n                }\n                else if (dVar25 <= dVar33) {\n                  if (dVar33 <= dVar31) goto LAB_001c8abc;\n                  iVar14 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar14 = -0x7ffffdff;\n                }\n              }\n              unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n              param_2 = (undefined4 *******)((int)param_1[0x8c] + iVar15);\n              local_6c = unaff_s8;\n              local_64 = param_2;\n              iVar15 = (*(code *)PTR_CropImage_003a90b8)(param_1,unaff_s6,param_3);\n              if (iVar15 != 0) {\n                (*(code *)PTR_AppendImageToList_003a9880)(&local_80,iVar15);\n              }\n            } while (dVar32 < dVar34);\n          }" { (expression_statement "dVar26 = *(double *)((int)unaff_s3 + 0x4788);" (assignment_expression "dVar26 = *(double *)((int)unaff_s3 + 0x4788)" identifier = (pointer_expression "*(double *)((int)unaff_s3 + 0x4788)" * (cast_expression "(double *)((int)unaff_s3 + 0x4788)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s3 + 0x4788)" ( (binary_expression "(int)unaff_s3 + 0x4788" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) ;) (expression_statement "unaff_s6 = &local_6c;" (assignment_expression "unaff_s6 = &local_6c" identifier = (pointer_expression "&local_6c" & identifier)) ;) (expression_statement "dVar27 = *(double *)((int)unaff_s3 + 0x4780);" (assignment_expression "dVar27 = *(double *)((int)unaff_s3 + 0x4780)" identifier = (pointer_expression "*(double *)((int)unaff_s3 + 0x4780)" * (cast_expression "(double *)((int)unaff_s3 + 0x4780)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s3 + 0x4780)" ( (binary_expression "(int)unaff_s3 + 0x4780" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) ;) (do_statement "do {\n              unaff_s7 = local_74;\n              if (unaff_s4 == (undefined4 ******)0x0) {\n                dVar33 = dVar32;\n                if ((int)local_74 < 1) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }\nLAB_001c8b04:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;\nLAB_001c8708:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8700:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar33 = 0.0;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8768:\n                  dVar33 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar33 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n              }\n              else {\n                dVar33 = dVar32;\n                if (0 < (int)local_74) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar27 <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar33 = 0.0;\n                }\n                else {\n                  if (dVar33 < dVar27) goto LAB_001c8b24;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (dVar26 < dVar33) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8850:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < dVar25) goto LAB_001c8a44;\n                  if (dVar33 <= dVar26) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar14 = 0x7ffffdff;\n                }\n                else if (dVar25 <= dVar33) {\n                  if (dVar33 <= dVar31) goto LAB_001c8abc;\n                  iVar14 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar14 = -0x7ffffdff;\n                }\n              }\n              unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n              param_2 = (undefined4 *******)((int)param_1[0x8c] + iVar15);\n              local_6c = unaff_s8;\n              local_64 = param_2;\n              iVar15 = (*(code *)PTR_CropImage_003a90b8)(param_1,unaff_s6,param_3);\n              if (iVar15 != 0) {\n                (*(code *)PTR_AppendImageToList_003a9880)(&local_80,iVar15);\n              }\n            } while (dVar32 < dVar34);" do (compound_statement "{\n              unaff_s7 = local_74;\n              if (unaff_s4 == (undefined4 ******)0x0) {\n                dVar33 = dVar32;\n                if ((int)local_74 < 1) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }\nLAB_001c8b04:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;\nLAB_001c8708:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8700:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar33 = 0.0;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8768:\n                  dVar33 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar33 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n              }\n              else {\n                dVar33 = dVar32;\n                if (0 < (int)local_74) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar27 <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar33 = 0.0;\n                }\n                else {\n                  if (dVar33 < dVar27) goto LAB_001c8b24;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (dVar26 < dVar33) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8850:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < dVar25) goto LAB_001c8a44;\n                  if (dVar33 <= dVar26) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar14 = 0x7ffffdff;\n                }\n                else if (dVar25 <= dVar33) {\n                  if (dVar33 <= dVar31) goto LAB_001c8abc;\n                  iVar14 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar14 = -0x7ffffdff;\n                }\n              }\n              unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n              param_2 = (undefined4 *******)((int)param_1[0x8c] + iVar15);\n              local_6c = unaff_s8;\n              local_64 = param_2;\n              iVar15 = (*(code *)PTR_CropImage_003a90b8)(param_1,unaff_s6,param_3);\n              if (iVar15 != 0) {\n                (*(code *)PTR_AppendImageToList_003a9880)(&local_80,iVar15);\n              }\n            }" { (expression_statement "unaff_s7 = local_74;" (assignment_expression "unaff_s7 = local_74" identifier = identifier) ;) (if_statement "if (unaff_s4 == (undefined4 ******)0x0) {\n                dVar33 = dVar32;\n                if ((int)local_74 < 1) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }\nLAB_001c8b04:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;\nLAB_001c8708:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8700:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar33 = 0.0;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8768:\n                  dVar33 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar33 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n              }\n              else {\n                dVar33 = dVar32;\n                if (0 < (int)local_74) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar27 <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar33 = 0.0;\n                }\n                else {\n                  if (dVar33 < dVar27) goto LAB_001c8b24;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (dVar26 < dVar33) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8850:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < dVar25) goto LAB_001c8a44;\n                  if (dVar33 <= dVar26) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar14 = 0x7ffffdff;\n                }\n                else if (dVar25 <= dVar33) {\n                  if (dVar33 <= dVar31) goto LAB_001c8abc;\n                  iVar14 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar14 = -0x7ffffdff;\n                }\n              }" if (parenthesized_expression "(unaff_s4 == (undefined4 ******)0x0)" ( (binary_expression "unaff_s4 == (undefined4 ******)0x0" identifier == (cast_expression "(undefined4 ******)0x0" ( (type_descriptor "undefined4 ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n                dVar33 = dVar32;\n                if ((int)local_74 < 1) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }\nLAB_001c8b04:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;\nLAB_001c8708:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8700:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar33 = 0.0;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8768:\n                  dVar33 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar33 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n              }" { (expression_statement "dVar33 = dVar32;" (assignment_expression "dVar33 = dVar32" identifier = identifier) ;) (if_statement "if ((int)local_74 < 1) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }" if (parenthesized_expression "((int)local_74 < 1)" ( (binary_expression "(int)local_74 < 1" (cast_expression "(int)local_74" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }" { (expression_statement "dVar33 = dVar32 - (double)(int)local_74;" (assignment_expression "dVar33 = dVar32 - (double)(int)local_74" identifier = (binary_expression "dVar32 - (double)(int)local_74" identifier - (cast_expression "(double)(int)local_74" ( (type_descriptor "double" primitive_type) ) (cast_expression "(int)local_74" ( (type_descriptor "int" primitive_type) ) identifier)))) ;) })) (expression_statement "dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);" (assignment_expression "dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33)" identifier = (cast_expression "(double)(*(code *)PTR_floor_003a9670)(dVar33)" ( (type_descriptor "double" primitive_type) ) (call_expression "(*(code *)PTR_floor_003a9670)(dVar33)" (parenthesized_expression "(*(code *)PTR_floor_003a9670)" ( (pointer_expression "*(code *)PTR_floor_003a9670" * (cast_expression "(code *)PTR_floor_003a9670" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(dVar33)" ( identifier ))))) ;) (expression_statement "dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);" (assignment_expression "dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33)" identifier = (cast_expression "(double)(*(code *)PTR_ceil_003a8c20)(dVar33)" ( (type_descriptor "double" primitive_type) ) (call_expression "(*(code *)PTR_ceil_003a8c20)(dVar33)" (parenthesized_expression "(*(code *)PTR_ceil_003a8c20)" ( (pointer_expression "*(code *)PTR_ceil_003a8c20" * (cast_expression "(code *)PTR_ceil_003a8c20" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(dVar33)" ( identifier ))))) ;) (if_statement "if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }\nLAB_001c8b04:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;\nLAB_001c8708:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8700:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar33 = 0.0;\n                }" if (parenthesized_expression "(dVar33 - dVar28 < dVar29 - dVar33)" ( (binary_expression "dVar33 - dVar28 < dVar29 - dVar33" (binary_expression "dVar33 - dVar28" identifier - identifier) < (binary_expression "dVar29 - dVar33" identifier - identifier)) )) (compound_statement "{\n                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }\nLAB_001c8b04:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;\nLAB_001c8708:\n                  dVar33 = (double)(int)unaff_s7;\n                }" { (if_statement "if (*(double *)((int)unaff_s3 + 0x4780) <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }" if (parenthesized_expression "(*(double *)((int)unaff_s3 + 0x4780) <= dVar33)" ( (binary_expression "*(double *)((int)unaff_s3 + 0x4780) <= dVar33" (pointer_expression "*(double *)((int)unaff_s3 + 0x4780)" * (cast_expression "(double *)((int)unaff_s3 + 0x4780)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s3 + 0x4780)" ( (binary_expression "(int)unaff_s3 + 0x4780" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) <= identifier) )) (compound_statement "{\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }" { (expression_statement "pcVar23 = (code *)PTR_floor_003a9670;" (assignment_expression "pcVar23 = (code *)PTR_floor_003a9670" identifier = (cast_expression "(code *)PTR_floor_003a9670" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (if_statement "if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;" if (parenthesized_expression "(dVar33 <= *(double *)((int)unaff_s3 + 0x4788))" ( (binary_expression "dVar33 <= *(double *)((int)unaff_s3 + 0x4788)" identifier <= (pointer_expression "*(double *)((int)unaff_s3 + 0x4788)" * (cast_expression "(double *)((int)unaff_s3 + 0x4788)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s3 + 0x4788)" ( (binary_expression "(int)unaff_s3 + 0x4788" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) )) (goto_statement "goto LAB_001c86e8;" goto statement_identifier ;)) (labeled_statement "LAB_001c8c78:\n                    iVar15 = 0x7ffffdff;" statement_identifier : (expression_statement "iVar15 = 0x7ffffdff;" (assignment_expression "iVar15 = 0x7ffffdff" identifier = number_literal) ;)) (goto_statement "goto LAB_001c8700;" goto statement_identifier ;) })) (labeled_statement "LAB_001c8b04:\n                  dVar32 = dVar32 + dVar35;" statement_identifier : (expression_statement "dVar32 = dVar32 + dVar35;" (assignment_expression "dVar32 = dVar32 + dVar35" identifier = (binary_expression "dVar32 + dVar35" identifier + identifier)) ;)) (expression_statement "iVar15 = -0x7ffffdff;" (assignment_expression "iVar15 = -0x7ffffdff" identifier = number_literal) ;) (if_statement "if ((int)unaff_s7 < 0) goto LAB_001c8b14;" if (parenthesized_expression "((int)unaff_s7 < 0)" ( (binary_expression "(int)unaff_s7 < 0" (cast_expression "(int)unaff_s7" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (goto_statement "goto LAB_001c8b14;" goto statement_identifier ;)) (labeled_statement "LAB_001c8708:\n                  dVar33 = (double)(int)unaff_s7;" statement_identifier : (expression_statement "dVar33 = (double)(int)unaff_s7;" (assignment_expression "dVar33 = (double)(int)unaff_s7" identifier = (cast_expression "(double)(int)unaff_s7" ( (type_descriptor "double" primitive_type) ) (cast_expression "(int)unaff_s7" ( (type_descriptor "int" primitive_type) ) identifier))) ;)) }) (else_clause "else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8700:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar33 = 0.0;\n                }" else (compound_statement "{\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8700:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar33 = 0.0;\n                }" { (if_statement "if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;" if (parenthesized_expression "(dVar33 < *(double *)((int)unaff_s3 + 0x4780))" ( (binary_expression "dVar33 < *(double *)((int)unaff_s3 + 0x4780)" identifier < (pointer_expression "*(double *)((int)unaff_s3 + 0x4780)" * (cast_expression "(double *)((int)unaff_s3 + 0x4780)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s3 + 0x4780)" ( (binary_expression "(int)unaff_s3 + 0x4780" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) )) (goto_statement "goto LAB_001c8b04;" goto statement_identifier ;)) (expression_statement "pcVar23 = (code *)PTR_ceil_003a8c20;" (assignment_expression "pcVar23 = (code *)PTR_ceil_003a8c20" identifier = (cast_expression "(code *)PTR_ceil_003a8c20" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (if_statement "if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c8c78;" if (parenthesized_expression "(*(double *)((int)unaff_s3 + 0x4788) < dVar33)" ( (binary_expression "*(double *)((int)unaff_s3 + 0x4788) < dVar33" (pointer_expression "*(double *)((int)unaff_s3 + 0x4788)" * (cast_expression "(double *)((int)unaff_s3 + 0x4788)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s3 + 0x4788)" ( (binary_expression "(int)unaff_s3 + 0x4788" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) < identifier) )) (goto_statement "goto LAB_001c8c78;" goto statement_identifier ;)) (labeled_statement "LAB_001c86e8:\n                  dVar33 = (double)(*pcVar23)(dVar33);" statement_identifier : (expression_statement "dVar33 = (double)(*pcVar23)(dVar33);" (assignment_expression "dVar33 = (double)(*pcVar23)(dVar33)" identifier = (cast_expression "(double)(*pcVar23)(dVar33)" ( (type_descriptor "double" primitive_type) ) (call_expression "(*pcVar23)(dVar33)" (parenthesized_expression "(*pcVar23)" ( (pointer_expression "*pcVar23" * identifier) )) (argument_list "(dVar33)" ( identifier ))))) ;)) (expression_statement "iVar15 = (int)dVar33;" (assignment_expression "iVar15 = (int)dVar33" identifier = (cast_expression "(int)dVar33" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (labeled_statement "LAB_001c8700:\n                  dVar32 = dVar32 + dVar35;" statement_identifier : (expression_statement "dVar32 = dVar32 + dVar35;" (assignment_expression "dVar32 = dVar32 + dVar35" identifier = (binary_expression "dVar32 + dVar35" identifier + identifier)) ;)) (if_statement "if (-1 < (int)unaff_s7) goto LAB_001c8708;" if (parenthesized_expression "(-1 < (int)unaff_s7)" ( (binary_expression "-1 < (int)unaff_s7" number_literal < (cast_expression "(int)unaff_s7" ( (type_descriptor "int" primitive_type) ) identifier)) )) (goto_statement "goto LAB_001c8708;" goto statement_identifier ;)) (labeled_statement "LAB_001c8b14:\n                  dVar33 = 0.0;" statement_identifier : (expression_statement "dVar33 = 0.0;" (assignment_expression "dVar33 = 0.0" identifier = number_literal) ;)) }))) (expression_statement "dVar33 = dVar32 + dVar33;" (assignment_expression "dVar33 = dVar32 + dVar33" identifier = (binary_expression "dVar32 + dVar33" identifier + identifier)) ;) (expression_statement "dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);" (assignment_expression "dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33)" identifier = (cast_expression "(double)(*(code *)PTR_floor_003a9670)(dVar33)" ( (type_descriptor "double" primitive_type) ) (call_expression "(*(code *)PTR_floor_003a9670)(dVar33)" (parenthesized_expression "(*(code *)PTR_floor_003a9670)" ( (pointer_expression "*(code *)PTR_floor_003a9670" * (cast_expression "(code *)PTR_floor_003a9670" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(dVar33)" ( identifier ))))) ;) (expression_statement "dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);" (assignment_expression "dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33)" identifier = (cast_expression "(double)(*(code *)PTR_ceil_003a8c20)(dVar33)" ( (type_descriptor "double" primitive_type) ) (call_expression "(*(code *)PTR_ceil_003a8c20)(dVar33)" (parenthesized_expression "(*(code *)PTR_ceil_003a8c20)" ( (pointer_expression "*(code *)PTR_ceil_003a8c20" * (cast_expression "(code *)PTR_ceil_003a8c20" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(dVar33)" ( identifier ))))) ;) (if_statement "if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8768:\n                  dVar33 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar33 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                  iVar14 = (int)dVar33;\n                }" if (parenthesized_expression "(dVar33 - dVar28 < dVar29 - dVar33)" ( (binary_expression "dVar33 - dVar28 < dVar29 - dVar33" (binary_expression "dVar33 - dVar28" identifier - identifier) < (binary_expression "dVar29 - dVar33" identifier - identifier)) )) (compound_statement "{\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8768:\n                  dVar33 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                  iVar14 = (int)dVar33;\n                }" { (if_statement "if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;" if (parenthesized_expression "(dVar33 < *(double *)((int)unaff_s3 + 0x4780))" ( (binary_expression "dVar33 < *(double *)((int)unaff_s3 + 0x4780)" identifier < (pointer_expression "*(double *)((int)unaff_s3 + 0x4780)" * (cast_expression "(double *)((int)unaff_s3 + 0x4780)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s3 + 0x4780)" ( (binary_expression "(int)unaff_s3 + 0x4780" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) )) (goto_statement "goto LAB_001c8a44;" goto statement_identifier ;)) (if_statement "if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;" if (parenthesized_expression "(*(double *)((int)unaff_s3 + 0x4788) < dVar33)" ( (binary_expression "*(double *)((int)unaff_s3 + 0x4788) < dVar33" (pointer_expression "*(double *)((int)unaff_s3 + 0x4788)" * (cast_expression "(double *)((int)unaff_s3 + 0x4788)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s3 + 0x4788)" ( (binary_expression "(int)unaff_s3 + 0x4788" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) < identifier) )) (goto_statement "goto LAB_001c88b8;" goto statement_identifier ;)) (labeled_statement "LAB_001c8768:\n                  dVar33 = (double)(*(code *)PTR_floor_003a9670)(dVar33);" statement_identifier : (expression_statement "dVar33 = (double)(*(code *)PTR_floor_003a9670)(dVar33);" (assignment_expression "dVar33 = (double)(*(code *)PTR_floor_003a9670)(dVar33)" identifier = (cast_expression "(double)(*(code *)PTR_floor_003a9670)(dVar33)" ( (type_descriptor "double" primitive_type) ) (call_expression "(*(code *)PTR_floor_003a9670)(dVar33)" (parenthesized_expression "(*(code *)PTR_floor_003a9670)" ( (pointer_expression "*(code *)PTR_floor_003a9670" * (cast_expression "(code *)PTR_floor_003a9670" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(dVar33)" ( identifier ))))) ;)) (expression_statement "iVar14 = (int)dVar33;" (assignment_expression "iVar14 = (int)dVar33" identifier = (cast_expression "(int)dVar33" ( (type_descriptor "int" primitive_type) ) identifier)) ;) }) (else_clause "else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar33 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                  iVar14 = (int)dVar33;\n                }" else (compound_statement "{\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar33 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                  iVar14 = (int)dVar33;\n                }" { (if_statement "if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;" if (parenthesized_expression "(dVar33 < *(double *)((int)unaff_s3 + 0x4780))" ( (binary_expression "dVar33 < *(double *)((int)unaff_s3 + 0x4780)" identifier < (pointer_expression "*(double *)((int)unaff_s3 + 0x4780)" * (cast_expression "(double *)((int)unaff_s3 + 0x4780)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s3 + 0x4780)" ( (binary_expression "(int)unaff_s3 + 0x4780" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) )) (goto_statement "goto LAB_001c8a44;" goto statement_identifier ;)) (if_statement "if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;" if (parenthesized_expression "(*(double *)((int)unaff_s3 + 0x4788) < dVar33)" ( (binary_expression "*(double *)((int)unaff_s3 + 0x4788) < dVar33" (pointer_expression "*(double *)((int)unaff_s3 + 0x4788)" * (cast_expression "(double *)((int)unaff_s3 + 0x4788)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s3 + 0x4788)" ( (binary_expression "(int)unaff_s3 + 0x4788" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) < identifier) )) (goto_statement "goto LAB_001c88b8;" goto statement_identifier ;)) (labeled_statement "LAB_001c8abc:\n                  dVar33 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);" statement_identifier : (expression_statement "dVar33 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);" (assignment_expression "dVar33 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33)" identifier = (cast_expression "(double)(*(code *)PTR_ceil_003a8c20)(dVar33)" ( (type_descriptor "double" primitive_type) ) (call_expression "(*(code *)PTR_ceil_003a8c20)(dVar33)" (parenthesized_expression "(*(code *)PTR_ceil_003a8c20)" ( (pointer_expression "*(code *)PTR_ceil_003a8c20" * (cast_expression "(code *)PTR_ceil_003a8c20" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(dVar33)" ( identifier ))))) ;)) (expression_statement "iVar14 = (int)dVar33;" (assignment_expression "iVar14 = (int)dVar33" identifier = (cast_expression "(int)dVar33" ( (type_descriptor "int" primitive_type) ) identifier)) ;) }))) }) (else_clause "else {\n                dVar33 = dVar32;\n                if (0 < (int)local_74) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar27 <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar33 = 0.0;\n                }\n                else {\n                  if (dVar33 < dVar27) goto LAB_001c8b24;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (dVar26 < dVar33) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8850:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < dVar25) goto LAB_001c8a44;\n                  if (dVar33 <= dVar26) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar14 = 0x7ffffdff;\n                }\n                else if (dVar25 <= dVar33) {\n                  if (dVar33 <= dVar31) goto LAB_001c8abc;\n                  iVar14 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar14 = -0x7ffffdff;\n                }\n              }" else (compound_statement "{\n                dVar33 = dVar32;\n                if (0 < (int)local_74) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar27 <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar33 = 0.0;\n                }\n                else {\n                  if (dVar33 < dVar27) goto LAB_001c8b24;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (dVar26 < dVar33) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8850:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < dVar25) goto LAB_001c8a44;\n                  if (dVar33 <= dVar26) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar14 = 0x7ffffdff;\n                }\n                else if (dVar25 <= dVar33) {\n                  if (dVar33 <= dVar31) goto LAB_001c8abc;\n                  iVar14 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar14 = -0x7ffffdff;\n                }\n              }" { (expression_statement "dVar33 = dVar32;" (assignment_expression "dVar33 = dVar32" identifier = identifier) ;) (if_statement "if (0 < (int)local_74) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }" if (parenthesized_expression "(0 < (int)local_74)" ( (binary_expression "0 < (int)local_74" number_literal < (cast_expression "(int)local_74" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }" { (expression_statement "dVar33 = dVar32 - (double)(int)local_74;" (assignment_expression "dVar33 = dVar32 - (double)(int)local_74" identifier = (binary_expression "dVar32 - (double)(int)local_74" identifier - (cast_expression "(double)(int)local_74" ( (type_descriptor "double" primitive_type) ) (cast_expression "(int)local_74" ( (type_descriptor "int" primitive_type) ) identifier)))) ;) })) (expression_statement "dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);" (assignment_expression "dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33)" identifier = (cast_expression "(double)(*(code *)PTR_floor_003a9670)(dVar33)" ( (type_descriptor "double" primitive_type) ) (call_expression "(*(code *)PTR_floor_003a9670)(dVar33)" (parenthesized_expression "(*(code *)PTR_floor_003a9670)" ( (pointer_expression "*(code *)PTR_floor_003a9670" * (cast_expression "(code *)PTR_floor_003a9670" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(dVar33)" ( identifier ))))) ;) (expression_statement "dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);" (assignment_expression "dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33)" identifier = (cast_expression "(double)(*(code *)PTR_ceil_003a8c20)(dVar33)" ( (type_descriptor "double" primitive_type) ) (call_expression "(*(code *)PTR_ceil_003a8c20)(dVar33)" (parenthesized_expression "(*(code *)PTR_ceil_003a8c20)" ( (pointer_expression "*(code *)PTR_ceil_003a8c20" * (cast_expression "(code *)PTR_ceil_003a8c20" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(dVar33)" ( identifier ))))) ;) (if_statement "if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar27 <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar33 = 0.0;\n                }\n                else {\n                  if (dVar33 < dVar27) goto LAB_001c8b24;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (dVar26 < dVar33) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8850:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar33 = (double)(int)unaff_s7;\n                }" if (parenthesized_expression "(dVar33 - dVar28 < dVar29 - dVar33)" ( (binary_expression "dVar33 - dVar28 < dVar29 - dVar33" (binary_expression "dVar33 - dVar28" identifier - identifier) < (binary_expression "dVar29 - dVar33" identifier - identifier)) )) (compound_statement "{\n                  if (dVar27 <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar33 = 0.0;\n                }" { (if_statement "if (dVar27 <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }" if (parenthesized_expression "(dVar27 <= dVar33)" ( (binary_expression "dVar27 <= dVar33" identifier <= identifier) )) (compound_statement "{\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }" { (expression_statement "pcVar23 = (code *)PTR_floor_003a9670;" (assignment_expression "pcVar23 = (code *)PTR_floor_003a9670" identifier = (cast_expression "(code *)PTR_floor_003a9670" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (if_statement "if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;" if (parenthesized_expression "(dVar33 <= *(double *)((int)unaff_s3 + 0x4788))" ( (binary_expression "dVar33 <= *(double *)((int)unaff_s3 + 0x4788)" identifier <= (pointer_expression "*(double *)((int)unaff_s3 + 0x4788)" * (cast_expression "(double *)((int)unaff_s3 + 0x4788)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s3 + 0x4788)" ( (binary_expression "(int)unaff_s3 + 0x4788" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) )) (goto_statement "goto LAB_001c8838;" goto statement_identifier ;)) (labeled_statement "LAB_001c8c68:\n                    iVar15 = 0x7ffffdff;" statement_identifier : (expression_statement "iVar15 = 0x7ffffdff;" (assignment_expression "iVar15 = 0x7ffffdff" identifier = number_literal) ;)) (goto_statement "goto LAB_001c8850;" goto statement_identifier ;) })) (labeled_statement "LAB_001c8b24:\n                  dVar32 = dVar32 + dVar35;" statement_identifier : (expression_statement "dVar32 = dVar32 + dVar35;" (assignment_expression "dVar32 = dVar32 + dVar35" identifier = (binary_expression "dVar32 + dVar35" identifier + identifier)) ;)) (expression_statement "iVar15 = -0x7ffffdff;" (assignment_expression "iVar15 = -0x7ffffdff" identifier = number_literal) ;) (if_statement "if ((int)unaff_s7 < 0) goto LAB_001c8b34;" if (parenthesized_expression "((int)unaff_s7 < 0)" ( (binary_expression "(int)unaff_s7 < 0" (cast_expression "(int)unaff_s7" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (goto_statement "goto LAB_001c8b34;" goto statement_identifier ;)) (labeled_statement "LAB_001c8858:\n                  dVar33 = 0.0;" statement_identifier : (expression_statement "dVar33 = 0.0;" (assignment_expression "dVar33 = 0.0" identifier = number_literal) ;)) }) (else_clause "else {\n                  if (dVar33 < dVar27) goto LAB_001c8b24;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (dVar26 < dVar33) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8850:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar33 = (double)(int)unaff_s7;\n                }" else (compound_statement "{\n                  if (dVar33 < dVar27) goto LAB_001c8b24;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (dVar26 < dVar33) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8850:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar33 = (double)(int)unaff_s7;\n                }" { (if_statement "if (dVar33 < dVar27) goto LAB_001c8b24;" if (parenthesized_expression "(dVar33 < dVar27)" ( (binary_expression "dVar33 < dVar27" identifier < identifier) )) (goto_statement "goto LAB_001c8b24;" goto statement_identifier ;)) (expression_statement "pcVar23 = (code *)PTR_ceil_003a8c20;" (assignment_expression "pcVar23 = (code *)PTR_ceil_003a8c20" identifier = (cast_expression "(code *)PTR_ceil_003a8c20" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (if_statement "if (dVar26 < dVar33) goto LAB_001c8c68;" if (parenthesized_expression "(dVar26 < dVar33)" ( (binary_expression "dVar26 < dVar33" identifier < identifier) )) (goto_statement "goto LAB_001c8c68;" goto statement_identifier ;)) (labeled_statement "LAB_001c8838:\n                  dVar33 = (double)(*pcVar23)(dVar33);" statement_identifier : (expression_statement "dVar33 = (double)(*pcVar23)(dVar33);" (assignment_expression "dVar33 = (double)(*pcVar23)(dVar33)" identifier = (cast_expression "(double)(*pcVar23)(dVar33)" ( (type_descriptor "double" primitive_type) ) (call_expression "(*pcVar23)(dVar33)" (parenthesized_expression "(*pcVar23)" ( (pointer_expression "*pcVar23" * identifier) )) (argument_list "(dVar33)" ( identifier ))))) ;)) (expression_statement "iVar15 = (int)dVar33;" (assignment_expression "iVar15 = (int)dVar33" identifier = (cast_expression "(int)dVar33" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (labeled_statement "LAB_001c8850:\n                  dVar32 = dVar32 + dVar35;" statement_identifier : (expression_statement "dVar32 = dVar32 + dVar35;" (assignment_expression "dVar32 = dVar32 + dVar35" identifier = (binary_expression "dVar32 + dVar35" identifier + identifier)) ;)) (if_statement "if (-1 < (int)unaff_s7) goto LAB_001c8858;" if (parenthesized_expression "(-1 < (int)unaff_s7)" ( (binary_expression "-1 < (int)unaff_s7" number_literal < (cast_expression "(int)unaff_s7" ( (type_descriptor "int" primitive_type) ) identifier)) )) (goto_statement "goto LAB_001c8858;" goto statement_identifier ;)) (labeled_statement "LAB_001c8b34:\n                  dVar33 = (double)(int)unaff_s7;" statement_identifier : (expression_statement "dVar33 = (double)(int)unaff_s7;" (assignment_expression "dVar33 = (double)(int)unaff_s7" identifier = (cast_expression "(double)(int)unaff_s7" ( (type_descriptor "double" primitive_type) ) (cast_expression "(int)unaff_s7" ( (type_descriptor "int" primitive_type) ) identifier))) ;)) }))) (expression_statement "dVar33 = dVar32 + dVar33;" (assignment_expression "dVar33 = dVar32 + dVar33" identifier = (binary_expression "dVar32 + dVar33" identifier + identifier)) ;) (expression_statement "dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);" (assignment_expression "dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33)" identifier = (cast_expression "(double)(*(code *)PTR_floor_003a9670)(dVar33)" ( (type_descriptor "double" primitive_type) ) (call_expression "(*(code *)PTR_floor_003a9670)(dVar33)" (parenthesized_expression "(*(code *)PTR_floor_003a9670)" ( (pointer_expression "*(code *)PTR_floor_003a9670" * (cast_expression "(code *)PTR_floor_003a9670" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(dVar33)" ( identifier ))))) ;) (expression_statement "dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);" (assignment_expression "dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33)" identifier = (cast_expression "(double)(*(code *)PTR_ceil_003a8c20)(dVar33)" ( (type_descriptor "double" primitive_type) ) (call_expression "(*(code *)PTR_ceil_003a8c20)(dVar33)" (parenthesized_expression "(*(code *)PTR_ceil_003a8c20)" ( (pointer_expression "*(code *)PTR_ceil_003a8c20" * (cast_expression "(code *)PTR_ceil_003a8c20" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(dVar33)" ( identifier ))))) ;) (if_statement "if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < dVar25) goto LAB_001c8a44;\n                  if (dVar33 <= dVar26) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar14 = 0x7ffffdff;\n                }\n                else if (dVar25 <= dVar33) {\n                  if (dVar33 <= dVar31) goto LAB_001c8abc;\n                  iVar14 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar14 = -0x7ffffdff;\n                }" if (parenthesized_expression "(dVar33 - dVar28 < dVar29 - dVar33)" ( (binary_expression "dVar33 - dVar28 < dVar29 - dVar33" (binary_expression "dVar33 - dVar28" identifier - identifier) < (binary_expression "dVar29 - dVar33" identifier - identifier)) )) (compound_statement "{\n                  if (dVar33 < dVar25) goto LAB_001c8a44;\n                  if (dVar33 <= dVar26) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar14 = 0x7ffffdff;\n                }" { (if_statement "if (dVar33 < dVar25) goto LAB_001c8a44;" if (parenthesized_expression "(dVar33 < dVar25)" ( (binary_expression "dVar33 < dVar25" identifier < identifier) )) (goto_statement "goto LAB_001c8a44;" goto statement_identifier ;)) (if_statement "if (dVar33 <= dVar26) goto LAB_001c8768;" if (parenthesized_expression "(dVar33 <= dVar26)" ( (binary_expression "dVar33 <= dVar26" identifier <= identifier) )) (goto_statement "goto LAB_001c8768;" goto statement_identifier ;)) (labeled_statement "LAB_001c88b8:\n                  iVar14 = 0x7ffffdff;" statement_identifier : (expression_statement "iVar14 = 0x7ffffdff;" (assignment_expression "iVar14 = 0x7ffffdff" identifier = number_literal) ;)) }) (else_clause "else if (dVar25 <= dVar33) {\n                  if (dVar33 <= dVar31) goto LAB_001c8abc;\n                  iVar14 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar14 = -0x7ffffdff;\n                }" else (if_statement "if (dVar25 <= dVar33) {\n                  if (dVar33 <= dVar31) goto LAB_001c8abc;\n                  iVar14 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar14 = -0x7ffffdff;\n                }" if (parenthesized_expression "(dVar25 <= dVar33)" ( (binary_expression "dVar25 <= dVar33" identifier <= identifier) )) (compound_statement "{\n                  if (dVar33 <= dVar31) goto LAB_001c8abc;\n                  iVar14 = 0x7ffffdff;\n                }" { (if_statement "if (dVar33 <= dVar31) goto LAB_001c8abc;" if (parenthesized_expression "(dVar33 <= dVar31)" ( (binary_expression "dVar33 <= dVar31" identifier <= identifier) )) (goto_statement "goto LAB_001c8abc;" goto statement_identifier ;)) (expression_statement "iVar14 = 0x7ffffdff;" (assignment_expression "iVar14 = 0x7ffffdff" identifier = number_literal) ;) }) (else_clause "else {\nLAB_001c8a44:\n                  iVar14 = -0x7ffffdff;\n                }" else (compound_statement "{\nLAB_001c8a44:\n                  iVar14 = -0x7ffffdff;\n                }" { (labeled_statement "LAB_001c8a44:\n                  iVar14 = -0x7ffffdff;" statement_identifier : (expression_statement "iVar14 = -0x7ffffdff;" (assignment_expression "iVar14 = -0x7ffffdff" identifier = number_literal) ;)) }))))) }))) (expression_statement "unaff_s8 = (undefined4 *******)(iVar14 - iVar15);" (assignment_expression "unaff_s8 = (undefined4 *******)(iVar14 - iVar15)" identifier = (cast_expression "(undefined4 *******)(iVar14 - iVar15)" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(iVar14 - iVar15)" ( (binary_expression "iVar14 - iVar15" identifier - identifier) )))) ;) (expression_statement "param_2 = (undefined4 *******)((int)param_1[0x8c] + iVar15);" (assignment_expression "param_2 = (undefined4 *******)((int)param_1[0x8c] + iVar15)" identifier = (cast_expression "(undefined4 *******)((int)param_1[0x8c] + iVar15)" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)param_1[0x8c] + iVar15)" ( (binary_expression "(int)param_1[0x8c] + iVar15" (cast_expression "(int)param_1[0x8c]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "param_1[0x8c]" identifier [ number_literal ])) + identifier) )))) ;) (expression_statement "local_6c = unaff_s8;" (assignment_expression "local_6c = unaff_s8" identifier = identifier) ;) (expression_statement "local_64 = param_2;" (assignment_expression "local_64 = param_2" identifier = identifier) ;) (expression_statement "iVar15 = (*(code *)PTR_CropImage_003a90b8)(param_1,unaff_s6,param_3);" (assignment_expression "iVar15 = (*(code *)PTR_CropImage_003a90b8)(param_1,unaff_s6,param_3)" identifier = (call_expression "(*(code *)PTR_CropImage_003a90b8)(param_1,unaff_s6,param_3)" (parenthesized_expression "(*(code *)PTR_CropImage_003a90b8)" ( (pointer_expression "*(code *)PTR_CropImage_003a90b8" * (cast_expression "(code *)PTR_CropImage_003a90b8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_1,unaff_s6,param_3)" ( identifier , identifier , identifier )))) ;) (if_statement "if (iVar15 != 0) {\n                (*(code *)PTR_AppendImageToList_003a9880)(&local_80,iVar15);\n              }" if (parenthesized_expression "(iVar15 != 0)" ( (binary_expression "iVar15 != 0" identifier != number_literal) )) (compound_statement "{\n                (*(code *)PTR_AppendImageToList_003a9880)(&local_80,iVar15);\n              }" { (expression_statement "(*(code *)PTR_AppendImageToList_003a9880)(&local_80,iVar15);" (call_expression "(*(code *)PTR_AppendImageToList_003a9880)(&local_80,iVar15)" (parenthesized_expression "(*(code *)PTR_AppendImageToList_003a9880)" ( (pointer_expression "*(code *)PTR_AppendImageToList_003a9880" * (cast_expression "(code *)PTR_AppendImageToList_003a9880" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(&local_80,iVar15)" ( (pointer_expression "&local_80" & identifier) , identifier ))) ;) })) }) while (parenthesized_expression "(dVar32 < dVar34)" ( (binary_expression "dVar32 < dVar34" identifier < identifier) )) ;) })) (expression_statement "unaff_s5 = unaff_s3;" (assignment_expression "unaff_s5 = unaff_s3" identifier = identifier) ;) (if_statement "if (local_c8 <= dVar30) break;" if (parenthesized_expression "(local_c8 <= dVar30)" ( (binary_expression "local_c8 <= dVar30" identifier <= identifier) )) (break_statement "break;" break ;)) (if_statement "if (unaff_s4 == (undefined4 ******)0x0) goto LAB_001c854c;" if (parenthesized_expression "(unaff_s4 == (undefined4 ******)0x0)" ( (binary_expression "unaff_s4 == (undefined4 ******)0x0" identifier == (cast_expression "(undefined4 ******)0x0" ( (type_descriptor "undefined4 ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (goto_statement "goto LAB_001c854c;" goto statement_identifier ;)) (labeled_statement "LAB_001c8b70:\n          unaff_s7 = local_70;" statement_identifier : (expression_statement "unaff_s7 = local_70;" (assignment_expression "unaff_s7 = local_70" identifier = identifier) ;)) (expression_statement "dVar32 = dVar30;" (assignment_expression "dVar32 = dVar30" identifier = identifier) ;) (if_statement "if (0 < (int)local_70) {\n            dVar32 = dVar30 - (double)(int)local_70;\n          }" if (parenthesized_expression "(0 < (int)local_70)" ( (binary_expression "0 < (int)local_70" number_literal < (cast_expression "(int)local_70" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n            dVar32 = dVar30 - (double)(int)local_70;\n          }" { (expression_statement "dVar32 = dVar30 - (double)(int)local_70;" (assignment_expression "dVar32 = dVar30 - (double)(int)local_70" identifier = (binary_expression "dVar30 - (double)(int)local_70" identifier - (cast_expression "(double)(int)local_70" ( (type_descriptor "double" primitive_type) ) (cast_expression "(int)local_70" ( (type_descriptor "int" primitive_type) ) identifier)))) ;) })) (expression_statement "dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);" (assignment_expression "dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32)" identifier = (cast_expression "(double)(*(code *)PTR_floor_003a9670)(dVar32)" ( (type_descriptor "double" primitive_type) ) (call_expression "(*(code *)PTR_floor_003a9670)(dVar32)" (parenthesized_expression "(*(code *)PTR_floor_003a9670)" ( (pointer_expression "*(code *)PTR_floor_003a9670" * (cast_expression "(code *)PTR_floor_003a9670" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(dVar32)" ( identifier ))))) ;) (expression_statement "dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);" (assignment_expression "dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32)" identifier = (cast_expression "(double)(*(code *)PTR_ceil_003a8c20)(dVar32)" ( (type_descriptor "double" primitive_type) ) (call_expression "(*(code *)PTR_ceil_003a8c20)(dVar32)" (parenthesized_expression "(*(code *)PTR_ceil_003a8c20)" ( (pointer_expression "*(code *)PTR_ceil_003a8c20" * (cast_expression "(code *)PTR_ceil_003a8c20" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(dVar32)" ( identifier ))))) ;) (if_statement "if (dVar32 - dVar26 < dVar27 - dVar32) {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d8c;\n            pcVar23 = (code *)PTR_floor_003a9670;\n            if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8d50;\nLAB_001c8bd8:\n            dVar32 = (double)(*pcVar23)(dVar32);\n            iVar15 = (int)dVar32;\nLAB_001c8bf0:\n            dVar30 = dVar30 + local_a0;\n            if (-2 < (int)unaff_s7) goto LAB_001c8c00;\nLAB_001c8d6c:\n            dVar32 = (double)(int)unaff_s7;\n          }\n          else {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d8c:\n              iVar15 = -0x7ffffdff;\n              goto LAB_001c8bf0;\n            }\n            pcVar23 = (code *)PTR_ceil_003a8c20;\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8bd8;\nLAB_001c8d50:\n            iVar15 = 0x7ffffdff;\n            dVar30 = dVar30 + local_a0;\n            if ((int)unaff_s7 < -1) goto LAB_001c8d6c;\nLAB_001c8c00:\n            dVar32 = 0.0;\n          }" if (parenthesized_expression "(dVar32 - dVar26 < dVar27 - dVar32)" ( (binary_expression "dVar32 - dVar26 < dVar27 - dVar32" (binary_expression "dVar32 - dVar26" identifier - identifier) < (binary_expression "dVar27 - dVar32" identifier - identifier)) )) (compound_statement "{\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d8c;\n            pcVar23 = (code *)PTR_floor_003a9670;\n            if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8d50;\nLAB_001c8bd8:\n            dVar32 = (double)(*pcVar23)(dVar32);\n            iVar15 = (int)dVar32;\nLAB_001c8bf0:\n            dVar30 = dVar30 + local_a0;\n            if (-2 < (int)unaff_s7) goto LAB_001c8c00;\nLAB_001c8d6c:\n            dVar32 = (double)(int)unaff_s7;\n          }" { (if_statement "if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d8c;" if (parenthesized_expression "(dVar32 < *(double *)((int)unaff_s3 + 0x4780))" ( (binary_expression "dVar32 < *(double *)((int)unaff_s3 + 0x4780)" identifier < (pointer_expression "*(double *)((int)unaff_s3 + 0x4780)" * (cast_expression "(double *)((int)unaff_s3 + 0x4780)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s3 + 0x4780)" ( (binary_expression "(int)unaff_s3 + 0x4780" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) )) (goto_statement "goto LAB_001c8d8c;" goto statement_identifier ;)) (expression_statement "pcVar23 = (code *)PTR_floor_003a9670;" (assignment_expression "pcVar23 = (code *)PTR_floor_003a9670" identifier = (cast_expression "(code *)PTR_floor_003a9670" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (if_statement "if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8d50;" if (parenthesized_expression "(*(double *)((int)unaff_s3 + 0x4788) < dVar32)" ( (binary_expression "*(double *)((int)unaff_s3 + 0x4788) < dVar32" (pointer_expression "*(double *)((int)unaff_s3 + 0x4788)" * (cast_expression "(double *)((int)unaff_s3 + 0x4788)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s3 + 0x4788)" ( (binary_expression "(int)unaff_s3 + 0x4788" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) < identifier) )) (goto_statement "goto LAB_001c8d50;" goto statement_identifier ;)) (labeled_statement "LAB_001c8bd8:\n            dVar32 = (double)(*pcVar23)(dVar32);" statement_identifier : (expression_statement "dVar32 = (double)(*pcVar23)(dVar32);" (assignment_expression "dVar32 = (double)(*pcVar23)(dVar32)" identifier = (cast_expression "(double)(*pcVar23)(dVar32)" ( (type_descriptor "double" primitive_type) ) (call_expression "(*pcVar23)(dVar32)" (parenthesized_expression "(*pcVar23)" ( (pointer_expression "*pcVar23" * identifier) )) (argument_list "(dVar32)" ( identifier ))))) ;)) (expression_statement "iVar15 = (int)dVar32;" (assignment_expression "iVar15 = (int)dVar32" identifier = (cast_expression "(int)dVar32" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (labeled_statement "LAB_001c8bf0:\n            dVar30 = dVar30 + local_a0;" statement_identifier : (expression_statement "dVar30 = dVar30 + local_a0;" (assignment_expression "dVar30 = dVar30 + local_a0" identifier = (binary_expression "dVar30 + local_a0" identifier + identifier)) ;)) (if_statement "if (-2 < (int)unaff_s7) goto LAB_001c8c00;" if (parenthesized_expression "(-2 < (int)unaff_s7)" ( (binary_expression "-2 < (int)unaff_s7" number_literal < (cast_expression "(int)unaff_s7" ( (type_descriptor "int" primitive_type) ) identifier)) )) (goto_statement "goto LAB_001c8c00;" goto statement_identifier ;)) (labeled_statement "LAB_001c8d6c:\n            dVar32 = (double)(int)unaff_s7;" statement_identifier : (expression_statement "dVar32 = (double)(int)unaff_s7;" (assignment_expression "dVar32 = (double)(int)unaff_s7" identifier = (cast_expression "(double)(int)unaff_s7" ( (type_descriptor "double" primitive_type) ) (cast_expression "(int)unaff_s7" ( (type_descriptor "int" primitive_type) ) identifier))) ;)) }) (else_clause "else {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d8c:\n              iVar15 = -0x7ffffdff;\n              goto LAB_001c8bf0;\n            }\n            pcVar23 = (code *)PTR_ceil_003a8c20;\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8bd8;\nLAB_001c8d50:\n            iVar15 = 0x7ffffdff;\n            dVar30 = dVar30 + local_a0;\n            if ((int)unaff_s7 < -1) goto LAB_001c8d6c;\nLAB_001c8c00:\n            dVar32 = 0.0;\n          }" else (compound_statement "{\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d8c:\n              iVar15 = -0x7ffffdff;\n              goto LAB_001c8bf0;\n            }\n            pcVar23 = (code *)PTR_ceil_003a8c20;\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8bd8;\nLAB_001c8d50:\n            iVar15 = 0x7ffffdff;\n            dVar30 = dVar30 + local_a0;\n            if ((int)unaff_s7 < -1) goto LAB_001c8d6c;\nLAB_001c8c00:\n            dVar32 = 0.0;\n          }" { (if_statement "if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d8c:\n              iVar15 = -0x7ffffdff;\n              goto LAB_001c8bf0;\n            }" if (parenthesized_expression "(dVar32 < *(double *)((int)unaff_s3 + 0x4780))" ( (binary_expression "dVar32 < *(double *)((int)unaff_s3 + 0x4780)" identifier < (pointer_expression "*(double *)((int)unaff_s3 + 0x4780)" * (cast_expression "(double *)((int)unaff_s3 + 0x4780)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s3 + 0x4780)" ( (binary_expression "(int)unaff_s3 + 0x4780" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) )) (compound_statement "{\nLAB_001c8d8c:\n              iVar15 = -0x7ffffdff;\n              goto LAB_001c8bf0;\n            }" { (labeled_statement "LAB_001c8d8c:\n              iVar15 = -0x7ffffdff;" statement_identifier : (expression_statement "iVar15 = -0x7ffffdff;" (assignment_expression "iVar15 = -0x7ffffdff" identifier = number_literal) ;)) (goto_statement "goto LAB_001c8bf0;" goto statement_identifier ;) })) (expression_statement "pcVar23 = (code *)PTR_ceil_003a8c20;" (assignment_expression "pcVar23 = (code *)PTR_ceil_003a8c20" identifier = (cast_expression "(code *)PTR_ceil_003a8c20" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (if_statement "if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8bd8;" if (parenthesized_expression "(dVar32 <= *(double *)((int)unaff_s3 + 0x4788))" ( (binary_expression "dVar32 <= *(double *)((int)unaff_s3 + 0x4788)" identifier <= (pointer_expression "*(double *)((int)unaff_s3 + 0x4788)" * (cast_expression "(double *)((int)unaff_s3 + 0x4788)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s3 + 0x4788)" ( (binary_expression "(int)unaff_s3 + 0x4788" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) )) (goto_statement "goto LAB_001c8bd8;" goto statement_identifier ;)) (labeled_statement "LAB_001c8d50:\n            iVar15 = 0x7ffffdff;" statement_identifier : (expression_statement "iVar15 = 0x7ffffdff;" (assignment_expression "iVar15 = 0x7ffffdff" identifier = number_literal) ;)) (expression_statement "dVar30 = dVar30 + local_a0;" (assignment_expression "dVar30 = dVar30 + local_a0" identifier = (binary_expression "dVar30 + local_a0" identifier + identifier)) ;) (if_statement "if ((int)unaff_s7 < -1) goto LAB_001c8d6c;" if (parenthesized_expression "((int)unaff_s7 < -1)" ( (binary_expression "(int)unaff_s7 < -1" (cast_expression "(int)unaff_s7" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (goto_statement "goto LAB_001c8d6c;" goto statement_identifier ;)) (labeled_statement "LAB_001c8c00:\n            dVar32 = 0.0;" statement_identifier : (expression_statement "dVar32 = 0.0;" (assignment_expression "dVar32 = 0.0" identifier = number_literal) ;)) }))) (expression_statement "dVar32 = dVar30 + dVar32;" (assignment_expression "dVar32 = dVar30 + dVar32" identifier = (binary_expression "dVar30 + dVar32" identifier + identifier)) ;) (expression_statement "dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);" (assignment_expression "dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32)" identifier = (cast_expression "(double)(*(code *)PTR_floor_003a9670)(dVar32)" ( (type_descriptor "double" primitive_type) ) (call_expression "(*(code *)PTR_floor_003a9670)(dVar32)" (parenthesized_expression "(*(code *)PTR_floor_003a9670)" ( (pointer_expression "*(code *)PTR_floor_003a9670" * (cast_expression "(code *)PTR_floor_003a9670" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(dVar32)" ( identifier ))))) ;) (expression_statement "dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);" (assignment_expression "dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32)" identifier = (cast_expression "(double)(*(code *)PTR_ceil_003a8c20)(dVar32)" ( (type_descriptor "double" primitive_type) ) (call_expression "(*(code *)PTR_ceil_003a8c20)(dVar32)" (parenthesized_expression "(*(code *)PTR_ceil_003a8c20)" ( (pointer_expression "*(code *)PTR_ceil_003a8c20" * (cast_expression "(code *)PTR_ceil_003a8c20" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(dVar32)" ( identifier ))))) ;) (if_statement "if (dVar32 - dVar26 < dVar27 - dVar32) {\n            if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n              if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) {\nLAB_001c8cec:\n                iVar14 = 0x7ffffdff;\n              }\n              else {\nLAB_001c8630:\n                dVar32 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n                iVar14 = (int)dVar32;\n              }\n              goto LAB_001c8644;\n            }\n            goto LAB_001c8c88;\n          }" if (parenthesized_expression "(dVar32 - dVar26 < dVar27 - dVar32)" ( (binary_expression "dVar32 - dVar26 < dVar27 - dVar32" (binary_expression "dVar32 - dVar26" identifier - identifier) < (binary_expression "dVar27 - dVar32" identifier - identifier)) )) (compound_statement "{\n            if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n              if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) {\nLAB_001c8cec:\n                iVar14 = 0x7ffffdff;\n              }\n              else {\nLAB_001c8630:\n                dVar32 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n                iVar14 = (int)dVar32;\n              }\n              goto LAB_001c8644;\n            }\n            goto LAB_001c8c88;\n          }" { (if_statement "if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n              if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) {\nLAB_001c8cec:\n                iVar14 = 0x7ffffdff;\n              }\n              else {\nLAB_001c8630:\n                dVar32 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n                iVar14 = (int)dVar32;\n              }\n              goto LAB_001c8644;\n            }" if (parenthesized_expression "(*(double *)((int)unaff_s3 + 0x4780) <= dVar32)" ( (binary_expression "*(double *)((int)unaff_s3 + 0x4780) <= dVar32" (pointer_expression "*(double *)((int)unaff_s3 + 0x4780)" * (cast_expression "(double *)((int)unaff_s3 + 0x4780)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s3 + 0x4780)" ( (binary_expression "(int)unaff_s3 + 0x4780" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) <= identifier) )) (compound_statement "{\n              if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) {\nLAB_001c8cec:\n                iVar14 = 0x7ffffdff;\n              }\n              else {\nLAB_001c8630:\n                dVar32 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n                iVar14 = (int)dVar32;\n              }\n              goto LAB_001c8644;\n            }" { (if_statement "if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) {\nLAB_001c8cec:\n                iVar14 = 0x7ffffdff;\n              }\n              else {\nLAB_001c8630:\n                dVar32 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n                iVar14 = (int)dVar32;\n              }" if (parenthesized_expression "(*(double *)((int)unaff_s3 + 0x4788) < dVar32)" ( (binary_expression "*(double *)((int)unaff_s3 + 0x4788) < dVar32" (pointer_expression "*(double *)((int)unaff_s3 + 0x4788)" * (cast_expression "(double *)((int)unaff_s3 + 0x4788)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s3 + 0x4788)" ( (binary_expression "(int)unaff_s3 + 0x4788" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) < identifier) )) (compound_statement "{\nLAB_001c8cec:\n                iVar14 = 0x7ffffdff;\n              }" { (labeled_statement "LAB_001c8cec:\n                iVar14 = 0x7ffffdff;" statement_identifier : (expression_statement "iVar14 = 0x7ffffdff;" (assignment_expression "iVar14 = 0x7ffffdff" identifier = number_literal) ;)) }) (else_clause "else {\nLAB_001c8630:\n                dVar32 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n                iVar14 = (int)dVar32;\n              }" else (compound_statement "{\nLAB_001c8630:\n                dVar32 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n                iVar14 = (int)dVar32;\n              }" { (labeled_statement "LAB_001c8630:\n                dVar32 = (double)(*(code *)PTR_floor_003a9670)(dVar32);" statement_identifier : (expression_statement "dVar32 = (double)(*(code *)PTR_floor_003a9670)(dVar32);" (assignment_expression "dVar32 = (double)(*(code *)PTR_floor_003a9670)(dVar32)" identifier = (cast_expression "(double)(*(code *)PTR_floor_003a9670)(dVar32)" ( (type_descriptor "double" primitive_type) ) (call_expression "(*(code *)PTR_floor_003a9670)(dVar32)" (parenthesized_expression "(*(code *)PTR_floor_003a9670)" ( (pointer_expression "*(code *)PTR_floor_003a9670" * (cast_expression "(code *)PTR_floor_003a9670" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(dVar32)" ( identifier ))))) ;)) (expression_statement "iVar14 = (int)dVar32;" (assignment_expression "iVar14 = (int)dVar32" identifier = (cast_expression "(int)dVar32" ( (type_descriptor "int" primitive_type) ) identifier)) ;) }))) (goto_statement "goto LAB_001c8644;" goto statement_identifier ;) })) (goto_statement "goto LAB_001c8c88;" goto statement_identifier ;) })) (if_statement "if (dVar32 < dVar25) goto LAB_001c8c88;" if (parenthesized_expression "(dVar32 < dVar25)" ( (binary_expression "dVar32 < dVar25" identifier < identifier) )) (goto_statement "goto LAB_001c8c88;" goto statement_identifier ;)) (if_statement "if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;" if (parenthesized_expression "(*(double *)((int)unaff_s3 + 0x4788) < dVar32)" ( (binary_expression "*(double *)((int)unaff_s3 + 0x4788) < dVar32" (pointer_expression "*(double *)((int)unaff_s3 + 0x4788)" * (cast_expression "(double *)((int)unaff_s3 + 0x4788)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s3 + 0x4788)" ( (binary_expression "(int)unaff_s3 + 0x4788" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) < identifier) )) (goto_statement "goto LAB_001c8cec;" goto statement_identifier ;)) (labeled_statement "LAB_001c8d18:\n          dVar32 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);" statement_identifier : (expression_statement "dVar32 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);" (assignment_expression "dVar32 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32)" identifier = (cast_expression "(double)(*(code *)PTR_ceil_003a8c20)(dVar32)" ( (type_descriptor "double" primitive_type) ) (call_expression "(*(code *)PTR_ceil_003a8c20)(dVar32)" (parenthesized_expression "(*(code *)PTR_ceil_003a8c20)" ( (pointer_expression "*(code *)PTR_ceil_003a8c20" * (cast_expression "(code *)PTR_ceil_003a8c20" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(dVar32)" ( identifier ))))) ;)) (expression_statement "iVar14 = (int)dVar32;" (assignment_expression "iVar14 = (int)dVar32" identifier = (cast_expression "(int)dVar32" ( (type_descriptor "int" primitive_type) ) identifier)) ;) }) while (parenthesized_expression "( true )" ( true )) ;)) })) (expression_statement "(*(code *)PTR_ClearMagickException_003a90f8)(param_3);" (call_expression "(*(code *)PTR_ClearMagickException_003a90f8)(param_3)" (parenthesized_expression "(*(code *)PTR_ClearMagickException_003a90f8)" ( (pointer_expression "*(code *)PTR_ClearMagickException_003a90f8" * (cast_expression "(code *)PTR_ClearMagickException_003a90f8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_3)" ( identifier ))) ;) (expression_statement "pppppppuVar9 = local_80;" (assignment_expression "pppppppuVar9 = local_80" identifier = identifier) ;) (expression_statement "unaff_s0 = param_2;" (assignment_expression "unaff_s0 = param_2" identifier = identifier) ;) }) (else_clause "else {\n      unaff_s3 = &local_7c;\n      if (((local_7c == (undefined4 *******)0x0) && (local_78 == (undefined4 ******)0x0)) ||\n         (((uint)ppppppuVar2 & 3) != 0)) {\n        local_80 = (undefined4 *******)(*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n        pppppppuVar9 = local_80;\n        unaff_s4 = ppppppuVar2;\n        if ((local_80 != (undefined4 *******)0x0) &&\n           (unaff_s4 = (undefined4 ******)((uint)ppppppuVar2 & 0x2000),\n           unaff_s4 != (undefined4 ******)0x0)) {\n          local_80[0x8c] = (undefined4 ******)((int)local_80[0x8c] - (int)local_74);\n          local_80[0x8d] = (undefined4 ******)((int)local_80[0x8d] - (int)local_70);\n          local_80[0x8a] = local_7c;\n          local_80[0x8b] = local_78;\n        }\n      }\n      else {\n        unaff_s7 = (undefined4 *******)param_1[6];\n        if ((local_7c < unaff_s7) || (local_78 < param_1[7])) {\n          ppppppuVar2 = param_1[0x8b];\n          if ((undefined4 *******)param_1[0x8a] != (undefined4 *******)0x0) {\n            unaff_s7 = (undefined4 *******)param_1[0x8a];\n          }\n          if (ppppppuVar2 == (undefined4 ******)0x0) {\n            ppppppuVar2 = param_1[7];\n          }\n          if (local_7c == (undefined4 *******)0x0) {\n            unaff_s0 = unaff_s7;\n          }\n          if (local_78 == (undefined4 ******)0x0) {\n            unaff_s4 = ppppppuVar2;\n          }\n          pppppppuVar9 = local_80;\n          if (0 < (int)ppppppuVar2) {\n            unaff_s3 = (undefined4 *******)0x0;\n            unaff_s8 = &local_80;\n            do {\n              unaff_s5 = (undefined4 *******)0x0;\n              if ((int)unaff_s7 < 1) {\n                pppppppuVar9 = local_80;\n                if (unaff_s6 == (undefined4 *******)0x0) break;\n              }\n              else {\n                do {\n                  local_7c = unaff_s0;\n                  local_78 = unaff_s4;\n                  local_74 = unaff_s5;\n                  local_70 = unaff_s3;\n                  unaff_s6 = (undefined4 *******)\n                             (*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n                  pppppppuVar9 = local_80;\n                  if (unaff_s6 == (undefined4 *******)0x0) goto LAB_001c8908;\n                  unaff_s5 = (undefined4 *******)((int)unaff_s5 + (int)unaff_s0);\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);\n              }\n              unaff_s3 = (undefined4 *******)((int)unaff_s3 + (int)unaff_s4);\n              pppppppuVar9 = local_80;\n            } while ((int)unaff_s3 < (int)ppppppuVar2);\n          }\n        }\n        else {\n          local_e8 = param_3;\n          pppppppuVar9 = (undefined4 *******)(*(code *)PTR_CloneImage_003a9830)(param_1,0,0,1);\n        }\n      }\n    }" else (compound_statement "{\n      unaff_s3 = &local_7c;\n      if (((local_7c == (undefined4 *******)0x0) && (local_78 == (undefined4 ******)0x0)) ||\n         (((uint)ppppppuVar2 & 3) != 0)) {\n        local_80 = (undefined4 *******)(*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n        pppppppuVar9 = local_80;\n        unaff_s4 = ppppppuVar2;\n        if ((local_80 != (undefined4 *******)0x0) &&\n           (unaff_s4 = (undefined4 ******)((uint)ppppppuVar2 & 0x2000),\n           unaff_s4 != (undefined4 ******)0x0)) {\n          local_80[0x8c] = (undefined4 ******)((int)local_80[0x8c] - (int)local_74);\n          local_80[0x8d] = (undefined4 ******)((int)local_80[0x8d] - (int)local_70);\n          local_80[0x8a] = local_7c;\n          local_80[0x8b] = local_78;\n        }\n      }\n      else {\n        unaff_s7 = (undefined4 *******)param_1[6];\n        if ((local_7c < unaff_s7) || (local_78 < param_1[7])) {\n          ppppppuVar2 = param_1[0x8b];\n          if ((undefined4 *******)param_1[0x8a] != (undefined4 *******)0x0) {\n            unaff_s7 = (undefined4 *******)param_1[0x8a];\n          }\n          if (ppppppuVar2 == (undefined4 ******)0x0) {\n            ppppppuVar2 = param_1[7];\n          }\n          if (local_7c == (undefined4 *******)0x0) {\n            unaff_s0 = unaff_s7;\n          }\n          if (local_78 == (undefined4 ******)0x0) {\n            unaff_s4 = ppppppuVar2;\n          }\n          pppppppuVar9 = local_80;\n          if (0 < (int)ppppppuVar2) {\n            unaff_s3 = (undefined4 *******)0x0;\n            unaff_s8 = &local_80;\n            do {\n              unaff_s5 = (undefined4 *******)0x0;\n              if ((int)unaff_s7 < 1) {\n                pppppppuVar9 = local_80;\n                if (unaff_s6 == (undefined4 *******)0x0) break;\n              }\n              else {\n                do {\n                  local_7c = unaff_s0;\n                  local_78 = unaff_s4;\n                  local_74 = unaff_s5;\n                  local_70 = unaff_s3;\n                  unaff_s6 = (undefined4 *******)\n                             (*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n                  pppppppuVar9 = local_80;\n                  if (unaff_s6 == (undefined4 *******)0x0) goto LAB_001c8908;\n                  unaff_s5 = (undefined4 *******)((int)unaff_s5 + (int)unaff_s0);\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);\n              }\n              unaff_s3 = (undefined4 *******)((int)unaff_s3 + (int)unaff_s4);\n              pppppppuVar9 = local_80;\n            } while ((int)unaff_s3 < (int)ppppppuVar2);\n          }\n        }\n        else {\n          local_e8 = param_3;\n          pppppppuVar9 = (undefined4 *******)(*(code *)PTR_CloneImage_003a9830)(param_1,0,0,1);\n        }\n      }\n    }" { (expression_statement "unaff_s3 = &local_7c;" (assignment_expression "unaff_s3 = &local_7c" identifier = (pointer_expression "&local_7c" & identifier)) ;) (if_statement "if (((local_7c == (undefined4 *******)0x0) && (local_78 == (undefined4 ******)0x0)) ||\n         (((uint)ppppppuVar2 & 3) != 0)) {\n        local_80 = (undefined4 *******)(*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n        pppppppuVar9 = local_80;\n        unaff_s4 = ppppppuVar2;\n        if ((local_80 != (undefined4 *******)0x0) &&\n           (unaff_s4 = (undefined4 ******)((uint)ppppppuVar2 & 0x2000),\n           unaff_s4 != (undefined4 ******)0x0)) {\n          local_80[0x8c] = (undefined4 ******)((int)local_80[0x8c] - (int)local_74);\n          local_80[0x8d] = (undefined4 ******)((int)local_80[0x8d] - (int)local_70);\n          local_80[0x8a] = local_7c;\n          local_80[0x8b] = local_78;\n        }\n      }\n      else {\n        unaff_s7 = (undefined4 *******)param_1[6];\n        if ((local_7c < unaff_s7) || (local_78 < param_1[7])) {\n          ppppppuVar2 = param_1[0x8b];\n          if ((undefined4 *******)param_1[0x8a] != (undefined4 *******)0x0) {\n            unaff_s7 = (undefined4 *******)param_1[0x8a];\n          }\n          if (ppppppuVar2 == (undefined4 ******)0x0) {\n            ppppppuVar2 = param_1[7];\n          }\n          if (local_7c == (undefined4 *******)0x0) {\n            unaff_s0 = unaff_s7;\n          }\n          if (local_78 == (undefined4 ******)0x0) {\n            unaff_s4 = ppppppuVar2;\n          }\n          pppppppuVar9 = local_80;\n          if (0 < (int)ppppppuVar2) {\n            unaff_s3 = (undefined4 *******)0x0;\n            unaff_s8 = &local_80;\n            do {\n              unaff_s5 = (undefined4 *******)0x0;\n              if ((int)unaff_s7 < 1) {\n                pppppppuVar9 = local_80;\n                if (unaff_s6 == (undefined4 *******)0x0) break;\n              }\n              else {\n                do {\n                  local_7c = unaff_s0;\n                  local_78 = unaff_s4;\n                  local_74 = unaff_s5;\n                  local_70 = unaff_s3;\n                  unaff_s6 = (undefined4 *******)\n                             (*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n                  pppppppuVar9 = local_80;\n                  if (unaff_s6 == (undefined4 *******)0x0) goto LAB_001c8908;\n                  unaff_s5 = (undefined4 *******)((int)unaff_s5 + (int)unaff_s0);\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);\n              }\n              unaff_s3 = (undefined4 *******)((int)unaff_s3 + (int)unaff_s4);\n              pppppppuVar9 = local_80;\n            } while ((int)unaff_s3 < (int)ppppppuVar2);\n          }\n        }\n        else {\n          local_e8 = param_3;\n          pppppppuVar9 = (undefined4 *******)(*(code *)PTR_CloneImage_003a9830)(param_1,0,0,1);\n        }\n      }" if (parenthesized_expression "(((local_7c == (undefined4 *******)0x0) && (local_78 == (undefined4 ******)0x0)) ||\n         (((uint)ppppppuVar2 & 3) != 0))" ( (binary_expression "((local_7c == (undefined4 *******)0x0) && (local_78 == (undefined4 ******)0x0)) ||\n         (((uint)ppppppuVar2 & 3) != 0)" (parenthesized_expression "((local_7c == (undefined4 *******)0x0) && (local_78 == (undefined4 ******)0x0))" ( (binary_expression "(local_7c == (undefined4 *******)0x0) && (local_78 == (undefined4 ******)0x0)" (parenthesized_expression "(local_7c == (undefined4 *******)0x0)" ( (binary_expression "local_7c == (undefined4 *******)0x0" identifier == (cast_expression "(undefined4 *******)0x0" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) && (parenthesized_expression "(local_78 == (undefined4 ******)0x0)" ( (binary_expression "local_78 == (undefined4 ******)0x0" identifier == (cast_expression "(undefined4 ******)0x0" ( (type_descriptor "undefined4 ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) ))) )) || (parenthesized_expression "(((uint)ppppppuVar2 & 3) != 0)" ( (binary_expression "((uint)ppppppuVar2 & 3) != 0" (parenthesized_expression "((uint)ppppppuVar2 & 3)" ( (binary_expression "(uint)ppppppuVar2 & 3" (cast_expression "(uint)ppppppuVar2" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )) != number_literal) ))) )) (compound_statement "{\n        local_80 = (undefined4 *******)(*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n        pppppppuVar9 = local_80;\n        unaff_s4 = ppppppuVar2;\n        if ((local_80 != (undefined4 *******)0x0) &&\n           (unaff_s4 = (undefined4 ******)((uint)ppppppuVar2 & 0x2000),\n           unaff_s4 != (undefined4 ******)0x0)) {\n          local_80[0x8c] = (undefined4 ******)((int)local_80[0x8c] - (int)local_74);\n          local_80[0x8d] = (undefined4 ******)((int)local_80[0x8d] - (int)local_70);\n          local_80[0x8a] = local_7c;\n          local_80[0x8b] = local_78;\n        }\n      }" { (expression_statement "local_80 = (undefined4 *******)(*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);" (assignment_expression "local_80 = (undefined4 *******)(*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3)" identifier = (cast_expression "(undefined4 *******)(*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3)" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3)" (parenthesized_expression "(*(code *)PTR_CropImage_003a90b8)" ( (pointer_expression "*(code *)PTR_CropImage_003a90b8" * (cast_expression "(code *)PTR_CropImage_003a90b8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_1,&local_7c,param_3)" ( identifier , (pointer_expression "&local_7c" & identifier) , identifier ))))) ;) (expression_statement "pppppppuVar9 = local_80;" (assignment_expression "pppppppuVar9 = local_80" identifier = identifier) ;) (expression_statement "unaff_s4 = ppppppuVar2;" (assignment_expression "unaff_s4 = ppppppuVar2" identifier = identifier) ;) (if_statement "if ((local_80 != (undefined4 *******)0x0) &&\n           (unaff_s4 = (undefined4 ******)((uint)ppppppuVar2 & 0x2000),\n           unaff_s4 != (undefined4 ******)0x0)) {\n          local_80[0x8c] = (undefined4 ******)((int)local_80[0x8c] - (int)local_74);\n          local_80[0x8d] = (undefined4 ******)((int)local_80[0x8d] - (int)local_70);\n          local_80[0x8a] = local_7c;\n          local_80[0x8b] = local_78;\n        }" if (parenthesized_expression "((local_80 != (undefined4 *******)0x0) &&\n           (unaff_s4 = (undefined4 ******)((uint)ppppppuVar2 & 0x2000),\n           unaff_s4 != (undefined4 ******)0x0))" ( (binary_expression "(local_80 != (undefined4 *******)0x0) &&\n           (unaff_s4 = (undefined4 ******)((uint)ppppppuVar2 & 0x2000),\n           unaff_s4 != (undefined4 ******)0x0)" (parenthesized_expression "(local_80 != (undefined4 *******)0x0)" ( (binary_expression "local_80 != (undefined4 *******)0x0" identifier != (cast_expression "(undefined4 *******)0x0" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) && (parenthesized_expression "(unaff_s4 = (undefined4 ******)((uint)ppppppuVar2 & 0x2000),\n           unaff_s4 != (undefined4 ******)0x0)" ( (comma_expression "unaff_s4 = (undefined4 ******)((uint)ppppppuVar2 & 0x2000),\n           unaff_s4 != (undefined4 ******)0x0" (assignment_expression "unaff_s4 = (undefined4 ******)((uint)ppppppuVar2 & 0x2000)" identifier = (cast_expression "(undefined4 ******)((uint)ppppppuVar2 & 0x2000)" ( (type_descriptor "undefined4 ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (parenthesized_expression "((uint)ppppppuVar2 & 0x2000)" ( (binary_expression "(uint)ppppppuVar2 & 0x2000" (cast_expression "(uint)ppppppuVar2" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )))) , (binary_expression "unaff_s4 != (undefined4 ******)0x0" identifier != (cast_expression "(undefined4 ******)0x0" ( (type_descriptor "undefined4 ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal))) ))) )) (compound_statement "{\n          local_80[0x8c] = (undefined4 ******)((int)local_80[0x8c] - (int)local_74);\n          local_80[0x8d] = (undefined4 ******)((int)local_80[0x8d] - (int)local_70);\n          local_80[0x8a] = local_7c;\n          local_80[0x8b] = local_78;\n        }" { (expression_statement "local_80[0x8c] = (undefined4 ******)((int)local_80[0x8c] - (int)local_74);" (assignment_expression "local_80[0x8c] = (undefined4 ******)((int)local_80[0x8c] - (int)local_74)" (subscript_expression "local_80[0x8c]" identifier [ number_literal ]) = (cast_expression "(undefined4 ******)((int)local_80[0x8c] - (int)local_74)" ( (type_descriptor "undefined4 ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (parenthesized_expression "((int)local_80[0x8c] - (int)local_74)" ( (binary_expression "(int)local_80[0x8c] - (int)local_74" (cast_expression "(int)local_80[0x8c]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "local_80[0x8c]" identifier [ number_literal ])) - (cast_expression "(int)local_74" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "local_80[0x8d] = (undefined4 ******)((int)local_80[0x8d] - (int)local_70);" (assignment_expression "local_80[0x8d] = (undefined4 ******)((int)local_80[0x8d] - (int)local_70)" (subscript_expression "local_80[0x8d]" identifier [ number_literal ]) = (cast_expression "(undefined4 ******)((int)local_80[0x8d] - (int)local_70)" ( (type_descriptor "undefined4 ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (parenthesized_expression "((int)local_80[0x8d] - (int)local_70)" ( (binary_expression "(int)local_80[0x8d] - (int)local_70" (cast_expression "(int)local_80[0x8d]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "local_80[0x8d]" identifier [ number_literal ])) - (cast_expression "(int)local_70" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "local_80[0x8a] = local_7c;" (assignment_expression "local_80[0x8a] = local_7c" (subscript_expression "local_80[0x8a]" identifier [ number_literal ]) = identifier) ;) (expression_statement "local_80[0x8b] = local_78;" (assignment_expression "local_80[0x8b] = local_78" (subscript_expression "local_80[0x8b]" identifier [ number_literal ]) = identifier) ;) })) }) (else_clause "else {\n        unaff_s7 = (undefined4 *******)param_1[6];\n        if ((local_7c < unaff_s7) || (local_78 < param_1[7])) {\n          ppppppuVar2 = param_1[0x8b];\n          if ((undefined4 *******)param_1[0x8a] != (undefined4 *******)0x0) {\n            unaff_s7 = (undefined4 *******)param_1[0x8a];\n          }\n          if (ppppppuVar2 == (undefined4 ******)0x0) {\n            ppppppuVar2 = param_1[7];\n          }\n          if (local_7c == (undefined4 *******)0x0) {\n            unaff_s0 = unaff_s7;\n          }\n          if (local_78 == (undefined4 ******)0x0) {\n            unaff_s4 = ppppppuVar2;\n          }\n          pppppppuVar9 = local_80;\n          if (0 < (int)ppppppuVar2) {\n            unaff_s3 = (undefined4 *******)0x0;\n            unaff_s8 = &local_80;\n            do {\n              unaff_s5 = (undefined4 *******)0x0;\n              if ((int)unaff_s7 < 1) {\n                pppppppuVar9 = local_80;\n                if (unaff_s6 == (undefined4 *******)0x0) break;\n              }\n              else {\n                do {\n                  local_7c = unaff_s0;\n                  local_78 = unaff_s4;\n                  local_74 = unaff_s5;\n                  local_70 = unaff_s3;\n                  unaff_s6 = (undefined4 *******)\n                             (*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n                  pppppppuVar9 = local_80;\n                  if (unaff_s6 == (undefined4 *******)0x0) goto LAB_001c8908;\n                  unaff_s5 = (undefined4 *******)((int)unaff_s5 + (int)unaff_s0);\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);\n              }\n              unaff_s3 = (undefined4 *******)((int)unaff_s3 + (int)unaff_s4);\n              pppppppuVar9 = local_80;\n            } while ((int)unaff_s3 < (int)ppppppuVar2);\n          }\n        }\n        else {\n          local_e8 = param_3;\n          pppppppuVar9 = (undefined4 *******)(*(code *)PTR_CloneImage_003a9830)(param_1,0,0,1);\n        }\n      }" else (compound_statement "{\n        unaff_s7 = (undefined4 *******)param_1[6];\n        if ((local_7c < unaff_s7) || (local_78 < param_1[7])) {\n          ppppppuVar2 = param_1[0x8b];\n          if ((undefined4 *******)param_1[0x8a] != (undefined4 *******)0x0) {\n            unaff_s7 = (undefined4 *******)param_1[0x8a];\n          }\n          if (ppppppuVar2 == (undefined4 ******)0x0) {\n            ppppppuVar2 = param_1[7];\n          }\n          if (local_7c == (undefined4 *******)0x0) {\n            unaff_s0 = unaff_s7;\n          }\n          if (local_78 == (undefined4 ******)0x0) {\n            unaff_s4 = ppppppuVar2;\n          }\n          pppppppuVar9 = local_80;\n          if (0 < (int)ppppppuVar2) {\n            unaff_s3 = (undefined4 *******)0x0;\n            unaff_s8 = &local_80;\n            do {\n              unaff_s5 = (undefined4 *******)0x0;\n              if ((int)unaff_s7 < 1) {\n                pppppppuVar9 = local_80;\n                if (unaff_s6 == (undefined4 *******)0x0) break;\n              }\n              else {\n                do {\n                  local_7c = unaff_s0;\n                  local_78 = unaff_s4;\n                  local_74 = unaff_s5;\n                  local_70 = unaff_s3;\n                  unaff_s6 = (undefined4 *******)\n                             (*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n                  pppppppuVar9 = local_80;\n                  if (unaff_s6 == (undefined4 *******)0x0) goto LAB_001c8908;\n                  unaff_s5 = (undefined4 *******)((int)unaff_s5 + (int)unaff_s0);\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);\n              }\n              unaff_s3 = (undefined4 *******)((int)unaff_s3 + (int)unaff_s4);\n              pppppppuVar9 = local_80;\n            } while ((int)unaff_s3 < (int)ppppppuVar2);\n          }\n        }\n        else {\n          local_e8 = param_3;\n          pppppppuVar9 = (undefined4 *******)(*(code *)PTR_CloneImage_003a9830)(param_1,0,0,1);\n        }\n      }" { (expression_statement "unaff_s7 = (undefined4 *******)param_1[6];" (assignment_expression "unaff_s7 = (undefined4 *******)param_1[6]" identifier = (cast_expression "(undefined4 *******)param_1[6]" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (subscript_expression "param_1[6]" identifier [ number_literal ]))) ;) (if_statement "if ((local_7c < unaff_s7) || (local_78 < param_1[7])) {\n          ppppppuVar2 = param_1[0x8b];\n          if ((undefined4 *******)param_1[0x8a] != (undefined4 *******)0x0) {\n            unaff_s7 = (undefined4 *******)param_1[0x8a];\n          }\n          if (ppppppuVar2 == (undefined4 ******)0x0) {\n            ppppppuVar2 = param_1[7];\n          }\n          if (local_7c == (undefined4 *******)0x0) {\n            unaff_s0 = unaff_s7;\n          }\n          if (local_78 == (undefined4 ******)0x0) {\n            unaff_s4 = ppppppuVar2;\n          }\n          pppppppuVar9 = local_80;\n          if (0 < (int)ppppppuVar2) {\n            unaff_s3 = (undefined4 *******)0x0;\n            unaff_s8 = &local_80;\n            do {\n              unaff_s5 = (undefined4 *******)0x0;\n              if ((int)unaff_s7 < 1) {\n                pppppppuVar9 = local_80;\n                if (unaff_s6 == (undefined4 *******)0x0) break;\n              }\n              else {\n                do {\n                  local_7c = unaff_s0;\n                  local_78 = unaff_s4;\n                  local_74 = unaff_s5;\n                  local_70 = unaff_s3;\n                  unaff_s6 = (undefined4 *******)\n                             (*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n                  pppppppuVar9 = local_80;\n                  if (unaff_s6 == (undefined4 *******)0x0) goto LAB_001c8908;\n                  unaff_s5 = (undefined4 *******)((int)unaff_s5 + (int)unaff_s0);\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);\n              }\n              unaff_s3 = (undefined4 *******)((int)unaff_s3 + (int)unaff_s4);\n              pppppppuVar9 = local_80;\n            } while ((int)unaff_s3 < (int)ppppppuVar2);\n          }\n        }\n        else {\n          local_e8 = param_3;\n          pppppppuVar9 = (undefined4 *******)(*(code *)PTR_CloneImage_003a9830)(param_1,0,0,1);\n        }" if (parenthesized_expression "((local_7c < unaff_s7) || (local_78 < param_1[7]))" ( (binary_expression "(local_7c < unaff_s7) || (local_78 < param_1[7])" (parenthesized_expression "(local_7c < unaff_s7)" ( (binary_expression "local_7c < unaff_s7" identifier < identifier) )) || (parenthesized_expression "(local_78 < param_1[7])" ( (binary_expression "local_78 < param_1[7]" identifier < (subscript_expression "param_1[7]" identifier [ number_literal ])) ))) )) (compound_statement "{\n          ppppppuVar2 = param_1[0x8b];\n          if ((undefined4 *******)param_1[0x8a] != (undefined4 *******)0x0) {\n            unaff_s7 = (undefined4 *******)param_1[0x8a];\n          }\n          if (ppppppuVar2 == (undefined4 ******)0x0) {\n            ppppppuVar2 = param_1[7];\n          }\n          if (local_7c == (undefined4 *******)0x0) {\n            unaff_s0 = unaff_s7;\n          }\n          if (local_78 == (undefined4 ******)0x0) {\n            unaff_s4 = ppppppuVar2;\n          }\n          pppppppuVar9 = local_80;\n          if (0 < (int)ppppppuVar2) {\n            unaff_s3 = (undefined4 *******)0x0;\n            unaff_s8 = &local_80;\n            do {\n              unaff_s5 = (undefined4 *******)0x0;\n              if ((int)unaff_s7 < 1) {\n                pppppppuVar9 = local_80;\n                if (unaff_s6 == (undefined4 *******)0x0) break;\n              }\n              else {\n                do {\n                  local_7c = unaff_s0;\n                  local_78 = unaff_s4;\n                  local_74 = unaff_s5;\n                  local_70 = unaff_s3;\n                  unaff_s6 = (undefined4 *******)\n                             (*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n                  pppppppuVar9 = local_80;\n                  if (unaff_s6 == (undefined4 *******)0x0) goto LAB_001c8908;\n                  unaff_s5 = (undefined4 *******)((int)unaff_s5 + (int)unaff_s0);\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);\n              }\n              unaff_s3 = (undefined4 *******)((int)unaff_s3 + (int)unaff_s4);\n              pppppppuVar9 = local_80;\n            } while ((int)unaff_s3 < (int)ppppppuVar2);\n          }\n        }" { (expression_statement "ppppppuVar2 = param_1[0x8b];" (assignment_expression "ppppppuVar2 = param_1[0x8b]" identifier = (subscript_expression "param_1[0x8b]" identifier [ number_literal ])) ;) (if_statement "if ((undefined4 *******)param_1[0x8a] != (undefined4 *******)0x0) {\n            unaff_s7 = (undefined4 *******)param_1[0x8a];\n          }" if (parenthesized_expression "((undefined4 *******)param_1[0x8a] != (undefined4 *******)0x0)" ( (binary_expression "(undefined4 *******)param_1[0x8a] != (undefined4 *******)0x0" (cast_expression "(undefined4 *******)param_1[0x8a]" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (subscript_expression "param_1[0x8a]" identifier [ number_literal ])) != (cast_expression "(undefined4 *******)0x0" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n            unaff_s7 = (undefined4 *******)param_1[0x8a];\n          }" { (expression_statement "unaff_s7 = (undefined4 *******)param_1[0x8a];" (assignment_expression "unaff_s7 = (undefined4 *******)param_1[0x8a]" identifier = (cast_expression "(undefined4 *******)param_1[0x8a]" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (subscript_expression "param_1[0x8a]" identifier [ number_literal ]))) ;) })) (if_statement "if (ppppppuVar2 == (undefined4 ******)0x0) {\n            ppppppuVar2 = param_1[7];\n          }" if (parenthesized_expression "(ppppppuVar2 == (undefined4 ******)0x0)" ( (binary_expression "ppppppuVar2 == (undefined4 ******)0x0" identifier == (cast_expression "(undefined4 ******)0x0" ( (type_descriptor "undefined4 ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n            ppppppuVar2 = param_1[7];\n          }" { (expression_statement "ppppppuVar2 = param_1[7];" (assignment_expression "ppppppuVar2 = param_1[7]" identifier = (subscript_expression "param_1[7]" identifier [ number_literal ])) ;) })) (if_statement "if (local_7c == (undefined4 *******)0x0) {\n            unaff_s0 = unaff_s7;\n          }" if (parenthesized_expression "(local_7c == (undefined4 *******)0x0)" ( (binary_expression "local_7c == (undefined4 *******)0x0" identifier == (cast_expression "(undefined4 *******)0x0" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n            unaff_s0 = unaff_s7;\n          }" { (expression_statement "unaff_s0 = unaff_s7;" (assignment_expression "unaff_s0 = unaff_s7" identifier = identifier) ;) })) (if_statement "if (local_78 == (undefined4 ******)0x0) {\n            unaff_s4 = ppppppuVar2;\n          }" if (parenthesized_expression "(local_78 == (undefined4 ******)0x0)" ( (binary_expression "local_78 == (undefined4 ******)0x0" identifier == (cast_expression "(undefined4 ******)0x0" ( (type_descriptor "undefined4 ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n            unaff_s4 = ppppppuVar2;\n          }" { (expression_statement "unaff_s4 = ppppppuVar2;" (assignment_expression "unaff_s4 = ppppppuVar2" identifier = identifier) ;) })) (expression_statement "pppppppuVar9 = local_80;" (assignment_expression "pppppppuVar9 = local_80" identifier = identifier) ;) (if_statement "if (0 < (int)ppppppuVar2) {\n            unaff_s3 = (undefined4 *******)0x0;\n            unaff_s8 = &local_80;\n            do {\n              unaff_s5 = (undefined4 *******)0x0;\n              if ((int)unaff_s7 < 1) {\n                pppppppuVar9 = local_80;\n                if (unaff_s6 == (undefined4 *******)0x0) break;\n              }\n              else {\n                do {\n                  local_7c = unaff_s0;\n                  local_78 = unaff_s4;\n                  local_74 = unaff_s5;\n                  local_70 = unaff_s3;\n                  unaff_s6 = (undefined4 *******)\n                             (*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n                  pppppppuVar9 = local_80;\n                  if (unaff_s6 == (undefined4 *******)0x0) goto LAB_001c8908;\n                  unaff_s5 = (undefined4 *******)((int)unaff_s5 + (int)unaff_s0);\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);\n              }\n              unaff_s3 = (undefined4 *******)((int)unaff_s3 + (int)unaff_s4);\n              pppppppuVar9 = local_80;\n            } while ((int)unaff_s3 < (int)ppppppuVar2);\n          }" if (parenthesized_expression "(0 < (int)ppppppuVar2)" ( (binary_expression "0 < (int)ppppppuVar2" number_literal < (cast_expression "(int)ppppppuVar2" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n            unaff_s3 = (undefined4 *******)0x0;\n            unaff_s8 = &local_80;\n            do {\n              unaff_s5 = (undefined4 *******)0x0;\n              if ((int)unaff_s7 < 1) {\n                pppppppuVar9 = local_80;\n                if (unaff_s6 == (undefined4 *******)0x0) break;\n              }\n              else {\n                do {\n                  local_7c = unaff_s0;\n                  local_78 = unaff_s4;\n                  local_74 = unaff_s5;\n                  local_70 = unaff_s3;\n                  unaff_s6 = (undefined4 *******)\n                             (*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n                  pppppppuVar9 = local_80;\n                  if (unaff_s6 == (undefined4 *******)0x0) goto LAB_001c8908;\n                  unaff_s5 = (undefined4 *******)((int)unaff_s5 + (int)unaff_s0);\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);\n              }\n              unaff_s3 = (undefined4 *******)((int)unaff_s3 + (int)unaff_s4);\n              pppppppuVar9 = local_80;\n            } while ((int)unaff_s3 < (int)ppppppuVar2);\n          }" { (expression_statement "unaff_s3 = (undefined4 *******)0x0;" (assignment_expression "unaff_s3 = (undefined4 *******)0x0" identifier = (cast_expression "(undefined4 *******)0x0" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "unaff_s8 = &local_80;" (assignment_expression "unaff_s8 = &local_80" identifier = (pointer_expression "&local_80" & identifier)) ;) (do_statement "do {\n              unaff_s5 = (undefined4 *******)0x0;\n              if ((int)unaff_s7 < 1) {\n                pppppppuVar9 = local_80;\n                if (unaff_s6 == (undefined4 *******)0x0) break;\n              }\n              else {\n                do {\n                  local_7c = unaff_s0;\n                  local_78 = unaff_s4;\n                  local_74 = unaff_s5;\n                  local_70 = unaff_s3;\n                  unaff_s6 = (undefined4 *******)\n                             (*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n                  pppppppuVar9 = local_80;\n                  if (unaff_s6 == (undefined4 *******)0x0) goto LAB_001c8908;\n                  unaff_s5 = (undefined4 *******)((int)unaff_s5 + (int)unaff_s0);\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);\n              }\n              unaff_s3 = (undefined4 *******)((int)unaff_s3 + (int)unaff_s4);\n              pppppppuVar9 = local_80;\n            } while ((int)unaff_s3 < (int)ppppppuVar2);" do (compound_statement "{\n              unaff_s5 = (undefined4 *******)0x0;\n              if ((int)unaff_s7 < 1) {\n                pppppppuVar9 = local_80;\n                if (unaff_s6 == (undefined4 *******)0x0) break;\n              }\n              else {\n                do {\n                  local_7c = unaff_s0;\n                  local_78 = unaff_s4;\n                  local_74 = unaff_s5;\n                  local_70 = unaff_s3;\n                  unaff_s6 = (undefined4 *******)\n                             (*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n                  pppppppuVar9 = local_80;\n                  if (unaff_s6 == (undefined4 *******)0x0) goto LAB_001c8908;\n                  unaff_s5 = (undefined4 *******)((int)unaff_s5 + (int)unaff_s0);\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);\n              }\n              unaff_s3 = (undefined4 *******)((int)unaff_s3 + (int)unaff_s4);\n              pppppppuVar9 = local_80;\n            }" { (expression_statement "unaff_s5 = (undefined4 *******)0x0;" (assignment_expression "unaff_s5 = (undefined4 *******)0x0" identifier = (cast_expression "(undefined4 *******)0x0" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (if_statement "if ((int)unaff_s7 < 1) {\n                pppppppuVar9 = local_80;\n                if (unaff_s6 == (undefined4 *******)0x0) break;\n              }\n              else {\n                do {\n                  local_7c = unaff_s0;\n                  local_78 = unaff_s4;\n                  local_74 = unaff_s5;\n                  local_70 = unaff_s3;\n                  unaff_s6 = (undefined4 *******)\n                             (*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n                  pppppppuVar9 = local_80;\n                  if (unaff_s6 == (undefined4 *******)0x0) goto LAB_001c8908;\n                  unaff_s5 = (undefined4 *******)((int)unaff_s5 + (int)unaff_s0);\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);\n              }" if (parenthesized_expression "((int)unaff_s7 < 1)" ( (binary_expression "(int)unaff_s7 < 1" (cast_expression "(int)unaff_s7" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n                pppppppuVar9 = local_80;\n                if (unaff_s6 == (undefined4 *******)0x0) break;\n              }" { (expression_statement "pppppppuVar9 = local_80;" (assignment_expression "pppppppuVar9 = local_80" identifier = identifier) ;) (if_statement "if (unaff_s6 == (undefined4 *******)0x0) break;" if (parenthesized_expression "(unaff_s6 == (undefined4 *******)0x0)" ( (binary_expression "unaff_s6 == (undefined4 *******)0x0" identifier == (cast_expression "(undefined4 *******)0x0" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (break_statement "break;" break ;)) }) (else_clause "else {\n                do {\n                  local_7c = unaff_s0;\n                  local_78 = unaff_s4;\n                  local_74 = unaff_s5;\n                  local_70 = unaff_s3;\n                  unaff_s6 = (undefined4 *******)\n                             (*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n                  pppppppuVar9 = local_80;\n                  if (unaff_s6 == (undefined4 *******)0x0) goto LAB_001c8908;\n                  unaff_s5 = (undefined4 *******)((int)unaff_s5 + (int)unaff_s0);\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);\n              }" else (compound_statement "{\n                do {\n                  local_7c = unaff_s0;\n                  local_78 = unaff_s4;\n                  local_74 = unaff_s5;\n                  local_70 = unaff_s3;\n                  unaff_s6 = (undefined4 *******)\n                             (*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n                  pppppppuVar9 = local_80;\n                  if (unaff_s6 == (undefined4 *******)0x0) goto LAB_001c8908;\n                  unaff_s5 = (undefined4 *******)((int)unaff_s5 + (int)unaff_s0);\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);\n              }" { (do_statement "do {\n                  local_7c = unaff_s0;\n                  local_78 = unaff_s4;\n                  local_74 = unaff_s5;\n                  local_70 = unaff_s3;\n                  unaff_s6 = (undefined4 *******)\n                             (*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n                  pppppppuVar9 = local_80;\n                  if (unaff_s6 == (undefined4 *******)0x0) goto LAB_001c8908;\n                  unaff_s5 = (undefined4 *******)((int)unaff_s5 + (int)unaff_s0);\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);" do (compound_statement "{\n                  local_7c = unaff_s0;\n                  local_78 = unaff_s4;\n                  local_74 = unaff_s5;\n                  local_70 = unaff_s3;\n                  unaff_s6 = (undefined4 *******)\n                             (*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n                  pppppppuVar9 = local_80;\n                  if (unaff_s6 == (undefined4 *******)0x0) goto LAB_001c8908;\n                  unaff_s5 = (undefined4 *******)((int)unaff_s5 + (int)unaff_s0);\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                }" { (expression_statement "local_7c = unaff_s0;" (assignment_expression "local_7c = unaff_s0" identifier = identifier) ;) (expression_statement "local_78 = unaff_s4;" (assignment_expression "local_78 = unaff_s4" identifier = identifier) ;) (expression_statement "local_74 = unaff_s5;" (assignment_expression "local_74 = unaff_s5" identifier = identifier) ;) (expression_statement "local_70 = unaff_s3;" (assignment_expression "local_70 = unaff_s3" identifier = identifier) ;) (expression_statement "unaff_s6 = (undefined4 *******)\n                             (*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);" (assignment_expression "unaff_s6 = (undefined4 *******)\n                             (*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3)" identifier = (cast_expression "(undefined4 *******)\n                             (*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3)" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3)" (parenthesized_expression "(*(code *)PTR_CropImage_003a90b8)" ( (pointer_expression "*(code *)PTR_CropImage_003a90b8" * (cast_expression "(code *)PTR_CropImage_003a90b8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_1,&local_7c,param_3)" ( identifier , (pointer_expression "&local_7c" & identifier) , identifier ))))) ;) (expression_statement "pppppppuVar9 = local_80;" (assignment_expression "pppppppuVar9 = local_80" identifier = identifier) ;) (if_statement "if (unaff_s6 == (undefined4 *******)0x0) goto LAB_001c8908;" if (parenthesized_expression "(unaff_s6 == (undefined4 *******)0x0)" ( (binary_expression "unaff_s6 == (undefined4 *******)0x0" identifier == (cast_expression "(undefined4 *******)0x0" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (goto_statement "goto LAB_001c8908;" goto statement_identifier ;)) (expression_statement "unaff_s5 = (undefined4 *******)((int)unaff_s5 + (int)unaff_s0);" (assignment_expression "unaff_s5 = (undefined4 *******)((int)unaff_s5 + (int)unaff_s0)" identifier = (cast_expression "(undefined4 *******)((int)unaff_s5 + (int)unaff_s0)" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)unaff_s5 + (int)unaff_s0)" ( (binary_expression "(int)unaff_s5 + (int)unaff_s0" (cast_expression "(int)unaff_s5" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)unaff_s0" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "(*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);" (call_expression "(*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6)" (parenthesized_expression "(*(code *)PTR_AppendImageToList_003a9880)" ( (pointer_expression "*(code *)PTR_AppendImageToList_003a9880" * (cast_expression "(code *)PTR_AppendImageToList_003a9880" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s8,unaff_s6)" ( identifier , identifier ))) ;) }) while (parenthesized_expression "((int)unaff_s5 < (int)unaff_s7)" ( (binary_expression "(int)unaff_s5 < (int)unaff_s7" (cast_expression "(int)unaff_s5" ( (type_descriptor "int" primitive_type) ) identifier) < (cast_expression "(int)unaff_s7" ( (type_descriptor "int" primitive_type) ) identifier)) )) ;) }))) (expression_statement "unaff_s3 = (undefined4 *******)((int)unaff_s3 + (int)unaff_s4);" (assignment_expression "unaff_s3 = (undefined4 *******)((int)unaff_s3 + (int)unaff_s4)" identifier = (cast_expression "(undefined4 *******)((int)unaff_s3 + (int)unaff_s4)" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)unaff_s3 + (int)unaff_s4)" ( (binary_expression "(int)unaff_s3 + (int)unaff_s4" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)unaff_s4" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "pppppppuVar9 = local_80;" (assignment_expression "pppppppuVar9 = local_80" identifier = identifier) ;) }) while (parenthesized_expression "((int)unaff_s3 < (int)ppppppuVar2)" ( (binary_expression "(int)unaff_s3 < (int)ppppppuVar2" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) < (cast_expression "(int)ppppppuVar2" ( (type_descriptor "int" primitive_type) ) identifier)) )) ;) })) }) (else_clause "else {\n          local_e8 = param_3;\n          pppppppuVar9 = (undefined4 *******)(*(code *)PTR_CloneImage_003a9830)(param_1,0,0,1);\n        }" else (compound_statement "{\n          local_e8 = param_3;\n          pppppppuVar9 = (undefined4 *******)(*(code *)PTR_CloneImage_003a9830)(param_1,0,0,1);\n        }" { (expression_statement "local_e8 = param_3;" (assignment_expression "local_e8 = param_3" identifier = identifier) ;) (expression_statement "pppppppuVar9 = (undefined4 *******)(*(code *)PTR_CloneImage_003a9830)(param_1,0,0,1);" (assignment_expression "pppppppuVar9 = (undefined4 *******)(*(code *)PTR_CloneImage_003a9830)(param_1,0,0,1)" identifier = (cast_expression "(undefined4 *******)(*(code *)PTR_CloneImage_003a9830)(param_1,0,0,1)" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(*(code *)PTR_CloneImage_003a9830)(param_1,0,0,1)" (parenthesized_expression "(*(code *)PTR_CloneImage_003a9830)" ( (pointer_expression "*(code *)PTR_CloneImage_003a9830" * (cast_expression "(code *)PTR_CloneImage_003a9830" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_1,0,0,1)" ( identifier , number_literal , number_literal , number_literal ))))) ;) }))) }))) }))) (labeled_statement "LAB_001c8908:\n    if (local_5c == *(int *)puVar20) {\n      return pppppppuVar9;\n    }" statement_identifier : (if_statement "if (local_5c == *(int *)puVar20) {\n      return pppppppuVar9;\n    }" if (parenthesized_expression "(local_5c == *(int *)puVar20)" ( (binary_expression "local_5c == *(int *)puVar20" identifier == (pointer_expression "*(int *)puVar20" * (cast_expression "(int *)puVar20" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) )) (compound_statement "{\n      return pppppppuVar9;\n    }" { (return_statement "return pppppppuVar9;" return identifier ;) }))) (expression_statement "(*(code *)PTR___stack_chk_fail_003a9064)();" (call_expression "(*(code *)PTR___stack_chk_fail_003a9064)()" (parenthesized_expression "(*(code *)PTR___stack_chk_fail_003a9064)" ( (pointer_expression "*(code *)PTR___stack_chk_fail_003a9064" * (cast_expression "(code *)PTR___stack_chk_fail_003a9064" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))) ;) (expression_statement "unaff_s1 = param_1;" (assignment_expression "unaff_s1 = param_1" identifier = identifier) ;) (expression_statement "unaff_s2 = param_3;" (assignment_expression "unaff_s2 = param_3" identifier = identifier) ;) (goto_statement "goto LAB_001c8ef8;" goto statement_identifier ;) })))) (expression_statement "ppppppuVar2 = (undefined4 ******)0x323;" (assignment_expression "ppppppuVar2 = (undefined4 ******)0x323" identifier = (cast_expression "(undefined4 ******)0x323" ( (type_descriptor "undefined4 ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) ;) (expression_statement "pppppppuVar12 = (undefined4 *******)(PTR_s_courses_003a88ec + -0x288c);" (assignment_expression "pppppppuVar12 = (undefined4 *******)(PTR_s_courses_003a88ec + -0x288c)" identifier = (cast_expression "(undefined4 *******)(PTR_s_courses_003a88ec + -0x288c)" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(PTR_s_courses_003a88ec + -0x288c)" ( (binary_expression "PTR_s_courses_003a88ec + -0x288c" identifier + number_literal) )))) ;) (expression_statement "pcVar23 = ExcerptImage;" (assignment_expression "pcVar23 = ExcerptImage" identifier = identifier) ;) (expression_statement "pppppppuVar9 = (undefined4 *******)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3784);" (assignment_expression "pppppppuVar9 = (undefined4 *******)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3784)" identifier = (cast_expression "(undefined4 *******)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3784)" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3784)" ( (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3784" identifier + number_literal) )))) ;) (expression_statement "puVar20 = PTR___assert_fail_003a9608;" (assignment_expression "puVar20 = PTR___assert_fail_003a9608" identifier = identifier) ;) (expression_statement "(*(code *)PTR___assert_fail_003a9608)();" (call_expression "(*(code *)PTR___assert_fail_003a9608)()" (parenthesized_expression "(*(code *)PTR___assert_fail_003a9608)" ( (pointer_expression "*(code *)PTR___assert_fail_003a9608" * (cast_expression "(code *)PTR___assert_fail_003a9608" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))) ;) (expression_statement "puVar8 = puVar20 + 0x1e7970;" (assignment_expression "puVar8 = puVar20 + 0x1e7970" identifier = (binary_expression "puVar20 + 0x1e7970" identifier + number_literal)) ;) (expression_statement "piVar18 = *(int **)(puVar20 + 0x1e02f0);" (assignment_expression "piVar18 = *(int **)(puVar20 + 0x1e02f0)" identifier = (pointer_expression "*(int **)(puVar20 + 0x1e02f0)" * (cast_expression "(int **)(puVar20 + 0x1e02f0)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar20 + 0x1e02f0)" ( (binary_expression "puVar20 + 0x1e02f0" identifier + number_literal) ))))) ;) (expression_statement "iStack_11c = *piVar18;" (assignment_expression "iStack_11c = *piVar18" identifier = (pointer_expression "*piVar18" * identifier)) ;) (expression_statement "puStack_150 = puVar8;" (assignment_expression "puStack_150 = puVar8" identifier = identifier) ;) (expression_statement "pppppppuStack_118 = unaff_s0;" (assignment_expression "pppppppuStack_118 = unaff_s0" identifier = identifier) ;) (expression_statement "pppppppuStack_114 = param_1;" (assignment_expression "pppppppuStack_114 = param_1" identifier = identifier) ;) (expression_statement "ppppppuStack_110 = unaff_s2;" (assignment_expression "ppppppuStack_110 = unaff_s2" identifier = identifier) ;) (expression_statement "pppppppuStack_10c = unaff_s3;" (assignment_expression "pppppppuStack_10c = unaff_s3" identifier = identifier) ;) (expression_statement "ppppppuStack_108 = unaff_s4;" (assignment_expression "ppppppuStack_108 = unaff_s4" identifier = identifier) ;) (expression_statement "pppppppuStack_104 = unaff_s5;" (assignment_expression "pppppppuStack_104 = unaff_s5" identifier = identifier) ;) (expression_statement "pppppppuStack_100 = unaff_s6;" (assignment_expression "pppppppuStack_100 = unaff_s6" identifier = identifier) ;) (expression_statement "pcStack_fc = pcVar23;" (assignment_expression "pcStack_fc = pcVar23" identifier = identifier) ;) (if_statement "if (pppppppuVar9 == (undefined4 *******)0x0) {\n    iVar15 = *(int *)(puVar20 + 0x1df9ac) + -0x26ac;\n    (**(code **)(puVar20 + 0x1e06c8))\n              (*(int *)(puVar20 + 0x1df9a8) + -0x37b0,*(int *)(puVar20 + 0x1df9ac) + -0x288c,0x3f4,\n               iVar15);\nLAB_001c92d4:\n    iVar15 = iVar15 + -0x26ac;\n    (**(code **)(puVar8 + -0x72a8))\n              (*(int *)(puVar8 + -0x7fd0) + 0x294c,*(int *)(puVar8 + -0x7fc4) + -0x288c,0x3fa,iVar15\n              );\n    ppppppuVar2 = unaff_s2;\nLAB_001c92f4:\n    iVar15 = iVar15 + -0x26ac;\n    (**(code **)(puVar8 + -0x72a8))\n              (*(int *)(puVar8 + -0x7fd0) + 0x1cac,*(int *)(puVar8 + -0x7fc4) + -0x288c,0x3f9,iVar15\n              );\nLAB_001c9314:\n    (**(code **)(puVar8 + -0x784c))();\n    pppppppuVar9 = unaff_s0;\nLAB_001c9320:\n    (**(code **)(puVar8 + -0x72a8))\n              (*(int *)(puVar8 + -0x7fc4) + -0x2850,*(int *)(puVar8 + -0x7fc4) + -0x288c,0x3f8,\n               iVar15 + -0x26ac);\n    unaff_s2 = ppppppuVar2;\n  }\n  else if (pppppppuVar9[0xcdb] == (undefined4 ******)0xabacadab) {\n    if (pppppppuVar9[0xcd4] != (undefined4 ******)0x0) {\n      pppppppuStack_154 = pppppppuVar9 + 0xd0;\n      ppppppuStack_158 = (undefined4 ******)(*(int *)(puVar20 + 0x1df9a4) + -0x62ac);\n      (**(code **)(puVar20 + 0x1e02a0))\n                (0x8000,*(int *)(puVar20 + 0x1df9ac) + -0x288c,\n                 *(int *)(puVar20 + 0x1df9ac) + -0x26bc,0x3f7);\n    }\n    iVar15 = *(int *)(puStack_150 + -0x7fc4);\n    unaff_s3 = pppppppuVar12;\n    puVar8 = puStack_150;\n    if (pppppppuVar12 != (undefined4 *******)0x0) {\n      unaff_s0 = pppppppuVar9;\n      if (ppppppuVar2 == (undefined4 ******)0x0) goto LAB_001c92f4;\n      unaff_s2 = ppppppuVar2;\n      if (ppppppuVar2[7] != (undefined4 *****)0xabacadab) goto LAB_001c92d4;\n      iVar15 = 1;\n      ppppppuStack_158 = ppppppuVar2;\n      param_1 = (undefined4 *******)\n                (**(code **)(puStack_150 + -0x7080))(pppppppuVar9,*pppppppuVar12,pppppppuVar12[1],1)\n      ;\n      if (param_1 != (undefined4 *******)0x0) {\n        uStack_144 = 0;\n        uStack_148 = 0;\n        unaff_s5 = (undefined4 *******)\n                   (**(code **)(puStack_150 + -0x715c))(pppppppuVar9,ppppppuVar2);\n        unaff_s6 = (undefined4 *******)(**(code **)(puStack_150 + -0x79dc))(param_1,ppppppuVar2);\n        iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9);\n        if (((iVar15 == 4) ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9), iVar15 == 3)) &&\n           ((iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 4 ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 3)))) {\n          (**(code **)(puStack_150 + -0x7774))(7);\n          ppppppuVar7 = param_1[7];\n          if ((int)ppppppuVar7 < 0) {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1 < (int)ppppppuVar7 + 0x3f >> 6) goto LAB_001c9298;\nLAB_001c91a4:\n            bVar1 = (int)ppppppuVar7 < 0x80;\n          }\n          else {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if ((int)ppppppuVar7 >> 6 <= extraout_v1) goto LAB_001c91a4;\nLAB_001c9298:\n            (*pcVar23)(7);\n            bVar1 = extraout_v1_02 < 2;\n          }\n          iVar14 = 1;\n          if ((bool)(bVar1 ^ 1)) {\n            (**(code **)(puStack_150 + -0x7774))(7);\n            ppppppuVar7 = param_1[7];\n            if ((int)ppppppuVar7 < 0) {\n              ppppppuVar7 = (undefined4 ******)((int)ppppppuVar7 + 0x3f);\n            }\n            iVar14 = (int)ppppppuVar7 >> 6;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1_01 < iVar14) {\nLAB_001c9234:\n              (*pcVar23)(7);\n              iVar14 = extraout_v1_00;\n            }\n            goto LAB_001c9088;\n          }\n          iVar10 = *(int *)(puStack_150 + -0x7f10);\n        }\n        else {\n          uVar36 = (**(code **)(puStack_150 + -0x7774))(7);\n          if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            uVar36 = (*pcVar23)(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c9070;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            iVar14 = 1;\n          }\n          else {\nLAB_001c9070:\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\nLAB_001c9074:\n            uVar36 = (*pcVar23)(7);\n            if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n               (pcVar23 = *(code **)(puStack_150 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c9234;\n            iVar14 = 2;\n          }\nLAB_001c9088:\n          iVar10 = *(int *)(puStack_150 + -0x7f10);\n        }\n        iVar15 = 0;\n        ppppppuStack_124 = (undefined4 ******)0x1;\n        puStack_120 = &uStack_148;\n        pppppppuStack_13c = pppppppuVar9;\n        pppppppuStack_138 = pppppppuVar12;\n        ppppppuStack_134 = ppppppuVar2;\n        pppppppuStack_130 = unaff_s6;\n        pppppppuStack_12c = unaff_s5;\n        pppppppuStack_128 = param_1;\n        (**(code **)(puStack_150 + -0x7718))(iVar10 + 0x5428,&pppppppuStack_13c,iVar14,0);\n        ppppppuVar2 = ppppppuStack_124;\n        (**(code **)(puStack_150 + -0x79bc))(unaff_s6);\n        (**(code **)(puStack_150 + -0x79bc))(unaff_s5);\n        param_1[0xa8] = pppppppuVar9[0xa8];\n        if (ppppppuVar2 == (undefined4 ******)0x0) {\n          param_1 = (undefined4 *******)(**(code **)(puStack_150 + -0x7964))(param_1);\n        }\n      }\n      puVar8 = puStack_150;\n      if (iStack_11c == *piVar18) {\n        return param_1;\n      }\n      goto LAB_001c9314;\n    }\n    goto LAB_001c9320;\n  }" if (parenthesized_expression "(pppppppuVar9 == (undefined4 *******)0x0)" ( (binary_expression "pppppppuVar9 == (undefined4 *******)0x0" identifier == (cast_expression "(undefined4 *******)0x0" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n    iVar15 = *(int *)(puVar20 + 0x1df9ac) + -0x26ac;\n    (**(code **)(puVar20 + 0x1e06c8))\n              (*(int *)(puVar20 + 0x1df9a8) + -0x37b0,*(int *)(puVar20 + 0x1df9ac) + -0x288c,0x3f4,\n               iVar15);\nLAB_001c92d4:\n    iVar15 = iVar15 + -0x26ac;\n    (**(code **)(puVar8 + -0x72a8))\n              (*(int *)(puVar8 + -0x7fd0) + 0x294c,*(int *)(puVar8 + -0x7fc4) + -0x288c,0x3fa,iVar15\n              );\n    ppppppuVar2 = unaff_s2;\nLAB_001c92f4:\n    iVar15 = iVar15 + -0x26ac;\n    (**(code **)(puVar8 + -0x72a8))\n              (*(int *)(puVar8 + -0x7fd0) + 0x1cac,*(int *)(puVar8 + -0x7fc4) + -0x288c,0x3f9,iVar15\n              );\nLAB_001c9314:\n    (**(code **)(puVar8 + -0x784c))();\n    pppppppuVar9 = unaff_s0;\nLAB_001c9320:\n    (**(code **)(puVar8 + -0x72a8))\n              (*(int *)(puVar8 + -0x7fc4) + -0x2850,*(int *)(puVar8 + -0x7fc4) + -0x288c,0x3f8,\n               iVar15 + -0x26ac);\n    unaff_s2 = ppppppuVar2;\n  }" { (expression_statement "iVar15 = *(int *)(puVar20 + 0x1df9ac) + -0x26ac;" (assignment_expression "iVar15 = *(int *)(puVar20 + 0x1df9ac) + -0x26ac" identifier = (binary_expression "*(int *)(puVar20 + 0x1df9ac) + -0x26ac" (pointer_expression "*(int *)(puVar20 + 0x1df9ac)" * (cast_expression "(int *)(puVar20 + 0x1df9ac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar20 + 0x1df9ac)" ( (binary_expression "puVar20 + 0x1df9ac" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "(**(code **)(puVar20 + 0x1e06c8))\n              (*(int *)(puVar20 + 0x1df9a8) + -0x37b0,*(int *)(puVar20 + 0x1df9ac) + -0x288c,0x3f4,\n               iVar15);" (call_expression "(**(code **)(puVar20 + 0x1e06c8))\n              (*(int *)(puVar20 + 0x1df9a8) + -0x37b0,*(int *)(puVar20 + 0x1df9ac) + -0x288c,0x3f4,\n               iVar15)" (parenthesized_expression "(**(code **)(puVar20 + 0x1e06c8))" ( (pointer_expression "**(code **)(puVar20 + 0x1e06c8)" * (pointer_expression "*(code **)(puVar20 + 0x1e06c8)" * (cast_expression "(code **)(puVar20 + 0x1e06c8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar20 + 0x1e06c8)" ( (binary_expression "puVar20 + 0x1e06c8" identifier + number_literal) ))))) )) (argument_list "(*(int *)(puVar20 + 0x1df9a8) + -0x37b0,*(int *)(puVar20 + 0x1df9ac) + -0x288c,0x3f4,\n               iVar15)" ( (binary_expression "*(int *)(puVar20 + 0x1df9a8) + -0x37b0" (pointer_expression "*(int *)(puVar20 + 0x1df9a8)" * (cast_expression "(int *)(puVar20 + 0x1df9a8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar20 + 0x1df9a8)" ( (binary_expression "puVar20 + 0x1df9a8" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar20 + 0x1df9ac) + -0x288c" (pointer_expression "*(int *)(puVar20 + 0x1df9ac)" * (cast_expression "(int *)(puVar20 + 0x1df9ac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar20 + 0x1df9ac)" ( (binary_expression "puVar20 + 0x1df9ac" identifier + number_literal) )))) + number_literal) , number_literal , identifier ))) ;) (labeled_statement "LAB_001c92d4:\n    iVar15 = iVar15 + -0x26ac;" statement_identifier : (expression_statement "iVar15 = iVar15 + -0x26ac;" (assignment_expression "iVar15 = iVar15 + -0x26ac" identifier = (binary_expression "iVar15 + -0x26ac" identifier + number_literal)) ;)) (expression_statement "(**(code **)(puVar8 + -0x72a8))\n              (*(int *)(puVar8 + -0x7fd0) + 0x294c,*(int *)(puVar8 + -0x7fc4) + -0x288c,0x3fa,iVar15\n              );" (call_expression "(**(code **)(puVar8 + -0x72a8))\n              (*(int *)(puVar8 + -0x7fd0) + 0x294c,*(int *)(puVar8 + -0x7fc4) + -0x288c,0x3fa,iVar15\n              )" (parenthesized_expression "(**(code **)(puVar8 + -0x72a8))" ( (pointer_expression "**(code **)(puVar8 + -0x72a8)" * (pointer_expression "*(code **)(puVar8 + -0x72a8)" * (cast_expression "(code **)(puVar8 + -0x72a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + -0x72a8)" ( (binary_expression "puVar8 + -0x72a8" identifier + number_literal) ))))) )) (argument_list "(*(int *)(puVar8 + -0x7fd0) + 0x294c,*(int *)(puVar8 + -0x7fc4) + -0x288c,0x3fa,iVar15\n              )" ( (binary_expression "*(int *)(puVar8 + -0x7fd0) + 0x294c" (pointer_expression "*(int *)(puVar8 + -0x7fd0)" * (cast_expression "(int *)(puVar8 + -0x7fd0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x7fd0)" ( (binary_expression "puVar8 + -0x7fd0" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar8 + -0x7fc4) + -0x288c" (pointer_expression "*(int *)(puVar8 + -0x7fc4)" * (cast_expression "(int *)(puVar8 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x7fc4)" ( (binary_expression "puVar8 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , identifier ))) ;) (expression_statement "ppppppuVar2 = unaff_s2;" (assignment_expression "ppppppuVar2 = unaff_s2" identifier = identifier) ;) (labeled_statement "LAB_001c92f4:\n    iVar15 = iVar15 + -0x26ac;" statement_identifier : (expression_statement "iVar15 = iVar15 + -0x26ac;" (assignment_expression "iVar15 = iVar15 + -0x26ac" identifier = (binary_expression "iVar15 + -0x26ac" identifier + number_literal)) ;)) (expression_statement "(**(code **)(puVar8 + -0x72a8))\n              (*(int *)(puVar8 + -0x7fd0) + 0x1cac,*(int *)(puVar8 + -0x7fc4) + -0x288c,0x3f9,iVar15\n              );" (call_expression "(**(code **)(puVar8 + -0x72a8))\n              (*(int *)(puVar8 + -0x7fd0) + 0x1cac,*(int *)(puVar8 + -0x7fc4) + -0x288c,0x3f9,iVar15\n              )" (parenthesized_expression "(**(code **)(puVar8 + -0x72a8))" ( (pointer_expression "**(code **)(puVar8 + -0x72a8)" * (pointer_expression "*(code **)(puVar8 + -0x72a8)" * (cast_expression "(code **)(puVar8 + -0x72a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + -0x72a8)" ( (binary_expression "puVar8 + -0x72a8" identifier + number_literal) ))))) )) (argument_list "(*(int *)(puVar8 + -0x7fd0) + 0x1cac,*(int *)(puVar8 + -0x7fc4) + -0x288c,0x3f9,iVar15\n              )" ( (binary_expression "*(int *)(puVar8 + -0x7fd0) + 0x1cac" (pointer_expression "*(int *)(puVar8 + -0x7fd0)" * (cast_expression "(int *)(puVar8 + -0x7fd0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x7fd0)" ( (binary_expression "puVar8 + -0x7fd0" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar8 + -0x7fc4) + -0x288c" (pointer_expression "*(int *)(puVar8 + -0x7fc4)" * (cast_expression "(int *)(puVar8 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x7fc4)" ( (binary_expression "puVar8 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , identifier ))) ;) (labeled_statement "LAB_001c9314:\n    (**(code **)(puVar8 + -0x784c))();" statement_identifier : (expression_statement "(**(code **)(puVar8 + -0x784c))();" (call_expression "(**(code **)(puVar8 + -0x784c))()" (parenthesized_expression "(**(code **)(puVar8 + -0x784c))" ( (pointer_expression "**(code **)(puVar8 + -0x784c)" * (pointer_expression "*(code **)(puVar8 + -0x784c)" * (cast_expression "(code **)(puVar8 + -0x784c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + -0x784c)" ( (binary_expression "puVar8 + -0x784c" identifier + number_literal) ))))) )) (argument_list "()" ( ))) ;)) (expression_statement "pppppppuVar9 = unaff_s0;" (assignment_expression "pppppppuVar9 = unaff_s0" identifier = identifier) ;) (labeled_statement "LAB_001c9320:\n    (**(code **)(puVar8 + -0x72a8))\n              (*(int *)(puVar8 + -0x7fc4) + -0x2850,*(int *)(puVar8 + -0x7fc4) + -0x288c,0x3f8,\n               iVar15 + -0x26ac);" statement_identifier : (expression_statement "(**(code **)(puVar8 + -0x72a8))\n              (*(int *)(puVar8 + -0x7fc4) + -0x2850,*(int *)(puVar8 + -0x7fc4) + -0x288c,0x3f8,\n               iVar15 + -0x26ac);" (call_expression "(**(code **)(puVar8 + -0x72a8))\n              (*(int *)(puVar8 + -0x7fc4) + -0x2850,*(int *)(puVar8 + -0x7fc4) + -0x288c,0x3f8,\n               iVar15 + -0x26ac)" (parenthesized_expression "(**(code **)(puVar8 + -0x72a8))" ( (pointer_expression "**(code **)(puVar8 + -0x72a8)" * (pointer_expression "*(code **)(puVar8 + -0x72a8)" * (cast_expression "(code **)(puVar8 + -0x72a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + -0x72a8)" ( (binary_expression "puVar8 + -0x72a8" identifier + number_literal) ))))) )) (argument_list "(*(int *)(puVar8 + -0x7fc4) + -0x2850,*(int *)(puVar8 + -0x7fc4) + -0x288c,0x3f8,\n               iVar15 + -0x26ac)" ( (binary_expression "*(int *)(puVar8 + -0x7fc4) + -0x2850" (pointer_expression "*(int *)(puVar8 + -0x7fc4)" * (cast_expression "(int *)(puVar8 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x7fc4)" ( (binary_expression "puVar8 + -0x7fc4" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar8 + -0x7fc4) + -0x288c" (pointer_expression "*(int *)(puVar8 + -0x7fc4)" * (cast_expression "(int *)(puVar8 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x7fc4)" ( (binary_expression "puVar8 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "iVar15 + -0x26ac" identifier + number_literal) ))) ;)) (expression_statement "unaff_s2 = ppppppuVar2;" (assignment_expression "unaff_s2 = ppppppuVar2" identifier = identifier) ;) }) (else_clause "else if (pppppppuVar9[0xcdb] == (undefined4 ******)0xabacadab) {\n    if (pppppppuVar9[0xcd4] != (undefined4 ******)0x0) {\n      pppppppuStack_154 = pppppppuVar9 + 0xd0;\n      ppppppuStack_158 = (undefined4 ******)(*(int *)(puVar20 + 0x1df9a4) + -0x62ac);\n      (**(code **)(puVar20 + 0x1e02a0))\n                (0x8000,*(int *)(puVar20 + 0x1df9ac) + -0x288c,\n                 *(int *)(puVar20 + 0x1df9ac) + -0x26bc,0x3f7);\n    }\n    iVar15 = *(int *)(puStack_150 + -0x7fc4);\n    unaff_s3 = pppppppuVar12;\n    puVar8 = puStack_150;\n    if (pppppppuVar12 != (undefined4 *******)0x0) {\n      unaff_s0 = pppppppuVar9;\n      if (ppppppuVar2 == (undefined4 ******)0x0) goto LAB_001c92f4;\n      unaff_s2 = ppppppuVar2;\n      if (ppppppuVar2[7] != (undefined4 *****)0xabacadab) goto LAB_001c92d4;\n      iVar15 = 1;\n      ppppppuStack_158 = ppppppuVar2;\n      param_1 = (undefined4 *******)\n                (**(code **)(puStack_150 + -0x7080))(pppppppuVar9,*pppppppuVar12,pppppppuVar12[1],1)\n      ;\n      if (param_1 != (undefined4 *******)0x0) {\n        uStack_144 = 0;\n        uStack_148 = 0;\n        unaff_s5 = (undefined4 *******)\n                   (**(code **)(puStack_150 + -0x715c))(pppppppuVar9,ppppppuVar2);\n        unaff_s6 = (undefined4 *******)(**(code **)(puStack_150 + -0x79dc))(param_1,ppppppuVar2);\n        iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9);\n        if (((iVar15 == 4) ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9), iVar15 == 3)) &&\n           ((iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 4 ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 3)))) {\n          (**(code **)(puStack_150 + -0x7774))(7);\n          ppppppuVar7 = param_1[7];\n          if ((int)ppppppuVar7 < 0) {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1 < (int)ppppppuVar7 + 0x3f >> 6) goto LAB_001c9298;\nLAB_001c91a4:\n            bVar1 = (int)ppppppuVar7 < 0x80;\n          }\n          else {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if ((int)ppppppuVar7 >> 6 <= extraout_v1) goto LAB_001c91a4;\nLAB_001c9298:\n            (*pcVar23)(7);\n            bVar1 = extraout_v1_02 < 2;\n          }\n          iVar14 = 1;\n          if ((bool)(bVar1 ^ 1)) {\n            (**(code **)(puStack_150 + -0x7774))(7);\n            ppppppuVar7 = param_1[7];\n            if ((int)ppppppuVar7 < 0) {\n              ppppppuVar7 = (undefined4 ******)((int)ppppppuVar7 + 0x3f);\n            }\n            iVar14 = (int)ppppppuVar7 >> 6;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1_01 < iVar14) {\nLAB_001c9234:\n              (*pcVar23)(7);\n              iVar14 = extraout_v1_00;\n            }\n            goto LAB_001c9088;\n          }\n          iVar10 = *(int *)(puStack_150 + -0x7f10);\n        }\n        else {\n          uVar36 = (**(code **)(puStack_150 + -0x7774))(7);\n          if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            uVar36 = (*pcVar23)(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c9070;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            iVar14 = 1;\n          }\n          else {\nLAB_001c9070:\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\nLAB_001c9074:\n            uVar36 = (*pcVar23)(7);\n            if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n               (pcVar23 = *(code **)(puStack_150 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c9234;\n            iVar14 = 2;\n          }\nLAB_001c9088:\n          iVar10 = *(int *)(puStack_150 + -0x7f10);\n        }\n        iVar15 = 0;\n        ppppppuStack_124 = (undefined4 ******)0x1;\n        puStack_120 = &uStack_148;\n        pppppppuStack_13c = pppppppuVar9;\n        pppppppuStack_138 = pppppppuVar12;\n        ppppppuStack_134 = ppppppuVar2;\n        pppppppuStack_130 = unaff_s6;\n        pppppppuStack_12c = unaff_s5;\n        pppppppuStack_128 = param_1;\n        (**(code **)(puStack_150 + -0x7718))(iVar10 + 0x5428,&pppppppuStack_13c,iVar14,0);\n        ppppppuVar2 = ppppppuStack_124;\n        (**(code **)(puStack_150 + -0x79bc))(unaff_s6);\n        (**(code **)(puStack_150 + -0x79bc))(unaff_s5);\n        param_1[0xa8] = pppppppuVar9[0xa8];\n        if (ppppppuVar2 == (undefined4 ******)0x0) {\n          param_1 = (undefined4 *******)(**(code **)(puStack_150 + -0x7964))(param_1);\n        }\n      }\n      puVar8 = puStack_150;\n      if (iStack_11c == *piVar18) {\n        return param_1;\n      }\n      goto LAB_001c9314;\n    }\n    goto LAB_001c9320;\n  }" else (if_statement "if (pppppppuVar9[0xcdb] == (undefined4 ******)0xabacadab) {\n    if (pppppppuVar9[0xcd4] != (undefined4 ******)0x0) {\n      pppppppuStack_154 = pppppppuVar9 + 0xd0;\n      ppppppuStack_158 = (undefined4 ******)(*(int *)(puVar20 + 0x1df9a4) + -0x62ac);\n      (**(code **)(puVar20 + 0x1e02a0))\n                (0x8000,*(int *)(puVar20 + 0x1df9ac) + -0x288c,\n                 *(int *)(puVar20 + 0x1df9ac) + -0x26bc,0x3f7);\n    }\n    iVar15 = *(int *)(puStack_150 + -0x7fc4);\n    unaff_s3 = pppppppuVar12;\n    puVar8 = puStack_150;\n    if (pppppppuVar12 != (undefined4 *******)0x0) {\n      unaff_s0 = pppppppuVar9;\n      if (ppppppuVar2 == (undefined4 ******)0x0) goto LAB_001c92f4;\n      unaff_s2 = ppppppuVar2;\n      if (ppppppuVar2[7] != (undefined4 *****)0xabacadab) goto LAB_001c92d4;\n      iVar15 = 1;\n      ppppppuStack_158 = ppppppuVar2;\n      param_1 = (undefined4 *******)\n                (**(code **)(puStack_150 + -0x7080))(pppppppuVar9,*pppppppuVar12,pppppppuVar12[1],1)\n      ;\n      if (param_1 != (undefined4 *******)0x0) {\n        uStack_144 = 0;\n        uStack_148 = 0;\n        unaff_s5 = (undefined4 *******)\n                   (**(code **)(puStack_150 + -0x715c))(pppppppuVar9,ppppppuVar2);\n        unaff_s6 = (undefined4 *******)(**(code **)(puStack_150 + -0x79dc))(param_1,ppppppuVar2);\n        iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9);\n        if (((iVar15 == 4) ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9), iVar15 == 3)) &&\n           ((iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 4 ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 3)))) {\n          (**(code **)(puStack_150 + -0x7774))(7);\n          ppppppuVar7 = param_1[7];\n          if ((int)ppppppuVar7 < 0) {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1 < (int)ppppppuVar7 + 0x3f >> 6) goto LAB_001c9298;\nLAB_001c91a4:\n            bVar1 = (int)ppppppuVar7 < 0x80;\n          }\n          else {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if ((int)ppppppuVar7 >> 6 <= extraout_v1) goto LAB_001c91a4;\nLAB_001c9298:\n            (*pcVar23)(7);\n            bVar1 = extraout_v1_02 < 2;\n          }\n          iVar14 = 1;\n          if ((bool)(bVar1 ^ 1)) {\n            (**(code **)(puStack_150 + -0x7774))(7);\n            ppppppuVar7 = param_1[7];\n            if ((int)ppppppuVar7 < 0) {\n              ppppppuVar7 = (undefined4 ******)((int)ppppppuVar7 + 0x3f);\n            }\n            iVar14 = (int)ppppppuVar7 >> 6;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1_01 < iVar14) {\nLAB_001c9234:\n              (*pcVar23)(7);\n              iVar14 = extraout_v1_00;\n            }\n            goto LAB_001c9088;\n          }\n          iVar10 = *(int *)(puStack_150 + -0x7f10);\n        }\n        else {\n          uVar36 = (**(code **)(puStack_150 + -0x7774))(7);\n          if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            uVar36 = (*pcVar23)(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c9070;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            iVar14 = 1;\n          }\n          else {\nLAB_001c9070:\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\nLAB_001c9074:\n            uVar36 = (*pcVar23)(7);\n            if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n               (pcVar23 = *(code **)(puStack_150 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c9234;\n            iVar14 = 2;\n          }\nLAB_001c9088:\n          iVar10 = *(int *)(puStack_150 + -0x7f10);\n        }\n        iVar15 = 0;\n        ppppppuStack_124 = (undefined4 ******)0x1;\n        puStack_120 = &uStack_148;\n        pppppppuStack_13c = pppppppuVar9;\n        pppppppuStack_138 = pppppppuVar12;\n        ppppppuStack_134 = ppppppuVar2;\n        pppppppuStack_130 = unaff_s6;\n        pppppppuStack_12c = unaff_s5;\n        pppppppuStack_128 = param_1;\n        (**(code **)(puStack_150 + -0x7718))(iVar10 + 0x5428,&pppppppuStack_13c,iVar14,0);\n        ppppppuVar2 = ppppppuStack_124;\n        (**(code **)(puStack_150 + -0x79bc))(unaff_s6);\n        (**(code **)(puStack_150 + -0x79bc))(unaff_s5);\n        param_1[0xa8] = pppppppuVar9[0xa8];\n        if (ppppppuVar2 == (undefined4 ******)0x0) {\n          param_1 = (undefined4 *******)(**(code **)(puStack_150 + -0x7964))(param_1);\n        }\n      }\n      puVar8 = puStack_150;\n      if (iStack_11c == *piVar18) {\n        return param_1;\n      }\n      goto LAB_001c9314;\n    }\n    goto LAB_001c9320;\n  }" if (parenthesized_expression "(pppppppuVar9[0xcdb] == (undefined4 ******)0xabacadab)" ( (binary_expression "pppppppuVar9[0xcdb] == (undefined4 ******)0xabacadab" (subscript_expression "pppppppuVar9[0xcdb]" identifier [ number_literal ]) == (cast_expression "(undefined4 ******)0xabacadab" ( (type_descriptor "undefined4 ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n    if (pppppppuVar9[0xcd4] != (undefined4 ******)0x0) {\n      pppppppuStack_154 = pppppppuVar9 + 0xd0;\n      ppppppuStack_158 = (undefined4 ******)(*(int *)(puVar20 + 0x1df9a4) + -0x62ac);\n      (**(code **)(puVar20 + 0x1e02a0))\n                (0x8000,*(int *)(puVar20 + 0x1df9ac) + -0x288c,\n                 *(int *)(puVar20 + 0x1df9ac) + -0x26bc,0x3f7);\n    }\n    iVar15 = *(int *)(puStack_150 + -0x7fc4);\n    unaff_s3 = pppppppuVar12;\n    puVar8 = puStack_150;\n    if (pppppppuVar12 != (undefined4 *******)0x0) {\n      unaff_s0 = pppppppuVar9;\n      if (ppppppuVar2 == (undefined4 ******)0x0) goto LAB_001c92f4;\n      unaff_s2 = ppppppuVar2;\n      if (ppppppuVar2[7] != (undefined4 *****)0xabacadab) goto LAB_001c92d4;\n      iVar15 = 1;\n      ppppppuStack_158 = ppppppuVar2;\n      param_1 = (undefined4 *******)\n                (**(code **)(puStack_150 + -0x7080))(pppppppuVar9,*pppppppuVar12,pppppppuVar12[1],1)\n      ;\n      if (param_1 != (undefined4 *******)0x0) {\n        uStack_144 = 0;\n        uStack_148 = 0;\n        unaff_s5 = (undefined4 *******)\n                   (**(code **)(puStack_150 + -0x715c))(pppppppuVar9,ppppppuVar2);\n        unaff_s6 = (undefined4 *******)(**(code **)(puStack_150 + -0x79dc))(param_1,ppppppuVar2);\n        iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9);\n        if (((iVar15 == 4) ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9), iVar15 == 3)) &&\n           ((iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 4 ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 3)))) {\n          (**(code **)(puStack_150 + -0x7774))(7);\n          ppppppuVar7 = param_1[7];\n          if ((int)ppppppuVar7 < 0) {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1 < (int)ppppppuVar7 + 0x3f >> 6) goto LAB_001c9298;\nLAB_001c91a4:\n            bVar1 = (int)ppppppuVar7 < 0x80;\n          }\n          else {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if ((int)ppppppuVar7 >> 6 <= extraout_v1) goto LAB_001c91a4;\nLAB_001c9298:\n            (*pcVar23)(7);\n            bVar1 = extraout_v1_02 < 2;\n          }\n          iVar14 = 1;\n          if ((bool)(bVar1 ^ 1)) {\n            (**(code **)(puStack_150 + -0x7774))(7);\n            ppppppuVar7 = param_1[7];\n            if ((int)ppppppuVar7 < 0) {\n              ppppppuVar7 = (undefined4 ******)((int)ppppppuVar7 + 0x3f);\n            }\n            iVar14 = (int)ppppppuVar7 >> 6;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1_01 < iVar14) {\nLAB_001c9234:\n              (*pcVar23)(7);\n              iVar14 = extraout_v1_00;\n            }\n            goto LAB_001c9088;\n          }\n          iVar10 = *(int *)(puStack_150 + -0x7f10);\n        }\n        else {\n          uVar36 = (**(code **)(puStack_150 + -0x7774))(7);\n          if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            uVar36 = (*pcVar23)(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c9070;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            iVar14 = 1;\n          }\n          else {\nLAB_001c9070:\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\nLAB_001c9074:\n            uVar36 = (*pcVar23)(7);\n            if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n               (pcVar23 = *(code **)(puStack_150 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c9234;\n            iVar14 = 2;\n          }\nLAB_001c9088:\n          iVar10 = *(int *)(puStack_150 + -0x7f10);\n        }\n        iVar15 = 0;\n        ppppppuStack_124 = (undefined4 ******)0x1;\n        puStack_120 = &uStack_148;\n        pppppppuStack_13c = pppppppuVar9;\n        pppppppuStack_138 = pppppppuVar12;\n        ppppppuStack_134 = ppppppuVar2;\n        pppppppuStack_130 = unaff_s6;\n        pppppppuStack_12c = unaff_s5;\n        pppppppuStack_128 = param_1;\n        (**(code **)(puStack_150 + -0x7718))(iVar10 + 0x5428,&pppppppuStack_13c,iVar14,0);\n        ppppppuVar2 = ppppppuStack_124;\n        (**(code **)(puStack_150 + -0x79bc))(unaff_s6);\n        (**(code **)(puStack_150 + -0x79bc))(unaff_s5);\n        param_1[0xa8] = pppppppuVar9[0xa8];\n        if (ppppppuVar2 == (undefined4 ******)0x0) {\n          param_1 = (undefined4 *******)(**(code **)(puStack_150 + -0x7964))(param_1);\n        }\n      }\n      puVar8 = puStack_150;\n      if (iStack_11c == *piVar18) {\n        return param_1;\n      }\n      goto LAB_001c9314;\n    }\n    goto LAB_001c9320;\n  }" { (if_statement "if (pppppppuVar9[0xcd4] != (undefined4 ******)0x0) {\n      pppppppuStack_154 = pppppppuVar9 + 0xd0;\n      ppppppuStack_158 = (undefined4 ******)(*(int *)(puVar20 + 0x1df9a4) + -0x62ac);\n      (**(code **)(puVar20 + 0x1e02a0))\n                (0x8000,*(int *)(puVar20 + 0x1df9ac) + -0x288c,\n                 *(int *)(puVar20 + 0x1df9ac) + -0x26bc,0x3f7);\n    }" if (parenthesized_expression "(pppppppuVar9[0xcd4] != (undefined4 ******)0x0)" ( (binary_expression "pppppppuVar9[0xcd4] != (undefined4 ******)0x0" (subscript_expression "pppppppuVar9[0xcd4]" identifier [ number_literal ]) != (cast_expression "(undefined4 ******)0x0" ( (type_descriptor "undefined4 ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n      pppppppuStack_154 = pppppppuVar9 + 0xd0;\n      ppppppuStack_158 = (undefined4 ******)(*(int *)(puVar20 + 0x1df9a4) + -0x62ac);\n      (**(code **)(puVar20 + 0x1e02a0))\n                (0x8000,*(int *)(puVar20 + 0x1df9ac) + -0x288c,\n                 *(int *)(puVar20 + 0x1df9ac) + -0x26bc,0x3f7);\n    }" { (expression_statement "pppppppuStack_154 = pppppppuVar9 + 0xd0;" (assignment_expression "pppppppuStack_154 = pppppppuVar9 + 0xd0" identifier = (binary_expression "pppppppuVar9 + 0xd0" identifier + number_literal)) ;) (expression_statement "ppppppuStack_158 = (undefined4 ******)(*(int *)(puVar20 + 0x1df9a4) + -0x62ac);" (assignment_expression "ppppppuStack_158 = (undefined4 ******)(*(int *)(puVar20 + 0x1df9a4) + -0x62ac)" identifier = (cast_expression "(undefined4 ******)(*(int *)(puVar20 + 0x1df9a4) + -0x62ac)" ( (type_descriptor "undefined4 ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (parenthesized_expression "(*(int *)(puVar20 + 0x1df9a4) + -0x62ac)" ( (binary_expression "*(int *)(puVar20 + 0x1df9a4) + -0x62ac" (pointer_expression "*(int *)(puVar20 + 0x1df9a4)" * (cast_expression "(int *)(puVar20 + 0x1df9a4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar20 + 0x1df9a4)" ( (binary_expression "puVar20 + 0x1df9a4" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "(**(code **)(puVar20 + 0x1e02a0))\n                (0x8000,*(int *)(puVar20 + 0x1df9ac) + -0x288c,\n                 *(int *)(puVar20 + 0x1df9ac) + -0x26bc,0x3f7);" (call_expression "(**(code **)(puVar20 + 0x1e02a0))\n                (0x8000,*(int *)(puVar20 + 0x1df9ac) + -0x288c,\n                 *(int *)(puVar20 + 0x1df9ac) + -0x26bc,0x3f7)" (parenthesized_expression "(**(code **)(puVar20 + 0x1e02a0))" ( (pointer_expression "**(code **)(puVar20 + 0x1e02a0)" * (pointer_expression "*(code **)(puVar20 + 0x1e02a0)" * (cast_expression "(code **)(puVar20 + 0x1e02a0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar20 + 0x1e02a0)" ( (binary_expression "puVar20 + 0x1e02a0" identifier + number_literal) ))))) )) (argument_list "(0x8000,*(int *)(puVar20 + 0x1df9ac) + -0x288c,\n                 *(int *)(puVar20 + 0x1df9ac) + -0x26bc,0x3f7)" ( number_literal , (binary_expression "*(int *)(puVar20 + 0x1df9ac) + -0x288c" (pointer_expression "*(int *)(puVar20 + 0x1df9ac)" * (cast_expression "(int *)(puVar20 + 0x1df9ac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar20 + 0x1df9ac)" ( (binary_expression "puVar20 + 0x1df9ac" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar20 + 0x1df9ac) + -0x26bc" (pointer_expression "*(int *)(puVar20 + 0x1df9ac)" * (cast_expression "(int *)(puVar20 + 0x1df9ac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar20 + 0x1df9ac)" ( (binary_expression "puVar20 + 0x1df9ac" identifier + number_literal) )))) + number_literal) , number_literal ))) ;) })) (expression_statement "iVar15 = *(int *)(puStack_150 + -0x7fc4);" (assignment_expression "iVar15 = *(int *)(puStack_150 + -0x7fc4)" identifier = (pointer_expression "*(int *)(puStack_150 + -0x7fc4)" * (cast_expression "(int *)(puStack_150 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puStack_150 + -0x7fc4)" ( (binary_expression "puStack_150 + -0x7fc4" identifier + number_literal) ))))) ;) (expression_statement "unaff_s3 = pppppppuVar12;" (assignment_expression "unaff_s3 = pppppppuVar12" identifier = identifier) ;) (expression_statement "puVar8 = puStack_150;" (assignment_expression "puVar8 = puStack_150" identifier = identifier) ;) (if_statement "if (pppppppuVar12 != (undefined4 *******)0x0) {\n      unaff_s0 = pppppppuVar9;\n      if (ppppppuVar2 == (undefined4 ******)0x0) goto LAB_001c92f4;\n      unaff_s2 = ppppppuVar2;\n      if (ppppppuVar2[7] != (undefined4 *****)0xabacadab) goto LAB_001c92d4;\n      iVar15 = 1;\n      ppppppuStack_158 = ppppppuVar2;\n      param_1 = (undefined4 *******)\n                (**(code **)(puStack_150 + -0x7080))(pppppppuVar9,*pppppppuVar12,pppppppuVar12[1],1)\n      ;\n      if (param_1 != (undefined4 *******)0x0) {\n        uStack_144 = 0;\n        uStack_148 = 0;\n        unaff_s5 = (undefined4 *******)\n                   (**(code **)(puStack_150 + -0x715c))(pppppppuVar9,ppppppuVar2);\n        unaff_s6 = (undefined4 *******)(**(code **)(puStack_150 + -0x79dc))(param_1,ppppppuVar2);\n        iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9);\n        if (((iVar15 == 4) ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9), iVar15 == 3)) &&\n           ((iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 4 ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 3)))) {\n          (**(code **)(puStack_150 + -0x7774))(7);\n          ppppppuVar7 = param_1[7];\n          if ((int)ppppppuVar7 < 0) {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1 < (int)ppppppuVar7 + 0x3f >> 6) goto LAB_001c9298;\nLAB_001c91a4:\n            bVar1 = (int)ppppppuVar7 < 0x80;\n          }\n          else {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if ((int)ppppppuVar7 >> 6 <= extraout_v1) goto LAB_001c91a4;\nLAB_001c9298:\n            (*pcVar23)(7);\n            bVar1 = extraout_v1_02 < 2;\n          }\n          iVar14 = 1;\n          if ((bool)(bVar1 ^ 1)) {\n            (**(code **)(puStack_150 + -0x7774))(7);\n            ppppppuVar7 = param_1[7];\n            if ((int)ppppppuVar7 < 0) {\n              ppppppuVar7 = (undefined4 ******)((int)ppppppuVar7 + 0x3f);\n            }\n            iVar14 = (int)ppppppuVar7 >> 6;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1_01 < iVar14) {\nLAB_001c9234:\n              (*pcVar23)(7);\n              iVar14 = extraout_v1_00;\n            }\n            goto LAB_001c9088;\n          }\n          iVar10 = *(int *)(puStack_150 + -0x7f10);\n        }\n        else {\n          uVar36 = (**(code **)(puStack_150 + -0x7774))(7);\n          if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            uVar36 = (*pcVar23)(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c9070;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            iVar14 = 1;\n          }\n          else {\nLAB_001c9070:\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\nLAB_001c9074:\n            uVar36 = (*pcVar23)(7);\n            if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n               (pcVar23 = *(code **)(puStack_150 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c9234;\n            iVar14 = 2;\n          }\nLAB_001c9088:\n          iVar10 = *(int *)(puStack_150 + -0x7f10);\n        }\n        iVar15 = 0;\n        ppppppuStack_124 = (undefined4 ******)0x1;\n        puStack_120 = &uStack_148;\n        pppppppuStack_13c = pppppppuVar9;\n        pppppppuStack_138 = pppppppuVar12;\n        ppppppuStack_134 = ppppppuVar2;\n        pppppppuStack_130 = unaff_s6;\n        pppppppuStack_12c = unaff_s5;\n        pppppppuStack_128 = param_1;\n        (**(code **)(puStack_150 + -0x7718))(iVar10 + 0x5428,&pppppppuStack_13c,iVar14,0);\n        ppppppuVar2 = ppppppuStack_124;\n        (**(code **)(puStack_150 + -0x79bc))(unaff_s6);\n        (**(code **)(puStack_150 + -0x79bc))(unaff_s5);\n        param_1[0xa8] = pppppppuVar9[0xa8];\n        if (ppppppuVar2 == (undefined4 ******)0x0) {\n          param_1 = (undefined4 *******)(**(code **)(puStack_150 + -0x7964))(param_1);\n        }\n      }\n      puVar8 = puStack_150;\n      if (iStack_11c == *piVar18) {\n        return param_1;\n      }\n      goto LAB_001c9314;\n    }" if (parenthesized_expression "(pppppppuVar12 != (undefined4 *******)0x0)" ( (binary_expression "pppppppuVar12 != (undefined4 *******)0x0" identifier != (cast_expression "(undefined4 *******)0x0" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n      unaff_s0 = pppppppuVar9;\n      if (ppppppuVar2 == (undefined4 ******)0x0) goto LAB_001c92f4;\n      unaff_s2 = ppppppuVar2;\n      if (ppppppuVar2[7] != (undefined4 *****)0xabacadab) goto LAB_001c92d4;\n      iVar15 = 1;\n      ppppppuStack_158 = ppppppuVar2;\n      param_1 = (undefined4 *******)\n                (**(code **)(puStack_150 + -0x7080))(pppppppuVar9,*pppppppuVar12,pppppppuVar12[1],1)\n      ;\n      if (param_1 != (undefined4 *******)0x0) {\n        uStack_144 = 0;\n        uStack_148 = 0;\n        unaff_s5 = (undefined4 *******)\n                   (**(code **)(puStack_150 + -0x715c))(pppppppuVar9,ppppppuVar2);\n        unaff_s6 = (undefined4 *******)(**(code **)(puStack_150 + -0x79dc))(param_1,ppppppuVar2);\n        iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9);\n        if (((iVar15 == 4) ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9), iVar15 == 3)) &&\n           ((iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 4 ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 3)))) {\n          (**(code **)(puStack_150 + -0x7774))(7);\n          ppppppuVar7 = param_1[7];\n          if ((int)ppppppuVar7 < 0) {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1 < (int)ppppppuVar7 + 0x3f >> 6) goto LAB_001c9298;\nLAB_001c91a4:\n            bVar1 = (int)ppppppuVar7 < 0x80;\n          }\n          else {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if ((int)ppppppuVar7 >> 6 <= extraout_v1) goto LAB_001c91a4;\nLAB_001c9298:\n            (*pcVar23)(7);\n            bVar1 = extraout_v1_02 < 2;\n          }\n          iVar14 = 1;\n          if ((bool)(bVar1 ^ 1)) {\n            (**(code **)(puStack_150 + -0x7774))(7);\n            ppppppuVar7 = param_1[7];\n            if ((int)ppppppuVar7 < 0) {\n              ppppppuVar7 = (undefined4 ******)((int)ppppppuVar7 + 0x3f);\n            }\n            iVar14 = (int)ppppppuVar7 >> 6;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1_01 < iVar14) {\nLAB_001c9234:\n              (*pcVar23)(7);\n              iVar14 = extraout_v1_00;\n            }\n            goto LAB_001c9088;\n          }\n          iVar10 = *(int *)(puStack_150 + -0x7f10);\n        }\n        else {\n          uVar36 = (**(code **)(puStack_150 + -0x7774))(7);\n          if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            uVar36 = (*pcVar23)(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c9070;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            iVar14 = 1;\n          }\n          else {\nLAB_001c9070:\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\nLAB_001c9074:\n            uVar36 = (*pcVar23)(7);\n            if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n               (pcVar23 = *(code **)(puStack_150 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c9234;\n            iVar14 = 2;\n          }\nLAB_001c9088:\n          iVar10 = *(int *)(puStack_150 + -0x7f10);\n        }\n        iVar15 = 0;\n        ppppppuStack_124 = (undefined4 ******)0x1;\n        puStack_120 = &uStack_148;\n        pppppppuStack_13c = pppppppuVar9;\n        pppppppuStack_138 = pppppppuVar12;\n        ppppppuStack_134 = ppppppuVar2;\n        pppppppuStack_130 = unaff_s6;\n        pppppppuStack_12c = unaff_s5;\n        pppppppuStack_128 = param_1;\n        (**(code **)(puStack_150 + -0x7718))(iVar10 + 0x5428,&pppppppuStack_13c,iVar14,0);\n        ppppppuVar2 = ppppppuStack_124;\n        (**(code **)(puStack_150 + -0x79bc))(unaff_s6);\n        (**(code **)(puStack_150 + -0x79bc))(unaff_s5);\n        param_1[0xa8] = pppppppuVar9[0xa8];\n        if (ppppppuVar2 == (undefined4 ******)0x0) {\n          param_1 = (undefined4 *******)(**(code **)(puStack_150 + -0x7964))(param_1);\n        }\n      }\n      puVar8 = puStack_150;\n      if (iStack_11c == *piVar18) {\n        return param_1;\n      }\n      goto LAB_001c9314;\n    }" { (expression_statement "unaff_s0 = pppppppuVar9;" (assignment_expression "unaff_s0 = pppppppuVar9" identifier = identifier) ;) (if_statement "if (ppppppuVar2 == (undefined4 ******)0x0) goto LAB_001c92f4;" if (parenthesized_expression "(ppppppuVar2 == (undefined4 ******)0x0)" ( (binary_expression "ppppppuVar2 == (undefined4 ******)0x0" identifier == (cast_expression "(undefined4 ******)0x0" ( (type_descriptor "undefined4 ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (goto_statement "goto LAB_001c92f4;" goto statement_identifier ;)) (expression_statement "unaff_s2 = ppppppuVar2;" (assignment_expression "unaff_s2 = ppppppuVar2" identifier = identifier) ;) (if_statement "if (ppppppuVar2[7] != (undefined4 *****)0xabacadab) goto LAB_001c92d4;" if (parenthesized_expression "(ppppppuVar2[7] != (undefined4 *****)0xabacadab)" ( (binary_expression "ppppppuVar2[7] != (undefined4 *****)0xabacadab" (subscript_expression "ppppppuVar2[7]" identifier [ number_literal ]) != (cast_expression "(undefined4 *****)0xabacadab" ( (type_descriptor "undefined4 *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) )) (goto_statement "goto LAB_001c92d4;" goto statement_identifier ;)) (expression_statement "iVar15 = 1;" (assignment_expression "iVar15 = 1" identifier = number_literal) ;) (expression_statement "ppppppuStack_158 = ppppppuVar2;" (assignment_expression "ppppppuStack_158 = ppppppuVar2" identifier = identifier) ;) (expression_statement "param_1 = (undefined4 *******)\n                (**(code **)(puStack_150 + -0x7080))(pppppppuVar9,*pppppppuVar12,pppppppuVar12[1],1)\n      ;" (assignment_expression "param_1 = (undefined4 *******)\n                (**(code **)(puStack_150 + -0x7080))(pppppppuVar9,*pppppppuVar12,pppppppuVar12[1],1)" identifier = (cast_expression "(undefined4 *******)\n                (**(code **)(puStack_150 + -0x7080))(pppppppuVar9,*pppppppuVar12,pppppppuVar12[1],1)" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(**(code **)(puStack_150 + -0x7080))(pppppppuVar9,*pppppppuVar12,pppppppuVar12[1],1)" (parenthesized_expression "(**(code **)(puStack_150 + -0x7080))" ( (pointer_expression "**(code **)(puStack_150 + -0x7080)" * (pointer_expression "*(code **)(puStack_150 + -0x7080)" * (cast_expression "(code **)(puStack_150 + -0x7080)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_150 + -0x7080)" ( (binary_expression "puStack_150 + -0x7080" identifier + number_literal) ))))) )) (argument_list "(pppppppuVar9,*pppppppuVar12,pppppppuVar12[1],1)" ( identifier , (pointer_expression "*pppppppuVar12" * identifier) , (subscript_expression "pppppppuVar12[1]" identifier [ number_literal ]) , number_literal ))))) ;) (if_statement "if (param_1 != (undefined4 *******)0x0) {\n        uStack_144 = 0;\n        uStack_148 = 0;\n        unaff_s5 = (undefined4 *******)\n                   (**(code **)(puStack_150 + -0x715c))(pppppppuVar9,ppppppuVar2);\n        unaff_s6 = (undefined4 *******)(**(code **)(puStack_150 + -0x79dc))(param_1,ppppppuVar2);\n        iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9);\n        if (((iVar15 == 4) ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9), iVar15 == 3)) &&\n           ((iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 4 ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 3)))) {\n          (**(code **)(puStack_150 + -0x7774))(7);\n          ppppppuVar7 = param_1[7];\n          if ((int)ppppppuVar7 < 0) {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1 < (int)ppppppuVar7 + 0x3f >> 6) goto LAB_001c9298;\nLAB_001c91a4:\n            bVar1 = (int)ppppppuVar7 < 0x80;\n          }\n          else {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if ((int)ppppppuVar7 >> 6 <= extraout_v1) goto LAB_001c91a4;\nLAB_001c9298:\n            (*pcVar23)(7);\n            bVar1 = extraout_v1_02 < 2;\n          }\n          iVar14 = 1;\n          if ((bool)(bVar1 ^ 1)) {\n            (**(code **)(puStack_150 + -0x7774))(7);\n            ppppppuVar7 = param_1[7];\n            if ((int)ppppppuVar7 < 0) {\n              ppppppuVar7 = (undefined4 ******)((int)ppppppuVar7 + 0x3f);\n            }\n            iVar14 = (int)ppppppuVar7 >> 6;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1_01 < iVar14) {\nLAB_001c9234:\n              (*pcVar23)(7);\n              iVar14 = extraout_v1_00;\n            }\n            goto LAB_001c9088;\n          }\n          iVar10 = *(int *)(puStack_150 + -0x7f10);\n        }\n        else {\n          uVar36 = (**(code **)(puStack_150 + -0x7774))(7);\n          if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            uVar36 = (*pcVar23)(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c9070;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            iVar14 = 1;\n          }\n          else {\nLAB_001c9070:\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\nLAB_001c9074:\n            uVar36 = (*pcVar23)(7);\n            if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n               (pcVar23 = *(code **)(puStack_150 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c9234;\n            iVar14 = 2;\n          }\nLAB_001c9088:\n          iVar10 = *(int *)(puStack_150 + -0x7f10);\n        }\n        iVar15 = 0;\n        ppppppuStack_124 = (undefined4 ******)0x1;\n        puStack_120 = &uStack_148;\n        pppppppuStack_13c = pppppppuVar9;\n        pppppppuStack_138 = pppppppuVar12;\n        ppppppuStack_134 = ppppppuVar2;\n        pppppppuStack_130 = unaff_s6;\n        pppppppuStack_12c = unaff_s5;\n        pppppppuStack_128 = param_1;\n        (**(code **)(puStack_150 + -0x7718))(iVar10 + 0x5428,&pppppppuStack_13c,iVar14,0);\n        ppppppuVar2 = ppppppuStack_124;\n        (**(code **)(puStack_150 + -0x79bc))(unaff_s6);\n        (**(code **)(puStack_150 + -0x79bc))(unaff_s5);\n        param_1[0xa8] = pppppppuVar9[0xa8];\n        if (ppppppuVar2 == (undefined4 ******)0x0) {\n          param_1 = (undefined4 *******)(**(code **)(puStack_150 + -0x7964))(param_1);\n        }\n      }" if (parenthesized_expression "(param_1 != (undefined4 *******)0x0)" ( (binary_expression "param_1 != (undefined4 *******)0x0" identifier != (cast_expression "(undefined4 *******)0x0" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n        uStack_144 = 0;\n        uStack_148 = 0;\n        unaff_s5 = (undefined4 *******)\n                   (**(code **)(puStack_150 + -0x715c))(pppppppuVar9,ppppppuVar2);\n        unaff_s6 = (undefined4 *******)(**(code **)(puStack_150 + -0x79dc))(param_1,ppppppuVar2);\n        iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9);\n        if (((iVar15 == 4) ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9), iVar15 == 3)) &&\n           ((iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 4 ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 3)))) {\n          (**(code **)(puStack_150 + -0x7774))(7);\n          ppppppuVar7 = param_1[7];\n          if ((int)ppppppuVar7 < 0) {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1 < (int)ppppppuVar7 + 0x3f >> 6) goto LAB_001c9298;\nLAB_001c91a4:\n            bVar1 = (int)ppppppuVar7 < 0x80;\n          }\n          else {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if ((int)ppppppuVar7 >> 6 <= extraout_v1) goto LAB_001c91a4;\nLAB_001c9298:\n            (*pcVar23)(7);\n            bVar1 = extraout_v1_02 < 2;\n          }\n          iVar14 = 1;\n          if ((bool)(bVar1 ^ 1)) {\n            (**(code **)(puStack_150 + -0x7774))(7);\n            ppppppuVar7 = param_1[7];\n            if ((int)ppppppuVar7 < 0) {\n              ppppppuVar7 = (undefined4 ******)((int)ppppppuVar7 + 0x3f);\n            }\n            iVar14 = (int)ppppppuVar7 >> 6;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1_01 < iVar14) {\nLAB_001c9234:\n              (*pcVar23)(7);\n              iVar14 = extraout_v1_00;\n            }\n            goto LAB_001c9088;\n          }\n          iVar10 = *(int *)(puStack_150 + -0x7f10);\n        }\n        else {\n          uVar36 = (**(code **)(puStack_150 + -0x7774))(7);\n          if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            uVar36 = (*pcVar23)(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c9070;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            iVar14 = 1;\n          }\n          else {\nLAB_001c9070:\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\nLAB_001c9074:\n            uVar36 = (*pcVar23)(7);\n            if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n               (pcVar23 = *(code **)(puStack_150 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c9234;\n            iVar14 = 2;\n          }\nLAB_001c9088:\n          iVar10 = *(int *)(puStack_150 + -0x7f10);\n        }\n        iVar15 = 0;\n        ppppppuStack_124 = (undefined4 ******)0x1;\n        puStack_120 = &uStack_148;\n        pppppppuStack_13c = pppppppuVar9;\n        pppppppuStack_138 = pppppppuVar12;\n        ppppppuStack_134 = ppppppuVar2;\n        pppppppuStack_130 = unaff_s6;\n        pppppppuStack_12c = unaff_s5;\n        pppppppuStack_128 = param_1;\n        (**(code **)(puStack_150 + -0x7718))(iVar10 + 0x5428,&pppppppuStack_13c,iVar14,0);\n        ppppppuVar2 = ppppppuStack_124;\n        (**(code **)(puStack_150 + -0x79bc))(unaff_s6);\n        (**(code **)(puStack_150 + -0x79bc))(unaff_s5);\n        param_1[0xa8] = pppppppuVar9[0xa8];\n        if (ppppppuVar2 == (undefined4 ******)0x0) {\n          param_1 = (undefined4 *******)(**(code **)(puStack_150 + -0x7964))(param_1);\n        }\n      }" { (expression_statement "uStack_144 = 0;" (assignment_expression "uStack_144 = 0" identifier = number_literal) ;) (expression_statement "uStack_148 = 0;" (assignment_expression "uStack_148 = 0" identifier = number_literal) ;) (expression_statement "unaff_s5 = (undefined4 *******)\n                   (**(code **)(puStack_150 + -0x715c))(pppppppuVar9,ppppppuVar2);" (assignment_expression "unaff_s5 = (undefined4 *******)\n                   (**(code **)(puStack_150 + -0x715c))(pppppppuVar9,ppppppuVar2)" identifier = (cast_expression "(undefined4 *******)\n                   (**(code **)(puStack_150 + -0x715c))(pppppppuVar9,ppppppuVar2)" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(**(code **)(puStack_150 + -0x715c))(pppppppuVar9,ppppppuVar2)" (parenthesized_expression "(**(code **)(puStack_150 + -0x715c))" ( (pointer_expression "**(code **)(puStack_150 + -0x715c)" * (pointer_expression "*(code **)(puStack_150 + -0x715c)" * (cast_expression "(code **)(puStack_150 + -0x715c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_150 + -0x715c)" ( (binary_expression "puStack_150 + -0x715c" identifier + number_literal) ))))) )) (argument_list "(pppppppuVar9,ppppppuVar2)" ( identifier , identifier ))))) ;) (expression_statement "unaff_s6 = (undefined4 *******)(**(code **)(puStack_150 + -0x79dc))(param_1,ppppppuVar2);" (assignment_expression "unaff_s6 = (undefined4 *******)(**(code **)(puStack_150 + -0x79dc))(param_1,ppppppuVar2)" identifier = (cast_expression "(undefined4 *******)(**(code **)(puStack_150 + -0x79dc))(param_1,ppppppuVar2)" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(**(code **)(puStack_150 + -0x79dc))(param_1,ppppppuVar2)" (parenthesized_expression "(**(code **)(puStack_150 + -0x79dc))" ( (pointer_expression "**(code **)(puStack_150 + -0x79dc)" * (pointer_expression "*(code **)(puStack_150 + -0x79dc)" * (cast_expression "(code **)(puStack_150 + -0x79dc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_150 + -0x79dc)" ( (binary_expression "puStack_150 + -0x79dc" identifier + number_literal) ))))) )) (argument_list "(param_1,ppppppuVar2)" ( identifier , identifier ))))) ;) (expression_statement "iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9);" (assignment_expression "iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9)" identifier = (call_expression "(**(code **)(puStack_150 + -0x73fc))(pppppppuVar9)" (parenthesized_expression "(**(code **)(puStack_150 + -0x73fc))" ( (pointer_expression "**(code **)(puStack_150 + -0x73fc)" * (pointer_expression "*(code **)(puStack_150 + -0x73fc)" * (cast_expression "(code **)(puStack_150 + -0x73fc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_150 + -0x73fc)" ( (binary_expression "puStack_150 + -0x73fc" identifier + number_literal) ))))) )) (argument_list "(pppppppuVar9)" ( identifier )))) ;) (if_statement "if (((iVar15 == 4) ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9), iVar15 == 3)) &&\n           ((iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 4 ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 3)))) {\n          (**(code **)(puStack_150 + -0x7774))(7);\n          ppppppuVar7 = param_1[7];\n          if ((int)ppppppuVar7 < 0) {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1 < (int)ppppppuVar7 + 0x3f >> 6) goto LAB_001c9298;\nLAB_001c91a4:\n            bVar1 = (int)ppppppuVar7 < 0x80;\n          }\n          else {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if ((int)ppppppuVar7 >> 6 <= extraout_v1) goto LAB_001c91a4;\nLAB_001c9298:\n            (*pcVar23)(7);\n            bVar1 = extraout_v1_02 < 2;\n          }\n          iVar14 = 1;\n          if ((bool)(bVar1 ^ 1)) {\n            (**(code **)(puStack_150 + -0x7774))(7);\n            ppppppuVar7 = param_1[7];\n            if ((int)ppppppuVar7 < 0) {\n              ppppppuVar7 = (undefined4 ******)((int)ppppppuVar7 + 0x3f);\n            }\n            iVar14 = (int)ppppppuVar7 >> 6;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1_01 < iVar14) {\nLAB_001c9234:\n              (*pcVar23)(7);\n              iVar14 = extraout_v1_00;\n            }\n            goto LAB_001c9088;\n          }\n          iVar10 = *(int *)(puStack_150 + -0x7f10);\n        }\n        else {\n          uVar36 = (**(code **)(puStack_150 + -0x7774))(7);\n          if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            uVar36 = (*pcVar23)(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c9070;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            iVar14 = 1;\n          }\n          else {\nLAB_001c9070:\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\nLAB_001c9074:\n            uVar36 = (*pcVar23)(7);\n            if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n               (pcVar23 = *(code **)(puStack_150 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c9234;\n            iVar14 = 2;\n          }\nLAB_001c9088:\n          iVar10 = *(int *)(puStack_150 + -0x7f10);\n        }" if (parenthesized_expression "(((iVar15 == 4) ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9), iVar15 == 3)) &&\n           ((iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 4 ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 3))))" ( (binary_expression "((iVar15 == 4) ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9), iVar15 == 3)) &&\n           ((iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 4 ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 3)))" (parenthesized_expression "((iVar15 == 4) ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9), iVar15 == 3))" ( (binary_expression "(iVar15 == 4) ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9), iVar15 == 3)" (parenthesized_expression "(iVar15 == 4)" ( (binary_expression "iVar15 == 4" identifier == number_literal) )) || (parenthesized_expression "(iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9), iVar15 == 3)" ( (comma_expression "iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9), iVar15 == 3" (assignment_expression "iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9)" identifier = (call_expression "(**(code **)(puStack_150 + -0x73fc))(pppppppuVar9)" (parenthesized_expression "(**(code **)(puStack_150 + -0x73fc))" ( (pointer_expression "**(code **)(puStack_150 + -0x73fc)" * (pointer_expression "*(code **)(puStack_150 + -0x73fc)" * (cast_expression "(code **)(puStack_150 + -0x73fc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_150 + -0x73fc)" ( (binary_expression "puStack_150 + -0x73fc" identifier + number_literal) ))))) )) (argument_list "(pppppppuVar9)" ( identifier )))) , (binary_expression "iVar15 == 3" identifier == number_literal)) ))) )) && (parenthesized_expression "((iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 4 ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 3)))" ( (parenthesized_expression "(iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 4 ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 3))" ( (comma_expression "iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 4 ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 3)" (assignment_expression "iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1)" identifier = (call_expression "(**(code **)(puStack_150 + -0x73fc))(param_1)" (parenthesized_expression "(**(code **)(puStack_150 + -0x73fc))" ( (pointer_expression "**(code **)(puStack_150 + -0x73fc)" * (pointer_expression "*(code **)(puStack_150 + -0x73fc)" * (cast_expression "(code **)(puStack_150 + -0x73fc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_150 + -0x73fc)" ( (binary_expression "puStack_150 + -0x73fc" identifier + number_literal) ))))) )) (argument_list "(param_1)" ( identifier )))) , (binary_expression "iVar15 == 4 ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 3)" (binary_expression "iVar15 == 4" identifier == number_literal) || (parenthesized_expression "(iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 3)" ( (comma_expression "iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 3" (assignment_expression "iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1)" identifier = (call_expression "(**(code **)(puStack_150 + -0x73fc))(param_1)" (parenthesized_expression "(**(code **)(puStack_150 + -0x73fc))" ( (pointer_expression "**(code **)(puStack_150 + -0x73fc)" * (pointer_expression "*(code **)(puStack_150 + -0x73fc)" * (cast_expression "(code **)(puStack_150 + -0x73fc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_150 + -0x73fc)" ( (binary_expression "puStack_150 + -0x73fc" identifier + number_literal) ))))) )) (argument_list "(param_1)" ( identifier )))) , (binary_expression "iVar15 == 3" identifier == number_literal)) )))) )) ))) )) (compound_statement "{\n          (**(code **)(puStack_150 + -0x7774))(7);\n          ppppppuVar7 = param_1[7];\n          if ((int)ppppppuVar7 < 0) {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1 < (int)ppppppuVar7 + 0x3f >> 6) goto LAB_001c9298;\nLAB_001c91a4:\n            bVar1 = (int)ppppppuVar7 < 0x80;\n          }\n          else {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if ((int)ppppppuVar7 >> 6 <= extraout_v1) goto LAB_001c91a4;\nLAB_001c9298:\n            (*pcVar23)(7);\n            bVar1 = extraout_v1_02 < 2;\n          }\n          iVar14 = 1;\n          if ((bool)(bVar1 ^ 1)) {\n            (**(code **)(puStack_150 + -0x7774))(7);\n            ppppppuVar7 = param_1[7];\n            if ((int)ppppppuVar7 < 0) {\n              ppppppuVar7 = (undefined4 ******)((int)ppppppuVar7 + 0x3f);\n            }\n            iVar14 = (int)ppppppuVar7 >> 6;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1_01 < iVar14) {\nLAB_001c9234:\n              (*pcVar23)(7);\n              iVar14 = extraout_v1_00;\n            }\n            goto LAB_001c9088;\n          }\n          iVar10 = *(int *)(puStack_150 + -0x7f10);\n        }" { (expression_statement "(**(code **)(puStack_150 + -0x7774))(7);" (call_expression "(**(code **)(puStack_150 + -0x7774))(7)" (parenthesized_expression "(**(code **)(puStack_150 + -0x7774))" ( (pointer_expression "**(code **)(puStack_150 + -0x7774)" * (pointer_expression "*(code **)(puStack_150 + -0x7774)" * (cast_expression "(code **)(puStack_150 + -0x7774)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_150 + -0x7774)" ( (binary_expression "puStack_150 + -0x7774" identifier + number_literal) ))))) )) (argument_list "(7)" ( number_literal ))) ;) (expression_statement "ppppppuVar7 = param_1[7];" (assignment_expression "ppppppuVar7 = param_1[7]" identifier = (subscript_expression "param_1[7]" identifier [ number_literal ])) ;) (if_statement "if ((int)ppppppuVar7 < 0) {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1 < (int)ppppppuVar7 + 0x3f >> 6) goto LAB_001c9298;\nLAB_001c91a4:\n            bVar1 = (int)ppppppuVar7 < 0x80;\n          }\n          else {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if ((int)ppppppuVar7 >> 6 <= extraout_v1) goto LAB_001c91a4;\nLAB_001c9298:\n            (*pcVar23)(7);\n            bVar1 = extraout_v1_02 < 2;\n          }" if (parenthesized_expression "((int)ppppppuVar7 < 0)" ( (binary_expression "(int)ppppppuVar7 < 0" (cast_expression "(int)ppppppuVar7" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1 < (int)ppppppuVar7 + 0x3f >> 6) goto LAB_001c9298;\nLAB_001c91a4:\n            bVar1 = (int)ppppppuVar7 < 0x80;\n          }" { (expression_statement "pcVar23 = *(code **)(puStack_150 + -0x7774);" (assignment_expression "pcVar23 = *(code **)(puStack_150 + -0x7774)" identifier = (pointer_expression "*(code **)(puStack_150 + -0x7774)" * (cast_expression "(code **)(puStack_150 + -0x7774)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_150 + -0x7774)" ( (binary_expression "puStack_150 + -0x7774" identifier + number_literal) ))))) ;) (if_statement "if (extraout_v1 < (int)ppppppuVar7 + 0x3f >> 6) goto LAB_001c9298;" if (parenthesized_expression "(extraout_v1 < (int)ppppppuVar7 + 0x3f >> 6)" ( (binary_expression "extraout_v1 < (int)ppppppuVar7 + 0x3f >> 6" identifier < (binary_expression "(int)ppppppuVar7 + 0x3f >> 6" (binary_expression "(int)ppppppuVar7 + 0x3f" (cast_expression "(int)ppppppuVar7" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) >> number_literal)) )) (goto_statement "goto LAB_001c9298;" goto statement_identifier ;)) (labeled_statement "LAB_001c91a4:\n            bVar1 = (int)ppppppuVar7 < 0x80;" statement_identifier : (expression_statement "bVar1 = (int)ppppppuVar7 < 0x80;" (assignment_expression "bVar1 = (int)ppppppuVar7 < 0x80" identifier = (binary_expression "(int)ppppppuVar7 < 0x80" (cast_expression "(int)ppppppuVar7" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal)) ;)) }) (else_clause "else {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if ((int)ppppppuVar7 >> 6 <= extraout_v1) goto LAB_001c91a4;\nLAB_001c9298:\n            (*pcVar23)(7);\n            bVar1 = extraout_v1_02 < 2;\n          }" else (compound_statement "{\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if ((int)ppppppuVar7 >> 6 <= extraout_v1) goto LAB_001c91a4;\nLAB_001c9298:\n            (*pcVar23)(7);\n            bVar1 = extraout_v1_02 < 2;\n          }" { (expression_statement "pcVar23 = *(code **)(puStack_150 + -0x7774);" (assignment_expression "pcVar23 = *(code **)(puStack_150 + -0x7774)" identifier = (pointer_expression "*(code **)(puStack_150 + -0x7774)" * (cast_expression "(code **)(puStack_150 + -0x7774)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_150 + -0x7774)" ( (binary_expression "puStack_150 + -0x7774" identifier + number_literal) ))))) ;) (if_statement "if ((int)ppppppuVar7 >> 6 <= extraout_v1) goto LAB_001c91a4;" if (parenthesized_expression "((int)ppppppuVar7 >> 6 <= extraout_v1)" ( (binary_expression "(int)ppppppuVar7 >> 6 <= extraout_v1" (binary_expression "(int)ppppppuVar7 >> 6" (cast_expression "(int)ppppppuVar7" ( (type_descriptor "int" primitive_type) ) identifier) >> number_literal) <= identifier) )) (goto_statement "goto LAB_001c91a4;" goto statement_identifier ;)) (labeled_statement "LAB_001c9298:\n            (*pcVar23)(7);" statement_identifier : (expression_statement "(*pcVar23)(7);" (call_expression "(*pcVar23)(7)" (parenthesized_expression "(*pcVar23)" ( (pointer_expression "*pcVar23" * identifier) )) (argument_list "(7)" ( number_literal ))) ;)) (expression_statement "bVar1 = extraout_v1_02 < 2;" (assignment_expression "bVar1 = extraout_v1_02 < 2" identifier = (binary_expression "extraout_v1_02 < 2" identifier < number_literal)) ;) }))) (expression_statement "iVar14 = 1;" (assignment_expression "iVar14 = 1" identifier = number_literal) ;) (if_statement "if ((bool)(bVar1 ^ 1)) {\n            (**(code **)(puStack_150 + -0x7774))(7);\n            ppppppuVar7 = param_1[7];\n            if ((int)ppppppuVar7 < 0) {\n              ppppppuVar7 = (undefined4 ******)((int)ppppppuVar7 + 0x3f);\n            }\n            iVar14 = (int)ppppppuVar7 >> 6;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1_01 < iVar14) {\nLAB_001c9234:\n              (*pcVar23)(7);\n              iVar14 = extraout_v1_00;\n            }\n            goto LAB_001c9088;\n          }" if (parenthesized_expression "((bool)(bVar1 ^ 1))" ( (cast_expression "(bool)(bVar1 ^ 1)" ( (type_descriptor "bool" primitive_type) ) (parenthesized_expression "(bVar1 ^ 1)" ( (binary_expression "bVar1 ^ 1" identifier ^ number_literal) ))) )) (compound_statement "{\n            (**(code **)(puStack_150 + -0x7774))(7);\n            ppppppuVar7 = param_1[7];\n            if ((int)ppppppuVar7 < 0) {\n              ppppppuVar7 = (undefined4 ******)((int)ppppppuVar7 + 0x3f);\n            }\n            iVar14 = (int)ppppppuVar7 >> 6;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1_01 < iVar14) {\nLAB_001c9234:\n              (*pcVar23)(7);\n              iVar14 = extraout_v1_00;\n            }\n            goto LAB_001c9088;\n          }" { (expression_statement "(**(code **)(puStack_150 + -0x7774))(7);" (call_expression "(**(code **)(puStack_150 + -0x7774))(7)" (parenthesized_expression "(**(code **)(puStack_150 + -0x7774))" ( (pointer_expression "**(code **)(puStack_150 + -0x7774)" * (pointer_expression "*(code **)(puStack_150 + -0x7774)" * (cast_expression "(code **)(puStack_150 + -0x7774)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_150 + -0x7774)" ( (binary_expression "puStack_150 + -0x7774" identifier + number_literal) ))))) )) (argument_list "(7)" ( number_literal ))) ;) (expression_statement "ppppppuVar7 = param_1[7];" (assignment_expression "ppppppuVar7 = param_1[7]" identifier = (subscript_expression "param_1[7]" identifier [ number_literal ])) ;) (if_statement "if ((int)ppppppuVar7 < 0) {\n              ppppppuVar7 = (undefined4 ******)((int)ppppppuVar7 + 0x3f);\n            }" if (parenthesized_expression "((int)ppppppuVar7 < 0)" ( (binary_expression "(int)ppppppuVar7 < 0" (cast_expression "(int)ppppppuVar7" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n              ppppppuVar7 = (undefined4 ******)((int)ppppppuVar7 + 0x3f);\n            }" { (expression_statement "ppppppuVar7 = (undefined4 ******)((int)ppppppuVar7 + 0x3f);" (assignment_expression "ppppppuVar7 = (undefined4 ******)((int)ppppppuVar7 + 0x3f)" identifier = (cast_expression "(undefined4 ******)((int)ppppppuVar7 + 0x3f)" ( (type_descriptor "undefined4 ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (parenthesized_expression "((int)ppppppuVar7 + 0x3f)" ( (binary_expression "(int)ppppppuVar7 + 0x3f" (cast_expression "(int)ppppppuVar7" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) })) (expression_statement "iVar14 = (int)ppppppuVar7 >> 6;" (assignment_expression "iVar14 = (int)ppppppuVar7 >> 6" identifier = (binary_expression "(int)ppppppuVar7 >> 6" (cast_expression "(int)ppppppuVar7" ( (type_descriptor "int" primitive_type) ) identifier) >> number_literal)) ;) (expression_statement "pcVar23 = *(code **)(puStack_150 + -0x7774);" (assignment_expression "pcVar23 = *(code **)(puStack_150 + -0x7774)" identifier = (pointer_expression "*(code **)(puStack_150 + -0x7774)" * (cast_expression "(code **)(puStack_150 + -0x7774)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_150 + -0x7774)" ( (binary_expression "puStack_150 + -0x7774" identifier + number_literal) ))))) ;) (if_statement "if (extraout_v1_01 < iVar14) {\nLAB_001c9234:\n              (*pcVar23)(7);\n              iVar14 = extraout_v1_00;\n            }" if (parenthesized_expression "(extraout_v1_01 < iVar14)" ( (binary_expression "extraout_v1_01 < iVar14" identifier < identifier) )) (compound_statement "{\nLAB_001c9234:\n              (*pcVar23)(7);\n              iVar14 = extraout_v1_00;\n            }" { (labeled_statement "LAB_001c9234:\n              (*pcVar23)(7);" statement_identifier : (expression_statement "(*pcVar23)(7);" (call_expression "(*pcVar23)(7)" (parenthesized_expression "(*pcVar23)" ( (pointer_expression "*pcVar23" * identifier) )) (argument_list "(7)" ( number_literal ))) ;)) (expression_statement "iVar14 = extraout_v1_00;" (assignment_expression "iVar14 = extraout_v1_00" identifier = identifier) ;) })) (goto_statement "goto LAB_001c9088;" goto statement_identifier ;) })) (expression_statement "iVar10 = *(int *)(puStack_150 + -0x7f10);" (assignment_expression "iVar10 = *(int *)(puStack_150 + -0x7f10)" identifier = (pointer_expression "*(int *)(puStack_150 + -0x7f10)" * (cast_expression "(int *)(puStack_150 + -0x7f10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puStack_150 + -0x7f10)" ( (binary_expression "puStack_150 + -0x7f10" identifier + number_literal) ))))) ;) }) (else_clause "else {\n          uVar36 = (**(code **)(puStack_150 + -0x7774))(7);\n          if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            uVar36 = (*pcVar23)(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c9070;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            iVar14 = 1;\n          }\n          else {\nLAB_001c9070:\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\nLAB_001c9074:\n            uVar36 = (*pcVar23)(7);\n            if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n               (pcVar23 = *(code **)(puStack_150 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c9234;\n            iVar14 = 2;\n          }\nLAB_001c9088:\n          iVar10 = *(int *)(puStack_150 + -0x7f10);\n        }" else (compound_statement "{\n          uVar36 = (**(code **)(puStack_150 + -0x7774))(7);\n          if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            uVar36 = (*pcVar23)(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c9070;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            iVar14 = 1;\n          }\n          else {\nLAB_001c9070:\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\nLAB_001c9074:\n            uVar36 = (*pcVar23)(7);\n            if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n               (pcVar23 = *(code **)(puStack_150 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c9234;\n            iVar14 = 2;\n          }\nLAB_001c9088:\n          iVar10 = *(int *)(puStack_150 + -0x7f10);\n        }" { (expression_statement "uVar36 = (**(code **)(puStack_150 + -0x7774))(7);" (assignment_expression "uVar36 = (**(code **)(puStack_150 + -0x7774))(7)" identifier = (call_expression "(**(code **)(puStack_150 + -0x7774))(7)" (parenthesized_expression "(**(code **)(puStack_150 + -0x7774))" ( (pointer_expression "**(code **)(puStack_150 + -0x7774)" * (pointer_expression "*(code **)(puStack_150 + -0x7774)" * (cast_expression "(code **)(puStack_150 + -0x7774)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_150 + -0x7774)" ( (binary_expression "puStack_150 + -0x7774" identifier + number_literal) ))))) )) (argument_list "(7)" ( number_literal )))) ;) (if_statement "if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            uVar36 = (*pcVar23)(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c9070;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            iVar14 = 1;\n          }\n          else {\nLAB_001c9070:\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\nLAB_001c9074:\n            uVar36 = (*pcVar23)(7);\n            if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n               (pcVar23 = *(code **)(puStack_150 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c9234;\n            iVar14 = 2;\n          }" if (parenthesized_expression "((int)((ulonglong)uVar36 >> 0x20) == 0)" ( (binary_expression "(int)((ulonglong)uVar36 >> 0x20) == 0" (cast_expression "(int)((ulonglong)uVar36 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)uVar36 >> 0x20)" ( (binary_expression "(ulonglong)uVar36 >> 0x20" (cast_expression "(ulonglong)uVar36" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) ))) == number_literal) )) (compound_statement "{\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            uVar36 = (*pcVar23)(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c9070;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            iVar14 = 1;\n          }" { (expression_statement "pcVar23 = *(code **)(puStack_150 + -0x7774);" (assignment_expression "pcVar23 = *(code **)(puStack_150 + -0x7774)" identifier = (pointer_expression "*(code **)(puStack_150 + -0x7774)" * (cast_expression "(code **)(puStack_150 + -0x7774)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_150 + -0x7774)" ( (binary_expression "puStack_150 + -0x7774" identifier + number_literal) ))))) ;) (if_statement "if (1 < (uint)uVar36) goto LAB_001c9074;" if (parenthesized_expression "(1 < (uint)uVar36)" ( (binary_expression "1 < (uint)uVar36" number_literal < (cast_expression "(uint)uVar36" ( (type_descriptor "uint" type_identifier) ) identifier)) )) (goto_statement "goto LAB_001c9074;" goto statement_identifier ;)) (expression_statement "uVar36 = (*pcVar23)(7);" (assignment_expression "uVar36 = (*pcVar23)(7)" identifier = (call_expression "(*pcVar23)(7)" (parenthesized_expression "(*pcVar23)" ( (pointer_expression "*pcVar23" * identifier) )) (argument_list "(7)" ( number_literal )))) ;) (if_statement "if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c9070;" if (parenthesized_expression "((int)((ulonglong)uVar36 >> 0x20) != 0)" ( (binary_expression "(int)((ulonglong)uVar36 >> 0x20) != 0" (cast_expression "(int)((ulonglong)uVar36 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)uVar36 >> 0x20)" ( (binary_expression "(ulonglong)uVar36 >> 0x20" (cast_expression "(ulonglong)uVar36" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) ))) != number_literal) )) (goto_statement "goto LAB_001c9070;" goto statement_identifier ;)) (expression_statement "pcVar23 = *(code **)(puStack_150 + -0x7774);" (assignment_expression "pcVar23 = *(code **)(puStack_150 + -0x7774)" identifier = (pointer_expression "*(code **)(puStack_150 + -0x7774)" * (cast_expression "(code **)(puStack_150 + -0x7774)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_150 + -0x7774)" ( (binary_expression "puStack_150 + -0x7774" identifier + number_literal) ))))) ;) (if_statement "if (1 < (uint)uVar36) goto LAB_001c9074;" if (parenthesized_expression "(1 < (uint)uVar36)" ( (binary_expression "1 < (uint)uVar36" number_literal < (cast_expression "(uint)uVar36" ( (type_descriptor "uint" type_identifier) ) identifier)) )) (goto_statement "goto LAB_001c9074;" goto statement_identifier ;)) (expression_statement "iVar14 = 1;" (assignment_expression "iVar14 = 1" identifier = number_literal) ;) }) (else_clause "else {\nLAB_001c9070:\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\nLAB_001c9074:\n            uVar36 = (*pcVar23)(7);\n            if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n               (pcVar23 = *(code **)(puStack_150 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c9234;\n            iVar14 = 2;\n          }" else (compound_statement "{\nLAB_001c9070:\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\nLAB_001c9074:\n            uVar36 = (*pcVar23)(7);\n            if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n               (pcVar23 = *(code **)(puStack_150 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c9234;\n            iVar14 = 2;\n          }" { (labeled_statement "LAB_001c9070:\n            pcVar23 = *(code **)(puStack_150 + -0x7774);" statement_identifier : (expression_statement "pcVar23 = *(code **)(puStack_150 + -0x7774);" (assignment_expression "pcVar23 = *(code **)(puStack_150 + -0x7774)" identifier = (pointer_expression "*(code **)(puStack_150 + -0x7774)" * (cast_expression "(code **)(puStack_150 + -0x7774)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_150 + -0x7774)" ( (binary_expression "puStack_150 + -0x7774" identifier + number_literal) ))))) ;)) (labeled_statement "LAB_001c9074:\n            uVar36 = (*pcVar23)(7);" statement_identifier : (expression_statement "uVar36 = (*pcVar23)(7);" (assignment_expression "uVar36 = (*pcVar23)(7)" identifier = (call_expression "(*pcVar23)(7)" (parenthesized_expression "(*pcVar23)" ( (pointer_expression "*pcVar23" * identifier) )) (argument_list "(7)" ( number_literal )))) ;)) (if_statement "if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n               (pcVar23 = *(code **)(puStack_150 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c9234;" if (parenthesized_expression "(((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n               (pcVar23 = *(code **)(puStack_150 + -0x7774), (uint)uVar36 < 2))" ( (binary_expression "((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n               (pcVar23 = *(code **)(puStack_150 + -0x7774), (uint)uVar36 < 2)" (parenthesized_expression "((int)((ulonglong)uVar36 >> 0x20) == 0)" ( (binary_expression "(int)((ulonglong)uVar36 >> 0x20) == 0" (cast_expression "(int)((ulonglong)uVar36 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)uVar36 >> 0x20)" ( (binary_expression "(ulonglong)uVar36 >> 0x20" (cast_expression "(ulonglong)uVar36" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) ))) == number_literal) )) && (parenthesized_expression "(pcVar23 = *(code **)(puStack_150 + -0x7774), (uint)uVar36 < 2)" ( (comma_expression "pcVar23 = *(code **)(puStack_150 + -0x7774), (uint)uVar36 < 2" (assignment_expression "pcVar23 = *(code **)(puStack_150 + -0x7774)" identifier = (pointer_expression "*(code **)(puStack_150 + -0x7774)" * (cast_expression "(code **)(puStack_150 + -0x7774)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_150 + -0x7774)" ( (binary_expression "puStack_150 + -0x7774" identifier + number_literal) ))))) , (binary_expression "(uint)uVar36 < 2" (cast_expression "(uint)uVar36" ( (type_descriptor "uint" type_identifier) ) identifier) < number_literal)) ))) )) (goto_statement "goto LAB_001c9234;" goto statement_identifier ;)) (expression_statement "iVar14 = 2;" (assignment_expression "iVar14 = 2" identifier = number_literal) ;) }))) (labeled_statement "LAB_001c9088:\n          iVar10 = *(int *)(puStack_150 + -0x7f10);" statement_identifier : (expression_statement "iVar10 = *(int *)(puStack_150 + -0x7f10);" (assignment_expression "iVar10 = *(int *)(puStack_150 + -0x7f10)" identifier = (pointer_expression "*(int *)(puStack_150 + -0x7f10)" * (cast_expression "(int *)(puStack_150 + -0x7f10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puStack_150 + -0x7f10)" ( (binary_expression "puStack_150 + -0x7f10" identifier + number_literal) ))))) ;)) }))) (expression_statement "iVar15 = 0;" (assignment_expression "iVar15 = 0" identifier = number_literal) ;) (expression_statement "ppppppuStack_124 = (undefined4 ******)0x1;" (assignment_expression "ppppppuStack_124 = (undefined4 ******)0x1" identifier = (cast_expression "(undefined4 ******)0x1" ( (type_descriptor "undefined4 ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) ;) (expression_statement "puStack_120 = &uStack_148;" (assignment_expression "puStack_120 = &uStack_148" identifier = (pointer_expression "&uStack_148" & identifier)) ;) (expression_statement "pppppppuStack_13c = pppppppuVar9;" (assignment_expression "pppppppuStack_13c = pppppppuVar9" identifier = identifier) ;) (expression_statement "pppppppuStack_138 = pppppppuVar12;" (assignment_expression "pppppppuStack_138 = pppppppuVar12" identifier = identifier) ;) (expression_statement "ppppppuStack_134 = ppppppuVar2;" (assignment_expression "ppppppuStack_134 = ppppppuVar2" identifier = identifier) ;) (expression_statement "pppppppuStack_130 = unaff_s6;" (assignment_expression "pppppppuStack_130 = unaff_s6" identifier = identifier) ;) (expression_statement "pppppppuStack_12c = unaff_s5;" (assignment_expression "pppppppuStack_12c = unaff_s5" identifier = identifier) ;) (expression_statement "pppppppuStack_128 = param_1;" (assignment_expression "pppppppuStack_128 = param_1" identifier = identifier) ;) (expression_statement "(**(code **)(puStack_150 + -0x7718))(iVar10 + 0x5428,&pppppppuStack_13c,iVar14,0);" (call_expression "(**(code **)(puStack_150 + -0x7718))(iVar10 + 0x5428,&pppppppuStack_13c,iVar14,0)" (parenthesized_expression "(**(code **)(puStack_150 + -0x7718))" ( (pointer_expression "**(code **)(puStack_150 + -0x7718)" * (pointer_expression "*(code **)(puStack_150 + -0x7718)" * (cast_expression "(code **)(puStack_150 + -0x7718)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_150 + -0x7718)" ( (binary_expression "puStack_150 + -0x7718" identifier + number_literal) ))))) )) (argument_list "(iVar10 + 0x5428,&pppppppuStack_13c,iVar14,0)" ( (binary_expression "iVar10 + 0x5428" identifier + number_literal) , (pointer_expression "&pppppppuStack_13c" & identifier) , identifier , number_literal ))) ;) (expression_statement "ppppppuVar2 = ppppppuStack_124;" (assignment_expression "ppppppuVar2 = ppppppuStack_124" identifier = identifier) ;) (expression_statement "(**(code **)(puStack_150 + -0x79bc))(unaff_s6);" (call_expression "(**(code **)(puStack_150 + -0x79bc))(unaff_s6)" (parenthesized_expression "(**(code **)(puStack_150 + -0x79bc))" ( (pointer_expression "**(code **)(puStack_150 + -0x79bc)" * (pointer_expression "*(code **)(puStack_150 + -0x79bc)" * (cast_expression "(code **)(puStack_150 + -0x79bc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_150 + -0x79bc)" ( (binary_expression "puStack_150 + -0x79bc" identifier + number_literal) ))))) )) (argument_list "(unaff_s6)" ( identifier ))) ;) (expression_statement "(**(code **)(puStack_150 + -0x79bc))(unaff_s5);" (call_expression "(**(code **)(puStack_150 + -0x79bc))(unaff_s5)" (parenthesized_expression "(**(code **)(puStack_150 + -0x79bc))" ( (pointer_expression "**(code **)(puStack_150 + -0x79bc)" * (pointer_expression "*(code **)(puStack_150 + -0x79bc)" * (cast_expression "(code **)(puStack_150 + -0x79bc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_150 + -0x79bc)" ( (binary_expression "puStack_150 + -0x79bc" identifier + number_literal) ))))) )) (argument_list "(unaff_s5)" ( identifier ))) ;) (expression_statement "param_1[0xa8] = pppppppuVar9[0xa8];" (assignment_expression "param_1[0xa8] = pppppppuVar9[0xa8]" (subscript_expression "param_1[0xa8]" identifier [ number_literal ]) = (subscript_expression "pppppppuVar9[0xa8]" identifier [ number_literal ])) ;) (if_statement "if (ppppppuVar2 == (undefined4 ******)0x0) {\n          param_1 = (undefined4 *******)(**(code **)(puStack_150 + -0x7964))(param_1);\n        }" if (parenthesized_expression "(ppppppuVar2 == (undefined4 ******)0x0)" ( (binary_expression "ppppppuVar2 == (undefined4 ******)0x0" identifier == (cast_expression "(undefined4 ******)0x0" ( (type_descriptor "undefined4 ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n          param_1 = (undefined4 *******)(**(code **)(puStack_150 + -0x7964))(param_1);\n        }" { (expression_statement "param_1 = (undefined4 *******)(**(code **)(puStack_150 + -0x7964))(param_1);" (assignment_expression "param_1 = (undefined4 *******)(**(code **)(puStack_150 + -0x7964))(param_1)" identifier = (cast_expression "(undefined4 *******)(**(code **)(puStack_150 + -0x7964))(param_1)" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(**(code **)(puStack_150 + -0x7964))(param_1)" (parenthesized_expression "(**(code **)(puStack_150 + -0x7964))" ( (pointer_expression "**(code **)(puStack_150 + -0x7964)" * (pointer_expression "*(code **)(puStack_150 + -0x7964)" * (cast_expression "(code **)(puStack_150 + -0x7964)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_150 + -0x7964)" ( (binary_expression "puStack_150 + -0x7964" identifier + number_literal) ))))) )) (argument_list "(param_1)" ( identifier ))))) ;) })) })) (expression_statement "puVar8 = puStack_150;" (assignment_expression "puVar8 = puStack_150" identifier = identifier) ;) (if_statement "if (iStack_11c == *piVar18) {\n        return param_1;\n      }" if (parenthesized_expression "(iStack_11c == *piVar18)" ( (binary_expression "iStack_11c == *piVar18" identifier == (pointer_expression "*piVar18" * identifier)) )) (compound_statement "{\n        return param_1;\n      }" { (return_statement "return param_1;" return identifier ;) })) (goto_statement "goto LAB_001c9314;" goto statement_identifier ;) })) (goto_statement "goto LAB_001c9320;" goto statement_identifier ;) })))) (expression_statement "ppppppuVar2 = (undefined4 ******)0x3f5;" (assignment_expression "ppppppuVar2 = (undefined4 ******)0x3f5" identifier = (cast_expression "(undefined4 ******)0x3f5" ( (type_descriptor "undefined4 ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) ;) (expression_statement "pcVar21 = *(code **)(puVar8 + -0x72a8);" (assignment_expression "pcVar21 = *(code **)(puVar8 + -0x72a8)" identifier = (pointer_expression "*(code **)(puVar8 + -0x72a8)" * (cast_expression "(code **)(puVar8 + -0x72a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + -0x72a8)" ( (binary_expression "puVar8 + -0x72a8" identifier + number_literal) ))))) ;) (expression_statement "pppppppuVar13 = (undefined4 *******)(*(int *)(puVar8 + -0x7fc4) + -0x288c);" (assignment_expression "pppppppuVar13 = (undefined4 *******)(*(int *)(puVar8 + -0x7fc4) + -0x288c)" identifier = (cast_expression "(undefined4 *******)(*(int *)(puVar8 + -0x7fc4) + -0x288c)" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(*(int *)(puVar8 + -0x7fc4) + -0x288c)" ( (binary_expression "*(int *)(puVar8 + -0x7fc4) + -0x288c" (pointer_expression "*(int *)(puVar8 + -0x7fc4)" * (cast_expression "(int *)(puVar8 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x7fc4)" ( (binary_expression "puVar8 + -0x7fc4" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "pcVar24 = ExtentImage;" (assignment_expression "pcVar24 = ExtentImage" identifier = identifier) ;) (expression_statement "pppppppuVar12 = (undefined4 *******)(*(int *)(puVar8 + -0x7fc8) + -0x3784);" (assignment_expression "pppppppuVar12 = (undefined4 *******)(*(int *)(puVar8 + -0x7fc8) + -0x3784)" identifier = (cast_expression "(undefined4 *******)(*(int *)(puVar8 + -0x7fc8) + -0x3784)" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(*(int *)(puVar8 + -0x7fc8) + -0x3784)" ( (binary_expression "*(int *)(puVar8 + -0x7fc8) + -0x3784" (pointer_expression "*(int *)(puVar8 + -0x7fc8)" * (cast_expression "(int *)(puVar8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x7fc8)" ( (binary_expression "puVar8 + -0x7fc8" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "(*pcVar21)();" (call_expression "(*pcVar21)()" (parenthesized_expression "(*pcVar21)" ( (pointer_expression "*pcVar21" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "pcVar23 = pcVar21 + 0x1e754c;" (assignment_expression "pcVar23 = pcVar21 + 0x1e754c" identifier = (binary_expression "pcVar21 + 0x1e754c" identifier + number_literal)) ;) (expression_statement "pcStack_188 = pcVar23;" (assignment_expression "pcStack_188 = pcVar23" identifier = identifier) ;) (expression_statement "pppppppuStack_17c = pppppppuVar9;" (assignment_expression "pppppppuStack_17c = pppppppuVar9" identifier = identifier) ;) (expression_statement "pppppppuStack_178 = param_1;" (assignment_expression "pppppppuStack_178 = param_1" identifier = identifier) ;) (expression_statement "ppppppuStack_174 = unaff_s2;" (assignment_expression "ppppppuStack_174 = unaff_s2" identifier = identifier) ;) (expression_statement "pppppppuStack_170 = unaff_s3;" (assignment_expression "pppppppuStack_170 = unaff_s3" identifier = identifier) ;) (expression_statement "pcStack_16c = pcVar24;" (assignment_expression "pcStack_16c = pcVar24" identifier = identifier) ;) (if_statement "if (pppppppuVar12 == (undefined4 *******)0x0) {\n    iVar15 = *(int *)(pcVar21 + 0x1df588) + -0x26c8;\n    (**(code **)(pcVar21 + 0x1e02a4))\n              (*(int *)(pcVar21 + 0x1df584) + -0x37b0,*(int *)(pcVar21 + 0x1df588) + -0x288c,0x474,\n               iVar15);\nLAB_001c94fc:\n    iVar15 = iVar15 + -0x26c8;\n    (**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fc4) + -0x2850,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x478,\n               iVar15);\nLAB_001c951c:\n    iVar15 = iVar15 + -0x26c8;\n    (**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fd0) + 0x294c,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x47a,\n               iVar15);\n    pppppppuVar12 = pppppppuVar9;\nLAB_001c953c:\n    (**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fd0) + 0x1cac,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x479,\n               iVar15 + -0x26c8);\n  }\n  else if (pppppppuVar12[0xcdb] == (undefined4 ******)0xabacadab) {\n    if (pppppppuVar12[0xcd4] != (undefined4 ******)0x0) {\n      pppppppuStack_194 = pppppppuVar12 + 0xd0;\n      ppppppuStack_198 = (undefined4 ******)(*(int *)(pcVar21 + 0x1df580) + -0x62ac);\n      (**(code **)(pcVar21 + 0x1dfe7c))\n                (0x8000,*(int *)(pcVar21 + 0x1df588) + -0x288c,\n                 *(int *)(pcVar21 + 0x1df588) + -0x26d4,0x477);\n    }\n    iVar15 = *(int *)(pcStack_188 + -0x7fc4);\n    pppppppuVar9 = pppppppuVar12;\n    param_1 = pppppppuVar13;\n    unaff_s2 = ppppppuVar2;\n    pcVar23 = pcStack_188;\n    if (pppppppuVar13 == (undefined4 *******)0x0) goto LAB_001c94fc;\n    if (ppppppuVar2 != (undefined4 ******)0x0) {\n      if (ppppppuVar2[7] == (undefined4 *****)0xabacadab) {\n        ppppppuStack_198 = ppppppuVar2;\n        pppppppuVar9 = (undefined4 *******)\n                       (**(code **)(pcStack_188 + -0x7080))\n                                 (pppppppuVar12,*pppppppuVar13,pppppppuVar13[1],1);\n        if (pppppppuVar9 != (undefined4 *******)0x0) {\n          iVar15 = (**(code **)(pcStack_188 + -0x7a20))(pppppppuVar9,ppppppuVar2);\n          if (iVar15 == 0) {\n            (**(code **)(pcStack_188 + -0x7964))(pppppppuVar9);\n            pppppppuVar9 = (undefined4 *******)0x0;\n          }\n          else {\n            pppppppuStack_194 = (undefined4 *******)-(int)pppppppuVar13[3];\n            ppppppuStack_198 = (undefined4 ******)-(int)pppppppuVar13[2];\n            ppppppuStack_190 = ppppppuVar2;\n            iVar15 = (**(code **)(pcStack_188 + -0x7bec))\n                               (pppppppuVar9,pppppppuVar12,pppppppuVar12[0x99],1);\n            if (iVar15 != 0) {\n              (**(code **)(pcStack_188 + -0x7d18))\n                        (pppppppuVar9,pppppppuVar12[6],pppppppuVar12[7],pppppppuVar13);\n            }\n          }\n        }\n        return pppppppuVar9;\n      }\n      goto LAB_001c951c;\n    }\n    goto LAB_001c953c;\n  }" if (parenthesized_expression "(pppppppuVar12 == (undefined4 *******)0x0)" ( (binary_expression "pppppppuVar12 == (undefined4 *******)0x0" identifier == (cast_expression "(undefined4 *******)0x0" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n    iVar15 = *(int *)(pcVar21 + 0x1df588) + -0x26c8;\n    (**(code **)(pcVar21 + 0x1e02a4))\n              (*(int *)(pcVar21 + 0x1df584) + -0x37b0,*(int *)(pcVar21 + 0x1df588) + -0x288c,0x474,\n               iVar15);\nLAB_001c94fc:\n    iVar15 = iVar15 + -0x26c8;\n    (**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fc4) + -0x2850,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x478,\n               iVar15);\nLAB_001c951c:\n    iVar15 = iVar15 + -0x26c8;\n    (**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fd0) + 0x294c,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x47a,\n               iVar15);\n    pppppppuVar12 = pppppppuVar9;\nLAB_001c953c:\n    (**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fd0) + 0x1cac,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x479,\n               iVar15 + -0x26c8);\n  }" { (expression_statement "iVar15 = *(int *)(pcVar21 + 0x1df588) + -0x26c8;" (assignment_expression "iVar15 = *(int *)(pcVar21 + 0x1df588) + -0x26c8" identifier = (binary_expression "*(int *)(pcVar21 + 0x1df588) + -0x26c8" (pointer_expression "*(int *)(pcVar21 + 0x1df588)" * (cast_expression "(int *)(pcVar21 + 0x1df588)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0x1df588)" ( (binary_expression "pcVar21 + 0x1df588" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "(**(code **)(pcVar21 + 0x1e02a4))\n              (*(int *)(pcVar21 + 0x1df584) + -0x37b0,*(int *)(pcVar21 + 0x1df588) + -0x288c,0x474,\n               iVar15);" (call_expression "(**(code **)(pcVar21 + 0x1e02a4))\n              (*(int *)(pcVar21 + 0x1df584) + -0x37b0,*(int *)(pcVar21 + 0x1df588) + -0x288c,0x474,\n               iVar15)" (parenthesized_expression "(**(code **)(pcVar21 + 0x1e02a4))" ( (pointer_expression "**(code **)(pcVar21 + 0x1e02a4)" * (pointer_expression "*(code **)(pcVar21 + 0x1e02a4)" * (cast_expression "(code **)(pcVar21 + 0x1e02a4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0x1e02a4)" ( (binary_expression "pcVar21 + 0x1e02a4" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar21 + 0x1df584) + -0x37b0,*(int *)(pcVar21 + 0x1df588) + -0x288c,0x474,\n               iVar15)" ( (binary_expression "*(int *)(pcVar21 + 0x1df584) + -0x37b0" (pointer_expression "*(int *)(pcVar21 + 0x1df584)" * (cast_expression "(int *)(pcVar21 + 0x1df584)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0x1df584)" ( (binary_expression "pcVar21 + 0x1df584" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar21 + 0x1df588) + -0x288c" (pointer_expression "*(int *)(pcVar21 + 0x1df588)" * (cast_expression "(int *)(pcVar21 + 0x1df588)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0x1df588)" ( (binary_expression "pcVar21 + 0x1df588" identifier + number_literal) )))) + number_literal) , number_literal , identifier ))) ;) (labeled_statement "LAB_001c94fc:\n    iVar15 = iVar15 + -0x26c8;" statement_identifier : (expression_statement "iVar15 = iVar15 + -0x26c8;" (assignment_expression "iVar15 = iVar15 + -0x26c8" identifier = (binary_expression "iVar15 + -0x26c8" identifier + number_literal)) ;)) (expression_statement "(**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fc4) + -0x2850,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x478,\n               iVar15);" (call_expression "(**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fc4) + -0x2850,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x478,\n               iVar15)" (parenthesized_expression "(**(code **)(pcVar23 + -0x72a8))" ( (pointer_expression "**(code **)(pcVar23 + -0x72a8)" * (pointer_expression "*(code **)(pcVar23 + -0x72a8)" * (cast_expression "(code **)(pcVar23 + -0x72a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar23 + -0x72a8)" ( (binary_expression "pcVar23 + -0x72a8" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar23 + -0x7fc4) + -0x2850,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x478,\n               iVar15)" ( (binary_expression "*(int *)(pcVar23 + -0x7fc4) + -0x2850" (pointer_expression "*(int *)(pcVar23 + -0x7fc4)" * (cast_expression "(int *)(pcVar23 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar23 + -0x7fc4)" ( (binary_expression "pcVar23 + -0x7fc4" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar23 + -0x7fc4) + -0x288c" (pointer_expression "*(int *)(pcVar23 + -0x7fc4)" * (cast_expression "(int *)(pcVar23 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar23 + -0x7fc4)" ( (binary_expression "pcVar23 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , identifier ))) ;) (labeled_statement "LAB_001c951c:\n    iVar15 = iVar15 + -0x26c8;" statement_identifier : (expression_statement "iVar15 = iVar15 + -0x26c8;" (assignment_expression "iVar15 = iVar15 + -0x26c8" identifier = (binary_expression "iVar15 + -0x26c8" identifier + number_literal)) ;)) (expression_statement "(**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fd0) + 0x294c,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x47a,\n               iVar15);" (call_expression "(**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fd0) + 0x294c,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x47a,\n               iVar15)" (parenthesized_expression "(**(code **)(pcVar23 + -0x72a8))" ( (pointer_expression "**(code **)(pcVar23 + -0x72a8)" * (pointer_expression "*(code **)(pcVar23 + -0x72a8)" * (cast_expression "(code **)(pcVar23 + -0x72a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar23 + -0x72a8)" ( (binary_expression "pcVar23 + -0x72a8" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar23 + -0x7fd0) + 0x294c,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x47a,\n               iVar15)" ( (binary_expression "*(int *)(pcVar23 + -0x7fd0) + 0x294c" (pointer_expression "*(int *)(pcVar23 + -0x7fd0)" * (cast_expression "(int *)(pcVar23 + -0x7fd0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar23 + -0x7fd0)" ( (binary_expression "pcVar23 + -0x7fd0" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar23 + -0x7fc4) + -0x288c" (pointer_expression "*(int *)(pcVar23 + -0x7fc4)" * (cast_expression "(int *)(pcVar23 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar23 + -0x7fc4)" ( (binary_expression "pcVar23 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , identifier ))) ;) (expression_statement "pppppppuVar12 = pppppppuVar9;" (assignment_expression "pppppppuVar12 = pppppppuVar9" identifier = identifier) ;) (labeled_statement "LAB_001c953c:\n    (**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fd0) + 0x1cac,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x479,\n               iVar15 + -0x26c8);" statement_identifier : (expression_statement "(**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fd0) + 0x1cac,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x479,\n               iVar15 + -0x26c8);" (call_expression "(**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fd0) + 0x1cac,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x479,\n               iVar15 + -0x26c8)" (parenthesized_expression "(**(code **)(pcVar23 + -0x72a8))" ( (pointer_expression "**(code **)(pcVar23 + -0x72a8)" * (pointer_expression "*(code **)(pcVar23 + -0x72a8)" * (cast_expression "(code **)(pcVar23 + -0x72a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar23 + -0x72a8)" ( (binary_expression "pcVar23 + -0x72a8" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar23 + -0x7fd0) + 0x1cac,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x479,\n               iVar15 + -0x26c8)" ( (binary_expression "*(int *)(pcVar23 + -0x7fd0) + 0x1cac" (pointer_expression "*(int *)(pcVar23 + -0x7fd0)" * (cast_expression "(int *)(pcVar23 + -0x7fd0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar23 + -0x7fd0)" ( (binary_expression "pcVar23 + -0x7fd0" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar23 + -0x7fc4) + -0x288c" (pointer_expression "*(int *)(pcVar23 + -0x7fc4)" * (cast_expression "(int *)(pcVar23 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar23 + -0x7fc4)" ( (binary_expression "pcVar23 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "iVar15 + -0x26c8" identifier + number_literal) ))) ;)) }) (else_clause "else if (pppppppuVar12[0xcdb] == (undefined4 ******)0xabacadab) {\n    if (pppppppuVar12[0xcd4] != (undefined4 ******)0x0) {\n      pppppppuStack_194 = pppppppuVar12 + 0xd0;\n      ppppppuStack_198 = (undefined4 ******)(*(int *)(pcVar21 + 0x1df580) + -0x62ac);\n      (**(code **)(pcVar21 + 0x1dfe7c))\n                (0x8000,*(int *)(pcVar21 + 0x1df588) + -0x288c,\n                 *(int *)(pcVar21 + 0x1df588) + -0x26d4,0x477);\n    }\n    iVar15 = *(int *)(pcStack_188 + -0x7fc4);\n    pppppppuVar9 = pppppppuVar12;\n    param_1 = pppppppuVar13;\n    unaff_s2 = ppppppuVar2;\n    pcVar23 = pcStack_188;\n    if (pppppppuVar13 == (undefined4 *******)0x0) goto LAB_001c94fc;\n    if (ppppppuVar2 != (undefined4 ******)0x0) {\n      if (ppppppuVar2[7] == (undefined4 *****)0xabacadab) {\n        ppppppuStack_198 = ppppppuVar2;\n        pppppppuVar9 = (undefined4 *******)\n                       (**(code **)(pcStack_188 + -0x7080))\n                                 (pppppppuVar12,*pppppppuVar13,pppppppuVar13[1],1);\n        if (pppppppuVar9 != (undefined4 *******)0x0) {\n          iVar15 = (**(code **)(pcStack_188 + -0x7a20))(pppppppuVar9,ppppppuVar2);\n          if (iVar15 == 0) {\n            (**(code **)(pcStack_188 + -0x7964))(pppppppuVar9);\n            pppppppuVar9 = (undefined4 *******)0x0;\n          }\n          else {\n            pppppppuStack_194 = (undefined4 *******)-(int)pppppppuVar13[3];\n            ppppppuStack_198 = (undefined4 ******)-(int)pppppppuVar13[2];\n            ppppppuStack_190 = ppppppuVar2;\n            iVar15 = (**(code **)(pcStack_188 + -0x7bec))\n                               (pppppppuVar9,pppppppuVar12,pppppppuVar12[0x99],1);\n            if (iVar15 != 0) {\n              (**(code **)(pcStack_188 + -0x7d18))\n                        (pppppppuVar9,pppppppuVar12[6],pppppppuVar12[7],pppppppuVar13);\n            }\n          }\n        }\n        return pppppppuVar9;\n      }\n      goto LAB_001c951c;\n    }\n    goto LAB_001c953c;\n  }" else (if_statement "if (pppppppuVar12[0xcdb] == (undefined4 ******)0xabacadab) {\n    if (pppppppuVar12[0xcd4] != (undefined4 ******)0x0) {\n      pppppppuStack_194 = pppppppuVar12 + 0xd0;\n      ppppppuStack_198 = (undefined4 ******)(*(int *)(pcVar21 + 0x1df580) + -0x62ac);\n      (**(code **)(pcVar21 + 0x1dfe7c))\n                (0x8000,*(int *)(pcVar21 + 0x1df588) + -0x288c,\n                 *(int *)(pcVar21 + 0x1df588) + -0x26d4,0x477);\n    }\n    iVar15 = *(int *)(pcStack_188 + -0x7fc4);\n    pppppppuVar9 = pppppppuVar12;\n    param_1 = pppppppuVar13;\n    unaff_s2 = ppppppuVar2;\n    pcVar23 = pcStack_188;\n    if (pppppppuVar13 == (undefined4 *******)0x0) goto LAB_001c94fc;\n    if (ppppppuVar2 != (undefined4 ******)0x0) {\n      if (ppppppuVar2[7] == (undefined4 *****)0xabacadab) {\n        ppppppuStack_198 = ppppppuVar2;\n        pppppppuVar9 = (undefined4 *******)\n                       (**(code **)(pcStack_188 + -0x7080))\n                                 (pppppppuVar12,*pppppppuVar13,pppppppuVar13[1],1);\n        if (pppppppuVar9 != (undefined4 *******)0x0) {\n          iVar15 = (**(code **)(pcStack_188 + -0x7a20))(pppppppuVar9,ppppppuVar2);\n          if (iVar15 == 0) {\n            (**(code **)(pcStack_188 + -0x7964))(pppppppuVar9);\n            pppppppuVar9 = (undefined4 *******)0x0;\n          }\n          else {\n            pppppppuStack_194 = (undefined4 *******)-(int)pppppppuVar13[3];\n            ppppppuStack_198 = (undefined4 ******)-(int)pppppppuVar13[2];\n            ppppppuStack_190 = ppppppuVar2;\n            iVar15 = (**(code **)(pcStack_188 + -0x7bec))\n                               (pppppppuVar9,pppppppuVar12,pppppppuVar12[0x99],1);\n            if (iVar15 != 0) {\n              (**(code **)(pcStack_188 + -0x7d18))\n                        (pppppppuVar9,pppppppuVar12[6],pppppppuVar12[7],pppppppuVar13);\n            }\n          }\n        }\n        return pppppppuVar9;\n      }\n      goto LAB_001c951c;\n    }\n    goto LAB_001c953c;\n  }" if (parenthesized_expression "(pppppppuVar12[0xcdb] == (undefined4 ******)0xabacadab)" ( (binary_expression "pppppppuVar12[0xcdb] == (undefined4 ******)0xabacadab" (subscript_expression "pppppppuVar12[0xcdb]" identifier [ number_literal ]) == (cast_expression "(undefined4 ******)0xabacadab" ( (type_descriptor "undefined4 ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n    if (pppppppuVar12[0xcd4] != (undefined4 ******)0x0) {\n      pppppppuStack_194 = pppppppuVar12 + 0xd0;\n      ppppppuStack_198 = (undefined4 ******)(*(int *)(pcVar21 + 0x1df580) + -0x62ac);\n      (**(code **)(pcVar21 + 0x1dfe7c))\n                (0x8000,*(int *)(pcVar21 + 0x1df588) + -0x288c,\n                 *(int *)(pcVar21 + 0x1df588) + -0x26d4,0x477);\n    }\n    iVar15 = *(int *)(pcStack_188 + -0x7fc4);\n    pppppppuVar9 = pppppppuVar12;\n    param_1 = pppppppuVar13;\n    unaff_s2 = ppppppuVar2;\n    pcVar23 = pcStack_188;\n    if (pppppppuVar13 == (undefined4 *******)0x0) goto LAB_001c94fc;\n    if (ppppppuVar2 != (undefined4 ******)0x0) {\n      if (ppppppuVar2[7] == (undefined4 *****)0xabacadab) {\n        ppppppuStack_198 = ppppppuVar2;\n        pppppppuVar9 = (undefined4 *******)\n                       (**(code **)(pcStack_188 + -0x7080))\n                                 (pppppppuVar12,*pppppppuVar13,pppppppuVar13[1],1);\n        if (pppppppuVar9 != (undefined4 *******)0x0) {\n          iVar15 = (**(code **)(pcStack_188 + -0x7a20))(pppppppuVar9,ppppppuVar2);\n          if (iVar15 == 0) {\n            (**(code **)(pcStack_188 + -0x7964))(pppppppuVar9);\n            pppppppuVar9 = (undefined4 *******)0x0;\n          }\n          else {\n            pppppppuStack_194 = (undefined4 *******)-(int)pppppppuVar13[3];\n            ppppppuStack_198 = (undefined4 ******)-(int)pppppppuVar13[2];\n            ppppppuStack_190 = ppppppuVar2;\n            iVar15 = (**(code **)(pcStack_188 + -0x7bec))\n                               (pppppppuVar9,pppppppuVar12,pppppppuVar12[0x99],1);\n            if (iVar15 != 0) {\n              (**(code **)(pcStack_188 + -0x7d18))\n                        (pppppppuVar9,pppppppuVar12[6],pppppppuVar12[7],pppppppuVar13);\n            }\n          }\n        }\n        return pppppppuVar9;\n      }\n      goto LAB_001c951c;\n    }\n    goto LAB_001c953c;\n  }" { (if_statement "if (pppppppuVar12[0xcd4] != (undefined4 ******)0x0) {\n      pppppppuStack_194 = pppppppuVar12 + 0xd0;\n      ppppppuStack_198 = (undefined4 ******)(*(int *)(pcVar21 + 0x1df580) + -0x62ac);\n      (**(code **)(pcVar21 + 0x1dfe7c))\n                (0x8000,*(int *)(pcVar21 + 0x1df588) + -0x288c,\n                 *(int *)(pcVar21 + 0x1df588) + -0x26d4,0x477);\n    }" if (parenthesized_expression "(pppppppuVar12[0xcd4] != (undefined4 ******)0x0)" ( (binary_expression "pppppppuVar12[0xcd4] != (undefined4 ******)0x0" (subscript_expression "pppppppuVar12[0xcd4]" identifier [ number_literal ]) != (cast_expression "(undefined4 ******)0x0" ( (type_descriptor "undefined4 ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n      pppppppuStack_194 = pppppppuVar12 + 0xd0;\n      ppppppuStack_198 = (undefined4 ******)(*(int *)(pcVar21 + 0x1df580) + -0x62ac);\n      (**(code **)(pcVar21 + 0x1dfe7c))\n                (0x8000,*(int *)(pcVar21 + 0x1df588) + -0x288c,\n                 *(int *)(pcVar21 + 0x1df588) + -0x26d4,0x477);\n    }" { (expression_statement "pppppppuStack_194 = pppppppuVar12 + 0xd0;" (assignment_expression "pppppppuStack_194 = pppppppuVar12 + 0xd0" identifier = (binary_expression "pppppppuVar12 + 0xd0" identifier + number_literal)) ;) (expression_statement "ppppppuStack_198 = (undefined4 ******)(*(int *)(pcVar21 + 0x1df580) + -0x62ac);" (assignment_expression "ppppppuStack_198 = (undefined4 ******)(*(int *)(pcVar21 + 0x1df580) + -0x62ac)" identifier = (cast_expression "(undefined4 ******)(*(int *)(pcVar21 + 0x1df580) + -0x62ac)" ( (type_descriptor "undefined4 ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (parenthesized_expression "(*(int *)(pcVar21 + 0x1df580) + -0x62ac)" ( (binary_expression "*(int *)(pcVar21 + 0x1df580) + -0x62ac" (pointer_expression "*(int *)(pcVar21 + 0x1df580)" * (cast_expression "(int *)(pcVar21 + 0x1df580)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0x1df580)" ( (binary_expression "pcVar21 + 0x1df580" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "(**(code **)(pcVar21 + 0x1dfe7c))\n                (0x8000,*(int *)(pcVar21 + 0x1df588) + -0x288c,\n                 *(int *)(pcVar21 + 0x1df588) + -0x26d4,0x477);" (call_expression "(**(code **)(pcVar21 + 0x1dfe7c))\n                (0x8000,*(int *)(pcVar21 + 0x1df588) + -0x288c,\n                 *(int *)(pcVar21 + 0x1df588) + -0x26d4,0x477)" (parenthesized_expression "(**(code **)(pcVar21 + 0x1dfe7c))" ( (pointer_expression "**(code **)(pcVar21 + 0x1dfe7c)" * (pointer_expression "*(code **)(pcVar21 + 0x1dfe7c)" * (cast_expression "(code **)(pcVar21 + 0x1dfe7c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0x1dfe7c)" ( (binary_expression "pcVar21 + 0x1dfe7c" identifier + number_literal) ))))) )) (argument_list "(0x8000,*(int *)(pcVar21 + 0x1df588) + -0x288c,\n                 *(int *)(pcVar21 + 0x1df588) + -0x26d4,0x477)" ( number_literal , (binary_expression "*(int *)(pcVar21 + 0x1df588) + -0x288c" (pointer_expression "*(int *)(pcVar21 + 0x1df588)" * (cast_expression "(int *)(pcVar21 + 0x1df588)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0x1df588)" ( (binary_expression "pcVar21 + 0x1df588" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar21 + 0x1df588) + -0x26d4" (pointer_expression "*(int *)(pcVar21 + 0x1df588)" * (cast_expression "(int *)(pcVar21 + 0x1df588)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0x1df588)" ( (binary_expression "pcVar21 + 0x1df588" identifier + number_literal) )))) + number_literal) , number_literal ))) ;) })) (expression_statement "iVar15 = *(int *)(pcStack_188 + -0x7fc4);" (assignment_expression "iVar15 = *(int *)(pcStack_188 + -0x7fc4)" identifier = (pointer_expression "*(int *)(pcStack_188 + -0x7fc4)" * (cast_expression "(int *)(pcStack_188 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_188 + -0x7fc4)" ( (binary_expression "pcStack_188 + -0x7fc4" identifier + number_literal) ))))) ;) (expression_statement "pppppppuVar9 = pppppppuVar12;" (assignment_expression "pppppppuVar9 = pppppppuVar12" identifier = identifier) ;) (expression_statement "param_1 = pppppppuVar13;" (assignment_expression "param_1 = pppppppuVar13" identifier = identifier) ;) (expression_statement "unaff_s2 = ppppppuVar2;" (assignment_expression "unaff_s2 = ppppppuVar2" identifier = identifier) ;) (expression_statement "pcVar23 = pcStack_188;" (assignment_expression "pcVar23 = pcStack_188" identifier = identifier) ;) (if_statement "if (pppppppuVar13 == (undefined4 *******)0x0) goto LAB_001c94fc;" if (parenthesized_expression "(pppppppuVar13 == (undefined4 *******)0x0)" ( (binary_expression "pppppppuVar13 == (undefined4 *******)0x0" identifier == (cast_expression "(undefined4 *******)0x0" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (goto_statement "goto LAB_001c94fc;" goto statement_identifier ;)) (if_statement "if (ppppppuVar2 != (undefined4 ******)0x0) {\n      if (ppppppuVar2[7] == (undefined4 *****)0xabacadab) {\n        ppppppuStack_198 = ppppppuVar2;\n        pppppppuVar9 = (undefined4 *******)\n                       (**(code **)(pcStack_188 + -0x7080))\n                                 (pppppppuVar12,*pppppppuVar13,pppppppuVar13[1],1);\n        if (pppppppuVar9 != (undefined4 *******)0x0) {\n          iVar15 = (**(code **)(pcStack_188 + -0x7a20))(pppppppuVar9,ppppppuVar2);\n          if (iVar15 == 0) {\n            (**(code **)(pcStack_188 + -0x7964))(pppppppuVar9);\n            pppppppuVar9 = (undefined4 *******)0x0;\n          }\n          else {\n            pppppppuStack_194 = (undefined4 *******)-(int)pppppppuVar13[3];\n            ppppppuStack_198 = (undefined4 ******)-(int)pppppppuVar13[2];\n            ppppppuStack_190 = ppppppuVar2;\n            iVar15 = (**(code **)(pcStack_188 + -0x7bec))\n                               (pppppppuVar9,pppppppuVar12,pppppppuVar12[0x99],1);\n            if (iVar15 != 0) {\n              (**(code **)(pcStack_188 + -0x7d18))\n                        (pppppppuVar9,pppppppuVar12[6],pppppppuVar12[7],pppppppuVar13);\n            }\n          }\n        }\n        return pppppppuVar9;\n      }\n      goto LAB_001c951c;\n    }" if (parenthesized_expression "(ppppppuVar2 != (undefined4 ******)0x0)" ( (binary_expression "ppppppuVar2 != (undefined4 ******)0x0" identifier != (cast_expression "(undefined4 ******)0x0" ( (type_descriptor "undefined4 ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n      if (ppppppuVar2[7] == (undefined4 *****)0xabacadab) {\n        ppppppuStack_198 = ppppppuVar2;\n        pppppppuVar9 = (undefined4 *******)\n                       (**(code **)(pcStack_188 + -0x7080))\n                                 (pppppppuVar12,*pppppppuVar13,pppppppuVar13[1],1);\n        if (pppppppuVar9 != (undefined4 *******)0x0) {\n          iVar15 = (**(code **)(pcStack_188 + -0x7a20))(pppppppuVar9,ppppppuVar2);\n          if (iVar15 == 0) {\n            (**(code **)(pcStack_188 + -0x7964))(pppppppuVar9);\n            pppppppuVar9 = (undefined4 *******)0x0;\n          }\n          else {\n            pppppppuStack_194 = (undefined4 *******)-(int)pppppppuVar13[3];\n            ppppppuStack_198 = (undefined4 ******)-(int)pppppppuVar13[2];\n            ppppppuStack_190 = ppppppuVar2;\n            iVar15 = (**(code **)(pcStack_188 + -0x7bec))\n                               (pppppppuVar9,pppppppuVar12,pppppppuVar12[0x99],1);\n            if (iVar15 != 0) {\n              (**(code **)(pcStack_188 + -0x7d18))\n                        (pppppppuVar9,pppppppuVar12[6],pppppppuVar12[7],pppppppuVar13);\n            }\n          }\n        }\n        return pppppppuVar9;\n      }\n      goto LAB_001c951c;\n    }" { (if_statement "if (ppppppuVar2[7] == (undefined4 *****)0xabacadab) {\n        ppppppuStack_198 = ppppppuVar2;\n        pppppppuVar9 = (undefined4 *******)\n                       (**(code **)(pcStack_188 + -0x7080))\n                                 (pppppppuVar12,*pppppppuVar13,pppppppuVar13[1],1);\n        if (pppppppuVar9 != (undefined4 *******)0x0) {\n          iVar15 = (**(code **)(pcStack_188 + -0x7a20))(pppppppuVar9,ppppppuVar2);\n          if (iVar15 == 0) {\n            (**(code **)(pcStack_188 + -0x7964))(pppppppuVar9);\n            pppppppuVar9 = (undefined4 *******)0x0;\n          }\n          else {\n            pppppppuStack_194 = (undefined4 *******)-(int)pppppppuVar13[3];\n            ppppppuStack_198 = (undefined4 ******)-(int)pppppppuVar13[2];\n            ppppppuStack_190 = ppppppuVar2;\n            iVar15 = (**(code **)(pcStack_188 + -0x7bec))\n                               (pppppppuVar9,pppppppuVar12,pppppppuVar12[0x99],1);\n            if (iVar15 != 0) {\n              (**(code **)(pcStack_188 + -0x7d18))\n                        (pppppppuVar9,pppppppuVar12[6],pppppppuVar12[7],pppppppuVar13);\n            }\n          }\n        }\n        return pppppppuVar9;\n      }" if (parenthesized_expression "(ppppppuVar2[7] == (undefined4 *****)0xabacadab)" ( (binary_expression "ppppppuVar2[7] == (undefined4 *****)0xabacadab" (subscript_expression "ppppppuVar2[7]" identifier [ number_literal ]) == (cast_expression "(undefined4 *****)0xabacadab" ( (type_descriptor "undefined4 *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) )) (compound_statement "{\n        ppppppuStack_198 = ppppppuVar2;\n        pppppppuVar9 = (undefined4 *******)\n                       (**(code **)(pcStack_188 + -0x7080))\n                                 (pppppppuVar12,*pppppppuVar13,pppppppuVar13[1],1);\n        if (pppppppuVar9 != (undefined4 *******)0x0) {\n          iVar15 = (**(code **)(pcStack_188 + -0x7a20))(pppppppuVar9,ppppppuVar2);\n          if (iVar15 == 0) {\n            (**(code **)(pcStack_188 + -0x7964))(pppppppuVar9);\n            pppppppuVar9 = (undefined4 *******)0x0;\n          }\n          else {\n            pppppppuStack_194 = (undefined4 *******)-(int)pppppppuVar13[3];\n            ppppppuStack_198 = (undefined4 ******)-(int)pppppppuVar13[2];\n            ppppppuStack_190 = ppppppuVar2;\n            iVar15 = (**(code **)(pcStack_188 + -0x7bec))\n                               (pppppppuVar9,pppppppuVar12,pppppppuVar12[0x99],1);\n            if (iVar15 != 0) {\n              (**(code **)(pcStack_188 + -0x7d18))\n                        (pppppppuVar9,pppppppuVar12[6],pppppppuVar12[7],pppppppuVar13);\n            }\n          }\n        }\n        return pppppppuVar9;\n      }" { (expression_statement "ppppppuStack_198 = ppppppuVar2;" (assignment_expression "ppppppuStack_198 = ppppppuVar2" identifier = identifier) ;) (expression_statement "pppppppuVar9 = (undefined4 *******)\n                       (**(code **)(pcStack_188 + -0x7080))\n                                 (pppppppuVar12,*pppppppuVar13,pppppppuVar13[1],1);" (assignment_expression "pppppppuVar9 = (undefined4 *******)\n                       (**(code **)(pcStack_188 + -0x7080))\n                                 (pppppppuVar12,*pppppppuVar13,pppppppuVar13[1],1)" identifier = (cast_expression "(undefined4 *******)\n                       (**(code **)(pcStack_188 + -0x7080))\n                                 (pppppppuVar12,*pppppppuVar13,pppppppuVar13[1],1)" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(**(code **)(pcStack_188 + -0x7080))\n                                 (pppppppuVar12,*pppppppuVar13,pppppppuVar13[1],1)" (parenthesized_expression "(**(code **)(pcStack_188 + -0x7080))" ( (pointer_expression "**(code **)(pcStack_188 + -0x7080)" * (pointer_expression "*(code **)(pcStack_188 + -0x7080)" * (cast_expression "(code **)(pcStack_188 + -0x7080)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_188 + -0x7080)" ( (binary_expression "pcStack_188 + -0x7080" identifier + number_literal) ))))) )) (argument_list "(pppppppuVar12,*pppppppuVar13,pppppppuVar13[1],1)" ( identifier , (pointer_expression "*pppppppuVar13" * identifier) , (subscript_expression "pppppppuVar13[1]" identifier [ number_literal ]) , number_literal ))))) ;) (if_statement "if (pppppppuVar9 != (undefined4 *******)0x0) {\n          iVar15 = (**(code **)(pcStack_188 + -0x7a20))(pppppppuVar9,ppppppuVar2);\n          if (iVar15 == 0) {\n            (**(code **)(pcStack_188 + -0x7964))(pppppppuVar9);\n            pppppppuVar9 = (undefined4 *******)0x0;\n          }\n          else {\n            pppppppuStack_194 = (undefined4 *******)-(int)pppppppuVar13[3];\n            ppppppuStack_198 = (undefined4 ******)-(int)pppppppuVar13[2];\n            ppppppuStack_190 = ppppppuVar2;\n            iVar15 = (**(code **)(pcStack_188 + -0x7bec))\n                               (pppppppuVar9,pppppppuVar12,pppppppuVar12[0x99],1);\n            if (iVar15 != 0) {\n              (**(code **)(pcStack_188 + -0x7d18))\n                        (pppppppuVar9,pppppppuVar12[6],pppppppuVar12[7],pppppppuVar13);\n            }\n          }\n        }" if (parenthesized_expression "(pppppppuVar9 != (undefined4 *******)0x0)" ( (binary_expression "pppppppuVar9 != (undefined4 *******)0x0" identifier != (cast_expression "(undefined4 *******)0x0" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n          iVar15 = (**(code **)(pcStack_188 + -0x7a20))(pppppppuVar9,ppppppuVar2);\n          if (iVar15 == 0) {\n            (**(code **)(pcStack_188 + -0x7964))(pppppppuVar9);\n            pppppppuVar9 = (undefined4 *******)0x0;\n          }\n          else {\n            pppppppuStack_194 = (undefined4 *******)-(int)pppppppuVar13[3];\n            ppppppuStack_198 = (undefined4 ******)-(int)pppppppuVar13[2];\n            ppppppuStack_190 = ppppppuVar2;\n            iVar15 = (**(code **)(pcStack_188 + -0x7bec))\n                               (pppppppuVar9,pppppppuVar12,pppppppuVar12[0x99],1);\n            if (iVar15 != 0) {\n              (**(code **)(pcStack_188 + -0x7d18))\n                        (pppppppuVar9,pppppppuVar12[6],pppppppuVar12[7],pppppppuVar13);\n            }\n          }\n        }" { (expression_statement "iVar15 = (**(code **)(pcStack_188 + -0x7a20))(pppppppuVar9,ppppppuVar2);" (assignment_expression "iVar15 = (**(code **)(pcStack_188 + -0x7a20))(pppppppuVar9,ppppppuVar2)" identifier = (call_expression "(**(code **)(pcStack_188 + -0x7a20))(pppppppuVar9,ppppppuVar2)" (parenthesized_expression "(**(code **)(pcStack_188 + -0x7a20))" ( (pointer_expression "**(code **)(pcStack_188 + -0x7a20)" * (pointer_expression "*(code **)(pcStack_188 + -0x7a20)" * (cast_expression "(code **)(pcStack_188 + -0x7a20)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_188 + -0x7a20)" ( (binary_expression "pcStack_188 + -0x7a20" identifier + number_literal) ))))) )) (argument_list "(pppppppuVar9,ppppppuVar2)" ( identifier , identifier )))) ;) (if_statement "if (iVar15 == 0) {\n            (**(code **)(pcStack_188 + -0x7964))(pppppppuVar9);\n            pppppppuVar9 = (undefined4 *******)0x0;\n          }\n          else {\n            pppppppuStack_194 = (undefined4 *******)-(int)pppppppuVar13[3];\n            ppppppuStack_198 = (undefined4 ******)-(int)pppppppuVar13[2];\n            ppppppuStack_190 = ppppppuVar2;\n            iVar15 = (**(code **)(pcStack_188 + -0x7bec))\n                               (pppppppuVar9,pppppppuVar12,pppppppuVar12[0x99],1);\n            if (iVar15 != 0) {\n              (**(code **)(pcStack_188 + -0x7d18))\n                        (pppppppuVar9,pppppppuVar12[6],pppppppuVar12[7],pppppppuVar13);\n            }\n          }" if (parenthesized_expression "(iVar15 == 0)" ( (binary_expression "iVar15 == 0" identifier == number_literal) )) (compound_statement "{\n            (**(code **)(pcStack_188 + -0x7964))(pppppppuVar9);\n            pppppppuVar9 = (undefined4 *******)0x0;\n          }" { (expression_statement "(**(code **)(pcStack_188 + -0x7964))(pppppppuVar9);" (call_expression "(**(code **)(pcStack_188 + -0x7964))(pppppppuVar9)" (parenthesized_expression "(**(code **)(pcStack_188 + -0x7964))" ( (pointer_expression "**(code **)(pcStack_188 + -0x7964)" * (pointer_expression "*(code **)(pcStack_188 + -0x7964)" * (cast_expression "(code **)(pcStack_188 + -0x7964)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_188 + -0x7964)" ( (binary_expression "pcStack_188 + -0x7964" identifier + number_literal) ))))) )) (argument_list "(pppppppuVar9)" ( identifier ))) ;) (expression_statement "pppppppuVar9 = (undefined4 *******)0x0;" (assignment_expression "pppppppuVar9 = (undefined4 *******)0x0" identifier = (cast_expression "(undefined4 *******)0x0" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) }) (else_clause "else {\n            pppppppuStack_194 = (undefined4 *******)-(int)pppppppuVar13[3];\n            ppppppuStack_198 = (undefined4 ******)-(int)pppppppuVar13[2];\n            ppppppuStack_190 = ppppppuVar2;\n            iVar15 = (**(code **)(pcStack_188 + -0x7bec))\n                               (pppppppuVar9,pppppppuVar12,pppppppuVar12[0x99],1);\n            if (iVar15 != 0) {\n              (**(code **)(pcStack_188 + -0x7d18))\n                        (pppppppuVar9,pppppppuVar12[6],pppppppuVar12[7],pppppppuVar13);\n            }\n          }" else (compound_statement "{\n            pppppppuStack_194 = (undefined4 *******)-(int)pppppppuVar13[3];\n            ppppppuStack_198 = (undefined4 ******)-(int)pppppppuVar13[2];\n            ppppppuStack_190 = ppppppuVar2;\n            iVar15 = (**(code **)(pcStack_188 + -0x7bec))\n                               (pppppppuVar9,pppppppuVar12,pppppppuVar12[0x99],1);\n            if (iVar15 != 0) {\n              (**(code **)(pcStack_188 + -0x7d18))\n                        (pppppppuVar9,pppppppuVar12[6],pppppppuVar12[7],pppppppuVar13);\n            }\n          }" { (expression_statement "pppppppuStack_194 = (undefined4 *******)-(int)pppppppuVar13[3];" (assignment_expression "pppppppuStack_194 = (undefined4 *******)-(int)pppppppuVar13[3]" identifier = (cast_expression "(undefined4 *******)-(int)pppppppuVar13[3]" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (unary_expression "-(int)pppppppuVar13[3]" - (cast_expression "(int)pppppppuVar13[3]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "pppppppuVar13[3]" identifier [ number_literal ]))))) ;) (expression_statement "ppppppuStack_198 = (undefined4 ******)-(int)pppppppuVar13[2];" (assignment_expression "ppppppuStack_198 = (undefined4 ******)-(int)pppppppuVar13[2]" identifier = (cast_expression "(undefined4 ******)-(int)pppppppuVar13[2]" ( (type_descriptor "undefined4 ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (unary_expression "-(int)pppppppuVar13[2]" - (cast_expression "(int)pppppppuVar13[2]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "pppppppuVar13[2]" identifier [ number_literal ]))))) ;) (expression_statement "ppppppuStack_190 = ppppppuVar2;" (assignment_expression "ppppppuStack_190 = ppppppuVar2" identifier = identifier) ;) (expression_statement "iVar15 = (**(code **)(pcStack_188 + -0x7bec))\n                               (pppppppuVar9,pppppppuVar12,pppppppuVar12[0x99],1);" (assignment_expression "iVar15 = (**(code **)(pcStack_188 + -0x7bec))\n                               (pppppppuVar9,pppppppuVar12,pppppppuVar12[0x99],1)" identifier = (call_expression "(**(code **)(pcStack_188 + -0x7bec))\n                               (pppppppuVar9,pppppppuVar12,pppppppuVar12[0x99],1)" (parenthesized_expression "(**(code **)(pcStack_188 + -0x7bec))" ( (pointer_expression "**(code **)(pcStack_188 + -0x7bec)" * (pointer_expression "*(code **)(pcStack_188 + -0x7bec)" * (cast_expression "(code **)(pcStack_188 + -0x7bec)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_188 + -0x7bec)" ( (binary_expression "pcStack_188 + -0x7bec" identifier + number_literal) ))))) )) (argument_list "(pppppppuVar9,pppppppuVar12,pppppppuVar12[0x99],1)" ( identifier , identifier , (subscript_expression "pppppppuVar12[0x99]" identifier [ number_literal ]) , number_literal )))) ;) (if_statement "if (iVar15 != 0) {\n              (**(code **)(pcStack_188 + -0x7d18))\n                        (pppppppuVar9,pppppppuVar12[6],pppppppuVar12[7],pppppppuVar13);\n            }" if (parenthesized_expression "(iVar15 != 0)" ( (binary_expression "iVar15 != 0" identifier != number_literal) )) (compound_statement "{\n              (**(code **)(pcStack_188 + -0x7d18))\n                        (pppppppuVar9,pppppppuVar12[6],pppppppuVar12[7],pppppppuVar13);\n            }" { (expression_statement "(**(code **)(pcStack_188 + -0x7d18))\n                        (pppppppuVar9,pppppppuVar12[6],pppppppuVar12[7],pppppppuVar13);" (call_expression "(**(code **)(pcStack_188 + -0x7d18))\n                        (pppppppuVar9,pppppppuVar12[6],pppppppuVar12[7],pppppppuVar13)" (parenthesized_expression "(**(code **)(pcStack_188 + -0x7d18))" ( (pointer_expression "**(code **)(pcStack_188 + -0x7d18)" * (pointer_expression "*(code **)(pcStack_188 + -0x7d18)" * (cast_expression "(code **)(pcStack_188 + -0x7d18)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_188 + -0x7d18)" ( (binary_expression "pcStack_188 + -0x7d18" identifier + number_literal) ))))) )) (argument_list "(pppppppuVar9,pppppppuVar12[6],pppppppuVar12[7],pppppppuVar13)" ( identifier , (subscript_expression "pppppppuVar12[6]" identifier [ number_literal ]) , (subscript_expression "pppppppuVar12[7]" identifier [ number_literal ]) , identifier ))) ;) })) }))) })) (return_statement "return pppppppuVar9;" return identifier ;) })) (goto_statement "goto LAB_001c951c;" goto statement_identifier ;) })) (goto_statement "goto LAB_001c953c;" goto statement_identifier ;) })))) (expression_statement "pcVar21 = *(code **)(pcVar23 + -0x72a8);" (assignment_expression "pcVar21 = *(code **)(pcVar23 + -0x72a8)" identifier = (pointer_expression "*(code **)(pcVar23 + -0x72a8)" * (cast_expression "(code **)(pcVar23 + -0x72a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar23 + -0x72a8)" ( (binary_expression "pcVar23 + -0x72a8" identifier + number_literal) ))))) ;) (expression_statement "pppppppuVar9 = (undefined4 *******)(*(int *)(pcVar23 + -0x7fc4) + -0x288c);" (assignment_expression "pppppppuVar9 = (undefined4 *******)(*(int *)(pcVar23 + -0x7fc4) + -0x288c)" identifier = (cast_expression "(undefined4 *******)(*(int *)(pcVar23 + -0x7fc4) + -0x288c)" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(*(int *)(pcVar23 + -0x7fc4) + -0x288c)" ( (binary_expression "*(int *)(pcVar23 + -0x7fc4) + -0x288c" (pointer_expression "*(int *)(pcVar23 + -0x7fc4)" * (cast_expression "(int *)(pcVar23 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar23 + -0x7fc4)" ( (binary_expression "pcVar23 + -0x7fc4" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "pcVar24 = FlipImage;" (assignment_expression "pcVar24 = FlipImage" identifier = identifier) ;) (expression_statement "pppppppuVar13 = (undefined4 *******)(*(int *)(pcVar23 + -0x7fc8) + -0x3784);" (assignment_expression "pppppppuVar13 = (undefined4 *******)(*(int *)(pcVar23 + -0x7fc8) + -0x3784)" identifier = (cast_expression "(undefined4 *******)(*(int *)(pcVar23 + -0x7fc8) + -0x3784)" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(*(int *)(pcVar23 + -0x7fc8) + -0x3784)" ( (binary_expression "*(int *)(pcVar23 + -0x7fc8) + -0x3784" (pointer_expression "*(int *)(pcVar23 + -0x7fc8)" * (cast_expression "(int *)(pcVar23 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar23 + -0x7fc8)" ( (binary_expression "pcVar23 + -0x7fc8" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "(*pcVar21)(pppppppuVar13,pppppppuVar9,0x475,*(int *)(pcVar23 + -0x7fc4) + -0x26c8);" (call_expression "(*pcVar21)(pppppppuVar13,pppppppuVar9,0x475,*(int *)(pcVar23 + -0x7fc4) + -0x26c8)" (parenthesized_expression "(*pcVar21)" ( (pointer_expression "*pcVar21" * identifier) )) (argument_list "(pppppppuVar13,pppppppuVar9,0x475,*(int *)(pcVar23 + -0x7fc4) + -0x26c8)" ( identifier , identifier , number_literal , (binary_expression "*(int *)(pcVar23 + -0x7fc4) + -0x26c8" (pointer_expression "*(int *)(pcVar23 + -0x7fc4)" * (cast_expression "(int *)(pcVar23 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar23 + -0x7fc4)" ( (binary_expression "pcVar23 + -0x7fc4" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "pcVar23 = pcVar21 + 0x1e7330;" (assignment_expression "pcVar23 = pcVar21 + 0x1e7330" identifier = (binary_expression "pcVar21 + 0x1e7330" identifier + number_literal)) ;) (expression_statement "piVar16 = *(int **)(pcVar21 + 0x1dfcb0);" (assignment_expression "piVar16 = *(int **)(pcVar21 + 0x1dfcb0)" identifier = (pointer_expression "*(int **)(pcVar21 + 0x1dfcb0)" * (cast_expression "(int **)(pcVar21 + 0x1dfcb0)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0x1dfcb0)" ( (binary_expression "pcVar21 + 0x1dfcb0" identifier + number_literal) ))))) ;) (expression_statement "iStack_1d4 = *piVar16;" (assignment_expression "iStack_1d4 = *piVar16" identifier = (pointer_expression "*piVar16" * identifier)) ;) (expression_statement "pcStack_208 = pcVar23;" (assignment_expression "pcStack_208 = pcVar23" identifier = identifier) ;) (expression_statement "pppppppuStack_1d0 = pppppppuVar12;" (assignment_expression "pppppppuStack_1d0 = pppppppuVar12" identifier = identifier) ;) (expression_statement "pppppppuStack_1cc = param_1;" (assignment_expression "pppppppuStack_1cc = param_1" identifier = identifier) ;) (expression_statement "ppppppuStack_1c8 = unaff_s2;" (assignment_expression "ppppppuStack_1c8 = unaff_s2" identifier = identifier) ;) (expression_statement "pppppppuStack_1c4 = unaff_s3;" (assignment_expression "pppppppuStack_1c4 = unaff_s3" identifier = identifier) ;) (expression_statement "piStack_1c0 = piVar18;" (assignment_expression "piStack_1c0 = piVar18" identifier = identifier) ;) (expression_statement "pppppppuStack_1bc = unaff_s5;" (assignment_expression "pppppppuStack_1bc = unaff_s5" identifier = identifier) ;) (expression_statement "pppppppuStack_1b8 = unaff_s6;" (assignment_expression "pppppppuStack_1b8 = unaff_s6" identifier = identifier) ;) (expression_statement "pppppppuStack_1b4 = unaff_s7;" (assignment_expression "pppppppuStack_1b4 = unaff_s7" identifier = identifier) ;) (expression_statement "pppppppuStack_1b0 = unaff_s8;" (assignment_expression "pppppppuStack_1b0 = unaff_s8" identifier = identifier) ;) (expression_statement "pcStack_1ac = pcVar24;" (assignment_expression "pcStack_1ac = pcVar24" identifier = identifier) ;) (if_statement "if (pppppppuVar13 == (undefined4 *******)0x0) {\n    (**(code **)(pcVar21 + 0x1e0088))\n              (*(int *)(pcVar21 + 0x1df368) + -0x37b0,*(int *)(pcVar21 + 0x1df36c) + -0x288c,0x4bc,\n               *(int *)(pcVar21 + 0x1df36c) + -0x26e0);\n    pppppppuVar9 = param_1;\nLAB_001c9944:\n    (**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fd0) + 0x1cac,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x4c0,\n               *(int *)(pcVar23 + -0x7fc4) + -0x26e0);\nLAB_001c9968:\n    (**(code **)(pcVar23 + -0x784c))();\n    pppppppuVar13 = unaff_s7;\nLAB_001c9974:\n    (**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fd0) + 0x294c,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x4c1,\n               *(int *)(pcVar23 + -0x7fc4) + -0x26e0);\n    pppppppuStack_244 = pppppppuVar9;\n  }\n  else {\n    pppppppuStack_244 = param_1;\n    if (pppppppuVar13[0xcdb] == (undefined4 ******)0xabacadab) {\n      if (pppppppuVar13[0xcd4] != (undefined4 ******)0x0) {\n        pppppppuStack_20c = pppppppuVar13 + 0xd0;\n        pppppppuStack_210 = (undefined4 *******)(*(int *)(pcVar21 + 0x1df364) + -0x62ac);\n        (**(code **)(pcVar21 + 0x1dfc60))\n                  (0x8000,*(int *)(pcVar21 + 0x1df36c) + -0x288c,\n                   *(int *)(pcVar21 + 0x1df36c) + -0x26ec,0x4bf);\n      }\n      unaff_s7 = pppppppuVar13;\n      pcVar23 = pcStack_208;\n      if (pppppppuVar9 == (undefined4 *******)0x0) goto LAB_001c9944;\n      if (pppppppuVar9[7] == (undefined4 ******)0xabacadab) {\n        pppppppuStack_210 = pppppppuVar9;\n        pppppppuVar12 =\n             (undefined4 *******)(**(code **)(pcStack_208 + -0x7080))(pppppppuVar13,0,0,1);\n        if (pppppppuVar12 != (undefined4 *******)0x0) {\n          ppppppuStack_1fc = pppppppuVar13[0x8c];\n          unaff_s8 = (undefined4 *******)pppppppuVar13[0x8a];\n          unaff_s2 = pppppppuVar13[0x8b];\n          unaff_s6 = (undefined4 *******)pppppppuVar13[0x8d];\n          uStack_1f4 = 0;\n          uStack_1f8 = 0;\n          piVar18 = (int *)(**(code **)(pcStack_208 + -0x715c))(pppppppuVar13,pppppppuVar9);\n          unaff_s5 = (undefined4 *******)\n                     (**(code **)(pcStack_208 + -0x79dc))(pppppppuVar12,pppppppuVar9);\n          iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13);\n          if (((iVar15 == 4) ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13), iVar15 == 3)) &&\n             ((iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 4 ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 3)))) {\n            (**(code **)(pcStack_208 + -0x7774))(7);\n            ppppppuVar2 = pppppppuVar12[7];\n            if ((int)ppppppuVar2 < 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_03 < (int)ppppppuVar2 + 0x3f >> 6) goto LAB_001c98d4;\nLAB_001c981c:\n              bVar1 = (int)ppppppuVar2 < 0x80;\n            }\n            else {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if ((int)ppppppuVar2 >> 6 <= extraout_v1_03) goto LAB_001c981c;\nLAB_001c98d4:\n              (*pcVar23)(7);\n              bVar1 = extraout_v1_05 < 2;\n            }\n            iVar15 = 1;\n            if ((bool)(bVar1 ^ 1)) {\n              (**(code **)(pcStack_208 + -0x7774))(7);\n              ppppppuVar2 = pppppppuVar12[7];\n              if ((int)ppppppuVar2 < 0) {\n                ppppppuVar2 = (undefined4 ******)((int)ppppppuVar2 + 0x3f);\n              }\n              iVar15 = (int)ppppppuVar2 >> 6;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_06 < iVar15) {\nLAB_001c98ac:\n                (*pcVar23)(7);\n                iVar15 = extraout_v1_04;\n              }\n              goto LAB_001c96d8;\n            }\n            iVar14 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          else {\n            uVar36 = (**(code **)(pcStack_208 + -0x7774))(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              uVar36 = (*pcVar23)(7);\n              if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c96c0;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              iVar15 = 1;\n            }\n            else {\nLAB_001c96c0:\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\nLAB_001c96c4:\n              uVar36 = (*pcVar23)(7);\n              if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n                 (pcVar23 = *(code **)(pcStack_208 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c98ac;\n              iVar15 = 2;\n            }\nLAB_001c96d8:\n            iVar14 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          puStack_1dc = &uStack_1f8;\n          pppppppuStack_1d8 = (undefined4 *******)0x1;\n          pppppppuStack_1f0 = pppppppuVar13;\n          pppppppuStack_1ec = pppppppuVar9;\n          pppppppuStack_1e8 = unaff_s5;\n          piStack_1e4 = piVar18;\n          pppppppuStack_1e0 = pppppppuVar12;\n          (**(code **)(pcStack_208 + -0x7718))(iVar14 + 0x56bc,&pppppppuStack_1f0,iVar15,0);\n          pppppppuVar9 = pppppppuStack_1d8;\n          (**(code **)(pcStack_208 + -0x79bc))(unaff_s5);\n          (**(code **)(pcStack_208 + -0x79bc))(piVar18);\n          pppppppuVar12[0xa8] = pppppppuVar13[0xa8];\n          if (unaff_s2 != (undefined4 ******)0x0) {\n            unaff_s6 = (undefined4 *******)\n                       ((int)unaff_s2 + (-(int)unaff_s6 - (int)pppppppuVar12[7]));\n          }\n          pppppppuVar12[0x8a] = unaff_s8;\n          pppppppuVar12[0x8b] = unaff_s2;\n          pppppppuVar12[0x8c] = ppppppuStack_1fc;\n          pppppppuVar12[0x8d] = unaff_s6;\n          if (pppppppuVar9 == (undefined4 *******)0x0) {\n            pppppppuVar12 = (undefined4 *******)(**(code **)(pcStack_208 + -0x7964))(pppppppuVar12);\n          }\n        }\n        pcVar23 = pcStack_208;\n        if (iStack_1d4 == *piVar16) {\n          return pppppppuVar12;\n        }\n        goto LAB_001c9968;\n      }\n      goto LAB_001c9974;\n    }\n  }" if (parenthesized_expression "(pppppppuVar13 == (undefined4 *******)0x0)" ( (binary_expression "pppppppuVar13 == (undefined4 *******)0x0" identifier == (cast_expression "(undefined4 *******)0x0" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n    (**(code **)(pcVar21 + 0x1e0088))\n              (*(int *)(pcVar21 + 0x1df368) + -0x37b0,*(int *)(pcVar21 + 0x1df36c) + -0x288c,0x4bc,\n               *(int *)(pcVar21 + 0x1df36c) + -0x26e0);\n    pppppppuVar9 = param_1;\nLAB_001c9944:\n    (**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fd0) + 0x1cac,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x4c0,\n               *(int *)(pcVar23 + -0x7fc4) + -0x26e0);\nLAB_001c9968:\n    (**(code **)(pcVar23 + -0x784c))();\n    pppppppuVar13 = unaff_s7;\nLAB_001c9974:\n    (**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fd0) + 0x294c,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x4c1,\n               *(int *)(pcVar23 + -0x7fc4) + -0x26e0);\n    pppppppuStack_244 = pppppppuVar9;\n  }" { (expression_statement "(**(code **)(pcVar21 + 0x1e0088))\n              (*(int *)(pcVar21 + 0x1df368) + -0x37b0,*(int *)(pcVar21 + 0x1df36c) + -0x288c,0x4bc,\n               *(int *)(pcVar21 + 0x1df36c) + -0x26e0);" (call_expression "(**(code **)(pcVar21 + 0x1e0088))\n              (*(int *)(pcVar21 + 0x1df368) + -0x37b0,*(int *)(pcVar21 + 0x1df36c) + -0x288c,0x4bc,\n               *(int *)(pcVar21 + 0x1df36c) + -0x26e0)" (parenthesized_expression "(**(code **)(pcVar21 + 0x1e0088))" ( (pointer_expression "**(code **)(pcVar21 + 0x1e0088)" * (pointer_expression "*(code **)(pcVar21 + 0x1e0088)" * (cast_expression "(code **)(pcVar21 + 0x1e0088)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0x1e0088)" ( (binary_expression "pcVar21 + 0x1e0088" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar21 + 0x1df368) + -0x37b0,*(int *)(pcVar21 + 0x1df36c) + -0x288c,0x4bc,\n               *(int *)(pcVar21 + 0x1df36c) + -0x26e0)" ( (binary_expression "*(int *)(pcVar21 + 0x1df368) + -0x37b0" (pointer_expression "*(int *)(pcVar21 + 0x1df368)" * (cast_expression "(int *)(pcVar21 + 0x1df368)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0x1df368)" ( (binary_expression "pcVar21 + 0x1df368" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar21 + 0x1df36c) + -0x288c" (pointer_expression "*(int *)(pcVar21 + 0x1df36c)" * (cast_expression "(int *)(pcVar21 + 0x1df36c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0x1df36c)" ( (binary_expression "pcVar21 + 0x1df36c" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar21 + 0x1df36c) + -0x26e0" (pointer_expression "*(int *)(pcVar21 + 0x1df36c)" * (cast_expression "(int *)(pcVar21 + 0x1df36c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0x1df36c)" ( (binary_expression "pcVar21 + 0x1df36c" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "pppppppuVar9 = param_1;" (assignment_expression "pppppppuVar9 = param_1" identifier = identifier) ;) (labeled_statement "LAB_001c9944:\n    (**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fd0) + 0x1cac,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x4c0,\n               *(int *)(pcVar23 + -0x7fc4) + -0x26e0);" statement_identifier : (expression_statement "(**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fd0) + 0x1cac,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x4c0,\n               *(int *)(pcVar23 + -0x7fc4) + -0x26e0);" (call_expression "(**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fd0) + 0x1cac,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x4c0,\n               *(int *)(pcVar23 + -0x7fc4) + -0x26e0)" (parenthesized_expression "(**(code **)(pcVar23 + -0x72a8))" ( (pointer_expression "**(code **)(pcVar23 + -0x72a8)" * (pointer_expression "*(code **)(pcVar23 + -0x72a8)" * (cast_expression "(code **)(pcVar23 + -0x72a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar23 + -0x72a8)" ( (binary_expression "pcVar23 + -0x72a8" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar23 + -0x7fd0) + 0x1cac,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x4c0,\n               *(int *)(pcVar23 + -0x7fc4) + -0x26e0)" ( (binary_expression "*(int *)(pcVar23 + -0x7fd0) + 0x1cac" (pointer_expression "*(int *)(pcVar23 + -0x7fd0)" * (cast_expression "(int *)(pcVar23 + -0x7fd0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar23 + -0x7fd0)" ( (binary_expression "pcVar23 + -0x7fd0" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar23 + -0x7fc4) + -0x288c" (pointer_expression "*(int *)(pcVar23 + -0x7fc4)" * (cast_expression "(int *)(pcVar23 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar23 + -0x7fc4)" ( (binary_expression "pcVar23 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar23 + -0x7fc4) + -0x26e0" (pointer_expression "*(int *)(pcVar23 + -0x7fc4)" * (cast_expression "(int *)(pcVar23 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar23 + -0x7fc4)" ( (binary_expression "pcVar23 + -0x7fc4" identifier + number_literal) )))) + number_literal) ))) ;)) (labeled_statement "LAB_001c9968:\n    (**(code **)(pcVar23 + -0x784c))();" statement_identifier : (expression_statement "(**(code **)(pcVar23 + -0x784c))();" (call_expression "(**(code **)(pcVar23 + -0x784c))()" (parenthesized_expression "(**(code **)(pcVar23 + -0x784c))" ( (pointer_expression "**(code **)(pcVar23 + -0x784c)" * (pointer_expression "*(code **)(pcVar23 + -0x784c)" * (cast_expression "(code **)(pcVar23 + -0x784c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar23 + -0x784c)" ( (binary_expression "pcVar23 + -0x784c" identifier + number_literal) ))))) )) (argument_list "()" ( ))) ;)) (expression_statement "pppppppuVar13 = unaff_s7;" (assignment_expression "pppppppuVar13 = unaff_s7" identifier = identifier) ;) (labeled_statement "LAB_001c9974:\n    (**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fd0) + 0x294c,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x4c1,\n               *(int *)(pcVar23 + -0x7fc4) + -0x26e0);" statement_identifier : (expression_statement "(**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fd0) + 0x294c,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x4c1,\n               *(int *)(pcVar23 + -0x7fc4) + -0x26e0);" (call_expression "(**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fd0) + 0x294c,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x4c1,\n               *(int *)(pcVar23 + -0x7fc4) + -0x26e0)" (parenthesized_expression "(**(code **)(pcVar23 + -0x72a8))" ( (pointer_expression "**(code **)(pcVar23 + -0x72a8)" * (pointer_expression "*(code **)(pcVar23 + -0x72a8)" * (cast_expression "(code **)(pcVar23 + -0x72a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar23 + -0x72a8)" ( (binary_expression "pcVar23 + -0x72a8" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar23 + -0x7fd0) + 0x294c,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x4c1,\n               *(int *)(pcVar23 + -0x7fc4) + -0x26e0)" ( (binary_expression "*(int *)(pcVar23 + -0x7fd0) + 0x294c" (pointer_expression "*(int *)(pcVar23 + -0x7fd0)" * (cast_expression "(int *)(pcVar23 + -0x7fd0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar23 + -0x7fd0)" ( (binary_expression "pcVar23 + -0x7fd0" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar23 + -0x7fc4) + -0x288c" (pointer_expression "*(int *)(pcVar23 + -0x7fc4)" * (cast_expression "(int *)(pcVar23 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar23 + -0x7fc4)" ( (binary_expression "pcVar23 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar23 + -0x7fc4) + -0x26e0" (pointer_expression "*(int *)(pcVar23 + -0x7fc4)" * (cast_expression "(int *)(pcVar23 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar23 + -0x7fc4)" ( (binary_expression "pcVar23 + -0x7fc4" identifier + number_literal) )))) + number_literal) ))) ;)) (expression_statement "pppppppuStack_244 = pppppppuVar9;" (assignment_expression "pppppppuStack_244 = pppppppuVar9" identifier = identifier) ;) }) (else_clause "else {\n    pppppppuStack_244 = param_1;\n    if (pppppppuVar13[0xcdb] == (undefined4 ******)0xabacadab) {\n      if (pppppppuVar13[0xcd4] != (undefined4 ******)0x0) {\n        pppppppuStack_20c = pppppppuVar13 + 0xd0;\n        pppppppuStack_210 = (undefined4 *******)(*(int *)(pcVar21 + 0x1df364) + -0x62ac);\n        (**(code **)(pcVar21 + 0x1dfc60))\n                  (0x8000,*(int *)(pcVar21 + 0x1df36c) + -0x288c,\n                   *(int *)(pcVar21 + 0x1df36c) + -0x26ec,0x4bf);\n      }\n      unaff_s7 = pppppppuVar13;\n      pcVar23 = pcStack_208;\n      if (pppppppuVar9 == (undefined4 *******)0x0) goto LAB_001c9944;\n      if (pppppppuVar9[7] == (undefined4 ******)0xabacadab) {\n        pppppppuStack_210 = pppppppuVar9;\n        pppppppuVar12 =\n             (undefined4 *******)(**(code **)(pcStack_208 + -0x7080))(pppppppuVar13,0,0,1);\n        if (pppppppuVar12 != (undefined4 *******)0x0) {\n          ppppppuStack_1fc = pppppppuVar13[0x8c];\n          unaff_s8 = (undefined4 *******)pppppppuVar13[0x8a];\n          unaff_s2 = pppppppuVar13[0x8b];\n          unaff_s6 = (undefined4 *******)pppppppuVar13[0x8d];\n          uStack_1f4 = 0;\n          uStack_1f8 = 0;\n          piVar18 = (int *)(**(code **)(pcStack_208 + -0x715c))(pppppppuVar13,pppppppuVar9);\n          unaff_s5 = (undefined4 *******)\n                     (**(code **)(pcStack_208 + -0x79dc))(pppppppuVar12,pppppppuVar9);\n          iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13);\n          if (((iVar15 == 4) ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13), iVar15 == 3)) &&\n             ((iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 4 ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 3)))) {\n            (**(code **)(pcStack_208 + -0x7774))(7);\n            ppppppuVar2 = pppppppuVar12[7];\n            if ((int)ppppppuVar2 < 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_03 < (int)ppppppuVar2 + 0x3f >> 6) goto LAB_001c98d4;\nLAB_001c981c:\n              bVar1 = (int)ppppppuVar2 < 0x80;\n            }\n            else {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if ((int)ppppppuVar2 >> 6 <= extraout_v1_03) goto LAB_001c981c;\nLAB_001c98d4:\n              (*pcVar23)(7);\n              bVar1 = extraout_v1_05 < 2;\n            }\n            iVar15 = 1;\n            if ((bool)(bVar1 ^ 1)) {\n              (**(code **)(pcStack_208 + -0x7774))(7);\n              ppppppuVar2 = pppppppuVar12[7];\n              if ((int)ppppppuVar2 < 0) {\n                ppppppuVar2 = (undefined4 ******)((int)ppppppuVar2 + 0x3f);\n              }\n              iVar15 = (int)ppppppuVar2 >> 6;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_06 < iVar15) {\nLAB_001c98ac:\n                (*pcVar23)(7);\n                iVar15 = extraout_v1_04;\n              }\n              goto LAB_001c96d8;\n            }\n            iVar14 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          else {\n            uVar36 = (**(code **)(pcStack_208 + -0x7774))(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              uVar36 = (*pcVar23)(7);\n              if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c96c0;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              iVar15 = 1;\n            }\n            else {\nLAB_001c96c0:\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\nLAB_001c96c4:\n              uVar36 = (*pcVar23)(7);\n              if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n                 (pcVar23 = *(code **)(pcStack_208 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c98ac;\n              iVar15 = 2;\n            }\nLAB_001c96d8:\n            iVar14 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          puStack_1dc = &uStack_1f8;\n          pppppppuStack_1d8 = (undefined4 *******)0x1;\n          pppppppuStack_1f0 = pppppppuVar13;\n          pppppppuStack_1ec = pppppppuVar9;\n          pppppppuStack_1e8 = unaff_s5;\n          piStack_1e4 = piVar18;\n          pppppppuStack_1e0 = pppppppuVar12;\n          (**(code **)(pcStack_208 + -0x7718))(iVar14 + 0x56bc,&pppppppuStack_1f0,iVar15,0);\n          pppppppuVar9 = pppppppuStack_1d8;\n          (**(code **)(pcStack_208 + -0x79bc))(unaff_s5);\n          (**(code **)(pcStack_208 + -0x79bc))(piVar18);\n          pppppppuVar12[0xa8] = pppppppuVar13[0xa8];\n          if (unaff_s2 != (undefined4 ******)0x0) {\n            unaff_s6 = (undefined4 *******)\n                       ((int)unaff_s2 + (-(int)unaff_s6 - (int)pppppppuVar12[7]));\n          }\n          pppppppuVar12[0x8a] = unaff_s8;\n          pppppppuVar12[0x8b] = unaff_s2;\n          pppppppuVar12[0x8c] = ppppppuStack_1fc;\n          pppppppuVar12[0x8d] = unaff_s6;\n          if (pppppppuVar9 == (undefined4 *******)0x0) {\n            pppppppuVar12 = (undefined4 *******)(**(code **)(pcStack_208 + -0x7964))(pppppppuVar12);\n          }\n        }\n        pcVar23 = pcStack_208;\n        if (iStack_1d4 == *piVar16) {\n          return pppppppuVar12;\n        }\n        goto LAB_001c9968;\n      }\n      goto LAB_001c9974;\n    }\n  }" else (compound_statement "{\n    pppppppuStack_244 = param_1;\n    if (pppppppuVar13[0xcdb] == (undefined4 ******)0xabacadab) {\n      if (pppppppuVar13[0xcd4] != (undefined4 ******)0x0) {\n        pppppppuStack_20c = pppppppuVar13 + 0xd0;\n        pppppppuStack_210 = (undefined4 *******)(*(int *)(pcVar21 + 0x1df364) + -0x62ac);\n        (**(code **)(pcVar21 + 0x1dfc60))\n                  (0x8000,*(int *)(pcVar21 + 0x1df36c) + -0x288c,\n                   *(int *)(pcVar21 + 0x1df36c) + -0x26ec,0x4bf);\n      }\n      unaff_s7 = pppppppuVar13;\n      pcVar23 = pcStack_208;\n      if (pppppppuVar9 == (undefined4 *******)0x0) goto LAB_001c9944;\n      if (pppppppuVar9[7] == (undefined4 ******)0xabacadab) {\n        pppppppuStack_210 = pppppppuVar9;\n        pppppppuVar12 =\n             (undefined4 *******)(**(code **)(pcStack_208 + -0x7080))(pppppppuVar13,0,0,1);\n        if (pppppppuVar12 != (undefined4 *******)0x0) {\n          ppppppuStack_1fc = pppppppuVar13[0x8c];\n          unaff_s8 = (undefined4 *******)pppppppuVar13[0x8a];\n          unaff_s2 = pppppppuVar13[0x8b];\n          unaff_s6 = (undefined4 *******)pppppppuVar13[0x8d];\n          uStack_1f4 = 0;\n          uStack_1f8 = 0;\n          piVar18 = (int *)(**(code **)(pcStack_208 + -0x715c))(pppppppuVar13,pppppppuVar9);\n          unaff_s5 = (undefined4 *******)\n                     (**(code **)(pcStack_208 + -0x79dc))(pppppppuVar12,pppppppuVar9);\n          iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13);\n          if (((iVar15 == 4) ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13), iVar15 == 3)) &&\n             ((iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 4 ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 3)))) {\n            (**(code **)(pcStack_208 + -0x7774))(7);\n            ppppppuVar2 = pppppppuVar12[7];\n            if ((int)ppppppuVar2 < 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_03 < (int)ppppppuVar2 + 0x3f >> 6) goto LAB_001c98d4;\nLAB_001c981c:\n              bVar1 = (int)ppppppuVar2 < 0x80;\n            }\n            else {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if ((int)ppppppuVar2 >> 6 <= extraout_v1_03) goto LAB_001c981c;\nLAB_001c98d4:\n              (*pcVar23)(7);\n              bVar1 = extraout_v1_05 < 2;\n            }\n            iVar15 = 1;\n            if ((bool)(bVar1 ^ 1)) {\n              (**(code **)(pcStack_208 + -0x7774))(7);\n              ppppppuVar2 = pppppppuVar12[7];\n              if ((int)ppppppuVar2 < 0) {\n                ppppppuVar2 = (undefined4 ******)((int)ppppppuVar2 + 0x3f);\n              }\n              iVar15 = (int)ppppppuVar2 >> 6;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_06 < iVar15) {\nLAB_001c98ac:\n                (*pcVar23)(7);\n                iVar15 = extraout_v1_04;\n              }\n              goto LAB_001c96d8;\n            }\n            iVar14 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          else {\n            uVar36 = (**(code **)(pcStack_208 + -0x7774))(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              uVar36 = (*pcVar23)(7);\n              if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c96c0;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              iVar15 = 1;\n            }\n            else {\nLAB_001c96c0:\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\nLAB_001c96c4:\n              uVar36 = (*pcVar23)(7);\n              if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n                 (pcVar23 = *(code **)(pcStack_208 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c98ac;\n              iVar15 = 2;\n            }\nLAB_001c96d8:\n            iVar14 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          puStack_1dc = &uStack_1f8;\n          pppppppuStack_1d8 = (undefined4 *******)0x1;\n          pppppppuStack_1f0 = pppppppuVar13;\n          pppppppuStack_1ec = pppppppuVar9;\n          pppppppuStack_1e8 = unaff_s5;\n          piStack_1e4 = piVar18;\n          pppppppuStack_1e0 = pppppppuVar12;\n          (**(code **)(pcStack_208 + -0x7718))(iVar14 + 0x56bc,&pppppppuStack_1f0,iVar15,0);\n          pppppppuVar9 = pppppppuStack_1d8;\n          (**(code **)(pcStack_208 + -0x79bc))(unaff_s5);\n          (**(code **)(pcStack_208 + -0x79bc))(piVar18);\n          pppppppuVar12[0xa8] = pppppppuVar13[0xa8];\n          if (unaff_s2 != (undefined4 ******)0x0) {\n            unaff_s6 = (undefined4 *******)\n                       ((int)unaff_s2 + (-(int)unaff_s6 - (int)pppppppuVar12[7]));\n          }\n          pppppppuVar12[0x8a] = unaff_s8;\n          pppppppuVar12[0x8b] = unaff_s2;\n          pppppppuVar12[0x8c] = ppppppuStack_1fc;\n          pppppppuVar12[0x8d] = unaff_s6;\n          if (pppppppuVar9 == (undefined4 *******)0x0) {\n            pppppppuVar12 = (undefined4 *******)(**(code **)(pcStack_208 + -0x7964))(pppppppuVar12);\n          }\n        }\n        pcVar23 = pcStack_208;\n        if (iStack_1d4 == *piVar16) {\n          return pppppppuVar12;\n        }\n        goto LAB_001c9968;\n      }\n      goto LAB_001c9974;\n    }\n  }" { (expression_statement "pppppppuStack_244 = param_1;" (assignment_expression "pppppppuStack_244 = param_1" identifier = identifier) ;) (if_statement "if (pppppppuVar13[0xcdb] == (undefined4 ******)0xabacadab) {\n      if (pppppppuVar13[0xcd4] != (undefined4 ******)0x0) {\n        pppppppuStack_20c = pppppppuVar13 + 0xd0;\n        pppppppuStack_210 = (undefined4 *******)(*(int *)(pcVar21 + 0x1df364) + -0x62ac);\n        (**(code **)(pcVar21 + 0x1dfc60))\n                  (0x8000,*(int *)(pcVar21 + 0x1df36c) + -0x288c,\n                   *(int *)(pcVar21 + 0x1df36c) + -0x26ec,0x4bf);\n      }\n      unaff_s7 = pppppppuVar13;\n      pcVar23 = pcStack_208;\n      if (pppppppuVar9 == (undefined4 *******)0x0) goto LAB_001c9944;\n      if (pppppppuVar9[7] == (undefined4 ******)0xabacadab) {\n        pppppppuStack_210 = pppppppuVar9;\n        pppppppuVar12 =\n             (undefined4 *******)(**(code **)(pcStack_208 + -0x7080))(pppppppuVar13,0,0,1);\n        if (pppppppuVar12 != (undefined4 *******)0x0) {\n          ppppppuStack_1fc = pppppppuVar13[0x8c];\n          unaff_s8 = (undefined4 *******)pppppppuVar13[0x8a];\n          unaff_s2 = pppppppuVar13[0x8b];\n          unaff_s6 = (undefined4 *******)pppppppuVar13[0x8d];\n          uStack_1f4 = 0;\n          uStack_1f8 = 0;\n          piVar18 = (int *)(**(code **)(pcStack_208 + -0x715c))(pppppppuVar13,pppppppuVar9);\n          unaff_s5 = (undefined4 *******)\n                     (**(code **)(pcStack_208 + -0x79dc))(pppppppuVar12,pppppppuVar9);\n          iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13);\n          if (((iVar15 == 4) ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13), iVar15 == 3)) &&\n             ((iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 4 ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 3)))) {\n            (**(code **)(pcStack_208 + -0x7774))(7);\n            ppppppuVar2 = pppppppuVar12[7];\n            if ((int)ppppppuVar2 < 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_03 < (int)ppppppuVar2 + 0x3f >> 6) goto LAB_001c98d4;\nLAB_001c981c:\n              bVar1 = (int)ppppppuVar2 < 0x80;\n            }\n            else {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if ((int)ppppppuVar2 >> 6 <= extraout_v1_03) goto LAB_001c981c;\nLAB_001c98d4:\n              (*pcVar23)(7);\n              bVar1 = extraout_v1_05 < 2;\n            }\n            iVar15 = 1;\n            if ((bool)(bVar1 ^ 1)) {\n              (**(code **)(pcStack_208 + -0x7774))(7);\n              ppppppuVar2 = pppppppuVar12[7];\n              if ((int)ppppppuVar2 < 0) {\n                ppppppuVar2 = (undefined4 ******)((int)ppppppuVar2 + 0x3f);\n              }\n              iVar15 = (int)ppppppuVar2 >> 6;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_06 < iVar15) {\nLAB_001c98ac:\n                (*pcVar23)(7);\n                iVar15 = extraout_v1_04;\n              }\n              goto LAB_001c96d8;\n            }\n            iVar14 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          else {\n            uVar36 = (**(code **)(pcStack_208 + -0x7774))(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              uVar36 = (*pcVar23)(7);\n              if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c96c0;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              iVar15 = 1;\n            }\n            else {\nLAB_001c96c0:\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\nLAB_001c96c4:\n              uVar36 = (*pcVar23)(7);\n              if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n                 (pcVar23 = *(code **)(pcStack_208 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c98ac;\n              iVar15 = 2;\n            }\nLAB_001c96d8:\n            iVar14 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          puStack_1dc = &uStack_1f8;\n          pppppppuStack_1d8 = (undefined4 *******)0x1;\n          pppppppuStack_1f0 = pppppppuVar13;\n          pppppppuStack_1ec = pppppppuVar9;\n          pppppppuStack_1e8 = unaff_s5;\n          piStack_1e4 = piVar18;\n          pppppppuStack_1e0 = pppppppuVar12;\n          (**(code **)(pcStack_208 + -0x7718))(iVar14 + 0x56bc,&pppppppuStack_1f0,iVar15,0);\n          pppppppuVar9 = pppppppuStack_1d8;\n          (**(code **)(pcStack_208 + -0x79bc))(unaff_s5);\n          (**(code **)(pcStack_208 + -0x79bc))(piVar18);\n          pppppppuVar12[0xa8] = pppppppuVar13[0xa8];\n          if (unaff_s2 != (undefined4 ******)0x0) {\n            unaff_s6 = (undefined4 *******)\n                       ((int)unaff_s2 + (-(int)unaff_s6 - (int)pppppppuVar12[7]));\n          }\n          pppppppuVar12[0x8a] = unaff_s8;\n          pppppppuVar12[0x8b] = unaff_s2;\n          pppppppuVar12[0x8c] = ppppppuStack_1fc;\n          pppppppuVar12[0x8d] = unaff_s6;\n          if (pppppppuVar9 == (undefined4 *******)0x0) {\n            pppppppuVar12 = (undefined4 *******)(**(code **)(pcStack_208 + -0x7964))(pppppppuVar12);\n          }\n        }\n        pcVar23 = pcStack_208;\n        if (iStack_1d4 == *piVar16) {\n          return pppppppuVar12;\n        }\n        goto LAB_001c9968;\n      }\n      goto LAB_001c9974;\n    }" if (parenthesized_expression "(pppppppuVar13[0xcdb] == (undefined4 ******)0xabacadab)" ( (binary_expression "pppppppuVar13[0xcdb] == (undefined4 ******)0xabacadab" (subscript_expression "pppppppuVar13[0xcdb]" identifier [ number_literal ]) == (cast_expression "(undefined4 ******)0xabacadab" ( (type_descriptor "undefined4 ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n      if (pppppppuVar13[0xcd4] != (undefined4 ******)0x0) {\n        pppppppuStack_20c = pppppppuVar13 + 0xd0;\n        pppppppuStack_210 = (undefined4 *******)(*(int *)(pcVar21 + 0x1df364) + -0x62ac);\n        (**(code **)(pcVar21 + 0x1dfc60))\n                  (0x8000,*(int *)(pcVar21 + 0x1df36c) + -0x288c,\n                   *(int *)(pcVar21 + 0x1df36c) + -0x26ec,0x4bf);\n      }\n      unaff_s7 = pppppppuVar13;\n      pcVar23 = pcStack_208;\n      if (pppppppuVar9 == (undefined4 *******)0x0) goto LAB_001c9944;\n      if (pppppppuVar9[7] == (undefined4 ******)0xabacadab) {\n        pppppppuStack_210 = pppppppuVar9;\n        pppppppuVar12 =\n             (undefined4 *******)(**(code **)(pcStack_208 + -0x7080))(pppppppuVar13,0,0,1);\n        if (pppppppuVar12 != (undefined4 *******)0x0) {\n          ppppppuStack_1fc = pppppppuVar13[0x8c];\n          unaff_s8 = (undefined4 *******)pppppppuVar13[0x8a];\n          unaff_s2 = pppppppuVar13[0x8b];\n          unaff_s6 = (undefined4 *******)pppppppuVar13[0x8d];\n          uStack_1f4 = 0;\n          uStack_1f8 = 0;\n          piVar18 = (int *)(**(code **)(pcStack_208 + -0x715c))(pppppppuVar13,pppppppuVar9);\n          unaff_s5 = (undefined4 *******)\n                     (**(code **)(pcStack_208 + -0x79dc))(pppppppuVar12,pppppppuVar9);\n          iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13);\n          if (((iVar15 == 4) ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13), iVar15 == 3)) &&\n             ((iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 4 ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 3)))) {\n            (**(code **)(pcStack_208 + -0x7774))(7);\n            ppppppuVar2 = pppppppuVar12[7];\n            if ((int)ppppppuVar2 < 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_03 < (int)ppppppuVar2 + 0x3f >> 6) goto LAB_001c98d4;\nLAB_001c981c:\n              bVar1 = (int)ppppppuVar2 < 0x80;\n            }\n            else {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if ((int)ppppppuVar2 >> 6 <= extraout_v1_03) goto LAB_001c981c;\nLAB_001c98d4:\n              (*pcVar23)(7);\n              bVar1 = extraout_v1_05 < 2;\n            }\n            iVar15 = 1;\n            if ((bool)(bVar1 ^ 1)) {\n              (**(code **)(pcStack_208 + -0x7774))(7);\n              ppppppuVar2 = pppppppuVar12[7];\n              if ((int)ppppppuVar2 < 0) {\n                ppppppuVar2 = (undefined4 ******)((int)ppppppuVar2 + 0x3f);\n              }\n              iVar15 = (int)ppppppuVar2 >> 6;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_06 < iVar15) {\nLAB_001c98ac:\n                (*pcVar23)(7);\n                iVar15 = extraout_v1_04;\n              }\n              goto LAB_001c96d8;\n            }\n            iVar14 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          else {\n            uVar36 = (**(code **)(pcStack_208 + -0x7774))(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              uVar36 = (*pcVar23)(7);\n              if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c96c0;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              iVar15 = 1;\n            }\n            else {\nLAB_001c96c0:\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\nLAB_001c96c4:\n              uVar36 = (*pcVar23)(7);\n              if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n                 (pcVar23 = *(code **)(pcStack_208 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c98ac;\n              iVar15 = 2;\n            }\nLAB_001c96d8:\n            iVar14 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          puStack_1dc = &uStack_1f8;\n          pppppppuStack_1d8 = (undefined4 *******)0x1;\n          pppppppuStack_1f0 = pppppppuVar13;\n          pppppppuStack_1ec = pppppppuVar9;\n          pppppppuStack_1e8 = unaff_s5;\n          piStack_1e4 = piVar18;\n          pppppppuStack_1e0 = pppppppuVar12;\n          (**(code **)(pcStack_208 + -0x7718))(iVar14 + 0x56bc,&pppppppuStack_1f0,iVar15,0);\n          pppppppuVar9 = pppppppuStack_1d8;\n          (**(code **)(pcStack_208 + -0x79bc))(unaff_s5);\n          (**(code **)(pcStack_208 + -0x79bc))(piVar18);\n          pppppppuVar12[0xa8] = pppppppuVar13[0xa8];\n          if (unaff_s2 != (undefined4 ******)0x0) {\n            unaff_s6 = (undefined4 *******)\n                       ((int)unaff_s2 + (-(int)unaff_s6 - (int)pppppppuVar12[7]));\n          }\n          pppppppuVar12[0x8a] = unaff_s8;\n          pppppppuVar12[0x8b] = unaff_s2;\n          pppppppuVar12[0x8c] = ppppppuStack_1fc;\n          pppppppuVar12[0x8d] = unaff_s6;\n          if (pppppppuVar9 == (undefined4 *******)0x0) {\n            pppppppuVar12 = (undefined4 *******)(**(code **)(pcStack_208 + -0x7964))(pppppppuVar12);\n          }\n        }\n        pcVar23 = pcStack_208;\n        if (iStack_1d4 == *piVar16) {\n          return pppppppuVar12;\n        }\n        goto LAB_001c9968;\n      }\n      goto LAB_001c9974;\n    }" { (if_statement "if (pppppppuVar13[0xcd4] != (undefined4 ******)0x0) {\n        pppppppuStack_20c = pppppppuVar13 + 0xd0;\n        pppppppuStack_210 = (undefined4 *******)(*(int *)(pcVar21 + 0x1df364) + -0x62ac);\n        (**(code **)(pcVar21 + 0x1dfc60))\n                  (0x8000,*(int *)(pcVar21 + 0x1df36c) + -0x288c,\n                   *(int *)(pcVar21 + 0x1df36c) + -0x26ec,0x4bf);\n      }" if (parenthesized_expression "(pppppppuVar13[0xcd4] != (undefined4 ******)0x0)" ( (binary_expression "pppppppuVar13[0xcd4] != (undefined4 ******)0x0" (subscript_expression "pppppppuVar13[0xcd4]" identifier [ number_literal ]) != (cast_expression "(undefined4 ******)0x0" ( (type_descriptor "undefined4 ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n        pppppppuStack_20c = pppppppuVar13 + 0xd0;\n        pppppppuStack_210 = (undefined4 *******)(*(int *)(pcVar21 + 0x1df364) + -0x62ac);\n        (**(code **)(pcVar21 + 0x1dfc60))\n                  (0x8000,*(int *)(pcVar21 + 0x1df36c) + -0x288c,\n                   *(int *)(pcVar21 + 0x1df36c) + -0x26ec,0x4bf);\n      }" { (expression_statement "pppppppuStack_20c = pppppppuVar13 + 0xd0;" (assignment_expression "pppppppuStack_20c = pppppppuVar13 + 0xd0" identifier = (binary_expression "pppppppuVar13 + 0xd0" identifier + number_literal)) ;) (expression_statement "pppppppuStack_210 = (undefined4 *******)(*(int *)(pcVar21 + 0x1df364) + -0x62ac);" (assignment_expression "pppppppuStack_210 = (undefined4 *******)(*(int *)(pcVar21 + 0x1df364) + -0x62ac)" identifier = (cast_expression "(undefined4 *******)(*(int *)(pcVar21 + 0x1df364) + -0x62ac)" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(*(int *)(pcVar21 + 0x1df364) + -0x62ac)" ( (binary_expression "*(int *)(pcVar21 + 0x1df364) + -0x62ac" (pointer_expression "*(int *)(pcVar21 + 0x1df364)" * (cast_expression "(int *)(pcVar21 + 0x1df364)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0x1df364)" ( (binary_expression "pcVar21 + 0x1df364" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "(**(code **)(pcVar21 + 0x1dfc60))\n                  (0x8000,*(int *)(pcVar21 + 0x1df36c) + -0x288c,\n                   *(int *)(pcVar21 + 0x1df36c) + -0x26ec,0x4bf);" (call_expression "(**(code **)(pcVar21 + 0x1dfc60))\n                  (0x8000,*(int *)(pcVar21 + 0x1df36c) + -0x288c,\n                   *(int *)(pcVar21 + 0x1df36c) + -0x26ec,0x4bf)" (parenthesized_expression "(**(code **)(pcVar21 + 0x1dfc60))" ( (pointer_expression "**(code **)(pcVar21 + 0x1dfc60)" * (pointer_expression "*(code **)(pcVar21 + 0x1dfc60)" * (cast_expression "(code **)(pcVar21 + 0x1dfc60)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0x1dfc60)" ( (binary_expression "pcVar21 + 0x1dfc60" identifier + number_literal) ))))) )) (argument_list "(0x8000,*(int *)(pcVar21 + 0x1df36c) + -0x288c,\n                   *(int *)(pcVar21 + 0x1df36c) + -0x26ec,0x4bf)" ( number_literal , (binary_expression "*(int *)(pcVar21 + 0x1df36c) + -0x288c" (pointer_expression "*(int *)(pcVar21 + 0x1df36c)" * (cast_expression "(int *)(pcVar21 + 0x1df36c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0x1df36c)" ( (binary_expression "pcVar21 + 0x1df36c" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar21 + 0x1df36c) + -0x26ec" (pointer_expression "*(int *)(pcVar21 + 0x1df36c)" * (cast_expression "(int *)(pcVar21 + 0x1df36c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0x1df36c)" ( (binary_expression "pcVar21 + 0x1df36c" identifier + number_literal) )))) + number_literal) , number_literal ))) ;) })) (expression_statement "unaff_s7 = pppppppuVar13;" (assignment_expression "unaff_s7 = pppppppuVar13" identifier = identifier) ;) (expression_statement "pcVar23 = pcStack_208;" (assignment_expression "pcVar23 = pcStack_208" identifier = identifier) ;) (if_statement "if (pppppppuVar9 == (undefined4 *******)0x0) goto LAB_001c9944;" if (parenthesized_expression "(pppppppuVar9 == (undefined4 *******)0x0)" ( (binary_expression "pppppppuVar9 == (undefined4 *******)0x0" identifier == (cast_expression "(undefined4 *******)0x0" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (goto_statement "goto LAB_001c9944;" goto statement_identifier ;)) (if_statement "if (pppppppuVar9[7] == (undefined4 ******)0xabacadab) {\n        pppppppuStack_210 = pppppppuVar9;\n        pppppppuVar12 =\n             (undefined4 *******)(**(code **)(pcStack_208 + -0x7080))(pppppppuVar13,0,0,1);\n        if (pppppppuVar12 != (undefined4 *******)0x0) {\n          ppppppuStack_1fc = pppppppuVar13[0x8c];\n          unaff_s8 = (undefined4 *******)pppppppuVar13[0x8a];\n          unaff_s2 = pppppppuVar13[0x8b];\n          unaff_s6 = (undefined4 *******)pppppppuVar13[0x8d];\n          uStack_1f4 = 0;\n          uStack_1f8 = 0;\n          piVar18 = (int *)(**(code **)(pcStack_208 + -0x715c))(pppppppuVar13,pppppppuVar9);\n          unaff_s5 = (undefined4 *******)\n                     (**(code **)(pcStack_208 + -0x79dc))(pppppppuVar12,pppppppuVar9);\n          iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13);\n          if (((iVar15 == 4) ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13), iVar15 == 3)) &&\n             ((iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 4 ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 3)))) {\n            (**(code **)(pcStack_208 + -0x7774))(7);\n            ppppppuVar2 = pppppppuVar12[7];\n            if ((int)ppppppuVar2 < 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_03 < (int)ppppppuVar2 + 0x3f >> 6) goto LAB_001c98d4;\nLAB_001c981c:\n              bVar1 = (int)ppppppuVar2 < 0x80;\n            }\n            else {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if ((int)ppppppuVar2 >> 6 <= extraout_v1_03) goto LAB_001c981c;\nLAB_001c98d4:\n              (*pcVar23)(7);\n              bVar1 = extraout_v1_05 < 2;\n            }\n            iVar15 = 1;\n            if ((bool)(bVar1 ^ 1)) {\n              (**(code **)(pcStack_208 + -0x7774))(7);\n              ppppppuVar2 = pppppppuVar12[7];\n              if ((int)ppppppuVar2 < 0) {\n                ppppppuVar2 = (undefined4 ******)((int)ppppppuVar2 + 0x3f);\n              }\n              iVar15 = (int)ppppppuVar2 >> 6;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_06 < iVar15) {\nLAB_001c98ac:\n                (*pcVar23)(7);\n                iVar15 = extraout_v1_04;\n              }\n              goto LAB_001c96d8;\n            }\n            iVar14 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          else {\n            uVar36 = (**(code **)(pcStack_208 + -0x7774))(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              uVar36 = (*pcVar23)(7);\n              if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c96c0;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              iVar15 = 1;\n            }\n            else {\nLAB_001c96c0:\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\nLAB_001c96c4:\n              uVar36 = (*pcVar23)(7);\n              if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n                 (pcVar23 = *(code **)(pcStack_208 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c98ac;\n              iVar15 = 2;\n            }\nLAB_001c96d8:\n            iVar14 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          puStack_1dc = &uStack_1f8;\n          pppppppuStack_1d8 = (undefined4 *******)0x1;\n          pppppppuStack_1f0 = pppppppuVar13;\n          pppppppuStack_1ec = pppppppuVar9;\n          pppppppuStack_1e8 = unaff_s5;\n          piStack_1e4 = piVar18;\n          pppppppuStack_1e0 = pppppppuVar12;\n          (**(code **)(pcStack_208 + -0x7718))(iVar14 + 0x56bc,&pppppppuStack_1f0,iVar15,0);\n          pppppppuVar9 = pppppppuStack_1d8;\n          (**(code **)(pcStack_208 + -0x79bc))(unaff_s5);\n          (**(code **)(pcStack_208 + -0x79bc))(piVar18);\n          pppppppuVar12[0xa8] = pppppppuVar13[0xa8];\n          if (unaff_s2 != (undefined4 ******)0x0) {\n            unaff_s6 = (undefined4 *******)\n                       ((int)unaff_s2 + (-(int)unaff_s6 - (int)pppppppuVar12[7]));\n          }\n          pppppppuVar12[0x8a] = unaff_s8;\n          pppppppuVar12[0x8b] = unaff_s2;\n          pppppppuVar12[0x8c] = ppppppuStack_1fc;\n          pppppppuVar12[0x8d] = unaff_s6;\n          if (pppppppuVar9 == (undefined4 *******)0x0) {\n            pppppppuVar12 = (undefined4 *******)(**(code **)(pcStack_208 + -0x7964))(pppppppuVar12);\n          }\n        }\n        pcVar23 = pcStack_208;\n        if (iStack_1d4 == *piVar16) {\n          return pppppppuVar12;\n        }\n        goto LAB_001c9968;\n      }" if (parenthesized_expression "(pppppppuVar9[7] == (undefined4 ******)0xabacadab)" ( (binary_expression "pppppppuVar9[7] == (undefined4 ******)0xabacadab" (subscript_expression "pppppppuVar9[7]" identifier [ number_literal ]) == (cast_expression "(undefined4 ******)0xabacadab" ( (type_descriptor "undefined4 ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n        pppppppuStack_210 = pppppppuVar9;\n        pppppppuVar12 =\n             (undefined4 *******)(**(code **)(pcStack_208 + -0x7080))(pppppppuVar13,0,0,1);\n        if (pppppppuVar12 != (undefined4 *******)0x0) {\n          ppppppuStack_1fc = pppppppuVar13[0x8c];\n          unaff_s8 = (undefined4 *******)pppppppuVar13[0x8a];\n          unaff_s2 = pppppppuVar13[0x8b];\n          unaff_s6 = (undefined4 *******)pppppppuVar13[0x8d];\n          uStack_1f4 = 0;\n          uStack_1f8 = 0;\n          piVar18 = (int *)(**(code **)(pcStack_208 + -0x715c))(pppppppuVar13,pppppppuVar9);\n          unaff_s5 = (undefined4 *******)\n                     (**(code **)(pcStack_208 + -0x79dc))(pppppppuVar12,pppppppuVar9);\n          iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13);\n          if (((iVar15 == 4) ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13), iVar15 == 3)) &&\n             ((iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 4 ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 3)))) {\n            (**(code **)(pcStack_208 + -0x7774))(7);\n            ppppppuVar2 = pppppppuVar12[7];\n            if ((int)ppppppuVar2 < 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_03 < (int)ppppppuVar2 + 0x3f >> 6) goto LAB_001c98d4;\nLAB_001c981c:\n              bVar1 = (int)ppppppuVar2 < 0x80;\n            }\n            else {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if ((int)ppppppuVar2 >> 6 <= extraout_v1_03) goto LAB_001c981c;\nLAB_001c98d4:\n              (*pcVar23)(7);\n              bVar1 = extraout_v1_05 < 2;\n            }\n            iVar15 = 1;\n            if ((bool)(bVar1 ^ 1)) {\n              (**(code **)(pcStack_208 + -0x7774))(7);\n              ppppppuVar2 = pppppppuVar12[7];\n              if ((int)ppppppuVar2 < 0) {\n                ppppppuVar2 = (undefined4 ******)((int)ppppppuVar2 + 0x3f);\n              }\n              iVar15 = (int)ppppppuVar2 >> 6;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_06 < iVar15) {\nLAB_001c98ac:\n                (*pcVar23)(7);\n                iVar15 = extraout_v1_04;\n              }\n              goto LAB_001c96d8;\n            }\n            iVar14 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          else {\n            uVar36 = (**(code **)(pcStack_208 + -0x7774))(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              uVar36 = (*pcVar23)(7);\n              if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c96c0;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              iVar15 = 1;\n            }\n            else {\nLAB_001c96c0:\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\nLAB_001c96c4:\n              uVar36 = (*pcVar23)(7);\n              if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n                 (pcVar23 = *(code **)(pcStack_208 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c98ac;\n              iVar15 = 2;\n            }\nLAB_001c96d8:\n            iVar14 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          puStack_1dc = &uStack_1f8;\n          pppppppuStack_1d8 = (undefined4 *******)0x1;\n          pppppppuStack_1f0 = pppppppuVar13;\n          pppppppuStack_1ec = pppppppuVar9;\n          pppppppuStack_1e8 = unaff_s5;\n          piStack_1e4 = piVar18;\n          pppppppuStack_1e0 = pppppppuVar12;\n          (**(code **)(pcStack_208 + -0x7718))(iVar14 + 0x56bc,&pppppppuStack_1f0,iVar15,0);\n          pppppppuVar9 = pppppppuStack_1d8;\n          (**(code **)(pcStack_208 + -0x79bc))(unaff_s5);\n          (**(code **)(pcStack_208 + -0x79bc))(piVar18);\n          pppppppuVar12[0xa8] = pppppppuVar13[0xa8];\n          if (unaff_s2 != (undefined4 ******)0x0) {\n            unaff_s6 = (undefined4 *******)\n                       ((int)unaff_s2 + (-(int)unaff_s6 - (int)pppppppuVar12[7]));\n          }\n          pppppppuVar12[0x8a] = unaff_s8;\n          pppppppuVar12[0x8b] = unaff_s2;\n          pppppppuVar12[0x8c] = ppppppuStack_1fc;\n          pppppppuVar12[0x8d] = unaff_s6;\n          if (pppppppuVar9 == (undefined4 *******)0x0) {\n            pppppppuVar12 = (undefined4 *******)(**(code **)(pcStack_208 + -0x7964))(pppppppuVar12);\n          }\n        }\n        pcVar23 = pcStack_208;\n        if (iStack_1d4 == *piVar16) {\n          return pppppppuVar12;\n        }\n        goto LAB_001c9968;\n      }" { (expression_statement "pppppppuStack_210 = pppppppuVar9;" (assignment_expression "pppppppuStack_210 = pppppppuVar9" identifier = identifier) ;) (expression_statement "pppppppuVar12 =\n             (undefined4 *******)(**(code **)(pcStack_208 + -0x7080))(pppppppuVar13,0,0,1);" (assignment_expression "pppppppuVar12 =\n             (undefined4 *******)(**(code **)(pcStack_208 + -0x7080))(pppppppuVar13,0,0,1)" identifier = (cast_expression "(undefined4 *******)(**(code **)(pcStack_208 + -0x7080))(pppppppuVar13,0,0,1)" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(**(code **)(pcStack_208 + -0x7080))(pppppppuVar13,0,0,1)" (parenthesized_expression "(**(code **)(pcStack_208 + -0x7080))" ( (pointer_expression "**(code **)(pcStack_208 + -0x7080)" * (pointer_expression "*(code **)(pcStack_208 + -0x7080)" * (cast_expression "(code **)(pcStack_208 + -0x7080)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_208 + -0x7080)" ( (binary_expression "pcStack_208 + -0x7080" identifier + number_literal) ))))) )) (argument_list "(pppppppuVar13,0,0,1)" ( identifier , number_literal , number_literal , number_literal ))))) ;) (if_statement "if (pppppppuVar12 != (undefined4 *******)0x0) {\n          ppppppuStack_1fc = pppppppuVar13[0x8c];\n          unaff_s8 = (undefined4 *******)pppppppuVar13[0x8a];\n          unaff_s2 = pppppppuVar13[0x8b];\n          unaff_s6 = (undefined4 *******)pppppppuVar13[0x8d];\n          uStack_1f4 = 0;\n          uStack_1f8 = 0;\n          piVar18 = (int *)(**(code **)(pcStack_208 + -0x715c))(pppppppuVar13,pppppppuVar9);\n          unaff_s5 = (undefined4 *******)\n                     (**(code **)(pcStack_208 + -0x79dc))(pppppppuVar12,pppppppuVar9);\n          iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13);\n          if (((iVar15 == 4) ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13), iVar15 == 3)) &&\n             ((iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 4 ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 3)))) {\n            (**(code **)(pcStack_208 + -0x7774))(7);\n            ppppppuVar2 = pppppppuVar12[7];\n            if ((int)ppppppuVar2 < 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_03 < (int)ppppppuVar2 + 0x3f >> 6) goto LAB_001c98d4;\nLAB_001c981c:\n              bVar1 = (int)ppppppuVar2 < 0x80;\n            }\n            else {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if ((int)ppppppuVar2 >> 6 <= extraout_v1_03) goto LAB_001c981c;\nLAB_001c98d4:\n              (*pcVar23)(7);\n              bVar1 = extraout_v1_05 < 2;\n            }\n            iVar15 = 1;\n            if ((bool)(bVar1 ^ 1)) {\n              (**(code **)(pcStack_208 + -0x7774))(7);\n              ppppppuVar2 = pppppppuVar12[7];\n              if ((int)ppppppuVar2 < 0) {\n                ppppppuVar2 = (undefined4 ******)((int)ppppppuVar2 + 0x3f);\n              }\n              iVar15 = (int)ppppppuVar2 >> 6;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_06 < iVar15) {\nLAB_001c98ac:\n                (*pcVar23)(7);\n                iVar15 = extraout_v1_04;\n              }\n              goto LAB_001c96d8;\n            }\n            iVar14 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          else {\n            uVar36 = (**(code **)(pcStack_208 + -0x7774))(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              uVar36 = (*pcVar23)(7);\n              if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c96c0;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              iVar15 = 1;\n            }\n            else {\nLAB_001c96c0:\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\nLAB_001c96c4:\n              uVar36 = (*pcVar23)(7);\n              if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n                 (pcVar23 = *(code **)(pcStack_208 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c98ac;\n              iVar15 = 2;\n            }\nLAB_001c96d8:\n            iVar14 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          puStack_1dc = &uStack_1f8;\n          pppppppuStack_1d8 = (undefined4 *******)0x1;\n          pppppppuStack_1f0 = pppppppuVar13;\n          pppppppuStack_1ec = pppppppuVar9;\n          pppppppuStack_1e8 = unaff_s5;\n          piStack_1e4 = piVar18;\n          pppppppuStack_1e0 = pppppppuVar12;\n          (**(code **)(pcStack_208 + -0x7718))(iVar14 + 0x56bc,&pppppppuStack_1f0,iVar15,0);\n          pppppppuVar9 = pppppppuStack_1d8;\n          (**(code **)(pcStack_208 + -0x79bc))(unaff_s5);\n          (**(code **)(pcStack_208 + -0x79bc))(piVar18);\n          pppppppuVar12[0xa8] = pppppppuVar13[0xa8];\n          if (unaff_s2 != (undefined4 ******)0x0) {\n            unaff_s6 = (undefined4 *******)\n                       ((int)unaff_s2 + (-(int)unaff_s6 - (int)pppppppuVar12[7]));\n          }\n          pppppppuVar12[0x8a] = unaff_s8;\n          pppppppuVar12[0x8b] = unaff_s2;\n          pppppppuVar12[0x8c] = ppppppuStack_1fc;\n          pppppppuVar12[0x8d] = unaff_s6;\n          if (pppppppuVar9 == (undefined4 *******)0x0) {\n            pppppppuVar12 = (undefined4 *******)(**(code **)(pcStack_208 + -0x7964))(pppppppuVar12);\n          }\n        }" if (parenthesized_expression "(pppppppuVar12 != (undefined4 *******)0x0)" ( (binary_expression "pppppppuVar12 != (undefined4 *******)0x0" identifier != (cast_expression "(undefined4 *******)0x0" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n          ppppppuStack_1fc = pppppppuVar13[0x8c];\n          unaff_s8 = (undefined4 *******)pppppppuVar13[0x8a];\n          unaff_s2 = pppppppuVar13[0x8b];\n          unaff_s6 = (undefined4 *******)pppppppuVar13[0x8d];\n          uStack_1f4 = 0;\n          uStack_1f8 = 0;\n          piVar18 = (int *)(**(code **)(pcStack_208 + -0x715c))(pppppppuVar13,pppppppuVar9);\n          unaff_s5 = (undefined4 *******)\n                     (**(code **)(pcStack_208 + -0x79dc))(pppppppuVar12,pppppppuVar9);\n          iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13);\n          if (((iVar15 == 4) ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13), iVar15 == 3)) &&\n             ((iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 4 ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 3)))) {\n            (**(code **)(pcStack_208 + -0x7774))(7);\n            ppppppuVar2 = pppppppuVar12[7];\n            if ((int)ppppppuVar2 < 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_03 < (int)ppppppuVar2 + 0x3f >> 6) goto LAB_001c98d4;\nLAB_001c981c:\n              bVar1 = (int)ppppppuVar2 < 0x80;\n            }\n            else {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if ((int)ppppppuVar2 >> 6 <= extraout_v1_03) goto LAB_001c981c;\nLAB_001c98d4:\n              (*pcVar23)(7);\n              bVar1 = extraout_v1_05 < 2;\n            }\n            iVar15 = 1;\n            if ((bool)(bVar1 ^ 1)) {\n              (**(code **)(pcStack_208 + -0x7774))(7);\n              ppppppuVar2 = pppppppuVar12[7];\n              if ((int)ppppppuVar2 < 0) {\n                ppppppuVar2 = (undefined4 ******)((int)ppppppuVar2 + 0x3f);\n              }\n              iVar15 = (int)ppppppuVar2 >> 6;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_06 < iVar15) {\nLAB_001c98ac:\n                (*pcVar23)(7);\n                iVar15 = extraout_v1_04;\n              }\n              goto LAB_001c96d8;\n            }\n            iVar14 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          else {\n            uVar36 = (**(code **)(pcStack_208 + -0x7774))(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              uVar36 = (*pcVar23)(7);\n              if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c96c0;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              iVar15 = 1;\n            }\n            else {\nLAB_001c96c0:\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\nLAB_001c96c4:\n              uVar36 = (*pcVar23)(7);\n              if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n                 (pcVar23 = *(code **)(pcStack_208 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c98ac;\n              iVar15 = 2;\n            }\nLAB_001c96d8:\n            iVar14 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          puStack_1dc = &uStack_1f8;\n          pppppppuStack_1d8 = (undefined4 *******)0x1;\n          pppppppuStack_1f0 = pppppppuVar13;\n          pppppppuStack_1ec = pppppppuVar9;\n          pppppppuStack_1e8 = unaff_s5;\n          piStack_1e4 = piVar18;\n          pppppppuStack_1e0 = pppppppuVar12;\n          (**(code **)(pcStack_208 + -0x7718))(iVar14 + 0x56bc,&pppppppuStack_1f0,iVar15,0);\n          pppppppuVar9 = pppppppuStack_1d8;\n          (**(code **)(pcStack_208 + -0x79bc))(unaff_s5);\n          (**(code **)(pcStack_208 + -0x79bc))(piVar18);\n          pppppppuVar12[0xa8] = pppppppuVar13[0xa8];\n          if (unaff_s2 != (undefined4 ******)0x0) {\n            unaff_s6 = (undefined4 *******)\n                       ((int)unaff_s2 + (-(int)unaff_s6 - (int)pppppppuVar12[7]));\n          }\n          pppppppuVar12[0x8a] = unaff_s8;\n          pppppppuVar12[0x8b] = unaff_s2;\n          pppppppuVar12[0x8c] = ppppppuStack_1fc;\n          pppppppuVar12[0x8d] = unaff_s6;\n          if (pppppppuVar9 == (undefined4 *******)0x0) {\n            pppppppuVar12 = (undefined4 *******)(**(code **)(pcStack_208 + -0x7964))(pppppppuVar12);\n          }\n        }" { (expression_statement "ppppppuStack_1fc = pppppppuVar13[0x8c];" (assignment_expression "ppppppuStack_1fc = pppppppuVar13[0x8c]" identifier = (subscript_expression "pppppppuVar13[0x8c]" identifier [ number_literal ])) ;) (expression_statement "unaff_s8 = (undefined4 *******)pppppppuVar13[0x8a];" (assignment_expression "unaff_s8 = (undefined4 *******)pppppppuVar13[0x8a]" identifier = (cast_expression "(undefined4 *******)pppppppuVar13[0x8a]" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (subscript_expression "pppppppuVar13[0x8a]" identifier [ number_literal ]))) ;) (expression_statement "unaff_s2 = pppppppuVar13[0x8b];" (assignment_expression "unaff_s2 = pppppppuVar13[0x8b]" identifier = (subscript_expression "pppppppuVar13[0x8b]" identifier [ number_literal ])) ;) (expression_statement "unaff_s6 = (undefined4 *******)pppppppuVar13[0x8d];" (assignment_expression "unaff_s6 = (undefined4 *******)pppppppuVar13[0x8d]" identifier = (cast_expression "(undefined4 *******)pppppppuVar13[0x8d]" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (subscript_expression "pppppppuVar13[0x8d]" identifier [ number_literal ]))) ;) (expression_statement "uStack_1f4 = 0;" (assignment_expression "uStack_1f4 = 0" identifier = number_literal) ;) (expression_statement "uStack_1f8 = 0;" (assignment_expression "uStack_1f8 = 0" identifier = number_literal) ;) (expression_statement "piVar18 = (int *)(**(code **)(pcStack_208 + -0x715c))(pppppppuVar13,pppppppuVar9);" (assignment_expression "piVar18 = (int *)(**(code **)(pcStack_208 + -0x715c))(pppppppuVar13,pppppppuVar9)" identifier = (cast_expression "(int *)(**(code **)(pcStack_208 + -0x715c))(pppppppuVar13,pppppppuVar9)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(pcStack_208 + -0x715c))(pppppppuVar13,pppppppuVar9)" (parenthesized_expression "(**(code **)(pcStack_208 + -0x715c))" ( (pointer_expression "**(code **)(pcStack_208 + -0x715c)" * (pointer_expression "*(code **)(pcStack_208 + -0x715c)" * (cast_expression "(code **)(pcStack_208 + -0x715c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_208 + -0x715c)" ( (binary_expression "pcStack_208 + -0x715c" identifier + number_literal) ))))) )) (argument_list "(pppppppuVar13,pppppppuVar9)" ( identifier , identifier ))))) ;) (expression_statement "unaff_s5 = (undefined4 *******)\n                     (**(code **)(pcStack_208 + -0x79dc))(pppppppuVar12,pppppppuVar9);" (assignment_expression "unaff_s5 = (undefined4 *******)\n                     (**(code **)(pcStack_208 + -0x79dc))(pppppppuVar12,pppppppuVar9)" identifier = (cast_expression "(undefined4 *******)\n                     (**(code **)(pcStack_208 + -0x79dc))(pppppppuVar12,pppppppuVar9)" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(**(code **)(pcStack_208 + -0x79dc))(pppppppuVar12,pppppppuVar9)" (parenthesized_expression "(**(code **)(pcStack_208 + -0x79dc))" ( (pointer_expression "**(code **)(pcStack_208 + -0x79dc)" * (pointer_expression "*(code **)(pcStack_208 + -0x79dc)" * (cast_expression "(code **)(pcStack_208 + -0x79dc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_208 + -0x79dc)" ( (binary_expression "pcStack_208 + -0x79dc" identifier + number_literal) ))))) )) (argument_list "(pppppppuVar12,pppppppuVar9)" ( identifier , identifier ))))) ;) (expression_statement "iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13);" (assignment_expression "iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13)" identifier = (call_expression "(**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13)" (parenthesized_expression "(**(code **)(pcStack_208 + -0x73fc))" ( (pointer_expression "**(code **)(pcStack_208 + -0x73fc)" * (pointer_expression "*(code **)(pcStack_208 + -0x73fc)" * (cast_expression "(code **)(pcStack_208 + -0x73fc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_208 + -0x73fc)" ( (binary_expression "pcStack_208 + -0x73fc" identifier + number_literal) ))))) )) (argument_list "(pppppppuVar13)" ( identifier )))) ;) (if_statement "if (((iVar15 == 4) ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13), iVar15 == 3)) &&\n             ((iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 4 ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 3)))) {\n            (**(code **)(pcStack_208 + -0x7774))(7);\n            ppppppuVar2 = pppppppuVar12[7];\n            if ((int)ppppppuVar2 < 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_03 < (int)ppppppuVar2 + 0x3f >> 6) goto LAB_001c98d4;\nLAB_001c981c:\n              bVar1 = (int)ppppppuVar2 < 0x80;\n            }\n            else {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if ((int)ppppppuVar2 >> 6 <= extraout_v1_03) goto LAB_001c981c;\nLAB_001c98d4:\n              (*pcVar23)(7);\n              bVar1 = extraout_v1_05 < 2;\n            }\n            iVar15 = 1;\n            if ((bool)(bVar1 ^ 1)) {\n              (**(code **)(pcStack_208 + -0x7774))(7);\n              ppppppuVar2 = pppppppuVar12[7];\n              if ((int)ppppppuVar2 < 0) {\n                ppppppuVar2 = (undefined4 ******)((int)ppppppuVar2 + 0x3f);\n              }\n              iVar15 = (int)ppppppuVar2 >> 6;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_06 < iVar15) {\nLAB_001c98ac:\n                (*pcVar23)(7);\n                iVar15 = extraout_v1_04;\n              }\n              goto LAB_001c96d8;\n            }\n            iVar14 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          else {\n            uVar36 = (**(code **)(pcStack_208 + -0x7774))(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              uVar36 = (*pcVar23)(7);\n              if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c96c0;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              iVar15 = 1;\n            }\n            else {\nLAB_001c96c0:\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\nLAB_001c96c4:\n              uVar36 = (*pcVar23)(7);\n              if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n                 (pcVar23 = *(code **)(pcStack_208 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c98ac;\n              iVar15 = 2;\n            }\nLAB_001c96d8:\n            iVar14 = *(int *)(pcStack_208 + -0x7f10);\n          }" if (parenthesized_expression "(((iVar15 == 4) ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13), iVar15 == 3)) &&\n             ((iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 4 ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 3))))" ( (binary_expression "((iVar15 == 4) ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13), iVar15 == 3)) &&\n             ((iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 4 ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 3)))" (parenthesized_expression "((iVar15 == 4) ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13), iVar15 == 3))" ( (binary_expression "(iVar15 == 4) ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13), iVar15 == 3)" (parenthesized_expression "(iVar15 == 4)" ( (binary_expression "iVar15 == 4" identifier == number_literal) )) || (parenthesized_expression "(iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13), iVar15 == 3)" ( (comma_expression "iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13), iVar15 == 3" (assignment_expression "iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13)" identifier = (call_expression "(**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13)" (parenthesized_expression "(**(code **)(pcStack_208 + -0x73fc))" ( (pointer_expression "**(code **)(pcStack_208 + -0x73fc)" * (pointer_expression "*(code **)(pcStack_208 + -0x73fc)" * (cast_expression "(code **)(pcStack_208 + -0x73fc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_208 + -0x73fc)" ( (binary_expression "pcStack_208 + -0x73fc" identifier + number_literal) ))))) )) (argument_list "(pppppppuVar13)" ( identifier )))) , (binary_expression "iVar15 == 3" identifier == number_literal)) ))) )) && (parenthesized_expression "((iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 4 ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 3)))" ( (parenthesized_expression "(iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 4 ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 3))" ( (comma_expression "iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 4 ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 3)" (assignment_expression "iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12)" identifier = (call_expression "(**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12)" (parenthesized_expression "(**(code **)(pcStack_208 + -0x73fc))" ( (pointer_expression "**(code **)(pcStack_208 + -0x73fc)" * (pointer_expression "*(code **)(pcStack_208 + -0x73fc)" * (cast_expression "(code **)(pcStack_208 + -0x73fc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_208 + -0x73fc)" ( (binary_expression "pcStack_208 + -0x73fc" identifier + number_literal) ))))) )) (argument_list "(pppppppuVar12)" ( identifier )))) , (binary_expression "iVar15 == 4 ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 3)" (binary_expression "iVar15 == 4" identifier == number_literal) || (parenthesized_expression "(iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 3)" ( (comma_expression "iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 3" (assignment_expression "iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12)" identifier = (call_expression "(**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12)" (parenthesized_expression "(**(code **)(pcStack_208 + -0x73fc))" ( (pointer_expression "**(code **)(pcStack_208 + -0x73fc)" * (pointer_expression "*(code **)(pcStack_208 + -0x73fc)" * (cast_expression "(code **)(pcStack_208 + -0x73fc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_208 + -0x73fc)" ( (binary_expression "pcStack_208 + -0x73fc" identifier + number_literal) ))))) )) (argument_list "(pppppppuVar12)" ( identifier )))) , (binary_expression "iVar15 == 3" identifier == number_literal)) )))) )) ))) )) (compound_statement "{\n            (**(code **)(pcStack_208 + -0x7774))(7);\n            ppppppuVar2 = pppppppuVar12[7];\n            if ((int)ppppppuVar2 < 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_03 < (int)ppppppuVar2 + 0x3f >> 6) goto LAB_001c98d4;\nLAB_001c981c:\n              bVar1 = (int)ppppppuVar2 < 0x80;\n            }\n            else {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if ((int)ppppppuVar2 >> 6 <= extraout_v1_03) goto LAB_001c981c;\nLAB_001c98d4:\n              (*pcVar23)(7);\n              bVar1 = extraout_v1_05 < 2;\n            }\n            iVar15 = 1;\n            if ((bool)(bVar1 ^ 1)) {\n              (**(code **)(pcStack_208 + -0x7774))(7);\n              ppppppuVar2 = pppppppuVar12[7];\n              if ((int)ppppppuVar2 < 0) {\n                ppppppuVar2 = (undefined4 ******)((int)ppppppuVar2 + 0x3f);\n              }\n              iVar15 = (int)ppppppuVar2 >> 6;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_06 < iVar15) {\nLAB_001c98ac:\n                (*pcVar23)(7);\n                iVar15 = extraout_v1_04;\n              }\n              goto LAB_001c96d8;\n            }\n            iVar14 = *(int *)(pcStack_208 + -0x7f10);\n          }" { (expression_statement "(**(code **)(pcStack_208 + -0x7774))(7);" (call_expression "(**(code **)(pcStack_208 + -0x7774))(7)" (parenthesized_expression "(**(code **)(pcStack_208 + -0x7774))" ( (pointer_expression "**(code **)(pcStack_208 + -0x7774)" * (pointer_expression "*(code **)(pcStack_208 + -0x7774)" * (cast_expression "(code **)(pcStack_208 + -0x7774)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_208 + -0x7774)" ( (binary_expression "pcStack_208 + -0x7774" identifier + number_literal) ))))) )) (argument_list "(7)" ( number_literal ))) ;) (expression_statement "ppppppuVar2 = pppppppuVar12[7];" (assignment_expression "ppppppuVar2 = pppppppuVar12[7]" identifier = (subscript_expression "pppppppuVar12[7]" identifier [ number_literal ])) ;) (if_statement "if ((int)ppppppuVar2 < 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_03 < (int)ppppppuVar2 + 0x3f >> 6) goto LAB_001c98d4;\nLAB_001c981c:\n              bVar1 = (int)ppppppuVar2 < 0x80;\n            }\n            else {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if ((int)ppppppuVar2 >> 6 <= extraout_v1_03) goto LAB_001c981c;\nLAB_001c98d4:\n              (*pcVar23)(7);\n              bVar1 = extraout_v1_05 < 2;\n            }" if (parenthesized_expression "((int)ppppppuVar2 < 0)" ( (binary_expression "(int)ppppppuVar2 < 0" (cast_expression "(int)ppppppuVar2" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_03 < (int)ppppppuVar2 + 0x3f >> 6) goto LAB_001c98d4;\nLAB_001c981c:\n              bVar1 = (int)ppppppuVar2 < 0x80;\n            }" { (expression_statement "pcVar23 = *(code **)(pcStack_208 + -0x7774);" (assignment_expression "pcVar23 = *(code **)(pcStack_208 + -0x7774)" identifier = (pointer_expression "*(code **)(pcStack_208 + -0x7774)" * (cast_expression "(code **)(pcStack_208 + -0x7774)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_208 + -0x7774)" ( (binary_expression "pcStack_208 + -0x7774" identifier + number_literal) ))))) ;) (if_statement "if (extraout_v1_03 < (int)ppppppuVar2 + 0x3f >> 6) goto LAB_001c98d4;" if (parenthesized_expression "(extraout_v1_03 < (int)ppppppuVar2 + 0x3f >> 6)" ( (binary_expression "extraout_v1_03 < (int)ppppppuVar2 + 0x3f >> 6" identifier < (binary_expression "(int)ppppppuVar2 + 0x3f >> 6" (binary_expression "(int)ppppppuVar2 + 0x3f" (cast_expression "(int)ppppppuVar2" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) >> number_literal)) )) (goto_statement "goto LAB_001c98d4;" goto statement_identifier ;)) (labeled_statement "LAB_001c981c:\n              bVar1 = (int)ppppppuVar2 < 0x80;" statement_identifier : (expression_statement "bVar1 = (int)ppppppuVar2 < 0x80;" (assignment_expression "bVar1 = (int)ppppppuVar2 < 0x80" identifier = (binary_expression "(int)ppppppuVar2 < 0x80" (cast_expression "(int)ppppppuVar2" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal)) ;)) }) (else_clause "else {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if ((int)ppppppuVar2 >> 6 <= extraout_v1_03) goto LAB_001c981c;\nLAB_001c98d4:\n              (*pcVar23)(7);\n              bVar1 = extraout_v1_05 < 2;\n            }" else (compound_statement "{\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if ((int)ppppppuVar2 >> 6 <= extraout_v1_03) goto LAB_001c981c;\nLAB_001c98d4:\n              (*pcVar23)(7);\n              bVar1 = extraout_v1_05 < 2;\n            }" { (expression_statement "pcVar23 = *(code **)(pcStack_208 + -0x7774);" (assignment_expression "pcVar23 = *(code **)(pcStack_208 + -0x7774)" identifier = (pointer_expression "*(code **)(pcStack_208 + -0x7774)" * (cast_expression "(code **)(pcStack_208 + -0x7774)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_208 + -0x7774)" ( (binary_expression "pcStack_208 + -0x7774" identifier + number_literal) ))))) ;) (if_statement "if ((int)ppppppuVar2 >> 6 <= extraout_v1_03) goto LAB_001c981c;" if (parenthesized_expression "((int)ppppppuVar2 >> 6 <= extraout_v1_03)" ( (binary_expression "(int)ppppppuVar2 >> 6 <= extraout_v1_03" (binary_expression "(int)ppppppuVar2 >> 6" (cast_expression "(int)ppppppuVar2" ( (type_descriptor "int" primitive_type) ) identifier) >> number_literal) <= identifier) )) (goto_statement "goto LAB_001c981c;" goto statement_identifier ;)) (labeled_statement "LAB_001c98d4:\n              (*pcVar23)(7);" statement_identifier : (expression_statement "(*pcVar23)(7);" (call_expression "(*pcVar23)(7)" (parenthesized_expression "(*pcVar23)" ( (pointer_expression "*pcVar23" * identifier) )) (argument_list "(7)" ( number_literal ))) ;)) (expression_statement "bVar1 = extraout_v1_05 < 2;" (assignment_expression "bVar1 = extraout_v1_05 < 2" identifier = (binary_expression "extraout_v1_05 < 2" identifier < number_literal)) ;) }))) (expression_statement "iVar15 = 1;" (assignment_expression "iVar15 = 1" identifier = number_literal) ;) (if_statement "if ((bool)(bVar1 ^ 1)) {\n              (**(code **)(pcStack_208 + -0x7774))(7);\n              ppppppuVar2 = pppppppuVar12[7];\n              if ((int)ppppppuVar2 < 0) {\n                ppppppuVar2 = (undefined4 ******)((int)ppppppuVar2 + 0x3f);\n              }\n              iVar15 = (int)ppppppuVar2 >> 6;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_06 < iVar15) {\nLAB_001c98ac:\n                (*pcVar23)(7);\n                iVar15 = extraout_v1_04;\n              }\n              goto LAB_001c96d8;\n            }" if (parenthesized_expression "((bool)(bVar1 ^ 1))" ( (cast_expression "(bool)(bVar1 ^ 1)" ( (type_descriptor "bool" primitive_type) ) (parenthesized_expression "(bVar1 ^ 1)" ( (binary_expression "bVar1 ^ 1" identifier ^ number_literal) ))) )) (compound_statement "{\n              (**(code **)(pcStack_208 + -0x7774))(7);\n              ppppppuVar2 = pppppppuVar12[7];\n              if ((int)ppppppuVar2 < 0) {\n                ppppppuVar2 = (undefined4 ******)((int)ppppppuVar2 + 0x3f);\n              }\n              iVar15 = (int)ppppppuVar2 >> 6;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_06 < iVar15) {\nLAB_001c98ac:\n                (*pcVar23)(7);\n                iVar15 = extraout_v1_04;\n              }\n              goto LAB_001c96d8;\n            }" { (expression_statement "(**(code **)(pcStack_208 + -0x7774))(7);" (call_expression "(**(code **)(pcStack_208 + -0x7774))(7)" (parenthesized_expression "(**(code **)(pcStack_208 + -0x7774))" ( (pointer_expression "**(code **)(pcStack_208 + -0x7774)" * (pointer_expression "*(code **)(pcStack_208 + -0x7774)" * (cast_expression "(code **)(pcStack_208 + -0x7774)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_208 + -0x7774)" ( (binary_expression "pcStack_208 + -0x7774" identifier + number_literal) ))))) )) (argument_list "(7)" ( number_literal ))) ;) (expression_statement "ppppppuVar2 = pppppppuVar12[7];" (assignment_expression "ppppppuVar2 = pppppppuVar12[7]" identifier = (subscript_expression "pppppppuVar12[7]" identifier [ number_literal ])) ;) (if_statement "if ((int)ppppppuVar2 < 0) {\n                ppppppuVar2 = (undefined4 ******)((int)ppppppuVar2 + 0x3f);\n              }" if (parenthesized_expression "((int)ppppppuVar2 < 0)" ( (binary_expression "(int)ppppppuVar2 < 0" (cast_expression "(int)ppppppuVar2" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n                ppppppuVar2 = (undefined4 ******)((int)ppppppuVar2 + 0x3f);\n              }" { (expression_statement "ppppppuVar2 = (undefined4 ******)((int)ppppppuVar2 + 0x3f);" (assignment_expression "ppppppuVar2 = (undefined4 ******)((int)ppppppuVar2 + 0x3f)" identifier = (cast_expression "(undefined4 ******)((int)ppppppuVar2 + 0x3f)" ( (type_descriptor "undefined4 ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (parenthesized_expression "((int)ppppppuVar2 + 0x3f)" ( (binary_expression "(int)ppppppuVar2 + 0x3f" (cast_expression "(int)ppppppuVar2" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) })) (expression_statement "iVar15 = (int)ppppppuVar2 >> 6;" (assignment_expression "iVar15 = (int)ppppppuVar2 >> 6" identifier = (binary_expression "(int)ppppppuVar2 >> 6" (cast_expression "(int)ppppppuVar2" ( (type_descriptor "int" primitive_type) ) identifier) >> number_literal)) ;) (expression_statement "pcVar23 = *(code **)(pcStack_208 + -0x7774);" (assignment_expression "pcVar23 = *(code **)(pcStack_208 + -0x7774)" identifier = (pointer_expression "*(code **)(pcStack_208 + -0x7774)" * (cast_expression "(code **)(pcStack_208 + -0x7774)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_208 + -0x7774)" ( (binary_expression "pcStack_208 + -0x7774" identifier + number_literal) ))))) ;) (if_statement "if (extraout_v1_06 < iVar15) {\nLAB_001c98ac:\n                (*pcVar23)(7);\n                iVar15 = extraout_v1_04;\n              }" if (parenthesized_expression "(extraout_v1_06 < iVar15)" ( (binary_expression "extraout_v1_06 < iVar15" identifier < identifier) )) (compound_statement "{\nLAB_001c98ac:\n                (*pcVar23)(7);\n                iVar15 = extraout_v1_04;\n              }" { (labeled_statement "LAB_001c98ac:\n                (*pcVar23)(7);" statement_identifier : (expression_statement "(*pcVar23)(7);" (call_expression "(*pcVar23)(7)" (parenthesized_expression "(*pcVar23)" ( (pointer_expression "*pcVar23" * identifier) )) (argument_list "(7)" ( number_literal ))) ;)) (expression_statement "iVar15 = extraout_v1_04;" (assignment_expression "iVar15 = extraout_v1_04" identifier = identifier) ;) })) (goto_statement "goto LAB_001c96d8;" goto statement_identifier ;) })) (expression_statement "iVar14 = *(int *)(pcStack_208 + -0x7f10);" (assignment_expression "iVar14 = *(int *)(pcStack_208 + -0x7f10)" identifier = (pointer_expression "*(int *)(pcStack_208 + -0x7f10)" * (cast_expression "(int *)(pcStack_208 + -0x7f10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_208 + -0x7f10)" ( (binary_expression "pcStack_208 + -0x7f10" identifier + number_literal) ))))) ;) }) (else_clause "else {\n            uVar36 = (**(code **)(pcStack_208 + -0x7774))(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              uVar36 = (*pcVar23)(7);\n              if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c96c0;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              iVar15 = 1;\n            }\n            else {\nLAB_001c96c0:\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\nLAB_001c96c4:\n              uVar36 = (*pcVar23)(7);\n              if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n                 (pcVar23 = *(code **)(pcStack_208 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c98ac;\n              iVar15 = 2;\n            }\nLAB_001c96d8:\n            iVar14 = *(int *)(pcStack_208 + -0x7f10);\n          }" else (compound_statement "{\n            uVar36 = (**(code **)(pcStack_208 + -0x7774))(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              uVar36 = (*pcVar23)(7);\n              if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c96c0;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              iVar15 = 1;\n            }\n            else {\nLAB_001c96c0:\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\nLAB_001c96c4:\n              uVar36 = (*pcVar23)(7);\n              if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n                 (pcVar23 = *(code **)(pcStack_208 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c98ac;\n              iVar15 = 2;\n            }\nLAB_001c96d8:\n            iVar14 = *(int *)(pcStack_208 + -0x7f10);\n          }" { (expression_statement "uVar36 = (**(code **)(pcStack_208 + -0x7774))(7);" (assignment_expression "uVar36 = (**(code **)(pcStack_208 + -0x7774))(7)" identifier = (call_expression "(**(code **)(pcStack_208 + -0x7774))(7)" (parenthesized_expression "(**(code **)(pcStack_208 + -0x7774))" ( (pointer_expression "**(code **)(pcStack_208 + -0x7774)" * (pointer_expression "*(code **)(pcStack_208 + -0x7774)" * (cast_expression "(code **)(pcStack_208 + -0x7774)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_208 + -0x7774)" ( (binary_expression "pcStack_208 + -0x7774" identifier + number_literal) ))))) )) (argument_list "(7)" ( number_literal )))) ;) (if_statement "if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              uVar36 = (*pcVar23)(7);\n              if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c96c0;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              iVar15 = 1;\n            }\n            else {\nLAB_001c96c0:\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\nLAB_001c96c4:\n              uVar36 = (*pcVar23)(7);\n              if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n                 (pcVar23 = *(code **)(pcStack_208 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c98ac;\n              iVar15 = 2;\n            }" if (parenthesized_expression "((int)((ulonglong)uVar36 >> 0x20) == 0)" ( (binary_expression "(int)((ulonglong)uVar36 >> 0x20) == 0" (cast_expression "(int)((ulonglong)uVar36 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)uVar36 >> 0x20)" ( (binary_expression "(ulonglong)uVar36 >> 0x20" (cast_expression "(ulonglong)uVar36" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) ))) == number_literal) )) (compound_statement "{\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              uVar36 = (*pcVar23)(7);\n              if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c96c0;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              iVar15 = 1;\n            }" { (expression_statement "pcVar23 = *(code **)(pcStack_208 + -0x7774);" (assignment_expression "pcVar23 = *(code **)(pcStack_208 + -0x7774)" identifier = (pointer_expression "*(code **)(pcStack_208 + -0x7774)" * (cast_expression "(code **)(pcStack_208 + -0x7774)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_208 + -0x7774)" ( (binary_expression "pcStack_208 + -0x7774" identifier + number_literal) ))))) ;) (if_statement "if (1 < (uint)uVar36) goto LAB_001c96c4;" if (parenthesized_expression "(1 < (uint)uVar36)" ( (binary_expression "1 < (uint)uVar36" number_literal < (cast_expression "(uint)uVar36" ( (type_descriptor "uint" type_identifier) ) identifier)) )) (goto_statement "goto LAB_001c96c4;" goto statement_identifier ;)) (expression_statement "uVar36 = (*pcVar23)(7);" (assignment_expression "uVar36 = (*pcVar23)(7)" identifier = (call_expression "(*pcVar23)(7)" (parenthesized_expression "(*pcVar23)" ( (pointer_expression "*pcVar23" * identifier) )) (argument_list "(7)" ( number_literal )))) ;) (if_statement "if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c96c0;" if (parenthesized_expression "((int)((ulonglong)uVar36 >> 0x20) != 0)" ( (binary_expression "(int)((ulonglong)uVar36 >> 0x20) != 0" (cast_expression "(int)((ulonglong)uVar36 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)uVar36 >> 0x20)" ( (binary_expression "(ulonglong)uVar36 >> 0x20" (cast_expression "(ulonglong)uVar36" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) ))) != number_literal) )) (goto_statement "goto LAB_001c96c0;" goto statement_identifier ;)) (expression_statement "pcVar23 = *(code **)(pcStack_208 + -0x7774);" (assignment_expression "pcVar23 = *(code **)(pcStack_208 + -0x7774)" identifier = (pointer_expression "*(code **)(pcStack_208 + -0x7774)" * (cast_expression "(code **)(pcStack_208 + -0x7774)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_208 + -0x7774)" ( (binary_expression "pcStack_208 + -0x7774" identifier + number_literal) ))))) ;) (if_statement "if (1 < (uint)uVar36) goto LAB_001c96c4;" if (parenthesized_expression "(1 < (uint)uVar36)" ( (binary_expression "1 < (uint)uVar36" number_literal < (cast_expression "(uint)uVar36" ( (type_descriptor "uint" type_identifier) ) identifier)) )) (goto_statement "goto LAB_001c96c4;" goto statement_identifier ;)) (expression_statement "iVar15 = 1;" (assignment_expression "iVar15 = 1" identifier = number_literal) ;) }) (else_clause "else {\nLAB_001c96c0:\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\nLAB_001c96c4:\n              uVar36 = (*pcVar23)(7);\n              if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n                 (pcVar23 = *(code **)(pcStack_208 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c98ac;\n              iVar15 = 2;\n            }" else (compound_statement "{\nLAB_001c96c0:\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\nLAB_001c96c4:\n              uVar36 = (*pcVar23)(7);\n              if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n                 (pcVar23 = *(code **)(pcStack_208 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c98ac;\n              iVar15 = 2;\n            }" { (labeled_statement "LAB_001c96c0:\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);" statement_identifier : (expression_statement "pcVar23 = *(code **)(pcStack_208 + -0x7774);" (assignment_expression "pcVar23 = *(code **)(pcStack_208 + -0x7774)" identifier = (pointer_expression "*(code **)(pcStack_208 + -0x7774)" * (cast_expression "(code **)(pcStack_208 + -0x7774)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_208 + -0x7774)" ( (binary_expression "pcStack_208 + -0x7774" identifier + number_literal) ))))) ;)) (labeled_statement "LAB_001c96c4:\n              uVar36 = (*pcVar23)(7);" statement_identifier : (expression_statement "uVar36 = (*pcVar23)(7);" (assignment_expression "uVar36 = (*pcVar23)(7)" identifier = (call_expression "(*pcVar23)(7)" (parenthesized_expression "(*pcVar23)" ( (pointer_expression "*pcVar23" * identifier) )) (argument_list "(7)" ( number_literal )))) ;)) (if_statement "if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n                 (pcVar23 = *(code **)(pcStack_208 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c98ac;" if (parenthesized_expression "(((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n                 (pcVar23 = *(code **)(pcStack_208 + -0x7774), (uint)uVar36 < 2))" ( (binary_expression "((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n                 (pcVar23 = *(code **)(pcStack_208 + -0x7774), (uint)uVar36 < 2)" (parenthesized_expression "((int)((ulonglong)uVar36 >> 0x20) == 0)" ( (binary_expression "(int)((ulonglong)uVar36 >> 0x20) == 0" (cast_expression "(int)((ulonglong)uVar36 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)uVar36 >> 0x20)" ( (binary_expression "(ulonglong)uVar36 >> 0x20" (cast_expression "(ulonglong)uVar36" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) ))) == number_literal) )) && (parenthesized_expression "(pcVar23 = *(code **)(pcStack_208 + -0x7774), (uint)uVar36 < 2)" ( (comma_expression "pcVar23 = *(code **)(pcStack_208 + -0x7774), (uint)uVar36 < 2" (assignment_expression "pcVar23 = *(code **)(pcStack_208 + -0x7774)" identifier = (pointer_expression "*(code **)(pcStack_208 + -0x7774)" * (cast_expression "(code **)(pcStack_208 + -0x7774)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_208 + -0x7774)" ( (binary_expression "pcStack_208 + -0x7774" identifier + number_literal) ))))) , (binary_expression "(uint)uVar36 < 2" (cast_expression "(uint)uVar36" ( (type_descriptor "uint" type_identifier) ) identifier) < number_literal)) ))) )) (goto_statement "goto LAB_001c98ac;" goto statement_identifier ;)) (expression_statement "iVar15 = 2;" (assignment_expression "iVar15 = 2" identifier = number_literal) ;) }))) (labeled_statement "LAB_001c96d8:\n            iVar14 = *(int *)(pcStack_208 + -0x7f10);" statement_identifier : (expression_statement "iVar14 = *(int *)(pcStack_208 + -0x7f10);" (assignment_expression "iVar14 = *(int *)(pcStack_208 + -0x7f10)" identifier = (pointer_expression "*(int *)(pcStack_208 + -0x7f10)" * (cast_expression "(int *)(pcStack_208 + -0x7f10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_208 + -0x7f10)" ( (binary_expression "pcStack_208 + -0x7f10" identifier + number_literal) ))))) ;)) }))) (expression_statement "puStack_1dc = &uStack_1f8;" (assignment_expression "puStack_1dc = &uStack_1f8" identifier = (pointer_expression "&uStack_1f8" & identifier)) ;) (expression_statement "pppppppuStack_1d8 = (undefined4 *******)0x1;" (assignment_expression "pppppppuStack_1d8 = (undefined4 *******)0x1" identifier = (cast_expression "(undefined4 *******)0x1" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "pppppppuStack_1f0 = pppppppuVar13;" (assignment_expression "pppppppuStack_1f0 = pppppppuVar13" identifier = identifier) ;) (expression_statement "pppppppuStack_1ec = pppppppuVar9;" (assignment_expression "pppppppuStack_1ec = pppppppuVar9" identifier = identifier) ;) (expression_statement "pppppppuStack_1e8 = unaff_s5;" (assignment_expression "pppppppuStack_1e8 = unaff_s5" identifier = identifier) ;) (expression_statement "piStack_1e4 = piVar18;" (assignment_expression "piStack_1e4 = piVar18" identifier = identifier) ;) (expression_statement "pppppppuStack_1e0 = pppppppuVar12;" (assignment_expression "pppppppuStack_1e0 = pppppppuVar12" identifier = identifier) ;) (expression_statement "(**(code **)(pcStack_208 + -0x7718))(iVar14 + 0x56bc,&pppppppuStack_1f0,iVar15,0);" (call_expression "(**(code **)(pcStack_208 + -0x7718))(iVar14 + 0x56bc,&pppppppuStack_1f0,iVar15,0)" (parenthesized_expression "(**(code **)(pcStack_208 + -0x7718))" ( (pointer_expression "**(code **)(pcStack_208 + -0x7718)" * (pointer_expression "*(code **)(pcStack_208 + -0x7718)" * (cast_expression "(code **)(pcStack_208 + -0x7718)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_208 + -0x7718)" ( (binary_expression "pcStack_208 + -0x7718" identifier + number_literal) ))))) )) (argument_list "(iVar14 + 0x56bc,&pppppppuStack_1f0,iVar15,0)" ( (binary_expression "iVar14 + 0x56bc" identifier + number_literal) , (pointer_expression "&pppppppuStack_1f0" & identifier) , identifier , number_literal ))) ;) (expression_statement "pppppppuVar9 = pppppppuStack_1d8;" (assignment_expression "pppppppuVar9 = pppppppuStack_1d8" identifier = identifier) ;) (expression_statement "(**(code **)(pcStack_208 + -0x79bc))(unaff_s5);" (call_expression "(**(code **)(pcStack_208 + -0x79bc))(unaff_s5)" (parenthesized_expression "(**(code **)(pcStack_208 + -0x79bc))" ( (pointer_expression "**(code **)(pcStack_208 + -0x79bc)" * (pointer_expression "*(code **)(pcStack_208 + -0x79bc)" * (cast_expression "(code **)(pcStack_208 + -0x79bc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_208 + -0x79bc)" ( (binary_expression "pcStack_208 + -0x79bc" identifier + number_literal) ))))) )) (argument_list "(unaff_s5)" ( identifier ))) ;) (expression_statement "(**(code **)(pcStack_208 + -0x79bc))(piVar18);" (call_expression "(**(code **)(pcStack_208 + -0x79bc))(piVar18)" (parenthesized_expression "(**(code **)(pcStack_208 + -0x79bc))" ( (pointer_expression "**(code **)(pcStack_208 + -0x79bc)" * (pointer_expression "*(code **)(pcStack_208 + -0x79bc)" * (cast_expression "(code **)(pcStack_208 + -0x79bc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_208 + -0x79bc)" ( (binary_expression "pcStack_208 + -0x79bc" identifier + number_literal) ))))) )) (argument_list "(piVar18)" ( identifier ))) ;) (expression_statement "pppppppuVar12[0xa8] = pppppppuVar13[0xa8];" (assignment_expression "pppppppuVar12[0xa8] = pppppppuVar13[0xa8]" (subscript_expression "pppppppuVar12[0xa8]" identifier [ number_literal ]) = (subscript_expression "pppppppuVar13[0xa8]" identifier [ number_literal ])) ;) (if_statement "if (unaff_s2 != (undefined4 ******)0x0) {\n            unaff_s6 = (undefined4 *******)\n                       ((int)unaff_s2 + (-(int)unaff_s6 - (int)pppppppuVar12[7]));\n          }" if (parenthesized_expression "(unaff_s2 != (undefined4 ******)0x0)" ( (binary_expression "unaff_s2 != (undefined4 ******)0x0" identifier != (cast_expression "(undefined4 ******)0x0" ( (type_descriptor "undefined4 ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n            unaff_s6 = (undefined4 *******)\n                       ((int)unaff_s2 + (-(int)unaff_s6 - (int)pppppppuVar12[7]));\n          }" { (expression_statement "unaff_s6 = (undefined4 *******)\n                       ((int)unaff_s2 + (-(int)unaff_s6 - (int)pppppppuVar12[7]));" (assignment_expression "unaff_s6 = (undefined4 *******)\n                       ((int)unaff_s2 + (-(int)unaff_s6 - (int)pppppppuVar12[7]))" identifier = (cast_expression "(undefined4 *******)\n                       ((int)unaff_s2 + (-(int)unaff_s6 - (int)pppppppuVar12[7]))" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)unaff_s2 + (-(int)unaff_s6 - (int)pppppppuVar12[7]))" ( (binary_expression "(int)unaff_s2 + (-(int)unaff_s6 - (int)pppppppuVar12[7])" (cast_expression "(int)unaff_s2" ( (type_descriptor "int" primitive_type) ) identifier) + (parenthesized_expression "(-(int)unaff_s6 - (int)pppppppuVar12[7])" ( (binary_expression "-(int)unaff_s6 - (int)pppppppuVar12[7]" (unary_expression "-(int)unaff_s6" - (cast_expression "(int)unaff_s6" ( (type_descriptor "int" primitive_type) ) identifier)) - (cast_expression "(int)pppppppuVar12[7]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "pppppppuVar12[7]" identifier [ number_literal ]))) ))) )))) ;) })) (expression_statement "pppppppuVar12[0x8a] = unaff_s8;" (assignment_expression "pppppppuVar12[0x8a] = unaff_s8" (subscript_expression "pppppppuVar12[0x8a]" identifier [ number_literal ]) = identifier) ;) (expression_statement "pppppppuVar12[0x8b] = unaff_s2;" (assignment_expression "pppppppuVar12[0x8b] = unaff_s2" (subscript_expression "pppppppuVar12[0x8b]" identifier [ number_literal ]) = identifier) ;) (expression_statement "pppppppuVar12[0x8c] = ppppppuStack_1fc;" (assignment_expression "pppppppuVar12[0x8c] = ppppppuStack_1fc" (subscript_expression "pppppppuVar12[0x8c]" identifier [ number_literal ]) = identifier) ;) (expression_statement "pppppppuVar12[0x8d] = unaff_s6;" (assignment_expression "pppppppuVar12[0x8d] = unaff_s6" (subscript_expression "pppppppuVar12[0x8d]" identifier [ number_literal ]) = identifier) ;) (if_statement "if (pppppppuVar9 == (undefined4 *******)0x0) {\n            pppppppuVar12 = (undefined4 *******)(**(code **)(pcStack_208 + -0x7964))(pppppppuVar12);\n          }" if (parenthesized_expression "(pppppppuVar9 == (undefined4 *******)0x0)" ( (binary_expression "pppppppuVar9 == (undefined4 *******)0x0" identifier == (cast_expression "(undefined4 *******)0x0" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n            pppppppuVar12 = (undefined4 *******)(**(code **)(pcStack_208 + -0x7964))(pppppppuVar12);\n          }" { (expression_statement "pppppppuVar12 = (undefined4 *******)(**(code **)(pcStack_208 + -0x7964))(pppppppuVar12);" (assignment_expression "pppppppuVar12 = (undefined4 *******)(**(code **)(pcStack_208 + -0x7964))(pppppppuVar12)" identifier = (cast_expression "(undefined4 *******)(**(code **)(pcStack_208 + -0x7964))(pppppppuVar12)" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(**(code **)(pcStack_208 + -0x7964))(pppppppuVar12)" (parenthesized_expression "(**(code **)(pcStack_208 + -0x7964))" ( (pointer_expression "**(code **)(pcStack_208 + -0x7964)" * (pointer_expression "*(code **)(pcStack_208 + -0x7964)" * (cast_expression "(code **)(pcStack_208 + -0x7964)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_208 + -0x7964)" ( (binary_expression "pcStack_208 + -0x7964" identifier + number_literal) ))))) )) (argument_list "(pppppppuVar12)" ( identifier ))))) ;) })) })) (expression_statement "pcVar23 = pcStack_208;" (assignment_expression "pcVar23 = pcStack_208" identifier = identifier) ;) (if_statement "if (iStack_1d4 == *piVar16) {\n          return pppppppuVar12;\n        }" if (parenthesized_expression "(iStack_1d4 == *piVar16)" ( (binary_expression "iStack_1d4 == *piVar16" identifier == (pointer_expression "*piVar16" * identifier)) )) (compound_statement "{\n          return pppppppuVar12;\n        }" { (return_statement "return pppppppuVar12;" return identifier ;) })) (goto_statement "goto LAB_001c9968;" goto statement_identifier ;) })) (goto_statement "goto LAB_001c9974;" goto statement_identifier ;) })) }))) (expression_statement "pcVar21 = *(code **)(pcVar23 + -0x72a8);" (assignment_expression "pcVar21 = *(code **)(pcVar23 + -0x72a8)" identifier = (pointer_expression "*(code **)(pcVar23 + -0x72a8)" * (cast_expression "(code **)(pcVar23 + -0x72a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar23 + -0x72a8)" ( (binary_expression "pcVar23 + -0x72a8" identifier + number_literal) ))))) ;) (expression_statement "iVar14 = *(int *)(pcVar23 + -0x7fc4) + -0x288c;" (assignment_expression "iVar14 = *(int *)(pcVar23 + -0x7fc4) + -0x288c" identifier = (binary_expression "*(int *)(pcVar23 + -0x7fc4) + -0x288c" (pointer_expression "*(int *)(pcVar23 + -0x7fc4)" * (cast_expression "(int *)(pcVar23 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar23 + -0x7fc4)" ( (binary_expression "pcVar23 + -0x7fc4" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "pcVar24 = FlopImage;" (assignment_expression "pcVar24 = FlopImage" identifier = identifier) ;) (expression_statement "iVar15 = *(int *)(pcVar23 + -0x7fc8) + -0x3784;" (assignment_expression "iVar15 = *(int *)(pcVar23 + -0x7fc8) + -0x3784" identifier = (binary_expression "*(int *)(pcVar23 + -0x7fc8) + -0x3784" (pointer_expression "*(int *)(pcVar23 + -0x7fc8)" * (cast_expression "(int *)(pcVar23 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar23 + -0x7fc8)" ( (binary_expression "pcVar23 + -0x7fc8" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "(*pcVar21)(iVar15,iVar14,0x4bd,*(int *)(pcVar23 + -0x7fc4) + -0x26e0);" (call_expression "(*pcVar21)(iVar15,iVar14,0x4bd,*(int *)(pcVar23 + -0x7fc4) + -0x26e0)" (parenthesized_expression "(*pcVar21)" ( (pointer_expression "*pcVar21" * identifier) )) (argument_list "(iVar15,iVar14,0x4bd,*(int *)(pcVar23 + -0x7fc4) + -0x26e0)" ( identifier , identifier , number_literal , (binary_expression "*(int *)(pcVar23 + -0x7fc4) + -0x26e0" (pointer_expression "*(int *)(pcVar23 + -0x7fc4)" * (cast_expression "(int *)(pcVar23 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar23 + -0x7fc4)" ( (binary_expression "pcVar23 + -0x7fc4" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "piVar17 = *(int **)(pcVar21 + 0x1df874);" (assignment_expression "piVar17 = *(int **)(pcVar21 + 0x1df874)" identifier = (pointer_expression "*(int **)(pcVar21 + 0x1df874)" * (cast_expression "(int **)(pcVar21 + 0x1df874)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0x1df874)" ( (binary_expression "pcVar21 + 0x1df874" identifier + number_literal) ))))) ;) (expression_statement "iStack_24c = *piVar17;" (assignment_expression "iStack_24c = *piVar17" identifier = (pointer_expression "*piVar17" * identifier)) ;) (expression_statement "pppppppuStack_248 = pppppppuVar12;" (assignment_expression "pppppppuStack_248 = pppppppuVar12" identifier = identifier) ;) (expression_statement "ppppppuStack_240 = unaff_s2;" (assignment_expression "ppppppuStack_240 = unaff_s2" identifier = identifier) ;) (expression_statement "piStack_23c = piVar16;" (assignment_expression "piStack_23c = piVar16" identifier = identifier) ;) (expression_statement "piStack_238 = piVar18;" (assignment_expression "piStack_238 = piVar18" identifier = identifier) ;) (expression_statement "pppppppuStack_234 = unaff_s5;" (assignment_expression "pppppppuStack_234 = unaff_s5" identifier = identifier) ;) (expression_statement "pppppppuStack_230 = unaff_s6;" (assignment_expression "pppppppuStack_230 = unaff_s6" identifier = identifier) ;) (expression_statement "pppppppuStack_22c = pppppppuVar13;" (assignment_expression "pppppppuStack_22c = pppppppuVar13" identifier = identifier) ;) (expression_statement "pppppppuStack_228 = unaff_s8;" (assignment_expression "pppppppuStack_228 = unaff_s8" identifier = identifier) ;) (expression_statement "pcStack_224 = pcVar24;" (assignment_expression "pcStack_224 = pcVar24" identifier = identifier) ;) (if_statement "if (iVar15 == 0) {\n    pppppppuVar9 = (undefined4 *******)\n                   (**(code **)(pcVar21 + 0x1dfc4c))\n                             (*(int *)(pcVar21 + 0x1def2c) + -0x37b0,\n                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x543,\n                              *(int *)(pcVar21 + 0x1def30) + -0x26f8);\n    return pppppppuVar9;\n  }" if (parenthesized_expression "(iVar15 == 0)" ( (binary_expression "iVar15 == 0" identifier == number_literal) )) (compound_statement "{\n    pppppppuVar9 = (undefined4 *******)\n                   (**(code **)(pcVar21 + 0x1dfc4c))\n                             (*(int *)(pcVar21 + 0x1def2c) + -0x37b0,\n                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x543,\n                              *(int *)(pcVar21 + 0x1def30) + -0x26f8);\n    return pppppppuVar9;\n  }" { (expression_statement "pppppppuVar9 = (undefined4 *******)\n                   (**(code **)(pcVar21 + 0x1dfc4c))\n                             (*(int *)(pcVar21 + 0x1def2c) + -0x37b0,\n                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x543,\n                              *(int *)(pcVar21 + 0x1def30) + -0x26f8);" (assignment_expression "pppppppuVar9 = (undefined4 *******)\n                   (**(code **)(pcVar21 + 0x1dfc4c))\n                             (*(int *)(pcVar21 + 0x1def2c) + -0x37b0,\n                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x543,\n                              *(int *)(pcVar21 + 0x1def30) + -0x26f8)" identifier = (cast_expression "(undefined4 *******)\n                   (**(code **)(pcVar21 + 0x1dfc4c))\n                             (*(int *)(pcVar21 + 0x1def2c) + -0x37b0,\n                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x543,\n                              *(int *)(pcVar21 + 0x1def30) + -0x26f8)" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(**(code **)(pcVar21 + 0x1dfc4c))\n                             (*(int *)(pcVar21 + 0x1def2c) + -0x37b0,\n                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x543,\n                              *(int *)(pcVar21 + 0x1def30) + -0x26f8)" (parenthesized_expression "(**(code **)(pcVar21 + 0x1dfc4c))" ( (pointer_expression "**(code **)(pcVar21 + 0x1dfc4c)" * (pointer_expression "*(code **)(pcVar21 + 0x1dfc4c)" * (cast_expression "(code **)(pcVar21 + 0x1dfc4c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0x1dfc4c)" ( (binary_expression "pcVar21 + 0x1dfc4c" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar21 + 0x1def2c) + -0x37b0,\n                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x543,\n                              *(int *)(pcVar21 + 0x1def30) + -0x26f8)" ( (binary_expression "*(int *)(pcVar21 + 0x1def2c) + -0x37b0" (pointer_expression "*(int *)(pcVar21 + 0x1def2c)" * (cast_expression "(int *)(pcVar21 + 0x1def2c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0x1def2c)" ( (binary_expression "pcVar21 + 0x1def2c" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar21 + 0x1def30) + -0x288c" (pointer_expression "*(int *)(pcVar21 + 0x1def30)" * (cast_expression "(int *)(pcVar21 + 0x1def30)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0x1def30)" ( (binary_expression "pcVar21 + 0x1def30" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar21 + 0x1def30) + -0x26f8" (pointer_expression "*(int *)(pcVar21 + 0x1def30)" * (cast_expression "(int *)(pcVar21 + 0x1def30)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0x1def30)" ( (binary_expression "pcVar21 + 0x1def30" identifier + number_literal) )))) + number_literal) ))))) ;) (return_statement "return pppppppuVar9;" return identifier ;) })) (if_statement "if (*(int *)(iVar15 + 0x336c) != -0x54535255) {\n    pppppppuVar9 = (undefined4 *******)\n                   (**(code **)(pcVar21 + 0x1dfc4c))\n                             (*(int *)(pcVar21 + 0x1def2c) + -0x3784,\n                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x544,\n                              *(int *)(pcVar21 + 0x1def30) + -0x26f8);\n    return pppppppuVar9;\n  }" if (parenthesized_expression "(*(int *)(iVar15 + 0x336c) != -0x54535255)" ( (binary_expression "*(int *)(iVar15 + 0x336c) != -0x54535255" (pointer_expression "*(int *)(iVar15 + 0x336c)" * (cast_expression "(int *)(iVar15 + 0x336c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar15 + 0x336c)" ( (binary_expression "iVar15 + 0x336c" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n    pppppppuVar9 = (undefined4 *******)\n                   (**(code **)(pcVar21 + 0x1dfc4c))\n                             (*(int *)(pcVar21 + 0x1def2c) + -0x3784,\n                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x544,\n                              *(int *)(pcVar21 + 0x1def30) + -0x26f8);\n    return pppppppuVar9;\n  }" { (expression_statement "pppppppuVar9 = (undefined4 *******)\n                   (**(code **)(pcVar21 + 0x1dfc4c))\n                             (*(int *)(pcVar21 + 0x1def2c) + -0x3784,\n                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x544,\n                              *(int *)(pcVar21 + 0x1def30) + -0x26f8);" (assignment_expression "pppppppuVar9 = (undefined4 *******)\n                   (**(code **)(pcVar21 + 0x1dfc4c))\n                             (*(int *)(pcVar21 + 0x1def2c) + -0x3784,\n                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x544,\n                              *(int *)(pcVar21 + 0x1def30) + -0x26f8)" identifier = (cast_expression "(undefined4 *******)\n                   (**(code **)(pcVar21 + 0x1dfc4c))\n                             (*(int *)(pcVar21 + 0x1def2c) + -0x3784,\n                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x544,\n                              *(int *)(pcVar21 + 0x1def30) + -0x26f8)" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(**(code **)(pcVar21 + 0x1dfc4c))\n                             (*(int *)(pcVar21 + 0x1def2c) + -0x3784,\n                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x544,\n                              *(int *)(pcVar21 + 0x1def30) + -0x26f8)" (parenthesized_expression "(**(code **)(pcVar21 + 0x1dfc4c))" ( (pointer_expression "**(code **)(pcVar21 + 0x1dfc4c)" * (pointer_expression "*(code **)(pcVar21 + 0x1dfc4c)" * (cast_expression "(code **)(pcVar21 + 0x1dfc4c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0x1dfc4c)" ( (binary_expression "pcVar21 + 0x1dfc4c" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar21 + 0x1def2c) + -0x3784,\n                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x544,\n                              *(int *)(pcVar21 + 0x1def30) + -0x26f8)" ( (binary_expression "*(int *)(pcVar21 + 0x1def2c) + -0x3784" (pointer_expression "*(int *)(pcVar21 + 0x1def2c)" * (cast_expression "(int *)(pcVar21 + 0x1def2c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0x1def2c)" ( (binary_expression "pcVar21 + 0x1def2c" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar21 + 0x1def30) + -0x288c" (pointer_expression "*(int *)(pcVar21 + 0x1def30)" * (cast_expression "(int *)(pcVar21 + 0x1def30)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0x1def30)" ( (binary_expression "pcVar21 + 0x1def30" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar21 + 0x1def30) + -0x26f8" (pointer_expression "*(int *)(pcVar21 + 0x1def30)" * (cast_expression "(int *)(pcVar21 + 0x1def30)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0x1def30)" ( (binary_expression "pcVar21 + 0x1def30" identifier + number_literal) )))) + number_literal) ))))) ;) (return_statement "return pppppppuVar9;" return identifier ;) })) (if_statement "if (*(int *)(iVar15 + 0x3350) != 0) {\n    (**(code **)(pcVar21 + 0x1df824))\n              (0x8000,*(int *)(pcVar21 + 0x1def30) + -0x288c,*(int *)(pcVar21 + 0x1def30) + -0x2704,\n               0x546,*(int *)(pcVar21 + 0x1def28) + -0x62ac,iVar15 + 0x340);\n  }" if (parenthesized_expression "(*(int *)(iVar15 + 0x3350) != 0)" ( (binary_expression "*(int *)(iVar15 + 0x3350) != 0" (pointer_expression "*(int *)(iVar15 + 0x3350)" * (cast_expression "(int *)(iVar15 + 0x3350)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar15 + 0x3350)" ( (binary_expression "iVar15 + 0x3350" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n    (**(code **)(pcVar21 + 0x1df824))\n              (0x8000,*(int *)(pcVar21 + 0x1def30) + -0x288c,*(int *)(pcVar21 + 0x1def30) + -0x2704,\n               0x546,*(int *)(pcVar21 + 0x1def28) + -0x62ac,iVar15 + 0x340);\n  }" { (expression_statement "(**(code **)(pcVar21 + 0x1df824))\n              (0x8000,*(int *)(pcVar21 + 0x1def30) + -0x288c,*(int *)(pcVar21 + 0x1def30) + -0x2704,\n               0x546,*(int *)(pcVar21 + 0x1def28) + -0x62ac,iVar15 + 0x340);" (call_expression "(**(code **)(pcVar21 + 0x1df824))\n              (0x8000,*(int *)(pcVar21 + 0x1def30) + -0x288c,*(int *)(pcVar21 + 0x1def30) + -0x2704,\n               0x546,*(int *)(pcVar21 + 0x1def28) + -0x62ac,iVar15 + 0x340)" (parenthesized_expression "(**(code **)(pcVar21 + 0x1df824))" ( (pointer_expression "**(code **)(pcVar21 + 0x1df824)" * (pointer_expression "*(code **)(pcVar21 + 0x1df824)" * (cast_expression "(code **)(pcVar21 + 0x1df824)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0x1df824)" ( (binary_expression "pcVar21 + 0x1df824" identifier + number_literal) ))))) )) (argument_list "(0x8000,*(int *)(pcVar21 + 0x1def30) + -0x288c,*(int *)(pcVar21 + 0x1def30) + -0x2704,\n               0x546,*(int *)(pcVar21 + 0x1def28) + -0x62ac,iVar15 + 0x340)" ( number_literal , (binary_expression "*(int *)(pcVar21 + 0x1def30) + -0x288c" (pointer_expression "*(int *)(pcVar21 + 0x1def30)" * (cast_expression "(int *)(pcVar21 + 0x1def30)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0x1def30)" ( (binary_expression "pcVar21 + 0x1def30" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar21 + 0x1def30) + -0x2704" (pointer_expression "*(int *)(pcVar21 + 0x1def30)" * (cast_expression "(int *)(pcVar21 + 0x1def30)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0x1def30)" ( (binary_expression "pcVar21 + 0x1def30" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar21 + 0x1def28) + -0x62ac" (pointer_expression "*(int *)(pcVar21 + 0x1def28)" * (cast_expression "(int *)(pcVar21 + 0x1def28)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0x1def28)" ( (binary_expression "pcVar21 + 0x1def28" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar15 + 0x340" identifier + number_literal) ))) ;) })) (if_statement "if (iVar14 == 0) {\n    pppppppuVar9 = (undefined4 *******)\n                   (**(code **)(pcVar21 + 0x1dfc4c))\n                             (*(int *)(pcVar21 + 0x1def24) + 0x1cac,\n                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x547,\n                              *(int *)(pcVar21 + 0x1def30) + -0x26f8);\n    return pppppppuVar9;\n  }" if (parenthesized_expression "(iVar14 == 0)" ( (binary_expression "iVar14 == 0" identifier == number_literal) )) (compound_statement "{\n    pppppppuVar9 = (undefined4 *******)\n                   (**(code **)(pcVar21 + 0x1dfc4c))\n                             (*(int *)(pcVar21 + 0x1def24) + 0x1cac,\n                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x547,\n                              *(int *)(pcVar21 + 0x1def30) + -0x26f8);\n    return pppppppuVar9;\n  }" { (expression_statement "pppppppuVar9 = (undefined4 *******)\n                   (**(code **)(pcVar21 + 0x1dfc4c))\n                             (*(int *)(pcVar21 + 0x1def24) + 0x1cac,\n                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x547,\n                              *(int *)(pcVar21 + 0x1def30) + -0x26f8);" (assignment_expression "pppppppuVar9 = (undefined4 *******)\n                   (**(code **)(pcVar21 + 0x1dfc4c))\n                             (*(int *)(pcVar21 + 0x1def24) + 0x1cac,\n                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x547,\n                              *(int *)(pcVar21 + 0x1def30) + -0x26f8)" identifier = (cast_expression "(undefined4 *******)\n                   (**(code **)(pcVar21 + 0x1dfc4c))\n                             (*(int *)(pcVar21 + 0x1def24) + 0x1cac,\n                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x547,\n                              *(int *)(pcVar21 + 0x1def30) + -0x26f8)" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(**(code **)(pcVar21 + 0x1dfc4c))\n                             (*(int *)(pcVar21 + 0x1def24) + 0x1cac,\n                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x547,\n                              *(int *)(pcVar21 + 0x1def30) + -0x26f8)" (parenthesized_expression "(**(code **)(pcVar21 + 0x1dfc4c))" ( (pointer_expression "**(code **)(pcVar21 + 0x1dfc4c)" * (pointer_expression "*(code **)(pcVar21 + 0x1dfc4c)" * (cast_expression "(code **)(pcVar21 + 0x1dfc4c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0x1dfc4c)" ( (binary_expression "pcVar21 + 0x1dfc4c" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar21 + 0x1def24) + 0x1cac,\n                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x547,\n                              *(int *)(pcVar21 + 0x1def30) + -0x26f8)" ( (binary_expression "*(int *)(pcVar21 + 0x1def24) + 0x1cac" (pointer_expression "*(int *)(pcVar21 + 0x1def24)" * (cast_expression "(int *)(pcVar21 + 0x1def24)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0x1def24)" ( (binary_expression "pcVar21 + 0x1def24" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar21 + 0x1def30) + -0x288c" (pointer_expression "*(int *)(pcVar21 + 0x1def30)" * (cast_expression "(int *)(pcVar21 + 0x1def30)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0x1def30)" ( (binary_expression "pcVar21 + 0x1def30" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar21 + 0x1def30) + -0x26f8" (pointer_expression "*(int *)(pcVar21 + 0x1def30)" * (cast_expression "(int *)(pcVar21 + 0x1def30)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0x1def30)" ( (binary_expression "pcVar21 + 0x1def30" identifier + number_literal) )))) + number_literal) ))))) ;) (return_statement "return pppppppuVar9;" return identifier ;) })) (if_statement "if (*(int *)(iVar14 + 0x1c) != -0x54535255) goto LAB_001c9db0;" if (parenthesized_expression "(*(int *)(iVar14 + 0x1c) != -0x54535255)" ( (binary_expression "*(int *)(iVar14 + 0x1c) != -0x54535255" (pointer_expression "*(int *)(iVar14 + 0x1c)" * (cast_expression "(int *)(iVar14 + 0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar14 + 0x1c)" ( (binary_expression "iVar14 + 0x1c" identifier + number_literal) )))) != number_literal) )) (goto_statement "goto LAB_001c9db0;" goto statement_identifier ;)) (expression_statement "pppppppuVar9 = (undefined4 *******)(**(code **)(pcVar21 + 0x1dfe74))(iVar15,0,0,1,iVar14);" (assignment_expression "pppppppuVar9 = (undefined4 *******)(**(code **)(pcVar21 + 0x1dfe74))(iVar15,0,0,1,iVar14)" identifier = (cast_expression "(undefined4 *******)(**(code **)(pcVar21 + 0x1dfe74))(iVar15,0,0,1,iVar14)" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(**(code **)(pcVar21 + 0x1dfe74))(iVar15,0,0,1,iVar14)" (parenthesized_expression "(**(code **)(pcVar21 + 0x1dfe74))" ( (pointer_expression "**(code **)(pcVar21 + 0x1dfe74)" * (pointer_expression "*(code **)(pcVar21 + 0x1dfe74)" * (cast_expression "(code **)(pcVar21 + 0x1dfe74)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0x1dfe74)" ( (binary_expression "pcVar21 + 0x1dfe74" identifier + number_literal) ))))) )) (argument_list "(iVar15,0,0,1,iVar14)" ( identifier , number_literal , number_literal , number_literal , identifier ))))) ;) (if_statement "if (pppppppuVar9 != (undefined4 *******)0x0) {\n    ppppppuVar2 = *(undefined4 *******)(iVar15 + 0x234);\n    ppppppuVar7 = *(undefined4 *******)(iVar15 + 0x228);\n    ppppppuVar22 = *(undefined4 *******)(iVar15 + 0x22c);\n    ppppppuVar19 = *(undefined4 *******)(iVar15 + 0x230);\n    uStack_26c = 0;\n    uStack_270 = 0;\n    uVar4 = (**(code **)(pcVar21 + 0x1dfd98))(iVar15,iVar14);\n    uVar5 = (**(code **)(pcVar21 + 0x1df518))(pppppppuVar9,iVar14);\n    iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(iVar15);\n    if (((iVar10 == 4) || (iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(iVar15), iVar10 == 3)) &&\n       ((iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(pppppppuVar9), iVar10 == 4 ||\n        (iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(pppppppuVar9), iVar10 == 3)))) {\n      (**(code **)(pcVar21 + 0x1df780))(7);\n      ppppppuVar6 = pppppppuVar9[7];\n      if ((int)ppppppuVar6 < 0) {\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (extraout_v1_07 < (int)ppppppuVar6 + 0x3f >> 6) goto LAB_001c9d10;\nLAB_001c9c58:\n        bVar1 = (int)ppppppuVar6 < 0x80;\n      }\n      else {\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if ((int)ppppppuVar6 >> 6 <= extraout_v1_07) goto LAB_001c9c58;\nLAB_001c9d10:\n        (*pcVar23)(7);\n        bVar1 = extraout_v1_09 < 2;\n      }\n      iVar10 = 1;\n      if ((bool)(bVar1 ^ 1)) {\n        (**(code **)(pcVar21 + 0x1df780))(7);\n        ppppppuVar6 = pppppppuVar9[7];\n        if ((int)ppppppuVar6 < 0) {\n          ppppppuVar6 = (undefined4 ******)((int)ppppppuVar6 + 0x3f);\n        }\n        iVar10 = (int)ppppppuVar6 >> 6;\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (extraout_v1_10 < iVar10) {\nLAB_001c9ce8:\n          (*pcVar23)(7);\n          iVar10 = extraout_v1_08;\n        }\n        goto LAB_001c9b14;\n      }\n      iVar11 = *(int *)(pcVar21 + 0x1defe4);\n    }\n    else {\n      uVar36 = (**(code **)(pcVar21 + 0x1df780))(7);\n      if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (1 < (uint)uVar36) goto LAB_001c9b00;\n        uVar36 = (*pcVar23)(7);\n        if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c9afc;\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (1 < (uint)uVar36) goto LAB_001c9b00;\n        iVar10 = 1;\n      }\n      else {\nLAB_001c9afc:\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\nLAB_001c9b00:\n        uVar36 = (*pcVar23)(7);\n        if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n           (pcVar23 = *(code **)(pcVar21 + 0x1df780), (uint)uVar36 < 2)) goto LAB_001c9ce8;\n        iVar10 = 2;\n      }\nLAB_001c9b14:\n      iVar11 = *(int *)(pcVar21 + 0x1defe4);\n    }\n    puStack_254 = &uStack_270;\n    iStack_250 = 1;\n    iStack_268 = iVar15;\n    iStack_264 = iVar14;\n    uStack_260 = uVar5;\n    uStack_25c = uVar4;\n    pppppppuStack_258 = pppppppuVar9;\n    (**(code **)(pcVar21 + 0x1df7dc))(iVar11 + 0x594c,&iStack_268,iVar10,0);\n    iVar14 = iStack_250;\n    (**(code **)(pcVar21 + 0x1df538))(uVar5);\n    (**(code **)(pcVar21 + 0x1df538))(uVar4);\n    pppppppuVar9[0xa8] = *(undefined4 *******)(iVar15 + 0x2a0);\n    if (ppppppuVar7 != (undefined4 ******)0x0) {\n      ppppppuVar19 = (undefined4 ******)\n                     ((int)ppppppuVar7 + (-(int)ppppppuVar19 - (int)pppppppuVar9[6]));\n    }\n    pppppppuVar9[0x8a] = ppppppuVar7;\n    pppppppuVar9[0x8b] = ppppppuVar22;\n    pppppppuVar9[0x8c] = ppppppuVar19;\n    pppppppuVar9[0x8d] = ppppppuVar2;\n    if (iVar14 == 0) {\n      pppppppuVar9 = (undefined4 *******)(**(code **)(pcVar21 + 0x1df590))(pppppppuVar9);\n    }\n  }" if (parenthesized_expression "(pppppppuVar9 != (undefined4 *******)0x0)" ( (binary_expression "pppppppuVar9 != (undefined4 *******)0x0" identifier != (cast_expression "(undefined4 *******)0x0" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n    ppppppuVar2 = *(undefined4 *******)(iVar15 + 0x234);\n    ppppppuVar7 = *(undefined4 *******)(iVar15 + 0x228);\n    ppppppuVar22 = *(undefined4 *******)(iVar15 + 0x22c);\n    ppppppuVar19 = *(undefined4 *******)(iVar15 + 0x230);\n    uStack_26c = 0;\n    uStack_270 = 0;\n    uVar4 = (**(code **)(pcVar21 + 0x1dfd98))(iVar15,iVar14);\n    uVar5 = (**(code **)(pcVar21 + 0x1df518))(pppppppuVar9,iVar14);\n    iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(iVar15);\n    if (((iVar10 == 4) || (iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(iVar15), iVar10 == 3)) &&\n       ((iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(pppppppuVar9), iVar10 == 4 ||\n        (iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(pppppppuVar9), iVar10 == 3)))) {\n      (**(code **)(pcVar21 + 0x1df780))(7);\n      ppppppuVar6 = pppppppuVar9[7];\n      if ((int)ppppppuVar6 < 0) {\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (extraout_v1_07 < (int)ppppppuVar6 + 0x3f >> 6) goto LAB_001c9d10;\nLAB_001c9c58:\n        bVar1 = (int)ppppppuVar6 < 0x80;\n      }\n      else {\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if ((int)ppppppuVar6 >> 6 <= extraout_v1_07) goto LAB_001c9c58;\nLAB_001c9d10:\n        (*pcVar23)(7);\n        bVar1 = extraout_v1_09 < 2;\n      }\n      iVar10 = 1;\n      if ((bool)(bVar1 ^ 1)) {\n        (**(code **)(pcVar21 + 0x1df780))(7);\n        ppppppuVar6 = pppppppuVar9[7];\n        if ((int)ppppppuVar6 < 0) {\n          ppppppuVar6 = (undefined4 ******)((int)ppppppuVar6 + 0x3f);\n        }\n        iVar10 = (int)ppppppuVar6 >> 6;\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (extraout_v1_10 < iVar10) {\nLAB_001c9ce8:\n          (*pcVar23)(7);\n          iVar10 = extraout_v1_08;\n        }\n        goto LAB_001c9b14;\n      }\n      iVar11 = *(int *)(pcVar21 + 0x1defe4);\n    }\n    else {\n      uVar36 = (**(code **)(pcVar21 + 0x1df780))(7);\n      if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (1 < (uint)uVar36) goto LAB_001c9b00;\n        uVar36 = (*pcVar23)(7);\n        if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c9afc;\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (1 < (uint)uVar36) goto LAB_001c9b00;\n        iVar10 = 1;\n      }\n      else {\nLAB_001c9afc:\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\nLAB_001c9b00:\n        uVar36 = (*pcVar23)(7);\n        if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n           (pcVar23 = *(code **)(pcVar21 + 0x1df780), (uint)uVar36 < 2)) goto LAB_001c9ce8;\n        iVar10 = 2;\n      }\nLAB_001c9b14:\n      iVar11 = *(int *)(pcVar21 + 0x1defe4);\n    }\n    puStack_254 = &uStack_270;\n    iStack_250 = 1;\n    iStack_268 = iVar15;\n    iStack_264 = iVar14;\n    uStack_260 = uVar5;\n    uStack_25c = uVar4;\n    pppppppuStack_258 = pppppppuVar9;\n    (**(code **)(pcVar21 + 0x1df7dc))(iVar11 + 0x594c,&iStack_268,iVar10,0);\n    iVar14 = iStack_250;\n    (**(code **)(pcVar21 + 0x1df538))(uVar5);\n    (**(code **)(pcVar21 + 0x1df538))(uVar4);\n    pppppppuVar9[0xa8] = *(undefined4 *******)(iVar15 + 0x2a0);\n    if (ppppppuVar7 != (undefined4 ******)0x0) {\n      ppppppuVar19 = (undefined4 ******)\n                     ((int)ppppppuVar7 + (-(int)ppppppuVar19 - (int)pppppppuVar9[6]));\n    }\n    pppppppuVar9[0x8a] = ppppppuVar7;\n    pppppppuVar9[0x8b] = ppppppuVar22;\n    pppppppuVar9[0x8c] = ppppppuVar19;\n    pppppppuVar9[0x8d] = ppppppuVar2;\n    if (iVar14 == 0) {\n      pppppppuVar9 = (undefined4 *******)(**(code **)(pcVar21 + 0x1df590))(pppppppuVar9);\n    }\n  }" { (expression_statement "ppppppuVar2 = *(undefined4 *******)(iVar15 + 0x234);" (assignment_expression "ppppppuVar2 = *(undefined4 *******)(iVar15 + 0x234)" identifier = (pointer_expression "*(undefined4 *******)(iVar15 + 0x234)" * (cast_expression "(undefined4 *******)(iVar15 + 0x234)" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(iVar15 + 0x234)" ( (binary_expression "iVar15 + 0x234" identifier + number_literal) ))))) ;) (expression_statement "ppppppuVar7 = *(undefined4 *******)(iVar15 + 0x228);" (assignment_expression "ppppppuVar7 = *(undefined4 *******)(iVar15 + 0x228)" identifier = (pointer_expression "*(undefined4 *******)(iVar15 + 0x228)" * (cast_expression "(undefined4 *******)(iVar15 + 0x228)" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(iVar15 + 0x228)" ( (binary_expression "iVar15 + 0x228" identifier + number_literal) ))))) ;) (expression_statement "ppppppuVar22 = *(undefined4 *******)(iVar15 + 0x22c);" (assignment_expression "ppppppuVar22 = *(undefined4 *******)(iVar15 + 0x22c)" identifier = (pointer_expression "*(undefined4 *******)(iVar15 + 0x22c)" * (cast_expression "(undefined4 *******)(iVar15 + 0x22c)" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(iVar15 + 0x22c)" ( (binary_expression "iVar15 + 0x22c" identifier + number_literal) ))))) ;) (expression_statement "ppppppuVar19 = *(undefined4 *******)(iVar15 + 0x230);" (assignment_expression "ppppppuVar19 = *(undefined4 *******)(iVar15 + 0x230)" identifier = (pointer_expression "*(undefined4 *******)(iVar15 + 0x230)" * (cast_expression "(undefined4 *******)(iVar15 + 0x230)" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(iVar15 + 0x230)" ( (binary_expression "iVar15 + 0x230" identifier + number_literal) ))))) ;) (expression_statement "uStack_26c = 0;" (assignment_expression "uStack_26c = 0" identifier = number_literal) ;) (expression_statement "uStack_270 = 0;" (assignment_expression "uStack_270 = 0" identifier = number_literal) ;) (expression_statement "uVar4 = (**(code **)(pcVar21 + 0x1dfd98))(iVar15,iVar14);" (assignment_expression "uVar4 = (**(code **)(pcVar21 + 0x1dfd98))(iVar15,iVar14)" identifier = (call_expression "(**(code **)(pcVar21 + 0x1dfd98))(iVar15,iVar14)" (parenthesized_expression "(**(code **)(pcVar21 + 0x1dfd98))" ( (pointer_expression "**(code **)(pcVar21 + 0x1dfd98)" * (pointer_expression "*(code **)(pcVar21 + 0x1dfd98)" * (cast_expression "(code **)(pcVar21 + 0x1dfd98)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0x1dfd98)" ( (binary_expression "pcVar21 + 0x1dfd98" identifier + number_literal) ))))) )) (argument_list "(iVar15,iVar14)" ( identifier , identifier )))) ;) (expression_statement "uVar5 = (**(code **)(pcVar21 + 0x1df518))(pppppppuVar9,iVar14);" (assignment_expression "uVar5 = (**(code **)(pcVar21 + 0x1df518))(pppppppuVar9,iVar14)" identifier = (call_expression "(**(code **)(pcVar21 + 0x1df518))(pppppppuVar9,iVar14)" (parenthesized_expression "(**(code **)(pcVar21 + 0x1df518))" ( (pointer_expression "**(code **)(pcVar21 + 0x1df518)" * (pointer_expression "*(code **)(pcVar21 + 0x1df518)" * (cast_expression "(code **)(pcVar21 + 0x1df518)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0x1df518)" ( (binary_expression "pcVar21 + 0x1df518" identifier + number_literal) ))))) )) (argument_list "(pppppppuVar9,iVar14)" ( identifier , identifier )))) ;) (expression_statement "iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(iVar15);" (assignment_expression "iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(iVar15)" identifier = (call_expression "(**(code **)(pcVar21 + 0x1dfaf8))(iVar15)" (parenthesized_expression "(**(code **)(pcVar21 + 0x1dfaf8))" ( (pointer_expression "**(code **)(pcVar21 + 0x1dfaf8)" * (pointer_expression "*(code **)(pcVar21 + 0x1dfaf8)" * (cast_expression "(code **)(pcVar21 + 0x1dfaf8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0x1dfaf8)" ( (binary_expression "pcVar21 + 0x1dfaf8" identifier + number_literal) ))))) )) (argument_list "(iVar15)" ( identifier )))) ;) (if_statement "if (((iVar10 == 4) || (iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(iVar15), iVar10 == 3)) &&\n       ((iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(pppppppuVar9), iVar10 == 4 ||\n        (iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(pppppppuVar9), iVar10 == 3)))) {\n      (**(code **)(pcVar21 + 0x1df780))(7);\n      ppppppuVar6 = pppppppuVar9[7];\n      if ((int)ppppppuVar6 < 0) {\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (extraout_v1_07 < (int)ppppppuVar6 + 0x3f >> 6) goto LAB_001c9d10;\nLAB_001c9c58:\n        bVar1 = (int)ppppppuVar6 < 0x80;\n      }\n      else {\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if ((int)ppppppuVar6 >> 6 <= extraout_v1_07) goto LAB_001c9c58;\nLAB_001c9d10:\n        (*pcVar23)(7);\n        bVar1 = extraout_v1_09 < 2;\n      }\n      iVar10 = 1;\n      if ((bool)(bVar1 ^ 1)) {\n        (**(code **)(pcVar21 + 0x1df780))(7);\n        ppppppuVar6 = pppppppuVar9[7];\n        if ((int)ppppppuVar6 < 0) {\n          ppppppuVar6 = (undefined4 ******)((int)ppppppuVar6 + 0x3f);\n        }\n        iVar10 = (int)ppppppuVar6 >> 6;\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (extraout_v1_10 < iVar10) {\nLAB_001c9ce8:\n          (*pcVar23)(7);\n          iVar10 = extraout_v1_08;\n        }\n        goto LAB_001c9b14;\n      }\n      iVar11 = *(int *)(pcVar21 + 0x1defe4);\n    }\n    else {\n      uVar36 = (**(code **)(pcVar21 + 0x1df780))(7);\n      if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (1 < (uint)uVar36) goto LAB_001c9b00;\n        uVar36 = (*pcVar23)(7);\n        if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c9afc;\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (1 < (uint)uVar36) goto LAB_001c9b00;\n        iVar10 = 1;\n      }\n      else {\nLAB_001c9afc:\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\nLAB_001c9b00:\n        uVar36 = (*pcVar23)(7);\n        if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n           (pcVar23 = *(code **)(pcVar21 + 0x1df780), (uint)uVar36 < 2)) goto LAB_001c9ce8;\n        iVar10 = 2;\n      }\nLAB_001c9b14:\n      iVar11 = *(int *)(pcVar21 + 0x1defe4);\n    }" if (parenthesized_expression "(((iVar10 == 4) || (iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(iVar15), iVar10 == 3)) &&\n       ((iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(pppppppuVar9), iVar10 == 4 ||\n        (iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(pppppppuVar9), iVar10 == 3))))" ( (binary_expression "((iVar10 == 4) || (iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(iVar15), iVar10 == 3)) &&\n       ((iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(pppppppuVar9), iVar10 == 4 ||\n        (iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(pppppppuVar9), iVar10 == 3)))" (parenthesized_expression "((iVar10 == 4) || (iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(iVar15), iVar10 == 3))" ( (binary_expression "(iVar10 == 4) || (iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(iVar15), iVar10 == 3)" (parenthesized_expression "(iVar10 == 4)" ( (binary_expression "iVar10 == 4" identifier == number_literal) )) || (parenthesized_expression "(iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(iVar15), iVar10 == 3)" ( (comma_expression "iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(iVar15), iVar10 == 3" (assignment_expression "iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(iVar15)" identifier = (call_expression "(**(code **)(pcVar21 + 0x1dfaf8))(iVar15)" (parenthesized_expression "(**(code **)(pcVar21 + 0x1dfaf8))" ( (pointer_expression "**(code **)(pcVar21 + 0x1dfaf8)" * (pointer_expression "*(code **)(pcVar21 + 0x1dfaf8)" * (cast_expression "(code **)(pcVar21 + 0x1dfaf8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0x1dfaf8)" ( (binary_expression "pcVar21 + 0x1dfaf8" identifier + number_literal) ))))) )) (argument_list "(iVar15)" ( identifier )))) , (binary_expression "iVar10 == 3" identifier == number_literal)) ))) )) && (parenthesized_expression "((iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(pppppppuVar9), iVar10 == 4 ||\n        (iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(pppppppuVar9), iVar10 == 3)))" ( (parenthesized_expression "(iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(pppppppuVar9), iVar10 == 4 ||\n        (iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(pppppppuVar9), iVar10 == 3))" ( (comma_expression "iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(pppppppuVar9), iVar10 == 4 ||\n        (iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(pppppppuVar9), iVar10 == 3)" (assignment_expression "iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(pppppppuVar9)" identifier = (call_expression "(**(code **)(pcVar21 + 0x1dfaf8))(pppppppuVar9)" (parenthesized_expression "(**(code **)(pcVar21 + 0x1dfaf8))" ( (pointer_expression "**(code **)(pcVar21 + 0x1dfaf8)" * (pointer_expression "*(code **)(pcVar21 + 0x1dfaf8)" * (cast_expression "(code **)(pcVar21 + 0x1dfaf8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0x1dfaf8)" ( (binary_expression "pcVar21 + 0x1dfaf8" identifier + number_literal) ))))) )) (argument_list "(pppppppuVar9)" ( identifier )))) , (binary_expression "iVar10 == 4 ||\n        (iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(pppppppuVar9), iVar10 == 3)" (binary_expression "iVar10 == 4" identifier == number_literal) || (parenthesized_expression "(iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(pppppppuVar9), iVar10 == 3)" ( (comma_expression "iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(pppppppuVar9), iVar10 == 3" (assignment_expression "iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(pppppppuVar9)" identifier = (call_expression "(**(code **)(pcVar21 + 0x1dfaf8))(pppppppuVar9)" (parenthesized_expression "(**(code **)(pcVar21 + 0x1dfaf8))" ( (pointer_expression "**(code **)(pcVar21 + 0x1dfaf8)" * (pointer_expression "*(code **)(pcVar21 + 0x1dfaf8)" * (cast_expression "(code **)(pcVar21 + 0x1dfaf8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0x1dfaf8)" ( (binary_expression "pcVar21 + 0x1dfaf8" identifier + number_literal) ))))) )) (argument_list "(pppppppuVar9)" ( identifier )))) , (binary_expression "iVar10 == 3" identifier == number_literal)) )))) )) ))) )) (compound_statement "{\n      (**(code **)(pcVar21 + 0x1df780))(7);\n      ppppppuVar6 = pppppppuVar9[7];\n      if ((int)ppppppuVar6 < 0) {\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (extraout_v1_07 < (int)ppppppuVar6 + 0x3f >> 6) goto LAB_001c9d10;\nLAB_001c9c58:\n        bVar1 = (int)ppppppuVar6 < 0x80;\n      }\n      else {\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if ((int)ppppppuVar6 >> 6 <= extraout_v1_07) goto LAB_001c9c58;\nLAB_001c9d10:\n        (*pcVar23)(7);\n        bVar1 = extraout_v1_09 < 2;\n      }\n      iVar10 = 1;\n      if ((bool)(bVar1 ^ 1)) {\n        (**(code **)(pcVar21 + 0x1df780))(7);\n        ppppppuVar6 = pppppppuVar9[7];\n        if ((int)ppppppuVar6 < 0) {\n          ppppppuVar6 = (undefined4 ******)((int)ppppppuVar6 + 0x3f);\n        }\n        iVar10 = (int)ppppppuVar6 >> 6;\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (extraout_v1_10 < iVar10) {\nLAB_001c9ce8:\n          (*pcVar23)(7);\n          iVar10 = extraout_v1_08;\n        }\n        goto LAB_001c9b14;\n      }\n      iVar11 = *(int *)(pcVar21 + 0x1defe4);\n    }" { (expression_statement "(**(code **)(pcVar21 + 0x1df780))(7);" (call_expression "(**(code **)(pcVar21 + 0x1df780))(7)" (parenthesized_expression "(**(code **)(pcVar21 + 0x1df780))" ( (pointer_expression "**(code **)(pcVar21 + 0x1df780)" * (pointer_expression "*(code **)(pcVar21 + 0x1df780)" * (cast_expression "(code **)(pcVar21 + 0x1df780)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0x1df780)" ( (binary_expression "pcVar21 + 0x1df780" identifier + number_literal) ))))) )) (argument_list "(7)" ( number_literal ))) ;) (expression_statement "ppppppuVar6 = pppppppuVar9[7];" (assignment_expression "ppppppuVar6 = pppppppuVar9[7]" identifier = (subscript_expression "pppppppuVar9[7]" identifier [ number_literal ])) ;) (if_statement "if ((int)ppppppuVar6 < 0) {\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (extraout_v1_07 < (int)ppppppuVar6 + 0x3f >> 6) goto LAB_001c9d10;\nLAB_001c9c58:\n        bVar1 = (int)ppppppuVar6 < 0x80;\n      }\n      else {\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if ((int)ppppppuVar6 >> 6 <= extraout_v1_07) goto LAB_001c9c58;\nLAB_001c9d10:\n        (*pcVar23)(7);\n        bVar1 = extraout_v1_09 < 2;\n      }" if (parenthesized_expression "((int)ppppppuVar6 < 0)" ( (binary_expression "(int)ppppppuVar6 < 0" (cast_expression "(int)ppppppuVar6" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (extraout_v1_07 < (int)ppppppuVar6 + 0x3f >> 6) goto LAB_001c9d10;\nLAB_001c9c58:\n        bVar1 = (int)ppppppuVar6 < 0x80;\n      }" { (expression_statement "pcVar23 = *(code **)(pcVar21 + 0x1df780);" (assignment_expression "pcVar23 = *(code **)(pcVar21 + 0x1df780)" identifier = (pointer_expression "*(code **)(pcVar21 + 0x1df780)" * (cast_expression "(code **)(pcVar21 + 0x1df780)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0x1df780)" ( (binary_expression "pcVar21 + 0x1df780" identifier + number_literal) ))))) ;) (if_statement "if (extraout_v1_07 < (int)ppppppuVar6 + 0x3f >> 6) goto LAB_001c9d10;" if (parenthesized_expression "(extraout_v1_07 < (int)ppppppuVar6 + 0x3f >> 6)" ( (binary_expression "extraout_v1_07 < (int)ppppppuVar6 + 0x3f >> 6" identifier < (binary_expression "(int)ppppppuVar6 + 0x3f >> 6" (binary_expression "(int)ppppppuVar6 + 0x3f" (cast_expression "(int)ppppppuVar6" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) >> number_literal)) )) (goto_statement "goto LAB_001c9d10;" goto statement_identifier ;)) (labeled_statement "LAB_001c9c58:\n        bVar1 = (int)ppppppuVar6 < 0x80;" statement_identifier : (expression_statement "bVar1 = (int)ppppppuVar6 < 0x80;" (assignment_expression "bVar1 = (int)ppppppuVar6 < 0x80" identifier = (binary_expression "(int)ppppppuVar6 < 0x80" (cast_expression "(int)ppppppuVar6" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal)) ;)) }) (else_clause "else {\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if ((int)ppppppuVar6 >> 6 <= extraout_v1_07) goto LAB_001c9c58;\nLAB_001c9d10:\n        (*pcVar23)(7);\n        bVar1 = extraout_v1_09 < 2;\n      }" else (compound_statement "{\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if ((int)ppppppuVar6 >> 6 <= extraout_v1_07) goto LAB_001c9c58;\nLAB_001c9d10:\n        (*pcVar23)(7);\n        bVar1 = extraout_v1_09 < 2;\n      }" { (expression_statement "pcVar23 = *(code **)(pcVar21 + 0x1df780);" (assignment_expression "pcVar23 = *(code **)(pcVar21 + 0x1df780)" identifier = (pointer_expression "*(code **)(pcVar21 + 0x1df780)" * (cast_expression "(code **)(pcVar21 + 0x1df780)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0x1df780)" ( (binary_expression "pcVar21 + 0x1df780" identifier + number_literal) ))))) ;) (if_statement "if ((int)ppppppuVar6 >> 6 <= extraout_v1_07) goto LAB_001c9c58;" if (parenthesized_expression "((int)ppppppuVar6 >> 6 <= extraout_v1_07)" ( (binary_expression "(int)ppppppuVar6 >> 6 <= extraout_v1_07" (binary_expression "(int)ppppppuVar6 >> 6" (cast_expression "(int)ppppppuVar6" ( (type_descriptor "int" primitive_type) ) identifier) >> number_literal) <= identifier) )) (goto_statement "goto LAB_001c9c58;" goto statement_identifier ;)) (labeled_statement "LAB_001c9d10:\n        (*pcVar23)(7);" statement_identifier : (expression_statement "(*pcVar23)(7);" (call_expression "(*pcVar23)(7)" (parenthesized_expression "(*pcVar23)" ( (pointer_expression "*pcVar23" * identifier) )) (argument_list "(7)" ( number_literal ))) ;)) (expression_statement "bVar1 = extraout_v1_09 < 2;" (assignment_expression "bVar1 = extraout_v1_09 < 2" identifier = (binary_expression "extraout_v1_09 < 2" identifier < number_literal)) ;) }))) (expression_statement "iVar10 = 1;" (assignment_expression "iVar10 = 1" identifier = number_literal) ;) (if_statement "if ((bool)(bVar1 ^ 1)) {\n        (**(code **)(pcVar21 + 0x1df780))(7);\n        ppppppuVar6 = pppppppuVar9[7];\n        if ((int)ppppppuVar6 < 0) {\n          ppppppuVar6 = (undefined4 ******)((int)ppppppuVar6 + 0x3f);\n        }\n        iVar10 = (int)ppppppuVar6 >> 6;\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (extraout_v1_10 < iVar10) {\nLAB_001c9ce8:\n          (*pcVar23)(7);\n          iVar10 = extraout_v1_08;\n        }\n        goto LAB_001c9b14;\n      }" if (parenthesized_expression "((bool)(bVar1 ^ 1))" ( (cast_expression "(bool)(bVar1 ^ 1)" ( (type_descriptor "bool" primitive_type) ) (parenthesized_expression "(bVar1 ^ 1)" ( (binary_expression "bVar1 ^ 1" identifier ^ number_literal) ))) )) (compound_statement "{\n        (**(code **)(pcVar21 + 0x1df780))(7);\n        ppppppuVar6 = pppppppuVar9[7];\n        if ((int)ppppppuVar6 < 0) {\n          ppppppuVar6 = (undefined4 ******)((int)ppppppuVar6 + 0x3f);\n        }\n        iVar10 = (int)ppppppuVar6 >> 6;\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (extraout_v1_10 < iVar10) {\nLAB_001c9ce8:\n          (*pcVar23)(7);\n          iVar10 = extraout_v1_08;\n        }\n        goto LAB_001c9b14;\n      }" { (expression_statement "(**(code **)(pcVar21 + 0x1df780))(7);" (call_expression "(**(code **)(pcVar21 + 0x1df780))(7)" (parenthesized_expression "(**(code **)(pcVar21 + 0x1df780))" ( (pointer_expression "**(code **)(pcVar21 + 0x1df780)" * (pointer_expression "*(code **)(pcVar21 + 0x1df780)" * (cast_expression "(code **)(pcVar21 + 0x1df780)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0x1df780)" ( (binary_expression "pcVar21 + 0x1df780" identifier + number_literal) ))))) )) (argument_list "(7)" ( number_literal ))) ;) (expression_statement "ppppppuVar6 = pppppppuVar9[7];" (assignment_expression "ppppppuVar6 = pppppppuVar9[7]" identifier = (subscript_expression "pppppppuVar9[7]" identifier [ number_literal ])) ;) (if_statement "if ((int)ppppppuVar6 < 0) {\n          ppppppuVar6 = (undefined4 ******)((int)ppppppuVar6 + 0x3f);\n        }" if (parenthesized_expression "((int)ppppppuVar6 < 0)" ( (binary_expression "(int)ppppppuVar6 < 0" (cast_expression "(int)ppppppuVar6" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n          ppppppuVar6 = (undefined4 ******)((int)ppppppuVar6 + 0x3f);\n        }" { (expression_statement "ppppppuVar6 = (undefined4 ******)((int)ppppppuVar6 + 0x3f);" (assignment_expression "ppppppuVar6 = (undefined4 ******)((int)ppppppuVar6 + 0x3f)" identifier = (cast_expression "(undefined4 ******)((int)ppppppuVar6 + 0x3f)" ( (type_descriptor "undefined4 ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (parenthesized_expression "((int)ppppppuVar6 + 0x3f)" ( (binary_expression "(int)ppppppuVar6 + 0x3f" (cast_expression "(int)ppppppuVar6" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) })) (expression_statement "iVar10 = (int)ppppppuVar6 >> 6;" (assignment_expression "iVar10 = (int)ppppppuVar6 >> 6" identifier = (binary_expression "(int)ppppppuVar6 >> 6" (cast_expression "(int)ppppppuVar6" ( (type_descriptor "int" primitive_type) ) identifier) >> number_literal)) ;) (expression_statement "pcVar23 = *(code **)(pcVar21 + 0x1df780);" (assignment_expression "pcVar23 = *(code **)(pcVar21 + 0x1df780)" identifier = (pointer_expression "*(code **)(pcVar21 + 0x1df780)" * (cast_expression "(code **)(pcVar21 + 0x1df780)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0x1df780)" ( (binary_expression "pcVar21 + 0x1df780" identifier + number_literal) ))))) ;) (if_statement "if (extraout_v1_10 < iVar10) {\nLAB_001c9ce8:\n          (*pcVar23)(7);\n          iVar10 = extraout_v1_08;\n        }" if (parenthesized_expression "(extraout_v1_10 < iVar10)" ( (binary_expression "extraout_v1_10 < iVar10" identifier < identifier) )) (compound_statement "{\nLAB_001c9ce8:\n          (*pcVar23)(7);\n          iVar10 = extraout_v1_08;\n        }" { (labeled_statement "LAB_001c9ce8:\n          (*pcVar23)(7);" statement_identifier : (expression_statement "(*pcVar23)(7);" (call_expression "(*pcVar23)(7)" (parenthesized_expression "(*pcVar23)" ( (pointer_expression "*pcVar23" * identifier) )) (argument_list "(7)" ( number_literal ))) ;)) (expression_statement "iVar10 = extraout_v1_08;" (assignment_expression "iVar10 = extraout_v1_08" identifier = identifier) ;) })) (goto_statement "goto LAB_001c9b14;" goto statement_identifier ;) })) (expression_statement "iVar11 = *(int *)(pcVar21 + 0x1defe4);" (assignment_expression "iVar11 = *(int *)(pcVar21 + 0x1defe4)" identifier = (pointer_expression "*(int *)(pcVar21 + 0x1defe4)" * (cast_expression "(int *)(pcVar21 + 0x1defe4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0x1defe4)" ( (binary_expression "pcVar21 + 0x1defe4" identifier + number_literal) ))))) ;) }) (else_clause "else {\n      uVar36 = (**(code **)(pcVar21 + 0x1df780))(7);\n      if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (1 < (uint)uVar36) goto LAB_001c9b00;\n        uVar36 = (*pcVar23)(7);\n        if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c9afc;\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (1 < (uint)uVar36) goto LAB_001c9b00;\n        iVar10 = 1;\n      }\n      else {\nLAB_001c9afc:\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\nLAB_001c9b00:\n        uVar36 = (*pcVar23)(7);\n        if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n           (pcVar23 = *(code **)(pcVar21 + 0x1df780), (uint)uVar36 < 2)) goto LAB_001c9ce8;\n        iVar10 = 2;\n      }\nLAB_001c9b14:\n      iVar11 = *(int *)(pcVar21 + 0x1defe4);\n    }" else (compound_statement "{\n      uVar36 = (**(code **)(pcVar21 + 0x1df780))(7);\n      if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (1 < (uint)uVar36) goto LAB_001c9b00;\n        uVar36 = (*pcVar23)(7);\n        if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c9afc;\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (1 < (uint)uVar36) goto LAB_001c9b00;\n        iVar10 = 1;\n      }\n      else {\nLAB_001c9afc:\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\nLAB_001c9b00:\n        uVar36 = (*pcVar23)(7);\n        if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n           (pcVar23 = *(code **)(pcVar21 + 0x1df780), (uint)uVar36 < 2)) goto LAB_001c9ce8;\n        iVar10 = 2;\n      }\nLAB_001c9b14:\n      iVar11 = *(int *)(pcVar21 + 0x1defe4);\n    }" { (expression_statement "uVar36 = (**(code **)(pcVar21 + 0x1df780))(7);" (assignment_expression "uVar36 = (**(code **)(pcVar21 + 0x1df780))(7)" identifier = (call_expression "(**(code **)(pcVar21 + 0x1df780))(7)" (parenthesized_expression "(**(code **)(pcVar21 + 0x1df780))" ( (pointer_expression "**(code **)(pcVar21 + 0x1df780)" * (pointer_expression "*(code **)(pcVar21 + 0x1df780)" * (cast_expression "(code **)(pcVar21 + 0x1df780)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0x1df780)" ( (binary_expression "pcVar21 + 0x1df780" identifier + number_literal) ))))) )) (argument_list "(7)" ( number_literal )))) ;) (if_statement "if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (1 < (uint)uVar36) goto LAB_001c9b00;\n        uVar36 = (*pcVar23)(7);\n        if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c9afc;\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (1 < (uint)uVar36) goto LAB_001c9b00;\n        iVar10 = 1;\n      }\n      else {\nLAB_001c9afc:\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\nLAB_001c9b00:\n        uVar36 = (*pcVar23)(7);\n        if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n           (pcVar23 = *(code **)(pcVar21 + 0x1df780), (uint)uVar36 < 2)) goto LAB_001c9ce8;\n        iVar10 = 2;\n      }" if (parenthesized_expression "((int)((ulonglong)uVar36 >> 0x20) == 0)" ( (binary_expression "(int)((ulonglong)uVar36 >> 0x20) == 0" (cast_expression "(int)((ulonglong)uVar36 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)uVar36 >> 0x20)" ( (binary_expression "(ulonglong)uVar36 >> 0x20" (cast_expression "(ulonglong)uVar36" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) ))) == number_literal) )) (compound_statement "{\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (1 < (uint)uVar36) goto LAB_001c9b00;\n        uVar36 = (*pcVar23)(7);\n        if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c9afc;\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (1 < (uint)uVar36) goto LAB_001c9b00;\n        iVar10 = 1;\n      }" { (expression_statement "pcVar23 = *(code **)(pcVar21 + 0x1df780);" (assignment_expression "pcVar23 = *(code **)(pcVar21 + 0x1df780)" identifier = (pointer_expression "*(code **)(pcVar21 + 0x1df780)" * (cast_expression "(code **)(pcVar21 + 0x1df780)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0x1df780)" ( (binary_expression "pcVar21 + 0x1df780" identifier + number_literal) ))))) ;) (if_statement "if (1 < (uint)uVar36) goto LAB_001c9b00;" if (parenthesized_expression "(1 < (uint)uVar36)" ( (binary_expression "1 < (uint)uVar36" number_literal < (cast_expression "(uint)uVar36" ( (type_descriptor "uint" type_identifier) ) identifier)) )) (goto_statement "goto LAB_001c9b00;" goto statement_identifier ;)) (expression_statement "uVar36 = (*pcVar23)(7);" (assignment_expression "uVar36 = (*pcVar23)(7)" identifier = (call_expression "(*pcVar23)(7)" (parenthesized_expression "(*pcVar23)" ( (pointer_expression "*pcVar23" * identifier) )) (argument_list "(7)" ( number_literal )))) ;) (if_statement "if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c9afc;" if (parenthesized_expression "((int)((ulonglong)uVar36 >> 0x20) != 0)" ( (binary_expression "(int)((ulonglong)uVar36 >> 0x20) != 0" (cast_expression "(int)((ulonglong)uVar36 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)uVar36 >> 0x20)" ( (binary_expression "(ulonglong)uVar36 >> 0x20" (cast_expression "(ulonglong)uVar36" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) ))) != number_literal) )) (goto_statement "goto LAB_001c9afc;" goto statement_identifier ;)) (expression_statement "pcVar23 = *(code **)(pcVar21 + 0x1df780);" (assignment_expression "pcVar23 = *(code **)(pcVar21 + 0x1df780)" identifier = (pointer_expression "*(code **)(pcVar21 + 0x1df780)" * (cast_expression "(code **)(pcVar21 + 0x1df780)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0x1df780)" ( (binary_expression "pcVar21 + 0x1df780" identifier + number_literal) ))))) ;) (if_statement "if (1 < (uint)uVar36) goto LAB_001c9b00;" if (parenthesized_expression "(1 < (uint)uVar36)" ( (binary_expression "1 < (uint)uVar36" number_literal < (cast_expression "(uint)uVar36" ( (type_descriptor "uint" type_identifier) ) identifier)) )) (goto_statement "goto LAB_001c9b00;" goto statement_identifier ;)) (expression_statement "iVar10 = 1;" (assignment_expression "iVar10 = 1" identifier = number_literal) ;) }) (else_clause "else {\nLAB_001c9afc:\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\nLAB_001c9b00:\n        uVar36 = (*pcVar23)(7);\n        if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n           (pcVar23 = *(code **)(pcVar21 + 0x1df780), (uint)uVar36 < 2)) goto LAB_001c9ce8;\n        iVar10 = 2;\n      }" else (compound_statement "{\nLAB_001c9afc:\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\nLAB_001c9b00:\n        uVar36 = (*pcVar23)(7);\n        if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n           (pcVar23 = *(code **)(pcVar21 + 0x1df780), (uint)uVar36 < 2)) goto LAB_001c9ce8;\n        iVar10 = 2;\n      }" { (labeled_statement "LAB_001c9afc:\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);" statement_identifier : (expression_statement "pcVar23 = *(code **)(pcVar21 + 0x1df780);" (assignment_expression "pcVar23 = *(code **)(pcVar21 + 0x1df780)" identifier = (pointer_expression "*(code **)(pcVar21 + 0x1df780)" * (cast_expression "(code **)(pcVar21 + 0x1df780)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0x1df780)" ( (binary_expression "pcVar21 + 0x1df780" identifier + number_literal) ))))) ;)) (labeled_statement "LAB_001c9b00:\n        uVar36 = (*pcVar23)(7);" statement_identifier : (expression_statement "uVar36 = (*pcVar23)(7);" (assignment_expression "uVar36 = (*pcVar23)(7)" identifier = (call_expression "(*pcVar23)(7)" (parenthesized_expression "(*pcVar23)" ( (pointer_expression "*pcVar23" * identifier) )) (argument_list "(7)" ( number_literal )))) ;)) (if_statement "if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n           (pcVar23 = *(code **)(pcVar21 + 0x1df780), (uint)uVar36 < 2)) goto LAB_001c9ce8;" if (parenthesized_expression "(((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n           (pcVar23 = *(code **)(pcVar21 + 0x1df780), (uint)uVar36 < 2))" ( (binary_expression "((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n           (pcVar23 = *(code **)(pcVar21 + 0x1df780), (uint)uVar36 < 2)" (parenthesized_expression "((int)((ulonglong)uVar36 >> 0x20) == 0)" ( (binary_expression "(int)((ulonglong)uVar36 >> 0x20) == 0" (cast_expression "(int)((ulonglong)uVar36 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)uVar36 >> 0x20)" ( (binary_expression "(ulonglong)uVar36 >> 0x20" (cast_expression "(ulonglong)uVar36" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) ))) == number_literal) )) && (parenthesized_expression "(pcVar23 = *(code **)(pcVar21 + 0x1df780), (uint)uVar36 < 2)" ( (comma_expression "pcVar23 = *(code **)(pcVar21 + 0x1df780), (uint)uVar36 < 2" (assignment_expression "pcVar23 = *(code **)(pcVar21 + 0x1df780)" identifier = (pointer_expression "*(code **)(pcVar21 + 0x1df780)" * (cast_expression "(code **)(pcVar21 + 0x1df780)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0x1df780)" ( (binary_expression "pcVar21 + 0x1df780" identifier + number_literal) ))))) , (binary_expression "(uint)uVar36 < 2" (cast_expression "(uint)uVar36" ( (type_descriptor "uint" type_identifier) ) identifier) < number_literal)) ))) )) (goto_statement "goto LAB_001c9ce8;" goto statement_identifier ;)) (expression_statement "iVar10 = 2;" (assignment_expression "iVar10 = 2" identifier = number_literal) ;) }))) (labeled_statement "LAB_001c9b14:\n      iVar11 = *(int *)(pcVar21 + 0x1defe4);" statement_identifier : (expression_statement "iVar11 = *(int *)(pcVar21 + 0x1defe4);" (assignment_expression "iVar11 = *(int *)(pcVar21 + 0x1defe4)" identifier = (pointer_expression "*(int *)(pcVar21 + 0x1defe4)" * (cast_expression "(int *)(pcVar21 + 0x1defe4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0x1defe4)" ( (binary_expression "pcVar21 + 0x1defe4" identifier + number_literal) ))))) ;)) }))) (expression_statement "puStack_254 = &uStack_270;" (assignment_expression "puStack_254 = &uStack_270" identifier = (pointer_expression "&uStack_270" & identifier)) ;) (expression_statement "iStack_250 = 1;" (assignment_expression "iStack_250 = 1" identifier = number_literal) ;) (expression_statement "iStack_268 = iVar15;" (assignment_expression "iStack_268 = iVar15" identifier = identifier) ;) (expression_statement "iStack_264 = iVar14;" (assignment_expression "iStack_264 = iVar14" identifier = identifier) ;) (expression_statement "uStack_260 = uVar5;" (assignment_expression "uStack_260 = uVar5" identifier = identifier) ;) (expression_statement "uStack_25c = uVar4;" (assignment_expression "uStack_25c = uVar4" identifier = identifier) ;) (expression_statement "pppppppuStack_258 = pppppppuVar9;" (assignment_expression "pppppppuStack_258 = pppppppuVar9" identifier = identifier) ;) (expression_statement "(**(code **)(pcVar21 + 0x1df7dc))(iVar11 + 0x594c,&iStack_268,iVar10,0);" (call_expression "(**(code **)(pcVar21 + 0x1df7dc))(iVar11 + 0x594c,&iStack_268,iVar10,0)" (parenthesized_expression "(**(code **)(pcVar21 + 0x1df7dc))" ( (pointer_expression "**(code **)(pcVar21 + 0x1df7dc)" * (pointer_expression "*(code **)(pcVar21 + 0x1df7dc)" * (cast_expression "(code **)(pcVar21 + 0x1df7dc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0x1df7dc)" ( (binary_expression "pcVar21 + 0x1df7dc" identifier + number_literal) ))))) )) (argument_list "(iVar11 + 0x594c,&iStack_268,iVar10,0)" ( (binary_expression "iVar11 + 0x594c" identifier + number_literal) , (pointer_expression "&iStack_268" & identifier) , identifier , number_literal ))) ;) (expression_statement "iVar14 = iStack_250;" (assignment_expression "iVar14 = iStack_250" identifier = identifier) ;) (expression_statement "(**(code **)(pcVar21 + 0x1df538))(uVar5);" (call_expression "(**(code **)(pcVar21 + 0x1df538))(uVar5)" (parenthesized_expression "(**(code **)(pcVar21 + 0x1df538))" ( (pointer_expression "**(code **)(pcVar21 + 0x1df538)" * (pointer_expression "*(code **)(pcVar21 + 0x1df538)" * (cast_expression "(code **)(pcVar21 + 0x1df538)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0x1df538)" ( (binary_expression "pcVar21 + 0x1df538" identifier + number_literal) ))))) )) (argument_list "(uVar5)" ( identifier ))) ;) (expression_statement "(**(code **)(pcVar21 + 0x1df538))(uVar4);" (call_expression "(**(code **)(pcVar21 + 0x1df538))(uVar4)" (parenthesized_expression "(**(code **)(pcVar21 + 0x1df538))" ( (pointer_expression "**(code **)(pcVar21 + 0x1df538)" * (pointer_expression "*(code **)(pcVar21 + 0x1df538)" * (cast_expression "(code **)(pcVar21 + 0x1df538)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0x1df538)" ( (binary_expression "pcVar21 + 0x1df538" identifier + number_literal) ))))) )) (argument_list "(uVar4)" ( identifier ))) ;) (expression_statement "pppppppuVar9[0xa8] = *(undefined4 *******)(iVar15 + 0x2a0);" (assignment_expression "pppppppuVar9[0xa8] = *(undefined4 *******)(iVar15 + 0x2a0)" (subscript_expression "pppppppuVar9[0xa8]" identifier [ number_literal ]) = (pointer_expression "*(undefined4 *******)(iVar15 + 0x2a0)" * (cast_expression "(undefined4 *******)(iVar15 + 0x2a0)" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(iVar15 + 0x2a0)" ( (binary_expression "iVar15 + 0x2a0" identifier + number_literal) ))))) ;) (if_statement "if (ppppppuVar7 != (undefined4 ******)0x0) {\n      ppppppuVar19 = (undefined4 ******)\n                     ((int)ppppppuVar7 + (-(int)ppppppuVar19 - (int)pppppppuVar9[6]));\n    }" if (parenthesized_expression "(ppppppuVar7 != (undefined4 ******)0x0)" ( (binary_expression "ppppppuVar7 != (undefined4 ******)0x0" identifier != (cast_expression "(undefined4 ******)0x0" ( (type_descriptor "undefined4 ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n      ppppppuVar19 = (undefined4 ******)\n                     ((int)ppppppuVar7 + (-(int)ppppppuVar19 - (int)pppppppuVar9[6]));\n    }" { (expression_statement "ppppppuVar19 = (undefined4 ******)\n                     ((int)ppppppuVar7 + (-(int)ppppppuVar19 - (int)pppppppuVar9[6]));" (assignment_expression "ppppppuVar19 = (undefined4 ******)\n                     ((int)ppppppuVar7 + (-(int)ppppppuVar19 - (int)pppppppuVar9[6]))" identifier = (cast_expression "(undefined4 ******)\n                     ((int)ppppppuVar7 + (-(int)ppppppuVar19 - (int)pppppppuVar9[6]))" ( (type_descriptor "undefined4 ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (parenthesized_expression "((int)ppppppuVar7 + (-(int)ppppppuVar19 - (int)pppppppuVar9[6]))" ( (binary_expression "(int)ppppppuVar7 + (-(int)ppppppuVar19 - (int)pppppppuVar9[6])" (cast_expression "(int)ppppppuVar7" ( (type_descriptor "int" primitive_type) ) identifier) + (parenthesized_expression "(-(int)ppppppuVar19 - (int)pppppppuVar9[6])" ( (binary_expression "-(int)ppppppuVar19 - (int)pppppppuVar9[6]" (unary_expression "-(int)ppppppuVar19" - (cast_expression "(int)ppppppuVar19" ( (type_descriptor "int" primitive_type) ) identifier)) - (cast_expression "(int)pppppppuVar9[6]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "pppppppuVar9[6]" identifier [ number_literal ]))) ))) )))) ;) })) (expression_statement "pppppppuVar9[0x8a] = ppppppuVar7;" (assignment_expression "pppppppuVar9[0x8a] = ppppppuVar7" (subscript_expression "pppppppuVar9[0x8a]" identifier [ number_literal ]) = identifier) ;) (expression_statement "pppppppuVar9[0x8b] = ppppppuVar22;" (assignment_expression "pppppppuVar9[0x8b] = ppppppuVar22" (subscript_expression "pppppppuVar9[0x8b]" identifier [ number_literal ]) = identifier) ;) (expression_statement "pppppppuVar9[0x8c] = ppppppuVar19;" (assignment_expression "pppppppuVar9[0x8c] = ppppppuVar19" (subscript_expression "pppppppuVar9[0x8c]" identifier [ number_literal ]) = identifier) ;) (expression_statement "pppppppuVar9[0x8d] = ppppppuVar2;" (assignment_expression "pppppppuVar9[0x8d] = ppppppuVar2" (subscript_expression "pppppppuVar9[0x8d]" identifier [ number_literal ]) = identifier) ;) (if_statement "if (iVar14 == 0) {\n      pppppppuVar9 = (undefined4 *******)(**(code **)(pcVar21 + 0x1df590))(pppppppuVar9);\n    }" if (parenthesized_expression "(iVar14 == 0)" ( (binary_expression "iVar14 == 0" identifier == number_literal) )) (compound_statement "{\n      pppppppuVar9 = (undefined4 *******)(**(code **)(pcVar21 + 0x1df590))(pppppppuVar9);\n    }" { (expression_statement "pppppppuVar9 = (undefined4 *******)(**(code **)(pcVar21 + 0x1df590))(pppppppuVar9);" (assignment_expression "pppppppuVar9 = (undefined4 *******)(**(code **)(pcVar21 + 0x1df590))(pppppppuVar9)" identifier = (cast_expression "(undefined4 *******)(**(code **)(pcVar21 + 0x1df590))(pppppppuVar9)" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(**(code **)(pcVar21 + 0x1df590))(pppppppuVar9)" (parenthesized_expression "(**(code **)(pcVar21 + 0x1df590))" ( (pointer_expression "**(code **)(pcVar21 + 0x1df590)" * (pointer_expression "*(code **)(pcVar21 + 0x1df590)" * (cast_expression "(code **)(pcVar21 + 0x1df590)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0x1df590)" ( (binary_expression "pcVar21 + 0x1df590" identifier + number_literal) ))))) )) (argument_list "(pppppppuVar9)" ( identifier ))))) ;) })) })) (if_statement "if (iStack_24c == *piVar17) {\n    return pppppppuVar9;\n  }" if (parenthesized_expression "(iStack_24c == *piVar17)" ( (binary_expression "iStack_24c == *piVar17" identifier == (pointer_expression "*piVar17" * identifier)) )) (compound_statement "{\n    return pppppppuVar9;\n  }" { (return_statement "return pppppppuVar9;" return identifier ;) })) (expression_statement "(**(code **)(pcVar21 + 0x1df6a8))();" (call_expression "(**(code **)(pcVar21 + 0x1df6a8))()" (parenthesized_expression "(**(code **)(pcVar21 + 0x1df6a8))" ( (pointer_expression "**(code **)(pcVar21 + 0x1df6a8)" * (pointer_expression "*(code **)(pcVar21 + 0x1df6a8)" * (cast_expression "(code **)(pcVar21 + 0x1df6a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0x1df6a8)" ( (binary_expression "pcVar21 + 0x1df6a8" identifier + number_literal) ))))) )) (argument_list "()" ( ))) ;) (labeled_statement "LAB_001c9db0:\n  pppppppuVar9 = (undefined4 *******)\n                 (**(code **)(pcVar21 + 0x1dfc4c))\n                           (*(int *)(pcVar21 + 0x1def24) + 0x294c,\n                            *(int *)(pcVar21 + 0x1def30) + -0x288c,0x548,\n                            *(int *)(pcVar21 + 0x1def30) + -0x26f8);" statement_identifier : (expression_statement "pppppppuVar9 = (undefined4 *******)\n                 (**(code **)(pcVar21 + 0x1dfc4c))\n                           (*(int *)(pcVar21 + 0x1def24) + 0x294c,\n                            *(int *)(pcVar21 + 0x1def30) + -0x288c,0x548,\n                            *(int *)(pcVar21 + 0x1def30) + -0x26f8);" (assignment_expression "pppppppuVar9 = (undefined4 *******)\n                 (**(code **)(pcVar21 + 0x1dfc4c))\n                           (*(int *)(pcVar21 + 0x1def24) + 0x294c,\n                            *(int *)(pcVar21 + 0x1def30) + -0x288c,0x548,\n                            *(int *)(pcVar21 + 0x1def30) + -0x26f8)" identifier = (cast_expression "(undefined4 *******)\n                 (**(code **)(pcVar21 + 0x1dfc4c))\n                           (*(int *)(pcVar21 + 0x1def24) + 0x294c,\n                            *(int *)(pcVar21 + 0x1def30) + -0x288c,0x548,\n                            *(int *)(pcVar21 + 0x1def30) + -0x26f8)" ( (type_descriptor "undefined4 *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(**(code **)(pcVar21 + 0x1dfc4c))\n                           (*(int *)(pcVar21 + 0x1def24) + 0x294c,\n                            *(int *)(pcVar21 + 0x1def30) + -0x288c,0x548,\n                            *(int *)(pcVar21 + 0x1def30) + -0x26f8)" (parenthesized_expression "(**(code **)(pcVar21 + 0x1dfc4c))" ( (pointer_expression "**(code **)(pcVar21 + 0x1dfc4c)" * (pointer_expression "*(code **)(pcVar21 + 0x1dfc4c)" * (cast_expression "(code **)(pcVar21 + 0x1dfc4c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0x1dfc4c)" ( (binary_expression "pcVar21 + 0x1dfc4c" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar21 + 0x1def24) + 0x294c,\n                            *(int *)(pcVar21 + 0x1def30) + -0x288c,0x548,\n                            *(int *)(pcVar21 + 0x1def30) + -0x26f8)" ( (binary_expression "*(int *)(pcVar21 + 0x1def24) + 0x294c" (pointer_expression "*(int *)(pcVar21 + 0x1def24)" * (cast_expression "(int *)(pcVar21 + 0x1def24)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0x1def24)" ( (binary_expression "pcVar21 + 0x1def24" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar21 + 0x1def30) + -0x288c" (pointer_expression "*(int *)(pcVar21 + 0x1def30)" * (cast_expression "(int *)(pcVar21 + 0x1def30)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0x1def30)" ( (binary_expression "pcVar21 + 0x1def30" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar21 + 0x1def30) + -0x26f8" (pointer_expression "*(int *)(pcVar21 + 0x1def30)" * (cast_expression "(int *)(pcVar21 + 0x1def30)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0x1def30)" ( (binary_expression "pcVar21 + 0x1def30" identifier + number_literal) )))) + number_literal) ))))) ;)) (return_statement "return pppppppuVar9;" return identifier ;) })))
(translation_unit (function_definition TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))))) , (parameter_declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))))) , (parameter_declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) )))))))))) (compound_statement { (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE IDENT ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = IDENT) ;)) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( (binary_expression IDENT + LIT) , (binary_expression IDENT + LIT) , LIT , (binary_expression IDENT + LIT) ))) ;) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) LIT)) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( LIT , (binary_expression IDENT + LIT) , (binary_expression IDENT + LIT) , LIT ))) ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT , IDENT , (pointer_expression & IDENT) , IDENT ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) << LIT) < LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (cast_expression ( (type_descriptor TYPE) ) IDENT))) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) < LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))))) ;) })) }))) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & LIT) )) != LIT) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = IDENT) ;)) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) < LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (unary_expression - (cast_expression ( (type_descriptor TYPE) ) IDENT)))) ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) - (cast_expression ( (type_descriptor TYPE) ) IDENT)) )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) < LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (unary_expression - (cast_expression ( (type_descriptor TYPE) ) IDENT)))) ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) - (cast_expression ( (type_descriptor TYPE) ) IDENT)) )))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (cast_expression ( (type_descriptor TYPE) ) IDENT))) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) < LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & LIT) )) == LIT) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = IDENT) ;)) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) < LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (unary_expression - (cast_expression ( (type_descriptor TYPE) ) IDENT)))) ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ]))) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) < LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) - (cast_expression ( (type_descriptor TYPE) ) IDENT)) )))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + (cast_expression ( (type_descriptor TYPE) ) IDENT)) )))) ;) }))) }))) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & LIT) )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (cast_expression ( (type_descriptor TYPE) ) IDENT))) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) < LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))))) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT / IDENT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (cast_expression ( (type_descriptor TYPE) ) IDENT))) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) < LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))))) ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT <= (binary_expression IDENT / IDENT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT / IDENT)) ;) })) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression LIT < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) LIT)) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = IDENT) ;)) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) < LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT - (cast_expression ( (type_descriptor TYPE) ) (cast_expression ( (type_descriptor TYPE) ) IDENT)))) ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT - IDENT) < (binary_expression IDENT - IDENT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) ))))) )) (goto_statement goto statement_identifier ;)) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT < (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) ))))) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = LIT) ;)) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) ;) }))) (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) }))) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;)) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) < LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (cast_expression ( (type_descriptor TYPE) ) IDENT))) ;) }))) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT - IDENT) < (binary_expression IDENT - IDENT)) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) <= IDENT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT <= (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) ))))) )) (goto_statement goto statement_identifier ;)) (goto_statement goto statement_identifier ;) })) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) <= IDENT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) < IDENT) )) (goto_statement goto statement_identifier ;)) (goto_statement goto statement_identifier ;) })))) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = LIT) ;)) (labeled_statement statement_identifier : (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression IDENT - IDENT) )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) + IDENT) )))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression LIT < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) ))))) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) < LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT - (cast_expression ( (type_descriptor TYPE) ) (cast_expression ( (type_descriptor TYPE) ) IDENT)))) ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT - IDENT) < (binary_expression IDENT - IDENT)) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) <= IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT <= (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) ))))) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = LIT) ;)) (goto_statement goto statement_identifier ;) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;)) (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) < LIT) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (cast_expression ( (type_descriptor TYPE) ) IDENT))) ;)) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT < (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) ))))) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) < IDENT) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT ))))) ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;)) (if_statement if (parenthesized_expression ( (binary_expression LIT < (cast_expression ( (type_descriptor TYPE) ) IDENT)) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = LIT) ;)) }))) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT - IDENT) < (binary_expression IDENT - IDENT)) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT < (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + 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 (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) < IDENT) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT ))))) ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT < (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + 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 (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) < IDENT) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT ))))) ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) }))) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression LIT < (cast_expression ( (type_descriptor TYPE) ) IDENT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT - (cast_expression ( (type_descriptor TYPE) ) (cast_expression ( (type_descriptor TYPE) ) IDENT)))) ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT - IDENT) < (binary_expression IDENT - IDENT)) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT <= IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT <= (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) ))))) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = LIT) ;)) (goto_statement goto statement_identifier ;) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;)) (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) < LIT) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = LIT) ;)) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT ))))) ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;)) (if_statement if (parenthesized_expression ( (binary_expression LIT < (cast_expression ( (type_descriptor TYPE) ) IDENT)) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (cast_expression ( (type_descriptor TYPE) ) IDENT))) ;)) }))) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT - IDENT) < (binary_expression IDENT - IDENT)) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (goto_statement goto statement_identifier ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT <= IDENT) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = LIT) ;)) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression IDENT <= IDENT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT <= IDENT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = LIT) ;) }) (else_clause else (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression IDENT - IDENT) )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) + IDENT) )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT , IDENT , IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( (pointer_expression & IDENT) , IDENT ))) ;) })) }) while (parenthesized_expression ( (binary_expression IDENT < IDENT) )) ;) })) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT <= IDENT) )) (break_statement break ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) LIT)) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = IDENT) ;)) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression LIT < (cast_expression ( (type_descriptor TYPE) ) IDENT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT - (cast_expression ( (type_descriptor TYPE) ) (cast_expression ( (type_descriptor TYPE) ) IDENT)))) ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT - IDENT) < (binary_expression IDENT - IDENT)) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT < (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) ))))) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) < IDENT) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT ))))) ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;)) (if_statement if (parenthesized_expression ( (binary_expression LIT < (cast_expression ( (type_descriptor TYPE) ) IDENT)) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (cast_expression ( (type_descriptor TYPE) ) IDENT))) ;)) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT < (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) ))))) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = LIT) ;)) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT <= (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) ))))) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = LIT) ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) < LIT) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = LIT) ;)) }))) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT - IDENT) < (binary_expression IDENT - IDENT)) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) <= IDENT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) < IDENT) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = LIT) ;)) }) (else_clause else (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT ))))) ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) }))) (goto_statement goto statement_identifier ;) })) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (goto_statement goto statement_identifier ;)) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) < IDENT) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT ))))) ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) }) while (parenthesized_expression ( BOOL )) ;)) })) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) && (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) LIT)) ))) )) || (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & LIT) )) != LIT) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT , (pointer_expression & IDENT) , IDENT ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & LIT) )))) , (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) LIT))) ))) )) (compound_statement { (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) - (cast_expression ( (type_descriptor TYPE) ) IDENT)) )))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) - (cast_expression ( (type_descriptor TYPE) ) IDENT)) )))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) })) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (subscript_expression IDENT [ LIT ]))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT < IDENT) )) || (parenthesized_expression ( (binary_expression IDENT < (subscript_expression IDENT [ LIT ])) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (subscript_expression IDENT [ LIT ])) != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (subscript_expression IDENT [ LIT ]))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) })) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression LIT < (cast_expression ( (type_descriptor TYPE) ) IDENT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) < LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (break_statement break ;)) }) (else_clause else (compound_statement { (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT , (pointer_expression & IDENT) , IDENT ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + (cast_expression ( (type_descriptor TYPE) ) IDENT)) )))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT , IDENT ))) ;) }) while (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) < (cast_expression ( (type_descriptor TYPE) ) IDENT)) )) ;) }))) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + (cast_expression ( (type_descriptor TYPE) ) IDENT)) )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }) while (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) < (cast_expression ( (type_descriptor TYPE) ) IDENT)) )) ;) })) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT , LIT , LIT , LIT ))))) ;) }))) }))) }))) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT == (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT))) )) (compound_statement { (return_statement return IDENT ;) }))) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (goto_statement goto statement_identifier ;) })))) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT)) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , IDENT ))) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;)) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;)) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , IDENT ))) ;) (labeled_statement statement_identifier : (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( ))) ;)) (expression_statement (assignment_expression IDENT = IDENT) ;) (labeled_statement statement_identifier : (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , (binary_expression IDENT + LIT) ))) ;)) (expression_statement (assignment_expression IDENT = IDENT) ;) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) LIT)) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 ( LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT ))) ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) LIT)) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))) ) LIT)) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (pointer_expression * IDENT) , (subscript_expression IDENT [ LIT ]) , LIT ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , IDENT ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , IDENT ))))) ;) (expression_statement (assignment_expression IDENT = (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 )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (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 )))) , (binary_expression IDENT == LIT)) ))) )) && (parenthesized_expression ( (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 )))) , (binary_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 )))) , (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 ( LIT ))) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) < LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) >> LIT)) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) < LIT)) ;)) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT) <= IDENT) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( LIT ))) ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT < LIT)) ;) }))) (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (cast_expression ( (type_descriptor TYPE) ) (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 ( LIT ))) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) < LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( LIT ))) ;)) (expression_statement (assignment_expression IDENT = IDENT) ;) })) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (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 )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT) ))) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression LIT < (cast_expression ( (type_descriptor TYPE) ) IDENT)) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( LIT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT) ))) != LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression LIT < (cast_expression ( (type_descriptor TYPE) ) IDENT)) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = LIT) ;) }) (else_clause else (compound_statement { (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) ))))) ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( LIT )))) ;)) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT) ))) == LIT) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) , (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) < LIT)) ))) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = LIT) ;) }))) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;)) }))) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression IDENT + LIT) , (pointer_expression & IDENT) , IDENT , LIT ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (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 ))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (subscript_expression IDENT [ LIT ])) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))))) ;) })) })) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (pointer_expression * IDENT)) )) (compound_statement { (return_statement return IDENT ;) })) (goto_statement goto statement_identifier ;) })) (goto_statement goto statement_identifier ;) })))) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) 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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT)) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , IDENT ))) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;)) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , IDENT ))) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;)) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (labeled_statement statement_identifier : (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , (binary_expression IDENT + LIT) ))) ;)) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) LIT)) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 ( LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT ))) ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (goto_statement goto statement_identifier ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) LIT)) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (pointer_expression * IDENT) , (subscript_expression IDENT [ LIT ]) , LIT ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) 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 ( 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 ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (unary_expression - (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ]))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) (unary_expression - (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ]))))) ;) (expression_statement (assignment_expression IDENT = 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 ( IDENT , IDENT , (subscript_expression IDENT [ LIT ]) , LIT )))) ;) (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 ( IDENT , (subscript_expression IDENT [ LIT ]) , (subscript_expression IDENT [ LIT ]) , IDENT ))) ;) })) }))) })) (return_statement return IDENT ;) })) (goto_statement goto statement_identifier ;) })) (goto_statement goto statement_identifier ;) })))) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , IDENT , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (labeled_statement statement_identifier : (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))) ;)) (labeled_statement statement_identifier : (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( ))) ;)) (expression_statement (assignment_expression IDENT = IDENT) ;) (labeled_statement statement_identifier : (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))) ;)) (expression_statement (assignment_expression IDENT = IDENT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) LIT)) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 ( LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT ))) ;) })) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (goto_statement goto statement_identifier ;)) (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (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 , LIT , LIT ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , IDENT ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , IDENT ))))) ;) (expression_statement (assignment_expression IDENT = (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 )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (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 )))) , (binary_expression IDENT == LIT)) ))) )) && (parenthesized_expression ( (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 )))) , (binary_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 )))) , (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 ( LIT ))) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) < LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) >> LIT)) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) < LIT)) ;)) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT) <= IDENT) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( LIT ))) ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT < LIT)) ;) }))) (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (cast_expression ( (type_descriptor TYPE) ) (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 ( LIT ))) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) < LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( LIT ))) ;)) (expression_statement (assignment_expression IDENT = IDENT) ;) })) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (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 )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT) ))) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression LIT < (cast_expression ( (type_descriptor TYPE) ) IDENT)) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( LIT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT) ))) != LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression LIT < (cast_expression ( (type_descriptor TYPE) ) IDENT)) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = LIT) ;) }) (else_clause else (compound_statement { (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) ))))) ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( LIT )))) ;)) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT) ))) == LIT) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) , (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) < LIT)) ))) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = LIT) ;) }))) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;)) }))) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (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) , (pointer_expression & IDENT) , IDENT , LIT ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (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 ))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (subscript_expression IDENT [ LIT ])) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + (parenthesized_expression ( (binary_expression (unary_expression - (cast_expression ( (type_descriptor TYPE) ) IDENT)) - (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ]))) ))) )))) ;) })) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))))) ;) })) })) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (pointer_expression * IDENT)) )) (compound_statement { (return_statement return IDENT ;) })) (goto_statement goto statement_identifier ;) })) (goto_statement goto statement_identifier ;) })) }))) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT)) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , IDENT , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (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 { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (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 { (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 = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (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) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (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 , LIT , LIT , IDENT ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_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 ( IDENT , 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 ( IDENT , 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 ( IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (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 )))) , (binary_expression IDENT == LIT)) ))) )) && (parenthesized_expression ( (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 )))) , (binary_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 )))) , (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 ( LIT ))) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) < LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) >> LIT)) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) < LIT)) ;)) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT) <= IDENT) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( LIT ))) ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT < LIT)) ;) }))) (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (cast_expression ( (type_descriptor TYPE) ) (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 ( LIT ))) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) < LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( LIT ))) ;)) (expression_statement (assignment_expression IDENT = IDENT) ;) })) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (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 )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT) ))) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression LIT < (cast_expression ( (type_descriptor TYPE) ) IDENT)) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( LIT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT) ))) != LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression LIT < (cast_expression ( (type_descriptor TYPE) ) IDENT)) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = LIT) ;) }) (else_clause else (compound_statement { (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) ))))) ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( LIT )))) ;)) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT) ))) == LIT) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) , (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) < LIT)) ))) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = LIT) ;) }))) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;)) }))) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (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) , (pointer_expression & IDENT) , IDENT , LIT ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (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 ))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + (parenthesized_expression ( (binary_expression (unary_expression - (cast_expression ( (type_descriptor TYPE) ) IDENT)) - (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ]))) ))) )))) ;) })) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (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 ))))) ;) })) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (pointer_expression * IDENT)) )) (compound_statement { (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 ( ))) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (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 "undefined4 *******\nCropImageToTiles(undefined4 *******param_1,undefined4 *******param_2,undefined4 ******param_3)\n\n{\n  bool bVar1;\n  undefined4 ******ppppppuVar2;\n  undefined *puVar3;\n  undefined4 uVar4;\n  undefined4 uVar5;\n  undefined4 ******ppppppuVar6;\n  undefined4 ******ppppppuVar7;\n  int extraout_v1;\n  int extraout_v1_00;\n  int extraout_v1_01;\n  int extraout_v1_02;\n  int extraout_v1_03;\n  int extraout_v1_04;\n  int extraout_v1_05;\n  int extraout_v1_06;\n  int extraout_v1_07;\n  int extraout_v1_08;\n  int extraout_v1_09;\n  int extraout_v1_10;\n  undefined *puVar8;\n  undefined4 *******pppppppuVar9;\n  int iVar10;\n  int iVar11;\n  undefined4 *******pppppppuVar12;\n  undefined4 *******pppppppuVar13;\n  int iVar14;\n  int iVar15;\n  undefined4 *******unaff_s0;\n  undefined4 *******unaff_s1;\n  undefined4 ******unaff_s2;\n  undefined4 *******unaff_s3;\n  int *piVar16;\n  int *piVar17;\n  undefined4 ******unaff_s4;\n  int *piVar18;\n  undefined4 *******unaff_s5;\n  undefined4 *******unaff_s6;\n  undefined4 ******ppppppuVar19;\n  undefined4 *******unaff_s7;\n  undefined *puVar20;\n  code *pcVar21;\n  undefined4 *******unaff_s8;\n  undefined4 ******ppppppuVar22;\n  code *pcVar23;\n  code *pcVar24;\n  double dVar25;\n  double dVar26;\n  double dVar27;\n  double dVar28;\n  double dVar29;\n  double dVar30;\n  double dVar31;\n  double dVar32;\n  double dVar33;\n  double dVar34;\n  double dVar35;\n  undefined8 uVar36;\n  undefined4 uStack_270;\n  undefined4 uStack_26c;\n  int iStack_268;\n  int iStack_264;\n  undefined4 uStack_260;\n  undefined4 uStack_25c;\n  undefined4 *******pppppppuStack_258;\n  undefined4 *puStack_254;\n  int iStack_250;\n  int iStack_24c;\n  undefined4 *******pppppppuStack_248;\n  undefined4 *******pppppppuStack_244;\n  undefined4 ******ppppppuStack_240;\n  int *piStack_23c;\n  int *piStack_238;\n  undefined4 *******pppppppuStack_234;\n  undefined4 *******pppppppuStack_230;\n  undefined4 *******pppppppuStack_22c;\n  undefined4 *******pppppppuStack_228;\n  code *pcStack_224;\n  undefined4 *******pppppppuStack_210;\n  undefined4 *******pppppppuStack_20c;\n  code *pcStack_208;\n  undefined4 ******ppppppuStack_1fc;\n  undefined4 uStack_1f8;\n  undefined4 uStack_1f4;\n  undefined4 *******pppppppuStack_1f0;\n  undefined4 *******pppppppuStack_1ec;\n  undefined4 *******pppppppuStack_1e8;\n  int *piStack_1e4;\n  undefined4 *******pppppppuStack_1e0;\n  undefined4 *puStack_1dc;\n  undefined4 *******pppppppuStack_1d8;\n  int iStack_1d4;\n  undefined4 *******pppppppuStack_1d0;\n  undefined4 *******pppppppuStack_1cc;\n  undefined4 ******ppppppuStack_1c8;\n  undefined4 *******pppppppuStack_1c4;\n  int *piStack_1c0;\n  undefined4 *******pppppppuStack_1bc;\n  undefined4 *******pppppppuStack_1b8;\n  undefined4 *******pppppppuStack_1b4;\n  undefined4 *******pppppppuStack_1b0;\n  code *pcStack_1ac;\n  undefined4 ******ppppppuStack_198;\n  undefined4 *******pppppppuStack_194;\n  undefined4 ******ppppppuStack_190;\n  code *pcStack_188;\n  undefined4 *******pppppppuStack_17c;\n  undefined4 *******pppppppuStack_178;\n  undefined4 ******ppppppuStack_174;\n  undefined4 *******pppppppuStack_170;\n  code *pcStack_16c;\n  undefined4 ******ppppppuStack_158;\n  undefined4 *******pppppppuStack_154;\n  undefined *puStack_150;\n  undefined4 uStack_148;\n  undefined4 uStack_144;\n  undefined4 *******pppppppuStack_13c;\n  undefined4 *******pppppppuStack_138;\n  undefined4 ******ppppppuStack_134;\n  undefined4 *******pppppppuStack_130;\n  undefined4 *******pppppppuStack_12c;\n  undefined4 *******pppppppuStack_128;\n  undefined4 ******ppppppuStack_124;\n  undefined4 *puStack_120;\n  int iStack_11c;\n  undefined4 *******pppppppuStack_118;\n  undefined4 *******pppppppuStack_114;\n  undefined4 ******ppppppuStack_110;\n  undefined4 *******pppppppuStack_10c;\n  undefined4 ******ppppppuStack_108;\n  undefined4 *******pppppppuStack_104;\n  undefined4 *******pppppppuStack_100;\n  code *pcStack_fc;\n  undefined4 ******local_e8;\n  undefined4 *******local_e4;\n  double local_c8;\n  double local_a0;\n  undefined4 *******local_80;\n  undefined4 *******local_7c;\n  undefined4 ******local_78;\n  undefined4 *******local_74;\n  undefined4 *******local_70;\n  undefined4 *******local_6c;\n  undefined4 *******local_68;\n  undefined4 *******local_64;\n  undefined4 *******local_60;\n  int local_5c;\n  \n  puVar20 = PTR___stack_chk_guard_003a9230;\n  local_5c = *(int *)PTR___stack_chk_guard_003a9230;\n  if (param_1 == (undefined4 *******)0x0) {\nLAB_001c8ef8:\n    param_1 = unaff_s1;\n    (*(code *)PTR___assert_fail_003a9608)\n              (PTR_LAB_003a88e0 + 0xdd0,PTR_s_courses_003a88ec + -0x288c,0x322,\n               PTR_s_courses_003a88ec + -0x2688);\n  }\n  else if (param_1[0xcdb] == (undefined4 ******)0xabacadab) {\n    if (param_1[0xcd4] != (undefined4 ******)0x0) {\n      local_e4 = param_1 + 0xd0;\n      local_e8 = (undefined4 ******)(PTR_s_t_to_left_003a88e4 + -0x62ac);\n      (*(code *)PTR_LogMagickEvent_003a91e0)\n                (0x8000,PTR_s_courses_003a88ec + -0x288c,PTR_s_courses_003a88ec + -0x269c,0x325);\n    }\n    unaff_s6 = (undefined4 *******)(*(code *)PTR_NewImageList_003a8e84)();\n    local_80 = unaff_s6;\n    ppppppuVar2 = (undefined4 ******)\n                  (*(code *)PTR_ParseGravityGeometry_003a97fc)(param_1,param_2,&local_7c,param_3);\n    unaff_s4 = local_78;\n    unaff_s0 = local_7c;\n    unaff_s3 = (undefined4 *******)PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;\n    if ((int)ppppppuVar2 << 0xe < 0) {\n      ppppppuVar7 = param_1[7];\n      if (local_7c == (undefined4 *******)0x0) {\n        local_7c = (undefined4 *******)0x1;\n        dVar35 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n      }\n      else {\n        dVar35 = (double)(int)local_7c;\n        if ((int)local_7c < 0) {\n          dVar35 = dVar35 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n      }\n      if (local_78 == (undefined4 ******)0x0) {\n        dVar30 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n        local_78 = (undefined4 ******)0x1;\n        if (((uint)ppppppuVar2 & 0x2000) != 0) goto LAB_001c8e14;\nLAB_001c8484:\n        pppppppuVar9 = local_74;\n        if ((int)local_74 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_74;\n        }\n        puVar8 = (undefined *)((int)param_1[6] - (int)pppppppuVar9);\n        pppppppuVar9 = local_70;\n        if ((int)local_70 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_70;\n        }\n        puVar3 = (undefined *)((int)ppppppuVar7 - (int)pppppppuVar9);\n      }\n      else {\n        dVar30 = (double)(int)local_78;\n        if ((int)local_78 < 0) {\n          dVar30 = dVar30 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n        if (((uint)ppppppuVar2 & 0x2000) == 0) goto LAB_001c8484;\nLAB_001c8e14:\n        pppppppuVar9 = local_74;\n        if ((int)local_74 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_74;\n        }\n        puVar8 = (undefined *)((int)pppppppuVar9 + (int)param_1[6]);\n        if ((int)local_70 < 0) {\n          puVar3 = (undefined *)((int)ppppppuVar7 - (int)local_70);\n        }\n        else {\n          puVar3 = (undefined *)((int)local_70 + (int)ppppppuVar7);\n        }\n      }\n      unaff_s4 = (undefined4 ******)((uint)ppppppuVar2 & 0x2000);\n      dVar34 = (double)(int)puVar8;\n      if ((int)puVar8 < 0) {\n        dVar34 = dVar34 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n      }\n      dVar35 = dVar34 / dVar35;\n      local_c8 = (double)(int)puVar3;\n      if ((int)puVar3 < 0) {\n        local_c8 = local_c8 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n      }\n      dVar25 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n      local_a0 = dVar25;\n      if (dVar35 < dVar25) {\n        local_a0 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n        dVar35 = dVar25;\n      }\n      if (local_a0 <= local_c8 / dVar30) {\n        local_a0 = local_c8 / dVar30;\n      }\n      dVar30 = 0.0;\n      unaff_s7 = local_70;\n      if (0.0 < local_c8) {\n        dVar25 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4780);\n        dVar31 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4788);\n        if (unaff_s4 != (undefined4 ******)0x0) goto LAB_001c8b70;\nLAB_001c854c:\n        unaff_s7 = local_70;\n        dVar32 = dVar30;\n        if ((int)local_70 < 1) {\n          dVar32 = dVar30 - (double)(int)local_70;\n        }\n        dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n        dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n        if (dVar32 - dVar26 < dVar27 - dVar32) {\n          dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar23 = (code *)PTR_floor_003a9670;\n          if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d7c;\n        }\n        else {\n          if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d7c:\n            iVar15 = -0x7ffffdff;\n            goto joined_r0x001c8cbc;\n          }\n          dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar23 = (code *)PTR_ceil_003a8c20;\n        }\n        if (dVar26 < dVar32) {\n          iVar15 = 0x7ffffdff;\n        }\n        else {\n          dVar32 = (double)(*pcVar23)(dVar32);\n          iVar15 = (int)dVar32;\n        }\njoined_r0x001c8cbc:\n        dVar30 = dVar30 + local_a0;\n        if ((int)unaff_s7 < 0) {\n          dVar32 = 0.0;\n        }\n        else {\n          dVar32 = (double)(int)unaff_s7;\n        }\n        dVar32 = dVar30 + dVar32;\n        dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n        dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n        if (dVar32 - dVar26 < dVar27 - dVar32) {\n          if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8630;\n            goto LAB_001c8cec;\n          }\n        }\n        else if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;\n          goto LAB_001c8d18;\n        }\nLAB_001c8c88:\n        iVar14 = -0x7ffffdff;\nLAB_001c8644:\n        do {\n          unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n          param_2 = (undefined4 *******)((int)param_1[0x8d] + iVar15);\n          dVar32 = 0.0;\n          local_68 = unaff_s8;\n          local_60 = param_2;\n          if (0.0 < dVar34) {\n            dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n            unaff_s6 = &local_6c;\n            dVar27 = *(double *)((int)unaff_s3 + 0x4780);\n            do {\n              unaff_s7 = local_74;\n              if (unaff_s4 == (undefined4 ******)0x0) {\n                dVar33 = dVar32;\n                if ((int)local_74 < 1) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }\nLAB_001c8b04:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;\nLAB_001c8708:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8700:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar33 = 0.0;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8768:\n                  dVar33 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar33 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n              }\n              else {\n                dVar33 = dVar32;\n                if (0 < (int)local_74) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar27 <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar33 = 0.0;\n                }\n                else {\n                  if (dVar33 < dVar27) goto LAB_001c8b24;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (dVar26 < dVar33) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8850:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < dVar25) goto LAB_001c8a44;\n                  if (dVar33 <= dVar26) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar14 = 0x7ffffdff;\n                }\n                else if (dVar25 <= dVar33) {\n                  if (dVar33 <= dVar31) goto LAB_001c8abc;\n                  iVar14 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar14 = -0x7ffffdff;\n                }\n              }\n              unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n              param_2 = (undefined4 *******)((int)param_1[0x8c] + iVar15);\n              local_6c = unaff_s8;\n              local_64 = param_2;\n              iVar15 = (*(code *)PTR_CropImage_003a90b8)(param_1,unaff_s6,param_3);\n              if (iVar15 != 0) {\n                (*(code *)PTR_AppendImageToList_003a9880)(&local_80,iVar15);\n              }\n            } while (dVar32 < dVar34);\n          }\n          unaff_s5 = unaff_s3;\n          if (local_c8 <= dVar30) break;\n          if (unaff_s4 == (undefined4 ******)0x0) goto LAB_001c854c;\nLAB_001c8b70:\n          unaff_s7 = local_70;\n          dVar32 = dVar30;\n          if (0 < (int)local_70) {\n            dVar32 = dVar30 - (double)(int)local_70;\n          }\n          dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n          dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          if (dVar32 - dVar26 < dVar27 - dVar32) {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d8c;\n            pcVar23 = (code *)PTR_floor_003a9670;\n            if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8d50;\nLAB_001c8bd8:\n            dVar32 = (double)(*pcVar23)(dVar32);\n            iVar15 = (int)dVar32;\nLAB_001c8bf0:\n            dVar30 = dVar30 + local_a0;\n            if (-2 < (int)unaff_s7) goto LAB_001c8c00;\nLAB_001c8d6c:\n            dVar32 = (double)(int)unaff_s7;\n          }\n          else {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d8c:\n              iVar15 = -0x7ffffdff;\n              goto LAB_001c8bf0;\n            }\n            pcVar23 = (code *)PTR_ceil_003a8c20;\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8bd8;\nLAB_001c8d50:\n            iVar15 = 0x7ffffdff;\n            dVar30 = dVar30 + local_a0;\n            if ((int)unaff_s7 < -1) goto LAB_001c8d6c;\nLAB_001c8c00:\n            dVar32 = 0.0;\n          }\n          dVar32 = dVar30 + dVar32;\n          dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n          dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          if (dVar32 - dVar26 < dVar27 - dVar32) {\n            if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n              if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) {\nLAB_001c8cec:\n                iVar14 = 0x7ffffdff;\n              }\n              else {\nLAB_001c8630:\n                dVar32 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n                iVar14 = (int)dVar32;\n              }\n              goto LAB_001c8644;\n            }\n            goto LAB_001c8c88;\n          }\n          if (dVar32 < dVar25) goto LAB_001c8c88;\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;\nLAB_001c8d18:\n          dVar32 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          iVar14 = (int)dVar32;\n        } while( true );\n      }\n      (*(code *)PTR_ClearMagickException_003a90f8)(param_3);\n      pppppppuVar9 = local_80;\n      unaff_s0 = param_2;\n    }\n    else {\n      unaff_s3 = &local_7c;\n      if (((local_7c == (undefined4 *******)0x0) && (local_78 == (undefined4 ******)0x0)) ||\n         (((uint)ppppppuVar2 & 3) != 0)) {\n        local_80 = (undefined4 *******)(*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n        pppppppuVar9 = local_80;\n        unaff_s4 = ppppppuVar2;\n        if ((local_80 != (undefined4 *******)0x0) &&\n           (unaff_s4 = (undefined4 ******)((uint)ppppppuVar2 & 0x2000),\n           unaff_s4 != (undefined4 ******)0x0)) {\n          local_80[0x8c] = (undefined4 ******)((int)local_80[0x8c] - (int)local_74);\n          local_80[0x8d] = (undefined4 ******)((int)local_80[0x8d] - (int)local_70);\n          local_80[0x8a] = local_7c;\n          local_80[0x8b] = local_78;\n        }\n      }\n      else {\n        unaff_s7 = (undefined4 *******)param_1[6];\n        if ((local_7c < unaff_s7) || (local_78 < param_1[7])) {\n          ppppppuVar2 = param_1[0x8b];\n          if ((undefined4 *******)param_1[0x8a] != (undefined4 *******)0x0) {\n            unaff_s7 = (undefined4 *******)param_1[0x8a];\n          }\n          if (ppppppuVar2 == (undefined4 ******)0x0) {\n            ppppppuVar2 = param_1[7];\n          }\n          if (local_7c == (undefined4 *******)0x0) {\n            unaff_s0 = unaff_s7;\n          }\n          if (local_78 == (undefined4 ******)0x0) {\n            unaff_s4 = ppppppuVar2;\n          }\n          pppppppuVar9 = local_80;\n          if (0 < (int)ppppppuVar2) {\n            unaff_s3 = (undefined4 *******)0x0;\n            unaff_s8 = &local_80;\n            do {\n              unaff_s5 = (undefined4 *******)0x0;\n              if ((int)unaff_s7 < 1) {\n                pppppppuVar9 = local_80;\n                if (unaff_s6 == (undefined4 *******)0x0) break;\n              }\n              else {\n                do {\n                  local_7c = unaff_s0;\n                  local_78 = unaff_s4;\n                  local_74 = unaff_s5;\n                  local_70 = unaff_s3;\n                  unaff_s6 = (undefined4 *******)\n                             (*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n                  pppppppuVar9 = local_80;\n                  if (unaff_s6 == (undefined4 *******)0x0) goto LAB_001c8908;\n                  unaff_s5 = (undefined4 *******)((int)unaff_s5 + (int)unaff_s0);\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);\n              }\n              unaff_s3 = (undefined4 *******)((int)unaff_s3 + (int)unaff_s4);\n              pppppppuVar9 = local_80;\n            } while ((int)unaff_s3 < (int)ppppppuVar2);\n          }\n        }\n        else {\n          local_e8 = param_3;\n          pppppppuVar9 = (undefined4 *******)(*(code *)PTR_CloneImage_003a9830)(param_1,0,0,1);\n        }\n      }\n    }\nLAB_001c8908:\n    if (local_5c == *(int *)puVar20) {\n      return pppppppuVar9;\n    }\n    (*(code *)PTR___stack_chk_fail_003a9064)();\n    unaff_s1 = param_1;\n    unaff_s2 = param_3;\n    goto LAB_001c8ef8;\n  }\n  ppppppuVar2 = (undefined4 ******)0x323;\n  pppppppuVar12 = (undefined4 *******)(PTR_s_courses_003a88ec + -0x288c);\n  pcVar23 = ExcerptImage;\n  pppppppuVar9 = (undefined4 *******)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3784);\n  puVar20 = PTR___assert_fail_003a9608;\n  (*(code *)PTR___assert_fail_003a9608)();\n  puVar8 = puVar20 + 0x1e7970;\n  piVar18 = *(int **)(puVar20 + 0x1e02f0);\n  iStack_11c = *piVar18;\n  puStack_150 = puVar8;\n  pppppppuStack_118 = unaff_s0;\n  pppppppuStack_114 = param_1;\n  ppppppuStack_110 = unaff_s2;\n  pppppppuStack_10c = unaff_s3;\n  ppppppuStack_108 = unaff_s4;\n  pppppppuStack_104 = unaff_s5;\n  pppppppuStack_100 = unaff_s6;\n  pcStack_fc = pcVar23;\n  if (pppppppuVar9 == (undefined4 *******)0x0) {\n    iVar15 = *(int *)(puVar20 + 0x1df9ac) + -0x26ac;\n    (**(code **)(puVar20 + 0x1e06c8))\n              (*(int *)(puVar20 + 0x1df9a8) + -0x37b0,*(int *)(puVar20 + 0x1df9ac) + -0x288c,0x3f4,\n               iVar15);\nLAB_001c92d4:\n    iVar15 = iVar15 + -0x26ac;\n    (**(code **)(puVar8 + -0x72a8))\n              (*(int *)(puVar8 + -0x7fd0) + 0x294c,*(int *)(puVar8 + -0x7fc4) + -0x288c,0x3fa,iVar15\n              );\n    ppppppuVar2 = unaff_s2;\nLAB_001c92f4:\n    iVar15 = iVar15 + -0x26ac;\n    (**(code **)(puVar8 + -0x72a8))\n              (*(int *)(puVar8 + -0x7fd0) + 0x1cac,*(int *)(puVar8 + -0x7fc4) + -0x288c,0x3f9,iVar15\n              );\nLAB_001c9314:\n    (**(code **)(puVar8 + -0x784c))();\n    pppppppuVar9 = unaff_s0;\nLAB_001c9320:\n    (**(code **)(puVar8 + -0x72a8))\n              (*(int *)(puVar8 + -0x7fc4) + -0x2850,*(int *)(puVar8 + -0x7fc4) + -0x288c,0x3f8,\n               iVar15 + -0x26ac);\n    unaff_s2 = ppppppuVar2;\n  }\n  else if (pppppppuVar9[0xcdb] == (undefined4 ******)0xabacadab) {\n    if (pppppppuVar9[0xcd4] != (undefined4 ******)0x0) {\n      pppppppuStack_154 = pppppppuVar9 + 0xd0;\n      ppppppuStack_158 = (undefined4 ******)(*(int *)(puVar20 + 0x1df9a4) + -0x62ac);\n      (**(code **)(puVar20 + 0x1e02a0))\n                (0x8000,*(int *)(puVar20 + 0x1df9ac) + -0x288c,\n                 *(int *)(puVar20 + 0x1df9ac) + -0x26bc,0x3f7);\n    }\n    iVar15 = *(int *)(puStack_150 + -0x7fc4);\n    unaff_s3 = pppppppuVar12;\n    puVar8 = puStack_150;\n    if (pppppppuVar12 != (undefined4 *******)0x0) {\n      unaff_s0 = pppppppuVar9;\n      if (ppppppuVar2 == (undefined4 ******)0x0) goto LAB_001c92f4;\n      unaff_s2 = ppppppuVar2;\n      if (ppppppuVar2[7] != (undefined4 *****)0xabacadab) goto LAB_001c92d4;\n      iVar15 = 1;\n      ppppppuStack_158 = ppppppuVar2;\n      param_1 = (undefined4 *******)\n                (**(code **)(puStack_150 + -0x7080))(pppppppuVar9,*pppppppuVar12,pppppppuVar12[1],1)\n      ;\n      if (param_1 != (undefined4 *******)0x0) {\n        uStack_144 = 0;\n        uStack_148 = 0;\n        unaff_s5 = (undefined4 *******)\n                   (**(code **)(puStack_150 + -0x715c))(pppppppuVar9,ppppppuVar2);\n        unaff_s6 = (undefined4 *******)(**(code **)(puStack_150 + -0x79dc))(param_1,ppppppuVar2);\n        iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9);\n        if (((iVar15 == 4) ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9), iVar15 == 3)) &&\n           ((iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 4 ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 3)))) {\n          (**(code **)(puStack_150 + -0x7774))(7);\n          ppppppuVar7 = param_1[7];\n          if ((int)ppppppuVar7 < 0) {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1 < (int)ppppppuVar7 + 0x3f >> 6) goto LAB_001c9298;\nLAB_001c91a4:\n            bVar1 = (int)ppppppuVar7 < 0x80;\n          }\n          else {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if ((int)ppppppuVar7 >> 6 <= extraout_v1) goto LAB_001c91a4;\nLAB_001c9298:\n            (*pcVar23)(7);\n            bVar1 = extraout_v1_02 < 2;\n          }\n          iVar14 = 1;\n          if ((bool)(bVar1 ^ 1)) {\n            (**(code **)(puStack_150 + -0x7774))(7);\n            ppppppuVar7 = param_1[7];\n            if ((int)ppppppuVar7 < 0) {\n              ppppppuVar7 = (undefined4 ******)((int)ppppppuVar7 + 0x3f);\n            }\n            iVar14 = (int)ppppppuVar7 >> 6;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1_01 < iVar14) {\nLAB_001c9234:\n              (*pcVar23)(7);\n              iVar14 = extraout_v1_00;\n            }\n            goto LAB_001c9088;\n          }\n          iVar10 = *(int *)(puStack_150 + -0x7f10);\n        }\n        else {\n          uVar36 = (**(code **)(puStack_150 + -0x7774))(7);\n          if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            uVar36 = (*pcVar23)(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c9070;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            iVar14 = 1;\n          }\n          else {\nLAB_001c9070:\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\nLAB_001c9074:\n            uVar36 = (*pcVar23)(7);\n            if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n               (pcVar23 = *(code **)(puStack_150 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c9234;\n            iVar14 = 2;\n          }\nLAB_001c9088:\n          iVar10 = *(int *)(puStack_150 + -0x7f10);\n        }\n        iVar15 = 0;\n        ppppppuStack_124 = (undefined4 ******)0x1;\n        puStack_120 = &uStack_148;\n        pppppppuStack_13c = pppppppuVar9;\n        pppppppuStack_138 = pppppppuVar12;\n        ppppppuStack_134 = ppppppuVar2;\n        pppppppuStack_130 = unaff_s6;\n        pppppppuStack_12c = unaff_s5;\n        pppppppuStack_128 = param_1;\n        (**(code **)(puStack_150 + -0x7718))(iVar10 + 0x5428,&pppppppuStack_13c,iVar14,0);\n        ppppppuVar2 = ppppppuStack_124;\n        (**(code **)(puStack_150 + -0x79bc))(unaff_s6);\n        (**(code **)(puStack_150 + -0x79bc))(unaff_s5);\n        param_1[0xa8] = pppppppuVar9[0xa8];\n        if (ppppppuVar2 == (undefined4 ******)0x0) {\n          param_1 = (undefined4 *******)(**(code **)(puStack_150 + -0x7964))(param_1);\n        }\n      }\n      puVar8 = puStack_150;\n      if (iStack_11c == *piVar18) {\n        return param_1;\n      }\n      goto LAB_001c9314;\n    }\n    goto LAB_001c9320;\n  }\n  ppppppuVar2 = (undefined4 ******)0x3f5;\n  pcVar21 = *(code **)(puVar8 + -0x72a8);\n  pppppppuVar13 = (undefined4 *******)(*(int *)(puVar8 + -0x7fc4) + -0x288c);\n  pcVar24 = ExtentImage;\n  pppppppuVar12 = (undefined4 *******)(*(int *)(puVar8 + -0x7fc8) + -0x3784);\n  (*pcVar21)();\n  pcVar23 = pcVar21 + 0x1e754c;\n  pcStack_188 = pcVar23;\n  pppppppuStack_17c = pppppppuVar9;\n  pppppppuStack_178 = param_1;\n  ppppppuStack_174 = unaff_s2;\n  pppppppuStack_170 = unaff_s3;\n  pcStack_16c = pcVar24;\n  if (pppppppuVar12 == (undefined4 *******)0x0) {\n    iVar15 = *(int *)(pcVar21 + 0x1df588) + -0x26c8;\n    (**(code **)(pcVar21 + 0x1e02a4))\n              (*(int *)(pcVar21 + 0x1df584) + -0x37b0,*(int *)(pcVar21 + 0x1df588) + -0x288c,0x474,\n               iVar15);\nLAB_001c94fc:\n    iVar15 = iVar15 + -0x26c8;\n    (**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fc4) + -0x2850,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x478,\n               iVar15);\nLAB_001c951c:\n    iVar15 = iVar15 + -0x26c8;\n    (**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fd0) + 0x294c,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x47a,\n               iVar15);\n    pppppppuVar12 = pppppppuVar9;\nLAB_001c953c:\n    (**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fd0) + 0x1cac,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x479,\n               iVar15 + -0x26c8);\n  }\n  else if (pppppppuVar12[0xcdb] == (undefined4 ******)0xabacadab) {\n    if (pppppppuVar12[0xcd4] != (undefined4 ******)0x0) {\n      pppppppuStack_194 = pppppppuVar12 + 0xd0;\n      ppppppuStack_198 = (undefined4 ******)(*(int *)(pcVar21 + 0x1df580) + -0x62ac);\n      (**(code **)(pcVar21 + 0x1dfe7c))\n                (0x8000,*(int *)(pcVar21 + 0x1df588) + -0x288c,\n                 *(int *)(pcVar21 + 0x1df588) + -0x26d4,0x477);\n    }\n    iVar15 = *(int *)(pcStack_188 + -0x7fc4);\n    pppppppuVar9 = pppppppuVar12;\n    param_1 = pppppppuVar13;\n    unaff_s2 = ppppppuVar2;\n    pcVar23 = pcStack_188;\n    if (pppppppuVar13 == (undefined4 *******)0x0) goto LAB_001c94fc;\n    if (ppppppuVar2 != (undefined4 ******)0x0) {\n      if (ppppppuVar2[7] == (undefined4 *****)0xabacadab) {\n        ppppppuStack_198 = ppppppuVar2;\n        pppppppuVar9 = (undefined4 *******)\n                       (**(code **)(pcStack_188 + -0x7080))\n                                 (pppppppuVar12,*pppppppuVar13,pppppppuVar13[1],1);\n        if (pppppppuVar9 != (undefined4 *******)0x0) {\n          iVar15 = (**(code **)(pcStack_188 + -0x7a20))(pppppppuVar9,ppppppuVar2);\n          if (iVar15 == 0) {\n            (**(code **)(pcStack_188 + -0x7964))(pppppppuVar9);\n            pppppppuVar9 = (undefined4 *******)0x0;\n          }\n          else {\n            pppppppuStack_194 = (undefined4 *******)-(int)pppppppuVar13[3];\n            ppppppuStack_198 = (undefined4 ******)-(int)pppppppuVar13[2];\n            ppppppuStack_190 = ppppppuVar2;\n            iVar15 = (**(code **)(pcStack_188 + -0x7bec))\n                               (pppppppuVar9,pppppppuVar12,pppppppuVar12[0x99],1);\n            if (iVar15 != 0) {\n              (**(code **)(pcStack_188 + -0x7d18))\n                        (pppppppuVar9,pppppppuVar12[6],pppppppuVar12[7],pppppppuVar13);\n            }\n          }\n        }\n        return pppppppuVar9;\n      }\n      goto LAB_001c951c;\n    }\n    goto LAB_001c953c;\n  }\n  pcVar21 = *(code **)(pcVar23 + -0x72a8);\n  pppppppuVar9 = (undefined4 *******)(*(int *)(pcVar23 + -0x7fc4) + -0x288c);\n  pcVar24 = FlipImage;\n  pppppppuVar13 = (undefined4 *******)(*(int *)(pcVar23 + -0x7fc8) + -0x3784);\n  (*pcVar21)(pppppppuVar13,pppppppuVar9,0x475,*(int *)(pcVar23 + -0x7fc4) + -0x26c8);\n  pcVar23 = pcVar21 + 0x1e7330;\n  piVar16 = *(int **)(pcVar21 + 0x1dfcb0);\n  iStack_1d4 = *piVar16;\n  pcStack_208 = pcVar23;\n  pppppppuStack_1d0 = pppppppuVar12;\n  pppppppuStack_1cc = param_1;\n  ppppppuStack_1c8 = unaff_s2;\n  pppppppuStack_1c4 = unaff_s3;\n  piStack_1c0 = piVar18;\n  pppppppuStack_1bc = unaff_s5;\n  pppppppuStack_1b8 = unaff_s6;\n  pppppppuStack_1b4 = unaff_s7;\n  pppppppuStack_1b0 = unaff_s8;\n  pcStack_1ac = pcVar24;\n  if (pppppppuVar13 == (undefined4 *******)0x0) {\n    (**(code **)(pcVar21 + 0x1e0088))\n              (*(int *)(pcVar21 + 0x1df368) + -0x37b0,*(int *)(pcVar21 + 0x1df36c) + -0x288c,0x4bc,\n               *(int *)(pcVar21 + 0x1df36c) + -0x26e0);\n    pppppppuVar9 = param_1;\nLAB_001c9944:\n    (**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fd0) + 0x1cac,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x4c0,\n               *(int *)(pcVar23 + -0x7fc4) + -0x26e0);\nLAB_001c9968:\n    (**(code **)(pcVar23 + -0x784c))();\n    pppppppuVar13 = unaff_s7;\nLAB_001c9974:\n    (**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fd0) + 0x294c,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x4c1,\n               *(int *)(pcVar23 + -0x7fc4) + -0x26e0);\n    pppppppuStack_244 = pppppppuVar9;\n  }\n  else {\n    pppppppuStack_244 = param_1;\n    if (pppppppuVar13[0xcdb] == (undefined4 ******)0xabacadab) {\n      if (pppppppuVar13[0xcd4] != (undefined4 ******)0x0) {\n        pppppppuStack_20c = pppppppuVar13 + 0xd0;\n        pppppppuStack_210 = (undefined4 *******)(*(int *)(pcVar21 + 0x1df364) + -0x62ac);\n        (**(code **)(pcVar21 + 0x1dfc60))\n                  (0x8000,*(int *)(pcVar21 + 0x1df36c) + -0x288c,\n                   *(int *)(pcVar21 + 0x1df36c) + -0x26ec,0x4bf);\n      }\n      unaff_s7 = pppppppuVar13;\n      pcVar23 = pcStack_208;\n      if (pppppppuVar9 == (undefined4 *******)0x0) goto LAB_001c9944;\n      if (pppppppuVar9[7] == (undefined4 ******)0xabacadab) {\n        pppppppuStack_210 = pppppppuVar9;\n        pppppppuVar12 =\n             (undefined4 *******)(**(code **)(pcStack_208 + -0x7080))(pppppppuVar13,0,0,1);\n        if (pppppppuVar12 != (undefined4 *******)0x0) {\n          ppppppuStack_1fc = pppppppuVar13[0x8c];\n          unaff_s8 = (undefined4 *******)pppppppuVar13[0x8a];\n          unaff_s2 = pppppppuVar13[0x8b];\n          unaff_s6 = (undefined4 *******)pppppppuVar13[0x8d];\n          uStack_1f4 = 0;\n          uStack_1f8 = 0;\n          piVar18 = (int *)(**(code **)(pcStack_208 + -0x715c))(pppppppuVar13,pppppppuVar9);\n          unaff_s5 = (undefined4 *******)\n                     (**(code **)(pcStack_208 + -0x79dc))(pppppppuVar12,pppppppuVar9);\n          iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13);\n          if (((iVar15 == 4) ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13), iVar15 == 3)) &&\n             ((iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 4 ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 3)))) {\n            (**(code **)(pcStack_208 + -0x7774))(7);\n            ppppppuVar2 = pppppppuVar12[7];\n            if ((int)ppppppuVar2 < 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_03 < (int)ppppppuVar2 + 0x3f >> 6) goto LAB_001c98d4;\nLAB_001c981c:\n              bVar1 = (int)ppppppuVar2 < 0x80;\n            }\n            else {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if ((int)ppppppuVar2 >> 6 <= extraout_v1_03) goto LAB_001c981c;\nLAB_001c98d4:\n              (*pcVar23)(7);\n              bVar1 = extraout_v1_05 < 2;\n            }\n            iVar15 = 1;\n            if ((bool)(bVar1 ^ 1)) {\n              (**(code **)(pcStack_208 + -0x7774))(7);\n              ppppppuVar2 = pppppppuVar12[7];\n              if ((int)ppppppuVar2 < 0) {\n                ppppppuVar2 = (undefined4 ******)((int)ppppppuVar2 + 0x3f);\n              }\n              iVar15 = (int)ppppppuVar2 >> 6;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_06 < iVar15) {\nLAB_001c98ac:\n                (*pcVar23)(7);\n                iVar15 = extraout_v1_04;\n              }\n              goto LAB_001c96d8;\n            }\n            iVar14 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          else {\n            uVar36 = (**(code **)(pcStack_208 + -0x7774))(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              uVar36 = (*pcVar23)(7);\n              if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c96c0;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              iVar15 = 1;\n            }\n            else {\nLAB_001c96c0:\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\nLAB_001c96c4:\n              uVar36 = (*pcVar23)(7);\n              if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n                 (pcVar23 = *(code **)(pcStack_208 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c98ac;\n              iVar15 = 2;\n            }\nLAB_001c96d8:\n            iVar14 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          puStack_1dc = &uStack_1f8;\n          pppppppuStack_1d8 = (undefined4 *******)0x1;\n          pppppppuStack_1f0 = pppppppuVar13;\n          pppppppuStack_1ec = pppppppuVar9;\n          pppppppuStack_1e8 = unaff_s5;\n          piStack_1e4 = piVar18;\n          pppppppuStack_1e0 = pppppppuVar12;\n          (**(code **)(pcStack_208 + -0x7718))(iVar14 + 0x56bc,&pppppppuStack_1f0,iVar15,0);\n          pppppppuVar9 = pppppppuStack_1d8;\n          (**(code **)(pcStack_208 + -0x79bc))(unaff_s5);\n          (**(code **)(pcStack_208 + -0x79bc))(piVar18);\n          pppppppuVar12[0xa8] = pppppppuVar13[0xa8];\n          if (unaff_s2 != (undefined4 ******)0x0) {\n            unaff_s6 = (undefined4 *******)\n                       ((int)unaff_s2 + (-(int)unaff_s6 - (int)pppppppuVar12[7]));\n          }\n          pppppppuVar12[0x8a] = unaff_s8;\n          pppppppuVar12[0x8b] = unaff_s2;\n          pppppppuVar12[0x8c] = ppppppuStack_1fc;\n          pppppppuVar12[0x8d] = unaff_s6;\n          if (pppppppuVar9 == (undefined4 *******)0x0) {\n            pppppppuVar12 = (undefined4 *******)(**(code **)(pcStack_208 + -0x7964))(pppppppuVar12);\n          }\n        }\n        pcVar23 = pcStack_208;\n        if (iStack_1d4 == *piVar16) {\n          return pppppppuVar12;\n        }\n        goto LAB_001c9968;\n      }\n      goto LAB_001c9974;\n    }\n  }\n  pcVar21 = *(code **)(pcVar23 + -0x72a8);\n  iVar14 = *(int *)(pcVar23 + -0x7fc4) + -0x288c;\n  pcVar24 = FlopImage;\n  iVar15 = *(int *)(pcVar23 + -0x7fc8) + -0x3784;\n  (*pcVar21)(iVar15,iVar14,0x4bd,*(int *)(pcVar23 + -0x7fc4) + -0x26e0);\n  piVar17 = *(int **)(pcVar21 + 0x1df874);\n  iStack_24c = *piVar17;\n  pppppppuStack_248 = pppppppuVar12;\n  ppppppuStack_240 = unaff_s2;\n  piStack_23c = piVar16;\n  piStack_238 = piVar18;\n  pppppppuStack_234 = unaff_s5;\n  pppppppuStack_230 = unaff_s6;\n  pppppppuStack_22c = pppppppuVar13;\n  pppppppuStack_228 = unaff_s8;\n  pcStack_224 = pcVar24;\n  if (iVar15 == 0) {\n    pppppppuVar9 = (undefined4 *******)\n                   (**(code **)(pcVar21 + 0x1dfc4c))\n                             (*(int *)(pcVar21 + 0x1def2c) + -0x37b0,\n                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x543,\n                              *(int *)(pcVar21 + 0x1def30) + -0x26f8);\n    return pppppppuVar9;\n  }\n  if (*(int *)(iVar15 + 0x336c) != -0x54535255) {\n    pppppppuVar9 = (undefined4 *******)\n                   (**(code **)(pcVar21 + 0x1dfc4c))\n                             (*(int *)(pcVar21 + 0x1def2c) + -0x3784,\n                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x544,\n                              *(int *)(pcVar21 + 0x1def30) + -0x26f8);\n    return pppppppuVar9;\n  }\n  if (*(int *)(iVar15 + 0x3350) != 0) {\n    (**(code **)(pcVar21 + 0x1df824))\n              (0x8000,*(int *)(pcVar21 + 0x1def30) + -0x288c,*(int *)(pcVar21 + 0x1def30) + -0x2704,\n               0x546,*(int *)(pcVar21 + 0x1def28) + -0x62ac,iVar15 + 0x340);\n  }\n  if (iVar14 == 0) {\n    pppppppuVar9 = (undefined4 *******)\n                   (**(code **)(pcVar21 + 0x1dfc4c))\n                             (*(int *)(pcVar21 + 0x1def24) + 0x1cac,\n                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x547,\n                              *(int *)(pcVar21 + 0x1def30) + -0x26f8);\n    return pppppppuVar9;\n  }\n  if (*(int *)(iVar14 + 0x1c) != -0x54535255) goto LAB_001c9db0;\n  pppppppuVar9 = (undefined4 *******)(**(code **)(pcVar21 + 0x1dfe74))(iVar15,0,0,1,iVar14);\n  if (pppppppuVar9 != (undefined4 *******)0x0) {\n    ppppppuVar2 = *(undefined4 *******)(iVar15 + 0x234);\n    ppppppuVar7 = *(undefined4 *******)(iVar15 + 0x228);\n    ppppppuVar22 = *(undefined4 *******)(iVar15 + 0x22c);\n    ppppppuVar19 = *(undefined4 *******)(iVar15 + 0x230);\n    uStack_26c = 0;\n    uStack_270 = 0;\n    uVar4 = (**(code **)(pcVar21 + 0x1dfd98))(iVar15,iVar14);\n    uVar5 = (**(code **)(pcVar21 + 0x1df518))(pppppppuVar9,iVar14);\n    iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(iVar15);\n    if (((iVar10 == 4) || (iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(iVar15), iVar10 == 3)) &&\n       ((iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(pppppppuVar9), iVar10 == 4 ||\n        (iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(pppppppuVar9), iVar10 == 3)))) {\n      (**(code **)(pcVar21 + 0x1df780))(7);\n      ppppppuVar6 = pppppppuVar9[7];\n      if ((int)ppppppuVar6 < 0) {\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (extraout_v1_07 < (int)ppppppuVar6 + 0x3f >> 6) goto LAB_001c9d10;\nLAB_001c9c58:\n        bVar1 = (int)ppppppuVar6 < 0x80;\n      }\n      else {\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if ((int)ppppppuVar6 >> 6 <= extraout_v1_07) goto LAB_001c9c58;\nLAB_001c9d10:\n        (*pcVar23)(7);\n        bVar1 = extraout_v1_09 < 2;\n      }\n      iVar10 = 1;\n      if ((bool)(bVar1 ^ 1)) {\n        (**(code **)(pcVar21 + 0x1df780))(7);\n        ppppppuVar6 = pppppppuVar9[7];\n        if ((int)ppppppuVar6 < 0) {\n          ppppppuVar6 = (undefined4 ******)((int)ppppppuVar6 + 0x3f);\n        }\n        iVar10 = (int)ppppppuVar6 >> 6;\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (extraout_v1_10 < iVar10) {\nLAB_001c9ce8:\n          (*pcVar23)(7);\n          iVar10 = extraout_v1_08;\n        }\n        goto LAB_001c9b14;\n      }\n      iVar11 = *(int *)(pcVar21 + 0x1defe4);\n    }\n    else {\n      uVar36 = (**(code **)(pcVar21 + 0x1df780))(7);\n      if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (1 < (uint)uVar36) goto LAB_001c9b00;\n        uVar36 = (*pcVar23)(7);\n        if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c9afc;\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (1 < (uint)uVar36) goto LAB_001c9b00;\n        iVar10 = 1;\n      }\n      else {\nLAB_001c9afc:\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\nLAB_001c9b00:\n        uVar36 = (*pcVar23)(7);\n        if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n           (pcVar23 = *(code **)(pcVar21 + 0x1df780), (uint)uVar36 < 2)) goto LAB_001c9ce8;\n        iVar10 = 2;\n      }\nLAB_001c9b14:\n      iVar11 = *(int *)(pcVar21 + 0x1defe4);\n    }\n    puStack_254 = &uStack_270;\n    iStack_250 = 1;\n    iStack_268 = iVar15;\n    iStack_264 = iVar14;\n    uStack_260 = uVar5;\n    uStack_25c = uVar4;\n    pppppppuStack_258 = pppppppuVar9;\n    (**(code **)(pcVar21 + 0x1df7dc))(iVar11 + 0x594c,&iStack_268,iVar10,0);\n    iVar14 = iStack_250;\n    (**(code **)(pcVar21 + 0x1df538))(uVar5);\n    (**(code **)(pcVar21 + 0x1df538))(uVar4);\n    pppppppuVar9[0xa8] = *(undefined4 *******)(iVar15 + 0x2a0);\n    if (ppppppuVar7 != (undefined4 ******)0x0) {\n      ppppppuVar19 = (undefined4 ******)\n                     ((int)ppppppuVar7 + (-(int)ppppppuVar19 - (int)pppppppuVar9[6]));\n    }\n    pppppppuVar9[0x8a] = ppppppuVar7;\n    pppppppuVar9[0x8b] = ppppppuVar22;\n    pppppppuVar9[0x8c] = ppppppuVar19;\n    pppppppuVar9[0x8d] = ppppppuVar2;\n    if (iVar14 == 0) {\n      pppppppuVar9 = (undefined4 *******)(**(code **)(pcVar21 + 0x1df590))(pppppppuVar9);\n    }\n  }\n  if (iStack_24c == *piVar17) {\n    return pppppppuVar9;\n  }\n  (**(code **)(pcVar21 + 0x1df6a8))();\nLAB_001c9db0:\n  pppppppuVar9 = (undefined4 *******)\n                 (**(code **)(pcVar21 + 0x1dfc4c))\n                           (*(int *)(pcVar21 + 0x1def24) + 0x294c,\n                            *(int *)(pcVar21 + 0x1def30) + -0x288c,0x548,\n                            *(int *)(pcVar21 + 0x1def30) + -0x26f8);\n  return pppppppuVar9;\n}" (type_identifier "undefined4") (pointer_declarator "*******\nCropImageToTiles(undefined4 *******param_1,undefined4 *******param_2,undefined4 ******param_3)" (* "*") (pointer_declarator "******\nCropImageToTiles(undefined4 *******param_1,undefined4 *******param_2,undefined4 ******param_3)" (* "*") (pointer_declarator "*****\nCropImageToTiles(undefined4 *******param_1,undefined4 *******param_2,undefined4 ******param_3)" (* "*") (pointer_declarator "****\nCropImageToTiles(undefined4 *******param_1,undefined4 *******param_2,undefined4 ******param_3)" (* "*") (pointer_declarator "***\nCropImageToTiles(undefined4 *******param_1,undefined4 *******param_2,undefined4 ******param_3)" (* "*") (pointer_declarator "**\nCropImageToTiles(undefined4 *******param_1,undefined4 *******param_2,undefined4 ******param_3)" (* "*") (pointer_declarator "*\nCropImageToTiles(undefined4 *******param_1,undefined4 *******param_2,undefined4 ******param_3)" (* "*") (function_declarator "CropImageToTiles(undefined4 *******param_1,undefined4 *******param_2,undefined4 ******param_3)" (identifier "CropImageToTiles") (parameter_list "(undefined4 *******param_1,undefined4 *******param_2,undefined4 ******param_3)" (( "(") (parameter_declaration "undefined4 *******param_1" (type_identifier "undefined4") (pointer_declarator "*******param_1" (* "*") (pointer_declarator "******param_1" (* "*") (pointer_declarator "*****param_1" (* "*") (pointer_declarator "****param_1" (* "*") (pointer_declarator "***param_1" (* "*") (pointer_declarator "**param_1" (* "*") (pointer_declarator "*param_1" (* "*") (identifier "param_1"))))))))) (, ",") (parameter_declaration "undefined4 *******param_2" (type_identifier "undefined4") (pointer_declarator "*******param_2" (* "*") (pointer_declarator "******param_2" (* "*") (pointer_declarator "*****param_2" (* "*") (pointer_declarator "****param_2" (* "*") (pointer_declarator "***param_2" (* "*") (pointer_declarator "**param_2" (* "*") (pointer_declarator "*param_2" (* "*") (identifier "param_2"))))))))) (, ",") (parameter_declaration "undefined4 ******param_3" (type_identifier "undefined4") (pointer_declarator "******param_3" (* "*") (pointer_declarator "*****param_3" (* "*") (pointer_declarator "****param_3" (* "*") (pointer_declarator "***param_3" (* "*") (pointer_declarator "**param_3" (* "*") (pointer_declarator "*param_3" (* "*") (identifier "param_3")))))))) () ")")))))))))) (compound_statement "{\n  bool bVar1;\n  undefined4 ******ppppppuVar2;\n  undefined *puVar3;\n  undefined4 uVar4;\n  undefined4 uVar5;\n  undefined4 ******ppppppuVar6;\n  undefined4 ******ppppppuVar7;\n  int extraout_v1;\n  int extraout_v1_00;\n  int extraout_v1_01;\n  int extraout_v1_02;\n  int extraout_v1_03;\n  int extraout_v1_04;\n  int extraout_v1_05;\n  int extraout_v1_06;\n  int extraout_v1_07;\n  int extraout_v1_08;\n  int extraout_v1_09;\n  int extraout_v1_10;\n  undefined *puVar8;\n  undefined4 *******pppppppuVar9;\n  int iVar10;\n  int iVar11;\n  undefined4 *******pppppppuVar12;\n  undefined4 *******pppppppuVar13;\n  int iVar14;\n  int iVar15;\n  undefined4 *******unaff_s0;\n  undefined4 *******unaff_s1;\n  undefined4 ******unaff_s2;\n  undefined4 *******unaff_s3;\n  int *piVar16;\n  int *piVar17;\n  undefined4 ******unaff_s4;\n  int *piVar18;\n  undefined4 *******unaff_s5;\n  undefined4 *******unaff_s6;\n  undefined4 ******ppppppuVar19;\n  undefined4 *******unaff_s7;\n  undefined *puVar20;\n  code *pcVar21;\n  undefined4 *******unaff_s8;\n  undefined4 ******ppppppuVar22;\n  code *pcVar23;\n  code *pcVar24;\n  double dVar25;\n  double dVar26;\n  double dVar27;\n  double dVar28;\n  double dVar29;\n  double dVar30;\n  double dVar31;\n  double dVar32;\n  double dVar33;\n  double dVar34;\n  double dVar35;\n  undefined8 uVar36;\n  undefined4 uStack_270;\n  undefined4 uStack_26c;\n  int iStack_268;\n  int iStack_264;\n  undefined4 uStack_260;\n  undefined4 uStack_25c;\n  undefined4 *******pppppppuStack_258;\n  undefined4 *puStack_254;\n  int iStack_250;\n  int iStack_24c;\n  undefined4 *******pppppppuStack_248;\n  undefined4 *******pppppppuStack_244;\n  undefined4 ******ppppppuStack_240;\n  int *piStack_23c;\n  int *piStack_238;\n  undefined4 *******pppppppuStack_234;\n  undefined4 *******pppppppuStack_230;\n  undefined4 *******pppppppuStack_22c;\n  undefined4 *******pppppppuStack_228;\n  code *pcStack_224;\n  undefined4 *******pppppppuStack_210;\n  undefined4 *******pppppppuStack_20c;\n  code *pcStack_208;\n  undefined4 ******ppppppuStack_1fc;\n  undefined4 uStack_1f8;\n  undefined4 uStack_1f4;\n  undefined4 *******pppppppuStack_1f0;\n  undefined4 *******pppppppuStack_1ec;\n  undefined4 *******pppppppuStack_1e8;\n  int *piStack_1e4;\n  undefined4 *******pppppppuStack_1e0;\n  undefined4 *puStack_1dc;\n  undefined4 *******pppppppuStack_1d8;\n  int iStack_1d4;\n  undefined4 *******pppppppuStack_1d0;\n  undefined4 *******pppppppuStack_1cc;\n  undefined4 ******ppppppuStack_1c8;\n  undefined4 *******pppppppuStack_1c4;\n  int *piStack_1c0;\n  undefined4 *******pppppppuStack_1bc;\n  undefined4 *******pppppppuStack_1b8;\n  undefined4 *******pppppppuStack_1b4;\n  undefined4 *******pppppppuStack_1b0;\n  code *pcStack_1ac;\n  undefined4 ******ppppppuStack_198;\n  undefined4 *******pppppppuStack_194;\n  undefined4 ******ppppppuStack_190;\n  code *pcStack_188;\n  undefined4 *******pppppppuStack_17c;\n  undefined4 *******pppppppuStack_178;\n  undefined4 ******ppppppuStack_174;\n  undefined4 *******pppppppuStack_170;\n  code *pcStack_16c;\n  undefined4 ******ppppppuStack_158;\n  undefined4 *******pppppppuStack_154;\n  undefined *puStack_150;\n  undefined4 uStack_148;\n  undefined4 uStack_144;\n  undefined4 *******pppppppuStack_13c;\n  undefined4 *******pppppppuStack_138;\n  undefined4 ******ppppppuStack_134;\n  undefined4 *******pppppppuStack_130;\n  undefined4 *******pppppppuStack_12c;\n  undefined4 *******pppppppuStack_128;\n  undefined4 ******ppppppuStack_124;\n  undefined4 *puStack_120;\n  int iStack_11c;\n  undefined4 *******pppppppuStack_118;\n  undefined4 *******pppppppuStack_114;\n  undefined4 ******ppppppuStack_110;\n  undefined4 *******pppppppuStack_10c;\n  undefined4 ******ppppppuStack_108;\n  undefined4 *******pppppppuStack_104;\n  undefined4 *******pppppppuStack_100;\n  code *pcStack_fc;\n  undefined4 ******local_e8;\n  undefined4 *******local_e4;\n  double local_c8;\n  double local_a0;\n  undefined4 *******local_80;\n  undefined4 *******local_7c;\n  undefined4 ******local_78;\n  undefined4 *******local_74;\n  undefined4 *******local_70;\n  undefined4 *******local_6c;\n  undefined4 *******local_68;\n  undefined4 *******local_64;\n  undefined4 *******local_60;\n  int local_5c;\n  \n  puVar20 = PTR___stack_chk_guard_003a9230;\n  local_5c = *(int *)PTR___stack_chk_guard_003a9230;\n  if (param_1 == (undefined4 *******)0x0) {\nLAB_001c8ef8:\n    param_1 = unaff_s1;\n    (*(code *)PTR___assert_fail_003a9608)\n              (PTR_LAB_003a88e0 + 0xdd0,PTR_s_courses_003a88ec + -0x288c,0x322,\n               PTR_s_courses_003a88ec + -0x2688);\n  }\n  else if (param_1[0xcdb] == (undefined4 ******)0xabacadab) {\n    if (param_1[0xcd4] != (undefined4 ******)0x0) {\n      local_e4 = param_1 + 0xd0;\n      local_e8 = (undefined4 ******)(PTR_s_t_to_left_003a88e4 + -0x62ac);\n      (*(code *)PTR_LogMagickEvent_003a91e0)\n                (0x8000,PTR_s_courses_003a88ec + -0x288c,PTR_s_courses_003a88ec + -0x269c,0x325);\n    }\n    unaff_s6 = (undefined4 *******)(*(code *)PTR_NewImageList_003a8e84)();\n    local_80 = unaff_s6;\n    ppppppuVar2 = (undefined4 ******)\n                  (*(code *)PTR_ParseGravityGeometry_003a97fc)(param_1,param_2,&local_7c,param_3);\n    unaff_s4 = local_78;\n    unaff_s0 = local_7c;\n    unaff_s3 = (undefined4 *******)PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;\n    if ((int)ppppppuVar2 << 0xe < 0) {\n      ppppppuVar7 = param_1[7];\n      if (local_7c == (undefined4 *******)0x0) {\n        local_7c = (undefined4 *******)0x1;\n        dVar35 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n      }\n      else {\n        dVar35 = (double)(int)local_7c;\n        if ((int)local_7c < 0) {\n          dVar35 = dVar35 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n      }\n      if (local_78 == (undefined4 ******)0x0) {\n        dVar30 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n        local_78 = (undefined4 ******)0x1;\n        if (((uint)ppppppuVar2 & 0x2000) != 0) goto LAB_001c8e14;\nLAB_001c8484:\n        pppppppuVar9 = local_74;\n        if ((int)local_74 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_74;\n        }\n        puVar8 = (undefined *)((int)param_1[6] - (int)pppppppuVar9);\n        pppppppuVar9 = local_70;\n        if ((int)local_70 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_70;\n        }\n        puVar3 = (undefined *)((int)ppppppuVar7 - (int)pppppppuVar9);\n      }\n      else {\n        dVar30 = (double)(int)local_78;\n        if ((int)local_78 < 0) {\n          dVar30 = dVar30 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n        if (((uint)ppppppuVar2 & 0x2000) == 0) goto LAB_001c8484;\nLAB_001c8e14:\n        pppppppuVar9 = local_74;\n        if ((int)local_74 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_74;\n        }\n        puVar8 = (undefined *)((int)pppppppuVar9 + (int)param_1[6]);\n        if ((int)local_70 < 0) {\n          puVar3 = (undefined *)((int)ppppppuVar7 - (int)local_70);\n        }\n        else {\n          puVar3 = (undefined *)((int)local_70 + (int)ppppppuVar7);\n        }\n      }\n      unaff_s4 = (undefined4 ******)((uint)ppppppuVar2 & 0x2000);\n      dVar34 = (double)(int)puVar8;\n      if ((int)puVar8 < 0) {\n        dVar34 = dVar34 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n      }\n      dVar35 = dVar34 / dVar35;\n      local_c8 = (double)(int)puVar3;\n      if ((int)puVar3 < 0) {\n        local_c8 = local_c8 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n      }\n      dVar25 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n      local_a0 = dVar25;\n      if (dVar35 < dVar25) {\n        local_a0 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n        dVar35 = dVar25;\n      }\n      if (local_a0 <= local_c8 / dVar30) {\n        local_a0 = local_c8 / dVar30;\n      }\n      dVar30 = 0.0;\n      unaff_s7 = local_70;\n      if (0.0 < local_c8) {\n        dVar25 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4780);\n        dVar31 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4788);\n        if (unaff_s4 != (undefined4 ******)0x0) goto LAB_001c8b70;\nLAB_001c854c:\n        unaff_s7 = local_70;\n        dVar32 = dVar30;\n        if ((int)local_70 < 1) {\n          dVar32 = dVar30 - (double)(int)local_70;\n        }\n        dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n        dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n        if (dVar32 - dVar26 < dVar27 - dVar32) {\n          dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar23 = (code *)PTR_floor_003a9670;\n          if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d7c;\n        }\n        else {\n          if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d7c:\n            iVar15 = -0x7ffffdff;\n            goto joined_r0x001c8cbc;\n          }\n          dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar23 = (code *)PTR_ceil_003a8c20;\n        }\n        if (dVar26 < dVar32) {\n          iVar15 = 0x7ffffdff;\n        }\n        else {\n          dVar32 = (double)(*pcVar23)(dVar32);\n          iVar15 = (int)dVar32;\n        }\njoined_r0x001c8cbc:\n        dVar30 = dVar30 + local_a0;\n        if ((int)unaff_s7 < 0) {\n          dVar32 = 0.0;\n        }\n        else {\n          dVar32 = (double)(int)unaff_s7;\n        }\n        dVar32 = dVar30 + dVar32;\n        dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n        dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n        if (dVar32 - dVar26 < dVar27 - dVar32) {\n          if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8630;\n            goto LAB_001c8cec;\n          }\n        }\n        else if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;\n          goto LAB_001c8d18;\n        }\nLAB_001c8c88:\n        iVar14 = -0x7ffffdff;\nLAB_001c8644:\n        do {\n          unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n          param_2 = (undefined4 *******)((int)param_1[0x8d] + iVar15);\n          dVar32 = 0.0;\n          local_68 = unaff_s8;\n          local_60 = param_2;\n          if (0.0 < dVar34) {\n            dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n            unaff_s6 = &local_6c;\n            dVar27 = *(double *)((int)unaff_s3 + 0x4780);\n            do {\n              unaff_s7 = local_74;\n              if (unaff_s4 == (undefined4 ******)0x0) {\n                dVar33 = dVar32;\n                if ((int)local_74 < 1) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }\nLAB_001c8b04:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;\nLAB_001c8708:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8700:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar33 = 0.0;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8768:\n                  dVar33 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar33 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n              }\n              else {\n                dVar33 = dVar32;\n                if (0 < (int)local_74) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar27 <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar33 = 0.0;\n                }\n                else {\n                  if (dVar33 < dVar27) goto LAB_001c8b24;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (dVar26 < dVar33) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8850:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < dVar25) goto LAB_001c8a44;\n                  if (dVar33 <= dVar26) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar14 = 0x7ffffdff;\n                }\n                else if (dVar25 <= dVar33) {\n                  if (dVar33 <= dVar31) goto LAB_001c8abc;\n                  iVar14 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar14 = -0x7ffffdff;\n                }\n              }\n              unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n              param_2 = (undefined4 *******)((int)param_1[0x8c] + iVar15);\n              local_6c = unaff_s8;\n              local_64 = param_2;\n              iVar15 = (*(code *)PTR_CropImage_003a90b8)(param_1,unaff_s6,param_3);\n              if (iVar15 != 0) {\n                (*(code *)PTR_AppendImageToList_003a9880)(&local_80,iVar15);\n              }\n            } while (dVar32 < dVar34);\n          }\n          unaff_s5 = unaff_s3;\n          if (local_c8 <= dVar30) break;\n          if (unaff_s4 == (undefined4 ******)0x0) goto LAB_001c854c;\nLAB_001c8b70:\n          unaff_s7 = local_70;\n          dVar32 = dVar30;\n          if (0 < (int)local_70) {\n            dVar32 = dVar30 - (double)(int)local_70;\n          }\n          dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n          dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          if (dVar32 - dVar26 < dVar27 - dVar32) {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d8c;\n            pcVar23 = (code *)PTR_floor_003a9670;\n            if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8d50;\nLAB_001c8bd8:\n            dVar32 = (double)(*pcVar23)(dVar32);\n            iVar15 = (int)dVar32;\nLAB_001c8bf0:\n            dVar30 = dVar30 + local_a0;\n            if (-2 < (int)unaff_s7) goto LAB_001c8c00;\nLAB_001c8d6c:\n            dVar32 = (double)(int)unaff_s7;\n          }\n          else {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d8c:\n              iVar15 = -0x7ffffdff;\n              goto LAB_001c8bf0;\n            }\n            pcVar23 = (code *)PTR_ceil_003a8c20;\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8bd8;\nLAB_001c8d50:\n            iVar15 = 0x7ffffdff;\n            dVar30 = dVar30 + local_a0;\n            if ((int)unaff_s7 < -1) goto LAB_001c8d6c;\nLAB_001c8c00:\n            dVar32 = 0.0;\n          }\n          dVar32 = dVar30 + dVar32;\n          dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n          dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          if (dVar32 - dVar26 < dVar27 - dVar32) {\n            if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n              if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) {\nLAB_001c8cec:\n                iVar14 = 0x7ffffdff;\n              }\n              else {\nLAB_001c8630:\n                dVar32 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n                iVar14 = (int)dVar32;\n              }\n              goto LAB_001c8644;\n            }\n            goto LAB_001c8c88;\n          }\n          if (dVar32 < dVar25) goto LAB_001c8c88;\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;\nLAB_001c8d18:\n          dVar32 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          iVar14 = (int)dVar32;\n        } while( true );\n      }\n      (*(code *)PTR_ClearMagickException_003a90f8)(param_3);\n      pppppppuVar9 = local_80;\n      unaff_s0 = param_2;\n    }\n    else {\n      unaff_s3 = &local_7c;\n      if (((local_7c == (undefined4 *******)0x0) && (local_78 == (undefined4 ******)0x0)) ||\n         (((uint)ppppppuVar2 & 3) != 0)) {\n        local_80 = (undefined4 *******)(*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n        pppppppuVar9 = local_80;\n        unaff_s4 = ppppppuVar2;\n        if ((local_80 != (undefined4 *******)0x0) &&\n           (unaff_s4 = (undefined4 ******)((uint)ppppppuVar2 & 0x2000),\n           unaff_s4 != (undefined4 ******)0x0)) {\n          local_80[0x8c] = (undefined4 ******)((int)local_80[0x8c] - (int)local_74);\n          local_80[0x8d] = (undefined4 ******)((int)local_80[0x8d] - (int)local_70);\n          local_80[0x8a] = local_7c;\n          local_80[0x8b] = local_78;\n        }\n      }\n      else {\n        unaff_s7 = (undefined4 *******)param_1[6];\n        if ((local_7c < unaff_s7) || (local_78 < param_1[7])) {\n          ppppppuVar2 = param_1[0x8b];\n          if ((undefined4 *******)param_1[0x8a] != (undefined4 *******)0x0) {\n            unaff_s7 = (undefined4 *******)param_1[0x8a];\n          }\n          if (ppppppuVar2 == (undefined4 ******)0x0) {\n            ppppppuVar2 = param_1[7];\n          }\n          if (local_7c == (undefined4 *******)0x0) {\n            unaff_s0 = unaff_s7;\n          }\n          if (local_78 == (undefined4 ******)0x0) {\n            unaff_s4 = ppppppuVar2;\n          }\n          pppppppuVar9 = local_80;\n          if (0 < (int)ppppppuVar2) {\n            unaff_s3 = (undefined4 *******)0x0;\n            unaff_s8 = &local_80;\n            do {\n              unaff_s5 = (undefined4 *******)0x0;\n              if ((int)unaff_s7 < 1) {\n                pppppppuVar9 = local_80;\n                if (unaff_s6 == (undefined4 *******)0x0) break;\n              }\n              else {\n                do {\n                  local_7c = unaff_s0;\n                  local_78 = unaff_s4;\n                  local_74 = unaff_s5;\n                  local_70 = unaff_s3;\n                  unaff_s6 = (undefined4 *******)\n                             (*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n                  pppppppuVar9 = local_80;\n                  if (unaff_s6 == (undefined4 *******)0x0) goto LAB_001c8908;\n                  unaff_s5 = (undefined4 *******)((int)unaff_s5 + (int)unaff_s0);\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);\n              }\n              unaff_s3 = (undefined4 *******)((int)unaff_s3 + (int)unaff_s4);\n              pppppppuVar9 = local_80;\n            } while ((int)unaff_s3 < (int)ppppppuVar2);\n          }\n        }\n        else {\n          local_e8 = param_3;\n          pppppppuVar9 = (undefined4 *******)(*(code *)PTR_CloneImage_003a9830)(param_1,0,0,1);\n        }\n      }\n    }\nLAB_001c8908:\n    if (local_5c == *(int *)puVar20) {\n      return pppppppuVar9;\n    }\n    (*(code *)PTR___stack_chk_fail_003a9064)();\n    unaff_s1 = param_1;\n    unaff_s2 = param_3;\n    goto LAB_001c8ef8;\n  }\n  ppppppuVar2 = (undefined4 ******)0x323;\n  pppppppuVar12 = (undefined4 *******)(PTR_s_courses_003a88ec + -0x288c);\n  pcVar23 = ExcerptImage;\n  pppppppuVar9 = (undefined4 *******)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3784);\n  puVar20 = PTR___assert_fail_003a9608;\n  (*(code *)PTR___assert_fail_003a9608)();\n  puVar8 = puVar20 + 0x1e7970;\n  piVar18 = *(int **)(puVar20 + 0x1e02f0);\n  iStack_11c = *piVar18;\n  puStack_150 = puVar8;\n  pppppppuStack_118 = unaff_s0;\n  pppppppuStack_114 = param_1;\n  ppppppuStack_110 = unaff_s2;\n  pppppppuStack_10c = unaff_s3;\n  ppppppuStack_108 = unaff_s4;\n  pppppppuStack_104 = unaff_s5;\n  pppppppuStack_100 = unaff_s6;\n  pcStack_fc = pcVar23;\n  if (pppppppuVar9 == (undefined4 *******)0x0) {\n    iVar15 = *(int *)(puVar20 + 0x1df9ac) + -0x26ac;\n    (**(code **)(puVar20 + 0x1e06c8))\n              (*(int *)(puVar20 + 0x1df9a8) + -0x37b0,*(int *)(puVar20 + 0x1df9ac) + -0x288c,0x3f4,\n               iVar15);\nLAB_001c92d4:\n    iVar15 = iVar15 + -0x26ac;\n    (**(code **)(puVar8 + -0x72a8))\n              (*(int *)(puVar8 + -0x7fd0) + 0x294c,*(int *)(puVar8 + -0x7fc4) + -0x288c,0x3fa,iVar15\n              );\n    ppppppuVar2 = unaff_s2;\nLAB_001c92f4:\n    iVar15 = iVar15 + -0x26ac;\n    (**(code **)(puVar8 + -0x72a8))\n              (*(int *)(puVar8 + -0x7fd0) + 0x1cac,*(int *)(puVar8 + -0x7fc4) + -0x288c,0x3f9,iVar15\n              );\nLAB_001c9314:\n    (**(code **)(puVar8 + -0x784c))();\n    pppppppuVar9 = unaff_s0;\nLAB_001c9320:\n    (**(code **)(puVar8 + -0x72a8))\n              (*(int *)(puVar8 + -0x7fc4) + -0x2850,*(int *)(puVar8 + -0x7fc4) + -0x288c,0x3f8,\n               iVar15 + -0x26ac);\n    unaff_s2 = ppppppuVar2;\n  }\n  else if (pppppppuVar9[0xcdb] == (undefined4 ******)0xabacadab) {\n    if (pppppppuVar9[0xcd4] != (undefined4 ******)0x0) {\n      pppppppuStack_154 = pppppppuVar9 + 0xd0;\n      ppppppuStack_158 = (undefined4 ******)(*(int *)(puVar20 + 0x1df9a4) + -0x62ac);\n      (**(code **)(puVar20 + 0x1e02a0))\n                (0x8000,*(int *)(puVar20 + 0x1df9ac) + -0x288c,\n                 *(int *)(puVar20 + 0x1df9ac) + -0x26bc,0x3f7);\n    }\n    iVar15 = *(int *)(puStack_150 + -0x7fc4);\n    unaff_s3 = pppppppuVar12;\n    puVar8 = puStack_150;\n    if (pppppppuVar12 != (undefined4 *******)0x0) {\n      unaff_s0 = pppppppuVar9;\n      if (ppppppuVar2 == (undefined4 ******)0x0) goto LAB_001c92f4;\n      unaff_s2 = ppppppuVar2;\n      if (ppppppuVar2[7] != (undefined4 *****)0xabacadab) goto LAB_001c92d4;\n      iVar15 = 1;\n      ppppppuStack_158 = ppppppuVar2;\n      param_1 = (undefined4 *******)\n                (**(code **)(puStack_150 + -0x7080))(pppppppuVar9,*pppppppuVar12,pppppppuVar12[1],1)\n      ;\n      if (param_1 != (undefined4 *******)0x0) {\n        uStack_144 = 0;\n        uStack_148 = 0;\n        unaff_s5 = (undefined4 *******)\n                   (**(code **)(puStack_150 + -0x715c))(pppppppuVar9,ppppppuVar2);\n        unaff_s6 = (undefined4 *******)(**(code **)(puStack_150 + -0x79dc))(param_1,ppppppuVar2);\n        iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9);\n        if (((iVar15 == 4) ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9), iVar15 == 3)) &&\n           ((iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 4 ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 3)))) {\n          (**(code **)(puStack_150 + -0x7774))(7);\n          ppppppuVar7 = param_1[7];\n          if ((int)ppppppuVar7 < 0) {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1 < (int)ppppppuVar7 + 0x3f >> 6) goto LAB_001c9298;\nLAB_001c91a4:\n            bVar1 = (int)ppppppuVar7 < 0x80;\n          }\n          else {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if ((int)ppppppuVar7 >> 6 <= extraout_v1) goto LAB_001c91a4;\nLAB_001c9298:\n            (*pcVar23)(7);\n            bVar1 = extraout_v1_02 < 2;\n          }\n          iVar14 = 1;\n          if ((bool)(bVar1 ^ 1)) {\n            (**(code **)(puStack_150 + -0x7774))(7);\n            ppppppuVar7 = param_1[7];\n            if ((int)ppppppuVar7 < 0) {\n              ppppppuVar7 = (undefined4 ******)((int)ppppppuVar7 + 0x3f);\n            }\n            iVar14 = (int)ppppppuVar7 >> 6;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1_01 < iVar14) {\nLAB_001c9234:\n              (*pcVar23)(7);\n              iVar14 = extraout_v1_00;\n            }\n            goto LAB_001c9088;\n          }\n          iVar10 = *(int *)(puStack_150 + -0x7f10);\n        }\n        else {\n          uVar36 = (**(code **)(puStack_150 + -0x7774))(7);\n          if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            uVar36 = (*pcVar23)(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c9070;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            iVar14 = 1;\n          }\n          else {\nLAB_001c9070:\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\nLAB_001c9074:\n            uVar36 = (*pcVar23)(7);\n            if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n               (pcVar23 = *(code **)(puStack_150 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c9234;\n            iVar14 = 2;\n          }\nLAB_001c9088:\n          iVar10 = *(int *)(puStack_150 + -0x7f10);\n        }\n        iVar15 = 0;\n        ppppppuStack_124 = (undefined4 ******)0x1;\n        puStack_120 = &uStack_148;\n        pppppppuStack_13c = pppppppuVar9;\n        pppppppuStack_138 = pppppppuVar12;\n        ppppppuStack_134 = ppppppuVar2;\n        pppppppuStack_130 = unaff_s6;\n        pppppppuStack_12c = unaff_s5;\n        pppppppuStack_128 = param_1;\n        (**(code **)(puStack_150 + -0x7718))(iVar10 + 0x5428,&pppppppuStack_13c,iVar14,0);\n        ppppppuVar2 = ppppppuStack_124;\n        (**(code **)(puStack_150 + -0x79bc))(unaff_s6);\n        (**(code **)(puStack_150 + -0x79bc))(unaff_s5);\n        param_1[0xa8] = pppppppuVar9[0xa8];\n        if (ppppppuVar2 == (undefined4 ******)0x0) {\n          param_1 = (undefined4 *******)(**(code **)(puStack_150 + -0x7964))(param_1);\n        }\n      }\n      puVar8 = puStack_150;\n      if (iStack_11c == *piVar18) {\n        return param_1;\n      }\n      goto LAB_001c9314;\n    }\n    goto LAB_001c9320;\n  }\n  ppppppuVar2 = (undefined4 ******)0x3f5;\n  pcVar21 = *(code **)(puVar8 + -0x72a8);\n  pppppppuVar13 = (undefined4 *******)(*(int *)(puVar8 + -0x7fc4) + -0x288c);\n  pcVar24 = ExtentImage;\n  pppppppuVar12 = (undefined4 *******)(*(int *)(puVar8 + -0x7fc8) + -0x3784);\n  (*pcVar21)();\n  pcVar23 = pcVar21 + 0x1e754c;\n  pcStack_188 = pcVar23;\n  pppppppuStack_17c = pppppppuVar9;\n  pppppppuStack_178 = param_1;\n  ppppppuStack_174 = unaff_s2;\n  pppppppuStack_170 = unaff_s3;\n  pcStack_16c = pcVar24;\n  if (pppppppuVar12 == (undefined4 *******)0x0) {\n    iVar15 = *(int *)(pcVar21 + 0x1df588) + -0x26c8;\n    (**(code **)(pcVar21 + 0x1e02a4))\n              (*(int *)(pcVar21 + 0x1df584) + -0x37b0,*(int *)(pcVar21 + 0x1df588) + -0x288c,0x474,\n               iVar15);\nLAB_001c94fc:\n    iVar15 = iVar15 + -0x26c8;\n    (**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fc4) + -0x2850,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x478,\n               iVar15);\nLAB_001c951c:\n    iVar15 = iVar15 + -0x26c8;\n    (**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fd0) + 0x294c,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x47a,\n               iVar15);\n    pppppppuVar12 = pppppppuVar9;\nLAB_001c953c:\n    (**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fd0) + 0x1cac,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x479,\n               iVar15 + -0x26c8);\n  }\n  else if (pppppppuVar12[0xcdb] == (undefined4 ******)0xabacadab) {\n    if (pppppppuVar12[0xcd4] != (undefined4 ******)0x0) {\n      pppppppuStack_194 = pppppppuVar12 + 0xd0;\n      ppppppuStack_198 = (undefined4 ******)(*(int *)(pcVar21 + 0x1df580) + -0x62ac);\n      (**(code **)(pcVar21 + 0x1dfe7c))\n                (0x8000,*(int *)(pcVar21 + 0x1df588) + -0x288c,\n                 *(int *)(pcVar21 + 0x1df588) + -0x26d4,0x477);\n    }\n    iVar15 = *(int *)(pcStack_188 + -0x7fc4);\n    pppppppuVar9 = pppppppuVar12;\n    param_1 = pppppppuVar13;\n    unaff_s2 = ppppppuVar2;\n    pcVar23 = pcStack_188;\n    if (pppppppuVar13 == (undefined4 *******)0x0) goto LAB_001c94fc;\n    if (ppppppuVar2 != (undefined4 ******)0x0) {\n      if (ppppppuVar2[7] == (undefined4 *****)0xabacadab) {\n        ppppppuStack_198 = ppppppuVar2;\n        pppppppuVar9 = (undefined4 *******)\n                       (**(code **)(pcStack_188 + -0x7080))\n                                 (pppppppuVar12,*pppppppuVar13,pppppppuVar13[1],1);\n        if (pppppppuVar9 != (undefined4 *******)0x0) {\n          iVar15 = (**(code **)(pcStack_188 + -0x7a20))(pppppppuVar9,ppppppuVar2);\n          if (iVar15 == 0) {\n            (**(code **)(pcStack_188 + -0x7964))(pppppppuVar9);\n            pppppppuVar9 = (undefined4 *******)0x0;\n          }\n          else {\n            pppppppuStack_194 = (undefined4 *******)-(int)pppppppuVar13[3];\n            ppppppuStack_198 = (undefined4 ******)-(int)pppppppuVar13[2];\n            ppppppuStack_190 = ppppppuVar2;\n            iVar15 = (**(code **)(pcStack_188 + -0x7bec))\n                               (pppppppuVar9,pppppppuVar12,pppppppuVar12[0x99],1);\n            if (iVar15 != 0) {\n              (**(code **)(pcStack_188 + -0x7d18))\n                        (pppppppuVar9,pppppppuVar12[6],pppppppuVar12[7],pppppppuVar13);\n            }\n          }\n        }\n        return pppppppuVar9;\n      }\n      goto LAB_001c951c;\n    }\n    goto LAB_001c953c;\n  }\n  pcVar21 = *(code **)(pcVar23 + -0x72a8);\n  pppppppuVar9 = (undefined4 *******)(*(int *)(pcVar23 + -0x7fc4) + -0x288c);\n  pcVar24 = FlipImage;\n  pppppppuVar13 = (undefined4 *******)(*(int *)(pcVar23 + -0x7fc8) + -0x3784);\n  (*pcVar21)(pppppppuVar13,pppppppuVar9,0x475,*(int *)(pcVar23 + -0x7fc4) + -0x26c8);\n  pcVar23 = pcVar21 + 0x1e7330;\n  piVar16 = *(int **)(pcVar21 + 0x1dfcb0);\n  iStack_1d4 = *piVar16;\n  pcStack_208 = pcVar23;\n  pppppppuStack_1d0 = pppppppuVar12;\n  pppppppuStack_1cc = param_1;\n  ppppppuStack_1c8 = unaff_s2;\n  pppppppuStack_1c4 = unaff_s3;\n  piStack_1c0 = piVar18;\n  pppppppuStack_1bc = unaff_s5;\n  pppppppuStack_1b8 = unaff_s6;\n  pppppppuStack_1b4 = unaff_s7;\n  pppppppuStack_1b0 = unaff_s8;\n  pcStack_1ac = pcVar24;\n  if (pppppppuVar13 == (undefined4 *******)0x0) {\n    (**(code **)(pcVar21 + 0x1e0088))\n              (*(int *)(pcVar21 + 0x1df368) + -0x37b0,*(int *)(pcVar21 + 0x1df36c) + -0x288c,0x4bc,\n               *(int *)(pcVar21 + 0x1df36c) + -0x26e0);\n    pppppppuVar9 = param_1;\nLAB_001c9944:\n    (**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fd0) + 0x1cac,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x4c0,\n               *(int *)(pcVar23 + -0x7fc4) + -0x26e0);\nLAB_001c9968:\n    (**(code **)(pcVar23 + -0x784c))();\n    pppppppuVar13 = unaff_s7;\nLAB_001c9974:\n    (**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fd0) + 0x294c,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x4c1,\n               *(int *)(pcVar23 + -0x7fc4) + -0x26e0);\n    pppppppuStack_244 = pppppppuVar9;\n  }\n  else {\n    pppppppuStack_244 = param_1;\n    if (pppppppuVar13[0xcdb] == (undefined4 ******)0xabacadab) {\n      if (pppppppuVar13[0xcd4] != (undefined4 ******)0x0) {\n        pppppppuStack_20c = pppppppuVar13 + 0xd0;\n        pppppppuStack_210 = (undefined4 *******)(*(int *)(pcVar21 + 0x1df364) + -0x62ac);\n        (**(code **)(pcVar21 + 0x1dfc60))\n                  (0x8000,*(int *)(pcVar21 + 0x1df36c) + -0x288c,\n                   *(int *)(pcVar21 + 0x1df36c) + -0x26ec,0x4bf);\n      }\n      unaff_s7 = pppppppuVar13;\n      pcVar23 = pcStack_208;\n      if (pppppppuVar9 == (undefined4 *******)0x0) goto LAB_001c9944;\n      if (pppppppuVar9[7] == (undefined4 ******)0xabacadab) {\n        pppppppuStack_210 = pppppppuVar9;\n        pppppppuVar12 =\n             (undefined4 *******)(**(code **)(pcStack_208 + -0x7080))(pppppppuVar13,0,0,1);\n        if (pppppppuVar12 != (undefined4 *******)0x0) {\n          ppppppuStack_1fc = pppppppuVar13[0x8c];\n          unaff_s8 = (undefined4 *******)pppppppuVar13[0x8a];\n          unaff_s2 = pppppppuVar13[0x8b];\n          unaff_s6 = (undefined4 *******)pppppppuVar13[0x8d];\n          uStack_1f4 = 0;\n          uStack_1f8 = 0;\n          piVar18 = (int *)(**(code **)(pcStack_208 + -0x715c))(pppppppuVar13,pppppppuVar9);\n          unaff_s5 = (undefined4 *******)\n                     (**(code **)(pcStack_208 + -0x79dc))(pppppppuVar12,pppppppuVar9);\n          iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13);\n          if (((iVar15 == 4) ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13), iVar15 == 3)) &&\n             ((iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 4 ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 3)))) {\n            (**(code **)(pcStack_208 + -0x7774))(7);\n            ppppppuVar2 = pppppppuVar12[7];\n            if ((int)ppppppuVar2 < 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_03 < (int)ppppppuVar2 + 0x3f >> 6) goto LAB_001c98d4;\nLAB_001c981c:\n              bVar1 = (int)ppppppuVar2 < 0x80;\n            }\n            else {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if ((int)ppppppuVar2 >> 6 <= extraout_v1_03) goto LAB_001c981c;\nLAB_001c98d4:\n              (*pcVar23)(7);\n              bVar1 = extraout_v1_05 < 2;\n            }\n            iVar15 = 1;\n            if ((bool)(bVar1 ^ 1)) {\n              (**(code **)(pcStack_208 + -0x7774))(7);\n              ppppppuVar2 = pppppppuVar12[7];\n              if ((int)ppppppuVar2 < 0) {\n                ppppppuVar2 = (undefined4 ******)((int)ppppppuVar2 + 0x3f);\n              }\n              iVar15 = (int)ppppppuVar2 >> 6;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_06 < iVar15) {\nLAB_001c98ac:\n                (*pcVar23)(7);\n                iVar15 = extraout_v1_04;\n              }\n              goto LAB_001c96d8;\n            }\n            iVar14 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          else {\n            uVar36 = (**(code **)(pcStack_208 + -0x7774))(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              uVar36 = (*pcVar23)(7);\n              if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c96c0;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              iVar15 = 1;\n            }\n            else {\nLAB_001c96c0:\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\nLAB_001c96c4:\n              uVar36 = (*pcVar23)(7);\n              if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n                 (pcVar23 = *(code **)(pcStack_208 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c98ac;\n              iVar15 = 2;\n            }\nLAB_001c96d8:\n            iVar14 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          puStack_1dc = &uStack_1f8;\n          pppppppuStack_1d8 = (undefined4 *******)0x1;\n          pppppppuStack_1f0 = pppppppuVar13;\n          pppppppuStack_1ec = pppppppuVar9;\n          pppppppuStack_1e8 = unaff_s5;\n          piStack_1e4 = piVar18;\n          pppppppuStack_1e0 = pppppppuVar12;\n          (**(code **)(pcStack_208 + -0x7718))(iVar14 + 0x56bc,&pppppppuStack_1f0,iVar15,0);\n          pppppppuVar9 = pppppppuStack_1d8;\n          (**(code **)(pcStack_208 + -0x79bc))(unaff_s5);\n          (**(code **)(pcStack_208 + -0x79bc))(piVar18);\n          pppppppuVar12[0xa8] = pppppppuVar13[0xa8];\n          if (unaff_s2 != (undefined4 ******)0x0) {\n            unaff_s6 = (undefined4 *******)\n                       ((int)unaff_s2 + (-(int)unaff_s6 - (int)pppppppuVar12[7]));\n          }\n          pppppppuVar12[0x8a] = unaff_s8;\n          pppppppuVar12[0x8b] = unaff_s2;\n          pppppppuVar12[0x8c] = ppppppuStack_1fc;\n          pppppppuVar12[0x8d] = unaff_s6;\n          if (pppppppuVar9 == (undefined4 *******)0x0) {\n            pppppppuVar12 = (undefined4 *******)(**(code **)(pcStack_208 + -0x7964))(pppppppuVar12);\n          }\n        }\n        pcVar23 = pcStack_208;\n        if (iStack_1d4 == *piVar16) {\n          return pppppppuVar12;\n        }\n        goto LAB_001c9968;\n      }\n      goto LAB_001c9974;\n    }\n  }\n  pcVar21 = *(code **)(pcVar23 + -0x72a8);\n  iVar14 = *(int *)(pcVar23 + -0x7fc4) + -0x288c;\n  pcVar24 = FlopImage;\n  iVar15 = *(int *)(pcVar23 + -0x7fc8) + -0x3784;\n  (*pcVar21)(iVar15,iVar14,0x4bd,*(int *)(pcVar23 + -0x7fc4) + -0x26e0);\n  piVar17 = *(int **)(pcVar21 + 0x1df874);\n  iStack_24c = *piVar17;\n  pppppppuStack_248 = pppppppuVar12;\n  ppppppuStack_240 = unaff_s2;\n  piStack_23c = piVar16;\n  piStack_238 = piVar18;\n  pppppppuStack_234 = unaff_s5;\n  pppppppuStack_230 = unaff_s6;\n  pppppppuStack_22c = pppppppuVar13;\n  pppppppuStack_228 = unaff_s8;\n  pcStack_224 = pcVar24;\n  if (iVar15 == 0) {\n    pppppppuVar9 = (undefined4 *******)\n                   (**(code **)(pcVar21 + 0x1dfc4c))\n                             (*(int *)(pcVar21 + 0x1def2c) + -0x37b0,\n                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x543,\n                              *(int *)(pcVar21 + 0x1def30) + -0x26f8);\n    return pppppppuVar9;\n  }\n  if (*(int *)(iVar15 + 0x336c) != -0x54535255) {\n    pppppppuVar9 = (undefined4 *******)\n                   (**(code **)(pcVar21 + 0x1dfc4c))\n                             (*(int *)(pcVar21 + 0x1def2c) + -0x3784,\n                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x544,\n                              *(int *)(pcVar21 + 0x1def30) + -0x26f8);\n    return pppppppuVar9;\n  }\n  if (*(int *)(iVar15 + 0x3350) != 0) {\n    (**(code **)(pcVar21 + 0x1df824))\n              (0x8000,*(int *)(pcVar21 + 0x1def30) + -0x288c,*(int *)(pcVar21 + 0x1def30) + -0x2704,\n               0x546,*(int *)(pcVar21 + 0x1def28) + -0x62ac,iVar15 + 0x340);\n  }\n  if (iVar14 == 0) {\n    pppppppuVar9 = (undefined4 *******)\n                   (**(code **)(pcVar21 + 0x1dfc4c))\n                             (*(int *)(pcVar21 + 0x1def24) + 0x1cac,\n                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x547,\n                              *(int *)(pcVar21 + 0x1def30) + -0x26f8);\n    return pppppppuVar9;\n  }\n  if (*(int *)(iVar14 + 0x1c) != -0x54535255) goto LAB_001c9db0;\n  pppppppuVar9 = (undefined4 *******)(**(code **)(pcVar21 + 0x1dfe74))(iVar15,0,0,1,iVar14);\n  if (pppppppuVar9 != (undefined4 *******)0x0) {\n    ppppppuVar2 = *(undefined4 *******)(iVar15 + 0x234);\n    ppppppuVar7 = *(undefined4 *******)(iVar15 + 0x228);\n    ppppppuVar22 = *(undefined4 *******)(iVar15 + 0x22c);\n    ppppppuVar19 = *(undefined4 *******)(iVar15 + 0x230);\n    uStack_26c = 0;\n    uStack_270 = 0;\n    uVar4 = (**(code **)(pcVar21 + 0x1dfd98))(iVar15,iVar14);\n    uVar5 = (**(code **)(pcVar21 + 0x1df518))(pppppppuVar9,iVar14);\n    iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(iVar15);\n    if (((iVar10 == 4) || (iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(iVar15), iVar10 == 3)) &&\n       ((iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(pppppppuVar9), iVar10 == 4 ||\n        (iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(pppppppuVar9), iVar10 == 3)))) {\n      (**(code **)(pcVar21 + 0x1df780))(7);\n      ppppppuVar6 = pppppppuVar9[7];\n      if ((int)ppppppuVar6 < 0) {\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (extraout_v1_07 < (int)ppppppuVar6 + 0x3f >> 6) goto LAB_001c9d10;\nLAB_001c9c58:\n        bVar1 = (int)ppppppuVar6 < 0x80;\n      }\n      else {\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if ((int)ppppppuVar6 >> 6 <= extraout_v1_07) goto LAB_001c9c58;\nLAB_001c9d10:\n        (*pcVar23)(7);\n        bVar1 = extraout_v1_09 < 2;\n      }\n      iVar10 = 1;\n      if ((bool)(bVar1 ^ 1)) {\n        (**(code **)(pcVar21 + 0x1df780))(7);\n        ppppppuVar6 = pppppppuVar9[7];\n        if ((int)ppppppuVar6 < 0) {\n          ppppppuVar6 = (undefined4 ******)((int)ppppppuVar6 + 0x3f);\n        }\n        iVar10 = (int)ppppppuVar6 >> 6;\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (extraout_v1_10 < iVar10) {\nLAB_001c9ce8:\n          (*pcVar23)(7);\n          iVar10 = extraout_v1_08;\n        }\n        goto LAB_001c9b14;\n      }\n      iVar11 = *(int *)(pcVar21 + 0x1defe4);\n    }\n    else {\n      uVar36 = (**(code **)(pcVar21 + 0x1df780))(7);\n      if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (1 < (uint)uVar36) goto LAB_001c9b00;\n        uVar36 = (*pcVar23)(7);\n        if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c9afc;\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (1 < (uint)uVar36) goto LAB_001c9b00;\n        iVar10 = 1;\n      }\n      else {\nLAB_001c9afc:\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\nLAB_001c9b00:\n        uVar36 = (*pcVar23)(7);\n        if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n           (pcVar23 = *(code **)(pcVar21 + 0x1df780), (uint)uVar36 < 2)) goto LAB_001c9ce8;\n        iVar10 = 2;\n      }\nLAB_001c9b14:\n      iVar11 = *(int *)(pcVar21 + 0x1defe4);\n    }\n    puStack_254 = &uStack_270;\n    iStack_250 = 1;\n    iStack_268 = iVar15;\n    iStack_264 = iVar14;\n    uStack_260 = uVar5;\n    uStack_25c = uVar4;\n    pppppppuStack_258 = pppppppuVar9;\n    (**(code **)(pcVar21 + 0x1df7dc))(iVar11 + 0x594c,&iStack_268,iVar10,0);\n    iVar14 = iStack_250;\n    (**(code **)(pcVar21 + 0x1df538))(uVar5);\n    (**(code **)(pcVar21 + 0x1df538))(uVar4);\n    pppppppuVar9[0xa8] = *(undefined4 *******)(iVar15 + 0x2a0);\n    if (ppppppuVar7 != (undefined4 ******)0x0) {\n      ppppppuVar19 = (undefined4 ******)\n                     ((int)ppppppuVar7 + (-(int)ppppppuVar19 - (int)pppppppuVar9[6]));\n    }\n    pppppppuVar9[0x8a] = ppppppuVar7;\n    pppppppuVar9[0x8b] = ppppppuVar22;\n    pppppppuVar9[0x8c] = ppppppuVar19;\n    pppppppuVar9[0x8d] = ppppppuVar2;\n    if (iVar14 == 0) {\n      pppppppuVar9 = (undefined4 *******)(**(code **)(pcVar21 + 0x1df590))(pppppppuVar9);\n    }\n  }\n  if (iStack_24c == *piVar17) {\n    return pppppppuVar9;\n  }\n  (**(code **)(pcVar21 + 0x1df6a8))();\nLAB_001c9db0:\n  pppppppuVar9 = (undefined4 *******)\n                 (**(code **)(pcVar21 + 0x1dfc4c))\n                           (*(int *)(pcVar21 + 0x1def24) + 0x294c,\n                            *(int *)(pcVar21 + 0x1def30) + -0x288c,0x548,\n                            *(int *)(pcVar21 + 0x1def30) + -0x26f8);\n  return pppppppuVar9;\n}" ({ "{") (declaration "bool bVar1;" (primitive_type "bool") (identifier "bVar1") (; ";")) (declaration "undefined4 ******ppppppuVar2;" (type_identifier "undefined4") (pointer_declarator "******ppppppuVar2" (* "*") (pointer_declarator "*****ppppppuVar2" (* "*") (pointer_declarator "****ppppppuVar2" (* "*") (pointer_declarator "***ppppppuVar2" (* "*") (pointer_declarator "**ppppppuVar2" (* "*") (pointer_declarator "*ppppppuVar2" (* "*") (identifier "ppppppuVar2"))))))) (; ";")) (declaration "undefined *puVar3;" (type_identifier "undefined") (pointer_declarator "*puVar3" (* "*") (identifier "puVar3")) (; ";")) (declaration "undefined4 uVar4;" (type_identifier "undefined4") (identifier "uVar4") (; ";")) (declaration "undefined4 uVar5;" (type_identifier "undefined4") (identifier "uVar5") (; ";")) (declaration "undefined4 ******ppppppuVar6;" (type_identifier "undefined4") (pointer_declarator "******ppppppuVar6" (* "*") (pointer_declarator "*****ppppppuVar6" (* "*") (pointer_declarator "****ppppppuVar6" (* "*") (pointer_declarator "***ppppppuVar6" (* "*") (pointer_declarator "**ppppppuVar6" (* "*") (pointer_declarator "*ppppppuVar6" (* "*") (identifier "ppppppuVar6"))))))) (; ";")) (declaration "undefined4 ******ppppppuVar7;" (type_identifier "undefined4") (pointer_declarator "******ppppppuVar7" (* "*") (pointer_declarator "*****ppppppuVar7" (* "*") (pointer_declarator "****ppppppuVar7" (* "*") (pointer_declarator "***ppppppuVar7" (* "*") (pointer_declarator "**ppppppuVar7" (* "*") (pointer_declarator "*ppppppuVar7" (* "*") (identifier "ppppppuVar7"))))))) (; ";")) (declaration "int extraout_v1;" (primitive_type "int") (identifier "extraout_v1") (; ";")) (declaration "int extraout_v1_00;" (primitive_type "int") (identifier "extraout_v1_00") (; ";")) (declaration "int extraout_v1_01;" (primitive_type "int") (identifier "extraout_v1_01") (; ";")) (declaration "int extraout_v1_02;" (primitive_type "int") (identifier "extraout_v1_02") (; ";")) (declaration "int extraout_v1_03;" (primitive_type "int") (identifier "extraout_v1_03") (; ";")) (declaration "int extraout_v1_04;" (primitive_type "int") (identifier "extraout_v1_04") (; ";")) (declaration "int extraout_v1_05;" (primitive_type "int") (identifier "extraout_v1_05") (; ";")) (declaration "int extraout_v1_06;" (primitive_type "int") (identifier "extraout_v1_06") (; ";")) (declaration "int extraout_v1_07;" (primitive_type "int") (identifier "extraout_v1_07") (; ";")) (declaration "int extraout_v1_08;" (primitive_type "int") (identifier "extraout_v1_08") (; ";")) (declaration "int extraout_v1_09;" (primitive_type "int") (identifier "extraout_v1_09") (; ";")) (declaration "int extraout_v1_10;" (primitive_type "int") (identifier "extraout_v1_10") (; ";")) (declaration "undefined *puVar8;" (type_identifier "undefined") (pointer_declarator "*puVar8" (* "*") (identifier "puVar8")) (; ";")) (declaration "undefined4 *******pppppppuVar9;" (type_identifier "undefined4") (pointer_declarator "*******pppppppuVar9" (* "*") (pointer_declarator "******pppppppuVar9" (* "*") (pointer_declarator "*****pppppppuVar9" (* "*") (pointer_declarator "****pppppppuVar9" (* "*") (pointer_declarator "***pppppppuVar9" (* "*") (pointer_declarator "**pppppppuVar9" (* "*") (pointer_declarator "*pppppppuVar9" (* "*") (identifier "pppppppuVar9")))))))) (; ";")) (declaration "int iVar10;" (primitive_type "int") (identifier "iVar10") (; ";")) (declaration "int iVar11;" (primitive_type "int") (identifier "iVar11") (; ";")) (declaration "undefined4 *******pppppppuVar12;" (type_identifier "undefined4") (pointer_declarator "*******pppppppuVar12" (* "*") (pointer_declarator "******pppppppuVar12" (* "*") (pointer_declarator "*****pppppppuVar12" (* "*") (pointer_declarator "****pppppppuVar12" (* "*") (pointer_declarator "***pppppppuVar12" (* "*") (pointer_declarator "**pppppppuVar12" (* "*") (pointer_declarator "*pppppppuVar12" (* "*") (identifier "pppppppuVar12")))))))) (; ";")) (declaration "undefined4 *******pppppppuVar13;" (type_identifier "undefined4") (pointer_declarator "*******pppppppuVar13" (* "*") (pointer_declarator "******pppppppuVar13" (* "*") (pointer_declarator "*****pppppppuVar13" (* "*") (pointer_declarator "****pppppppuVar13" (* "*") (pointer_declarator "***pppppppuVar13" (* "*") (pointer_declarator "**pppppppuVar13" (* "*") (pointer_declarator "*pppppppuVar13" (* "*") (identifier "pppppppuVar13")))))))) (; ";")) (declaration "int iVar14;" (primitive_type "int") (identifier "iVar14") (; ";")) (declaration "int iVar15;" (primitive_type "int") (identifier "iVar15") (; ";")) (declaration "undefined4 *******unaff_s0;" (type_identifier "undefined4") (pointer_declarator "*******unaff_s0" (* "*") (pointer_declarator "******unaff_s0" (* "*") (pointer_declarator "*****unaff_s0" (* "*") (pointer_declarator "****unaff_s0" (* "*") (pointer_declarator "***unaff_s0" (* "*") (pointer_declarator "**unaff_s0" (* "*") (pointer_declarator "*unaff_s0" (* "*") (identifier "unaff_s0")))))))) (; ";")) (declaration "undefined4 *******unaff_s1;" (type_identifier "undefined4") (pointer_declarator "*******unaff_s1" (* "*") (pointer_declarator "******unaff_s1" (* "*") (pointer_declarator "*****unaff_s1" (* "*") (pointer_declarator "****unaff_s1" (* "*") (pointer_declarator "***unaff_s1" (* "*") (pointer_declarator "**unaff_s1" (* "*") (pointer_declarator "*unaff_s1" (* "*") (identifier "unaff_s1")))))))) (; ";")) (declaration "undefined4 ******unaff_s2;" (type_identifier "undefined4") (pointer_declarator "******unaff_s2" (* "*") (pointer_declarator "*****unaff_s2" (* "*") (pointer_declarator "****unaff_s2" (* "*") (pointer_declarator "***unaff_s2" (* "*") (pointer_declarator "**unaff_s2" (* "*") (pointer_declarator "*unaff_s2" (* "*") (identifier "unaff_s2"))))))) (; ";")) (declaration "undefined4 *******unaff_s3;" (type_identifier "undefined4") (pointer_declarator "*******unaff_s3" (* "*") (pointer_declarator "******unaff_s3" (* "*") (pointer_declarator "*****unaff_s3" (* "*") (pointer_declarator "****unaff_s3" (* "*") (pointer_declarator "***unaff_s3" (* "*") (pointer_declarator "**unaff_s3" (* "*") (pointer_declarator "*unaff_s3" (* "*") (identifier "unaff_s3")))))))) (; ";")) (declaration "int *piVar16;" (primitive_type "int") (pointer_declarator "*piVar16" (* "*") (identifier "piVar16")) (; ";")) (declaration "int *piVar17;" (primitive_type "int") (pointer_declarator "*piVar17" (* "*") (identifier "piVar17")) (; ";")) (declaration "undefined4 ******unaff_s4;" (type_identifier "undefined4") (pointer_declarator "******unaff_s4" (* "*") (pointer_declarator "*****unaff_s4" (* "*") (pointer_declarator "****unaff_s4" (* "*") (pointer_declarator "***unaff_s4" (* "*") (pointer_declarator "**unaff_s4" (* "*") (pointer_declarator "*unaff_s4" (* "*") (identifier "unaff_s4"))))))) (; ";")) (declaration "int *piVar18;" (primitive_type "int") (pointer_declarator "*piVar18" (* "*") (identifier "piVar18")) (; ";")) (declaration "undefined4 *******unaff_s5;" (type_identifier "undefined4") (pointer_declarator "*******unaff_s5" (* "*") (pointer_declarator "******unaff_s5" (* "*") (pointer_declarator "*****unaff_s5" (* "*") (pointer_declarator "****unaff_s5" (* "*") (pointer_declarator "***unaff_s5" (* "*") (pointer_declarator "**unaff_s5" (* "*") (pointer_declarator "*unaff_s5" (* "*") (identifier "unaff_s5")))))))) (; ";")) (declaration "undefined4 *******unaff_s6;" (type_identifier "undefined4") (pointer_declarator "*******unaff_s6" (* "*") (pointer_declarator "******unaff_s6" (* "*") (pointer_declarator "*****unaff_s6" (* "*") (pointer_declarator "****unaff_s6" (* "*") (pointer_declarator "***unaff_s6" (* "*") (pointer_declarator "**unaff_s6" (* "*") (pointer_declarator "*unaff_s6" (* "*") (identifier "unaff_s6")))))))) (; ";")) (declaration "undefined4 ******ppppppuVar19;" (type_identifier "undefined4") (pointer_declarator "******ppppppuVar19" (* "*") (pointer_declarator "*****ppppppuVar19" (* "*") (pointer_declarator "****ppppppuVar19" (* "*") (pointer_declarator "***ppppppuVar19" (* "*") (pointer_declarator "**ppppppuVar19" (* "*") (pointer_declarator "*ppppppuVar19" (* "*") (identifier "ppppppuVar19"))))))) (; ";")) (declaration "undefined4 *******unaff_s7;" (type_identifier "undefined4") (pointer_declarator "*******unaff_s7" (* "*") (pointer_declarator "******unaff_s7" (* "*") (pointer_declarator "*****unaff_s7" (* "*") (pointer_declarator "****unaff_s7" (* "*") (pointer_declarator "***unaff_s7" (* "*") (pointer_declarator "**unaff_s7" (* "*") (pointer_declarator "*unaff_s7" (* "*") (identifier "unaff_s7")))))))) (; ";")) (declaration "undefined *puVar20;" (type_identifier "undefined") (pointer_declarator "*puVar20" (* "*") (identifier "puVar20")) (; ";")) (declaration "code *pcVar21;" (type_identifier "code") (pointer_declarator "*pcVar21" (* "*") (identifier "pcVar21")) (; ";")) (declaration "undefined4 *******unaff_s8;" (type_identifier "undefined4") (pointer_declarator "*******unaff_s8" (* "*") (pointer_declarator "******unaff_s8" (* "*") (pointer_declarator "*****unaff_s8" (* "*") (pointer_declarator "****unaff_s8" (* "*") (pointer_declarator "***unaff_s8" (* "*") (pointer_declarator "**unaff_s8" (* "*") (pointer_declarator "*unaff_s8" (* "*") (identifier "unaff_s8")))))))) (; ";")) (declaration "undefined4 ******ppppppuVar22;" (type_identifier "undefined4") (pointer_declarator "******ppppppuVar22" (* "*") (pointer_declarator "*****ppppppuVar22" (* "*") (pointer_declarator "****ppppppuVar22" (* "*") (pointer_declarator "***ppppppuVar22" (* "*") (pointer_declarator "**ppppppuVar22" (* "*") (pointer_declarator "*ppppppuVar22" (* "*") (identifier "ppppppuVar22"))))))) (; ";")) (declaration "code *pcVar23;" (type_identifier "code") (pointer_declarator "*pcVar23" (* "*") (identifier "pcVar23")) (; ";")) (declaration "code *pcVar24;" (type_identifier "code") (pointer_declarator "*pcVar24" (* "*") (identifier "pcVar24")) (; ";")) (declaration "double dVar25;" (primitive_type "double") (identifier "dVar25") (; ";")) (declaration "double dVar26;" (primitive_type "double") (identifier "dVar26") (; ";")) (declaration "double dVar27;" (primitive_type "double") (identifier "dVar27") (; ";")) (declaration "double dVar28;" (primitive_type "double") (identifier "dVar28") (; ";")) (declaration "double dVar29;" (primitive_type "double") (identifier "dVar29") (; ";")) (declaration "double dVar30;" (primitive_type "double") (identifier "dVar30") (; ";")) (declaration "double dVar31;" (primitive_type "double") (identifier "dVar31") (; ";")) (declaration "double dVar32;" (primitive_type "double") (identifier "dVar32") (; ";")) (declaration "double dVar33;" (primitive_type "double") (identifier "dVar33") (; ";")) (declaration "double dVar34;" (primitive_type "double") (identifier "dVar34") (; ";")) (declaration "double dVar35;" (primitive_type "double") (identifier "dVar35") (; ";")) (declaration "undefined8 uVar36;" (type_identifier "undefined8") (identifier "uVar36") (; ";")) (declaration "undefined4 uStack_270;" (type_identifier "undefined4") (identifier "uStack_270") (; ";")) (declaration "undefined4 uStack_26c;" (type_identifier "undefined4") (identifier "uStack_26c") (; ";")) (declaration "int iStack_268;" (primitive_type "int") (identifier "iStack_268") (; ";")) (declaration "int iStack_264;" (primitive_type "int") (identifier "iStack_264") (; ";")) (declaration "undefined4 uStack_260;" (type_identifier "undefined4") (identifier "uStack_260") (; ";")) (declaration "undefined4 uStack_25c;" (type_identifier "undefined4") (identifier "uStack_25c") (; ";")) (declaration "undefined4 *******pppppppuStack_258;" (type_identifier "undefined4") (pointer_declarator "*******pppppppuStack_258" (* "*") (pointer_declarator "******pppppppuStack_258" (* "*") (pointer_declarator "*****pppppppuStack_258" (* "*") (pointer_declarator "****pppppppuStack_258" (* "*") (pointer_declarator "***pppppppuStack_258" (* "*") (pointer_declarator "**pppppppuStack_258" (* "*") (pointer_declarator "*pppppppuStack_258" (* "*") (identifier "pppppppuStack_258")))))))) (; ";")) (declaration "undefined4 *puStack_254;" (type_identifier "undefined4") (pointer_declarator "*puStack_254" (* "*") (identifier "puStack_254")) (; ";")) (declaration "int iStack_250;" (primitive_type "int") (identifier "iStack_250") (; ";")) (declaration "int iStack_24c;" (primitive_type "int") (identifier "iStack_24c") (; ";")) (declaration "undefined4 *******pppppppuStack_248;" (type_identifier "undefined4") (pointer_declarator "*******pppppppuStack_248" (* "*") (pointer_declarator "******pppppppuStack_248" (* "*") (pointer_declarator "*****pppppppuStack_248" (* "*") (pointer_declarator "****pppppppuStack_248" (* "*") (pointer_declarator "***pppppppuStack_248" (* "*") (pointer_declarator "**pppppppuStack_248" (* "*") (pointer_declarator "*pppppppuStack_248" (* "*") (identifier "pppppppuStack_248")))))))) (; ";")) (declaration "undefined4 *******pppppppuStack_244;" (type_identifier "undefined4") (pointer_declarator "*******pppppppuStack_244" (* "*") (pointer_declarator "******pppppppuStack_244" (* "*") (pointer_declarator "*****pppppppuStack_244" (* "*") (pointer_declarator "****pppppppuStack_244" (* "*") (pointer_declarator "***pppppppuStack_244" (* "*") (pointer_declarator "**pppppppuStack_244" (* "*") (pointer_declarator "*pppppppuStack_244" (* "*") (identifier "pppppppuStack_244")))))))) (; ";")) (declaration "undefined4 ******ppppppuStack_240;" (type_identifier "undefined4") (pointer_declarator "******ppppppuStack_240" (* "*") (pointer_declarator "*****ppppppuStack_240" (* "*") (pointer_declarator "****ppppppuStack_240" (* "*") (pointer_declarator "***ppppppuStack_240" (* "*") (pointer_declarator "**ppppppuStack_240" (* "*") (pointer_declarator "*ppppppuStack_240" (* "*") (identifier "ppppppuStack_240"))))))) (; ";")) (declaration "int *piStack_23c;" (primitive_type "int") (pointer_declarator "*piStack_23c" (* "*") (identifier "piStack_23c")) (; ";")) (declaration "int *piStack_238;" (primitive_type "int") (pointer_declarator "*piStack_238" (* "*") (identifier "piStack_238")) (; ";")) (declaration "undefined4 *******pppppppuStack_234;" (type_identifier "undefined4") (pointer_declarator "*******pppppppuStack_234" (* "*") (pointer_declarator "******pppppppuStack_234" (* "*") (pointer_declarator "*****pppppppuStack_234" (* "*") (pointer_declarator "****pppppppuStack_234" (* "*") (pointer_declarator "***pppppppuStack_234" (* "*") (pointer_declarator "**pppppppuStack_234" (* "*") (pointer_declarator "*pppppppuStack_234" (* "*") (identifier "pppppppuStack_234")))))))) (; ";")) (declaration "undefined4 *******pppppppuStack_230;" (type_identifier "undefined4") (pointer_declarator "*******pppppppuStack_230" (* "*") (pointer_declarator "******pppppppuStack_230" (* "*") (pointer_declarator "*****pppppppuStack_230" (* "*") (pointer_declarator "****pppppppuStack_230" (* "*") (pointer_declarator "***pppppppuStack_230" (* "*") (pointer_declarator "**pppppppuStack_230" (* "*") (pointer_declarator "*pppppppuStack_230" (* "*") (identifier "pppppppuStack_230")))))))) (; ";")) (declaration "undefined4 *******pppppppuStack_22c;" (type_identifier "undefined4") (pointer_declarator "*******pppppppuStack_22c" (* "*") (pointer_declarator "******pppppppuStack_22c" (* "*") (pointer_declarator "*****pppppppuStack_22c" (* "*") (pointer_declarator "****pppppppuStack_22c" (* "*") (pointer_declarator "***pppppppuStack_22c" (* "*") (pointer_declarator "**pppppppuStack_22c" (* "*") (pointer_declarator "*pppppppuStack_22c" (* "*") (identifier "pppppppuStack_22c")))))))) (; ";")) (declaration "undefined4 *******pppppppuStack_228;" (type_identifier "undefined4") (pointer_declarator "*******pppppppuStack_228" (* "*") (pointer_declarator "******pppppppuStack_228" (* "*") (pointer_declarator "*****pppppppuStack_228" (* "*") (pointer_declarator "****pppppppuStack_228" (* "*") (pointer_declarator "***pppppppuStack_228" (* "*") (pointer_declarator "**pppppppuStack_228" (* "*") (pointer_declarator "*pppppppuStack_228" (* "*") (identifier "pppppppuStack_228")))))))) (; ";")) (declaration "code *pcStack_224;" (type_identifier "code") (pointer_declarator "*pcStack_224" (* "*") (identifier "pcStack_224")) (; ";")) (declaration "undefined4 *******pppppppuStack_210;" (type_identifier "undefined4") (pointer_declarator "*******pppppppuStack_210" (* "*") (pointer_declarator "******pppppppuStack_210" (* "*") (pointer_declarator "*****pppppppuStack_210" (* "*") (pointer_declarator "****pppppppuStack_210" (* "*") (pointer_declarator "***pppppppuStack_210" (* "*") (pointer_declarator "**pppppppuStack_210" (* "*") (pointer_declarator "*pppppppuStack_210" (* "*") (identifier "pppppppuStack_210")))))))) (; ";")) (declaration "undefined4 *******pppppppuStack_20c;" (type_identifier "undefined4") (pointer_declarator "*******pppppppuStack_20c" (* "*") (pointer_declarator "******pppppppuStack_20c" (* "*") (pointer_declarator "*****pppppppuStack_20c" (* "*") (pointer_declarator "****pppppppuStack_20c" (* "*") (pointer_declarator "***pppppppuStack_20c" (* "*") (pointer_declarator "**pppppppuStack_20c" (* "*") (pointer_declarator "*pppppppuStack_20c" (* "*") (identifier "pppppppuStack_20c")))))))) (; ";")) (declaration "code *pcStack_208;" (type_identifier "code") (pointer_declarator "*pcStack_208" (* "*") (identifier "pcStack_208")) (; ";")) (declaration "undefined4 ******ppppppuStack_1fc;" (type_identifier "undefined4") (pointer_declarator "******ppppppuStack_1fc" (* "*") (pointer_declarator "*****ppppppuStack_1fc" (* "*") (pointer_declarator "****ppppppuStack_1fc" (* "*") (pointer_declarator "***ppppppuStack_1fc" (* "*") (pointer_declarator "**ppppppuStack_1fc" (* "*") (pointer_declarator "*ppppppuStack_1fc" (* "*") (identifier "ppppppuStack_1fc"))))))) (; ";")) (declaration "undefined4 uStack_1f8;" (type_identifier "undefined4") (identifier "uStack_1f8") (; ";")) (declaration "undefined4 uStack_1f4;" (type_identifier "undefined4") (identifier "uStack_1f4") (; ";")) (declaration "undefined4 *******pppppppuStack_1f0;" (type_identifier "undefined4") (pointer_declarator "*******pppppppuStack_1f0" (* "*") (pointer_declarator "******pppppppuStack_1f0" (* "*") (pointer_declarator "*****pppppppuStack_1f0" (* "*") (pointer_declarator "****pppppppuStack_1f0" (* "*") (pointer_declarator "***pppppppuStack_1f0" (* "*") (pointer_declarator "**pppppppuStack_1f0" (* "*") (pointer_declarator "*pppppppuStack_1f0" (* "*") (identifier "pppppppuStack_1f0")))))))) (; ";")) (declaration "undefined4 *******pppppppuStack_1ec;" (type_identifier "undefined4") (pointer_declarator "*******pppppppuStack_1ec" (* "*") (pointer_declarator "******pppppppuStack_1ec" (* "*") (pointer_declarator "*****pppppppuStack_1ec" (* "*") (pointer_declarator "****pppppppuStack_1ec" (* "*") (pointer_declarator "***pppppppuStack_1ec" (* "*") (pointer_declarator "**pppppppuStack_1ec" (* "*") (pointer_declarator "*pppppppuStack_1ec" (* "*") (identifier "pppppppuStack_1ec")))))))) (; ";")) (declaration "undefined4 *******pppppppuStack_1e8;" (type_identifier "undefined4") (pointer_declarator "*******pppppppuStack_1e8" (* "*") (pointer_declarator "******pppppppuStack_1e8" (* "*") (pointer_declarator "*****pppppppuStack_1e8" (* "*") (pointer_declarator "****pppppppuStack_1e8" (* "*") (pointer_declarator "***pppppppuStack_1e8" (* "*") (pointer_declarator "**pppppppuStack_1e8" (* "*") (pointer_declarator "*pppppppuStack_1e8" (* "*") (identifier "pppppppuStack_1e8")))))))) (; ";")) (declaration "int *piStack_1e4;" (primitive_type "int") (pointer_declarator "*piStack_1e4" (* "*") (identifier "piStack_1e4")) (; ";")) (declaration "undefined4 *******pppppppuStack_1e0;" (type_identifier "undefined4") (pointer_declarator "*******pppppppuStack_1e0" (* "*") (pointer_declarator "******pppppppuStack_1e0" (* "*") (pointer_declarator "*****pppppppuStack_1e0" (* "*") (pointer_declarator "****pppppppuStack_1e0" (* "*") (pointer_declarator "***pppppppuStack_1e0" (* "*") (pointer_declarator "**pppppppuStack_1e0" (* "*") (pointer_declarator "*pppppppuStack_1e0" (* "*") (identifier "pppppppuStack_1e0")))))))) (; ";")) (declaration "undefined4 *puStack_1dc;" (type_identifier "undefined4") (pointer_declarator "*puStack_1dc" (* "*") (identifier "puStack_1dc")) (; ";")) (declaration "undefined4 *******pppppppuStack_1d8;" (type_identifier "undefined4") (pointer_declarator "*******pppppppuStack_1d8" (* "*") (pointer_declarator "******pppppppuStack_1d8" (* "*") (pointer_declarator "*****pppppppuStack_1d8" (* "*") (pointer_declarator "****pppppppuStack_1d8" (* "*") (pointer_declarator "***pppppppuStack_1d8" (* "*") (pointer_declarator "**pppppppuStack_1d8" (* "*") (pointer_declarator "*pppppppuStack_1d8" (* "*") (identifier "pppppppuStack_1d8")))))))) (; ";")) (declaration "int iStack_1d4;" (primitive_type "int") (identifier "iStack_1d4") (; ";")) (declaration "undefined4 *******pppppppuStack_1d0;" (type_identifier "undefined4") (pointer_declarator "*******pppppppuStack_1d0" (* "*") (pointer_declarator "******pppppppuStack_1d0" (* "*") (pointer_declarator "*****pppppppuStack_1d0" (* "*") (pointer_declarator "****pppppppuStack_1d0" (* "*") (pointer_declarator "***pppppppuStack_1d0" (* "*") (pointer_declarator "**pppppppuStack_1d0" (* "*") (pointer_declarator "*pppppppuStack_1d0" (* "*") (identifier "pppppppuStack_1d0")))))))) (; ";")) (declaration "undefined4 *******pppppppuStack_1cc;" (type_identifier "undefined4") (pointer_declarator "*******pppppppuStack_1cc" (* "*") (pointer_declarator "******pppppppuStack_1cc" (* "*") (pointer_declarator "*****pppppppuStack_1cc" (* "*") (pointer_declarator "****pppppppuStack_1cc" (* "*") (pointer_declarator "***pppppppuStack_1cc" (* "*") (pointer_declarator "**pppppppuStack_1cc" (* "*") (pointer_declarator "*pppppppuStack_1cc" (* "*") (identifier "pppppppuStack_1cc")))))))) (; ";")) (declaration "undefined4 ******ppppppuStack_1c8;" (type_identifier "undefined4") (pointer_declarator "******ppppppuStack_1c8" (* "*") (pointer_declarator "*****ppppppuStack_1c8" (* "*") (pointer_declarator "****ppppppuStack_1c8" (* "*") (pointer_declarator "***ppppppuStack_1c8" (* "*") (pointer_declarator "**ppppppuStack_1c8" (* "*") (pointer_declarator "*ppppppuStack_1c8" (* "*") (identifier "ppppppuStack_1c8"))))))) (; ";")) (declaration "undefined4 *******pppppppuStack_1c4;" (type_identifier "undefined4") (pointer_declarator "*******pppppppuStack_1c4" (* "*") (pointer_declarator "******pppppppuStack_1c4" (* "*") (pointer_declarator "*****pppppppuStack_1c4" (* "*") (pointer_declarator "****pppppppuStack_1c4" (* "*") (pointer_declarator "***pppppppuStack_1c4" (* "*") (pointer_declarator "**pppppppuStack_1c4" (* "*") (pointer_declarator "*pppppppuStack_1c4" (* "*") (identifier "pppppppuStack_1c4")))))))) (; ";")) (declaration "int *piStack_1c0;" (primitive_type "int") (pointer_declarator "*piStack_1c0" (* "*") (identifier "piStack_1c0")) (; ";")) (declaration "undefined4 *******pppppppuStack_1bc;" (type_identifier "undefined4") (pointer_declarator "*******pppppppuStack_1bc" (* "*") (pointer_declarator "******pppppppuStack_1bc" (* "*") (pointer_declarator "*****pppppppuStack_1bc" (* "*") (pointer_declarator "****pppppppuStack_1bc" (* "*") (pointer_declarator "***pppppppuStack_1bc" (* "*") (pointer_declarator "**pppppppuStack_1bc" (* "*") (pointer_declarator "*pppppppuStack_1bc" (* "*") (identifier "pppppppuStack_1bc")))))))) (; ";")) (declaration "undefined4 *******pppppppuStack_1b8;" (type_identifier "undefined4") (pointer_declarator "*******pppppppuStack_1b8" (* "*") (pointer_declarator "******pppppppuStack_1b8" (* "*") (pointer_declarator "*****pppppppuStack_1b8" (* "*") (pointer_declarator "****pppppppuStack_1b8" (* "*") (pointer_declarator "***pppppppuStack_1b8" (* "*") (pointer_declarator "**pppppppuStack_1b8" (* "*") (pointer_declarator "*pppppppuStack_1b8" (* "*") (identifier "pppppppuStack_1b8")))))))) (; ";")) (declaration "undefined4 *******pppppppuStack_1b4;" (type_identifier "undefined4") (pointer_declarator "*******pppppppuStack_1b4" (* "*") (pointer_declarator "******pppppppuStack_1b4" (* "*") (pointer_declarator "*****pppppppuStack_1b4" (* "*") (pointer_declarator "****pppppppuStack_1b4" (* "*") (pointer_declarator "***pppppppuStack_1b4" (* "*") (pointer_declarator "**pppppppuStack_1b4" (* "*") (pointer_declarator "*pppppppuStack_1b4" (* "*") (identifier "pppppppuStack_1b4")))))))) (; ";")) (declaration "undefined4 *******pppppppuStack_1b0;" (type_identifier "undefined4") (pointer_declarator "*******pppppppuStack_1b0" (* "*") (pointer_declarator "******pppppppuStack_1b0" (* "*") (pointer_declarator "*****pppppppuStack_1b0" (* "*") (pointer_declarator "****pppppppuStack_1b0" (* "*") (pointer_declarator "***pppppppuStack_1b0" (* "*") (pointer_declarator "**pppppppuStack_1b0" (* "*") (pointer_declarator "*pppppppuStack_1b0" (* "*") (identifier "pppppppuStack_1b0")))))))) (; ";")) (declaration "code *pcStack_1ac;" (type_identifier "code") (pointer_declarator "*pcStack_1ac" (* "*") (identifier "pcStack_1ac")) (; ";")) (declaration "undefined4 ******ppppppuStack_198;" (type_identifier "undefined4") (pointer_declarator "******ppppppuStack_198" (* "*") (pointer_declarator "*****ppppppuStack_198" (* "*") (pointer_declarator "****ppppppuStack_198" (* "*") (pointer_declarator "***ppppppuStack_198" (* "*") (pointer_declarator "**ppppppuStack_198" (* "*") (pointer_declarator "*ppppppuStack_198" (* "*") (identifier "ppppppuStack_198"))))))) (; ";")) (declaration "undefined4 *******pppppppuStack_194;" (type_identifier "undefined4") (pointer_declarator "*******pppppppuStack_194" (* "*") (pointer_declarator "******pppppppuStack_194" (* "*") (pointer_declarator "*****pppppppuStack_194" (* "*") (pointer_declarator "****pppppppuStack_194" (* "*") (pointer_declarator "***pppppppuStack_194" (* "*") (pointer_declarator "**pppppppuStack_194" (* "*") (pointer_declarator "*pppppppuStack_194" (* "*") (identifier "pppppppuStack_194")))))))) (; ";")) (declaration "undefined4 ******ppppppuStack_190;" (type_identifier "undefined4") (pointer_declarator "******ppppppuStack_190" (* "*") (pointer_declarator "*****ppppppuStack_190" (* "*") (pointer_declarator "****ppppppuStack_190" (* "*") (pointer_declarator "***ppppppuStack_190" (* "*") (pointer_declarator "**ppppppuStack_190" (* "*") (pointer_declarator "*ppppppuStack_190" (* "*") (identifier "ppppppuStack_190"))))))) (; ";")) (declaration "code *pcStack_188;" (type_identifier "code") (pointer_declarator "*pcStack_188" (* "*") (identifier "pcStack_188")) (; ";")) (declaration "undefined4 *******pppppppuStack_17c;" (type_identifier "undefined4") (pointer_declarator "*******pppppppuStack_17c" (* "*") (pointer_declarator "******pppppppuStack_17c" (* "*") (pointer_declarator "*****pppppppuStack_17c" (* "*") (pointer_declarator "****pppppppuStack_17c" (* "*") (pointer_declarator "***pppppppuStack_17c" (* "*") (pointer_declarator "**pppppppuStack_17c" (* "*") (pointer_declarator "*pppppppuStack_17c" (* "*") (identifier "pppppppuStack_17c")))))))) (; ";")) (declaration "undefined4 *******pppppppuStack_178;" (type_identifier "undefined4") (pointer_declarator "*******pppppppuStack_178" (* "*") (pointer_declarator "******pppppppuStack_178" (* "*") (pointer_declarator "*****pppppppuStack_178" (* "*") (pointer_declarator "****pppppppuStack_178" (* "*") (pointer_declarator "***pppppppuStack_178" (* "*") (pointer_declarator "**pppppppuStack_178" (* "*") (pointer_declarator "*pppppppuStack_178" (* "*") (identifier "pppppppuStack_178")))))))) (; ";")) (declaration "undefined4 ******ppppppuStack_174;" (type_identifier "undefined4") (pointer_declarator "******ppppppuStack_174" (* "*") (pointer_declarator "*****ppppppuStack_174" (* "*") (pointer_declarator "****ppppppuStack_174" (* "*") (pointer_declarator "***ppppppuStack_174" (* "*") (pointer_declarator "**ppppppuStack_174" (* "*") (pointer_declarator "*ppppppuStack_174" (* "*") (identifier "ppppppuStack_174"))))))) (; ";")) (declaration "undefined4 *******pppppppuStack_170;" (type_identifier "undefined4") (pointer_declarator "*******pppppppuStack_170" (* "*") (pointer_declarator "******pppppppuStack_170" (* "*") (pointer_declarator "*****pppppppuStack_170" (* "*") (pointer_declarator "****pppppppuStack_170" (* "*") (pointer_declarator "***pppppppuStack_170" (* "*") (pointer_declarator "**pppppppuStack_170" (* "*") (pointer_declarator "*pppppppuStack_170" (* "*") (identifier "pppppppuStack_170")))))))) (; ";")) (declaration "code *pcStack_16c;" (type_identifier "code") (pointer_declarator "*pcStack_16c" (* "*") (identifier "pcStack_16c")) (; ";")) (declaration "undefined4 ******ppppppuStack_158;" (type_identifier "undefined4") (pointer_declarator "******ppppppuStack_158" (* "*") (pointer_declarator "*****ppppppuStack_158" (* "*") (pointer_declarator "****ppppppuStack_158" (* "*") (pointer_declarator "***ppppppuStack_158" (* "*") (pointer_declarator "**ppppppuStack_158" (* "*") (pointer_declarator "*ppppppuStack_158" (* "*") (identifier "ppppppuStack_158"))))))) (; ";")) (declaration "undefined4 *******pppppppuStack_154;" (type_identifier "undefined4") (pointer_declarator "*******pppppppuStack_154" (* "*") (pointer_declarator "******pppppppuStack_154" (* "*") (pointer_declarator "*****pppppppuStack_154" (* "*") (pointer_declarator "****pppppppuStack_154" (* "*") (pointer_declarator "***pppppppuStack_154" (* "*") (pointer_declarator "**pppppppuStack_154" (* "*") (pointer_declarator "*pppppppuStack_154" (* "*") (identifier "pppppppuStack_154")))))))) (; ";")) (declaration "undefined *puStack_150;" (type_identifier "undefined") (pointer_declarator "*puStack_150" (* "*") (identifier "puStack_150")) (; ";")) (declaration "undefined4 uStack_148;" (type_identifier "undefined4") (identifier "uStack_148") (; ";")) (declaration "undefined4 uStack_144;" (type_identifier "undefined4") (identifier "uStack_144") (; ";")) (declaration "undefined4 *******pppppppuStack_13c;" (type_identifier "undefined4") (pointer_declarator "*******pppppppuStack_13c" (* "*") (pointer_declarator "******pppppppuStack_13c" (* "*") (pointer_declarator "*****pppppppuStack_13c" (* "*") (pointer_declarator "****pppppppuStack_13c" (* "*") (pointer_declarator "***pppppppuStack_13c" (* "*") (pointer_declarator "**pppppppuStack_13c" (* "*") (pointer_declarator "*pppppppuStack_13c" (* "*") (identifier "pppppppuStack_13c")))))))) (; ";")) (declaration "undefined4 *******pppppppuStack_138;" (type_identifier "undefined4") (pointer_declarator "*******pppppppuStack_138" (* "*") (pointer_declarator "******pppppppuStack_138" (* "*") (pointer_declarator "*****pppppppuStack_138" (* "*") (pointer_declarator "****pppppppuStack_138" (* "*") (pointer_declarator "***pppppppuStack_138" (* "*") (pointer_declarator "**pppppppuStack_138" (* "*") (pointer_declarator "*pppppppuStack_138" (* "*") (identifier "pppppppuStack_138")))))))) (; ";")) (declaration "undefined4 ******ppppppuStack_134;" (type_identifier "undefined4") (pointer_declarator "******ppppppuStack_134" (* "*") (pointer_declarator "*****ppppppuStack_134" (* "*") (pointer_declarator "****ppppppuStack_134" (* "*") (pointer_declarator "***ppppppuStack_134" (* "*") (pointer_declarator "**ppppppuStack_134" (* "*") (pointer_declarator "*ppppppuStack_134" (* "*") (identifier "ppppppuStack_134"))))))) (; ";")) (declaration "undefined4 *******pppppppuStack_130;" (type_identifier "undefined4") (pointer_declarator "*******pppppppuStack_130" (* "*") (pointer_declarator "******pppppppuStack_130" (* "*") (pointer_declarator "*****pppppppuStack_130" (* "*") (pointer_declarator "****pppppppuStack_130" (* "*") (pointer_declarator "***pppppppuStack_130" (* "*") (pointer_declarator "**pppppppuStack_130" (* "*") (pointer_declarator "*pppppppuStack_130" (* "*") (identifier "pppppppuStack_130")))))))) (; ";")) (declaration "undefined4 *******pppppppuStack_12c;" (type_identifier "undefined4") (pointer_declarator "*******pppppppuStack_12c" (* "*") (pointer_declarator "******pppppppuStack_12c" (* "*") (pointer_declarator "*****pppppppuStack_12c" (* "*") (pointer_declarator "****pppppppuStack_12c" (* "*") (pointer_declarator "***pppppppuStack_12c" (* "*") (pointer_declarator "**pppppppuStack_12c" (* "*") (pointer_declarator "*pppppppuStack_12c" (* "*") (identifier "pppppppuStack_12c")))))))) (; ";")) (declaration "undefined4 *******pppppppuStack_128;" (type_identifier "undefined4") (pointer_declarator "*******pppppppuStack_128" (* "*") (pointer_declarator "******pppppppuStack_128" (* "*") (pointer_declarator "*****pppppppuStack_128" (* "*") (pointer_declarator "****pppppppuStack_128" (* "*") (pointer_declarator "***pppppppuStack_128" (* "*") (pointer_declarator "**pppppppuStack_128" (* "*") (pointer_declarator "*pppppppuStack_128" (* "*") (identifier "pppppppuStack_128")))))))) (; ";")) (declaration "undefined4 ******ppppppuStack_124;" (type_identifier "undefined4") (pointer_declarator "******ppppppuStack_124" (* "*") (pointer_declarator "*****ppppppuStack_124" (* "*") (pointer_declarator "****ppppppuStack_124" (* "*") (pointer_declarator "***ppppppuStack_124" (* "*") (pointer_declarator "**ppppppuStack_124" (* "*") (pointer_declarator "*ppppppuStack_124" (* "*") (identifier "ppppppuStack_124"))))))) (; ";")) (declaration "undefined4 *puStack_120;" (type_identifier "undefined4") (pointer_declarator "*puStack_120" (* "*") (identifier "puStack_120")) (; ";")) (declaration "int iStack_11c;" (primitive_type "int") (identifier "iStack_11c") (; ";")) (declaration "undefined4 *******pppppppuStack_118;" (type_identifier "undefined4") (pointer_declarator "*******pppppppuStack_118" (* "*") (pointer_declarator "******pppppppuStack_118" (* "*") (pointer_declarator "*****pppppppuStack_118" (* "*") (pointer_declarator "****pppppppuStack_118" (* "*") (pointer_declarator "***pppppppuStack_118" (* "*") (pointer_declarator "**pppppppuStack_118" (* "*") (pointer_declarator "*pppppppuStack_118" (* "*") (identifier "pppppppuStack_118")))))))) (; ";")) (declaration "undefined4 *******pppppppuStack_114;" (type_identifier "undefined4") (pointer_declarator "*******pppppppuStack_114" (* "*") (pointer_declarator "******pppppppuStack_114" (* "*") (pointer_declarator "*****pppppppuStack_114" (* "*") (pointer_declarator "****pppppppuStack_114" (* "*") (pointer_declarator "***pppppppuStack_114" (* "*") (pointer_declarator "**pppppppuStack_114" (* "*") (pointer_declarator "*pppppppuStack_114" (* "*") (identifier "pppppppuStack_114")))))))) (; ";")) (declaration "undefined4 ******ppppppuStack_110;" (type_identifier "undefined4") (pointer_declarator "******ppppppuStack_110" (* "*") (pointer_declarator "*****ppppppuStack_110" (* "*") (pointer_declarator "****ppppppuStack_110" (* "*") (pointer_declarator "***ppppppuStack_110" (* "*") (pointer_declarator "**ppppppuStack_110" (* "*") (pointer_declarator "*ppppppuStack_110" (* "*") (identifier "ppppppuStack_110"))))))) (; ";")) (declaration "undefined4 *******pppppppuStack_10c;" (type_identifier "undefined4") (pointer_declarator "*******pppppppuStack_10c" (* "*") (pointer_declarator "******pppppppuStack_10c" (* "*") (pointer_declarator "*****pppppppuStack_10c" (* "*") (pointer_declarator "****pppppppuStack_10c" (* "*") (pointer_declarator "***pppppppuStack_10c" (* "*") (pointer_declarator "**pppppppuStack_10c" (* "*") (pointer_declarator "*pppppppuStack_10c" (* "*") (identifier "pppppppuStack_10c")))))))) (; ";")) (declaration "undefined4 ******ppppppuStack_108;" (type_identifier "undefined4") (pointer_declarator "******ppppppuStack_108" (* "*") (pointer_declarator "*****ppppppuStack_108" (* "*") (pointer_declarator "****ppppppuStack_108" (* "*") (pointer_declarator "***ppppppuStack_108" (* "*") (pointer_declarator "**ppppppuStack_108" (* "*") (pointer_declarator "*ppppppuStack_108" (* "*") (identifier "ppppppuStack_108"))))))) (; ";")) (declaration "undefined4 *******pppppppuStack_104;" (type_identifier "undefined4") (pointer_declarator "*******pppppppuStack_104" (* "*") (pointer_declarator "******pppppppuStack_104" (* "*") (pointer_declarator "*****pppppppuStack_104" (* "*") (pointer_declarator "****pppppppuStack_104" (* "*") (pointer_declarator "***pppppppuStack_104" (* "*") (pointer_declarator "**pppppppuStack_104" (* "*") (pointer_declarator "*pppppppuStack_104" (* "*") (identifier "pppppppuStack_104")))))))) (; ";")) (declaration "undefined4 *******pppppppuStack_100;" (type_identifier "undefined4") (pointer_declarator "*******pppppppuStack_100" (* "*") (pointer_declarator "******pppppppuStack_100" (* "*") (pointer_declarator "*****pppppppuStack_100" (* "*") (pointer_declarator "****pppppppuStack_100" (* "*") (pointer_declarator "***pppppppuStack_100" (* "*") (pointer_declarator "**pppppppuStack_100" (* "*") (pointer_declarator "*pppppppuStack_100" (* "*") (identifier "pppppppuStack_100")))))))) (; ";")) (declaration "code *pcStack_fc;" (type_identifier "code") (pointer_declarator "*pcStack_fc" (* "*") (identifier "pcStack_fc")) (; ";")) (declaration "undefined4 ******local_e8;" (type_identifier "undefined4") (pointer_declarator "******local_e8" (* "*") (pointer_declarator "*****local_e8" (* "*") (pointer_declarator "****local_e8" (* "*") (pointer_declarator "***local_e8" (* "*") (pointer_declarator "**local_e8" (* "*") (pointer_declarator "*local_e8" (* "*") (identifier "local_e8"))))))) (; ";")) (declaration "undefined4 *******local_e4;" (type_identifier "undefined4") (pointer_declarator "*******local_e4" (* "*") (pointer_declarator "******local_e4" (* "*") (pointer_declarator "*****local_e4" (* "*") (pointer_declarator "****local_e4" (* "*") (pointer_declarator "***local_e4" (* "*") (pointer_declarator "**local_e4" (* "*") (pointer_declarator "*local_e4" (* "*") (identifier "local_e4")))))))) (; ";")) (declaration "double local_c8;" (primitive_type "double") (identifier "local_c8") (; ";")) (declaration "double local_a0;" (primitive_type "double") (identifier "local_a0") (; ";")) (declaration "undefined4 *******local_80;" (type_identifier "undefined4") (pointer_declarator "*******local_80" (* "*") (pointer_declarator "******local_80" (* "*") (pointer_declarator "*****local_80" (* "*") (pointer_declarator "****local_80" (* "*") (pointer_declarator "***local_80" (* "*") (pointer_declarator "**local_80" (* "*") (pointer_declarator "*local_80" (* "*") (identifier "local_80")))))))) (; ";")) (declaration "undefined4 *******local_7c;" (type_identifier "undefined4") (pointer_declarator "*******local_7c" (* "*") (pointer_declarator "******local_7c" (* "*") (pointer_declarator "*****local_7c" (* "*") (pointer_declarator "****local_7c" (* "*") (pointer_declarator "***local_7c" (* "*") (pointer_declarator "**local_7c" (* "*") (pointer_declarator "*local_7c" (* "*") (identifier "local_7c")))))))) (; ";")) (declaration "undefined4 ******local_78;" (type_identifier "undefined4") (pointer_declarator "******local_78" (* "*") (pointer_declarator "*****local_78" (* "*") (pointer_declarator "****local_78" (* "*") (pointer_declarator "***local_78" (* "*") (pointer_declarator "**local_78" (* "*") (pointer_declarator "*local_78" (* "*") (identifier "local_78"))))))) (; ";")) (declaration "undefined4 *******local_74;" (type_identifier "undefined4") (pointer_declarator "*******local_74" (* "*") (pointer_declarator "******local_74" (* "*") (pointer_declarator "*****local_74" (* "*") (pointer_declarator "****local_74" (* "*") (pointer_declarator "***local_74" (* "*") (pointer_declarator "**local_74" (* "*") (pointer_declarator "*local_74" (* "*") (identifier "local_74")))))))) (; ";")) (declaration "undefined4 *******local_70;" (type_identifier "undefined4") (pointer_declarator "*******local_70" (* "*") (pointer_declarator "******local_70" (* "*") (pointer_declarator "*****local_70" (* "*") (pointer_declarator "****local_70" (* "*") (pointer_declarator "***local_70" (* "*") (pointer_declarator "**local_70" (* "*") (pointer_declarator "*local_70" (* "*") (identifier "local_70")))))))) (; ";")) (declaration "undefined4 *******local_6c;" (type_identifier "undefined4") (pointer_declarator "*******local_6c" (* "*") (pointer_declarator "******local_6c" (* "*") (pointer_declarator "*****local_6c" (* "*") (pointer_declarator "****local_6c" (* "*") (pointer_declarator "***local_6c" (* "*") (pointer_declarator "**local_6c" (* "*") (pointer_declarator "*local_6c" (* "*") (identifier "local_6c")))))))) (; ";")) (declaration "undefined4 *******local_68;" (type_identifier "undefined4") (pointer_declarator "*******local_68" (* "*") (pointer_declarator "******local_68" (* "*") (pointer_declarator "*****local_68" (* "*") (pointer_declarator "****local_68" (* "*") (pointer_declarator "***local_68" (* "*") (pointer_declarator "**local_68" (* "*") (pointer_declarator "*local_68" (* "*") (identifier "local_68")))))))) (; ";")) (declaration "undefined4 *******local_64;" (type_identifier "undefined4") (pointer_declarator "*******local_64" (* "*") (pointer_declarator "******local_64" (* "*") (pointer_declarator "*****local_64" (* "*") (pointer_declarator "****local_64" (* "*") (pointer_declarator "***local_64" (* "*") (pointer_declarator "**local_64" (* "*") (pointer_declarator "*local_64" (* "*") (identifier "local_64")))))))) (; ";")) (declaration "undefined4 *******local_60;" (type_identifier "undefined4") (pointer_declarator "*******local_60" (* "*") (pointer_declarator "******local_60" (* "*") (pointer_declarator "*****local_60" (* "*") (pointer_declarator "****local_60" (* "*") (pointer_declarator "***local_60" (* "*") (pointer_declarator "**local_60" (* "*") (pointer_declarator "*local_60" (* "*") (identifier "local_60")))))))) (; ";")) (declaration "int local_5c;" (primitive_type "int") (identifier "local_5c") (; ";")) (expression_statement "puVar20 = PTR___stack_chk_guard_003a9230;" (assignment_expression "puVar20 = PTR___stack_chk_guard_003a9230" (identifier "puVar20") (= "=") (identifier "PTR___stack_chk_guard_003a9230")) (; ";")) (expression_statement "local_5c = *(int *)PTR___stack_chk_guard_003a9230;" (assignment_expression "local_5c = *(int *)PTR___stack_chk_guard_003a9230" (identifier "local_5c") (= "=") (pointer_expression "*(int *)PTR___stack_chk_guard_003a9230" (* "*") (cast_expression "(int *)PTR___stack_chk_guard_003a9230" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR___stack_chk_guard_003a9230")))) (; ";")) (if_statement "if (param_1 == (undefined4 *******)0x0) {\nLAB_001c8ef8:\n    param_1 = unaff_s1;\n    (*(code *)PTR___assert_fail_003a9608)\n              (PTR_LAB_003a88e0 + 0xdd0,PTR_s_courses_003a88ec + -0x288c,0x322,\n               PTR_s_courses_003a88ec + -0x2688);\n  }\n  else if (param_1[0xcdb] == (undefined4 ******)0xabacadab) {\n    if (param_1[0xcd4] != (undefined4 ******)0x0) {\n      local_e4 = param_1 + 0xd0;\n      local_e8 = (undefined4 ******)(PTR_s_t_to_left_003a88e4 + -0x62ac);\n      (*(code *)PTR_LogMagickEvent_003a91e0)\n                (0x8000,PTR_s_courses_003a88ec + -0x288c,PTR_s_courses_003a88ec + -0x269c,0x325);\n    }\n    unaff_s6 = (undefined4 *******)(*(code *)PTR_NewImageList_003a8e84)();\n    local_80 = unaff_s6;\n    ppppppuVar2 = (undefined4 ******)\n                  (*(code *)PTR_ParseGravityGeometry_003a97fc)(param_1,param_2,&local_7c,param_3);\n    unaff_s4 = local_78;\n    unaff_s0 = local_7c;\n    unaff_s3 = (undefined4 *******)PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;\n    if ((int)ppppppuVar2 << 0xe < 0) {\n      ppppppuVar7 = param_1[7];\n      if (local_7c == (undefined4 *******)0x0) {\n        local_7c = (undefined4 *******)0x1;\n        dVar35 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n      }\n      else {\n        dVar35 = (double)(int)local_7c;\n        if ((int)local_7c < 0) {\n          dVar35 = dVar35 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n      }\n      if (local_78 == (undefined4 ******)0x0) {\n        dVar30 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n        local_78 = (undefined4 ******)0x1;\n        if (((uint)ppppppuVar2 & 0x2000) != 0) goto LAB_001c8e14;\nLAB_001c8484:\n        pppppppuVar9 = local_74;\n        if ((int)local_74 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_74;\n        }\n        puVar8 = (undefined *)((int)param_1[6] - (int)pppppppuVar9);\n        pppppppuVar9 = local_70;\n        if ((int)local_70 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_70;\n        }\n        puVar3 = (undefined *)((int)ppppppuVar7 - (int)pppppppuVar9);\n      }\n      else {\n        dVar30 = (double)(int)local_78;\n        if ((int)local_78 < 0) {\n          dVar30 = dVar30 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n        if (((uint)ppppppuVar2 & 0x2000) == 0) goto LAB_001c8484;\nLAB_001c8e14:\n        pppppppuVar9 = local_74;\n        if ((int)local_74 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_74;\n        }\n        puVar8 = (undefined *)((int)pppppppuVar9 + (int)param_1[6]);\n        if ((int)local_70 < 0) {\n          puVar3 = (undefined *)((int)ppppppuVar7 - (int)local_70);\n        }\n        else {\n          puVar3 = (undefined *)((int)local_70 + (int)ppppppuVar7);\n        }\n      }\n      unaff_s4 = (undefined4 ******)((uint)ppppppuVar2 & 0x2000);\n      dVar34 = (double)(int)puVar8;\n      if ((int)puVar8 < 0) {\n        dVar34 = dVar34 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n      }\n      dVar35 = dVar34 / dVar35;\n      local_c8 = (double)(int)puVar3;\n      if ((int)puVar3 < 0) {\n        local_c8 = local_c8 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n      }\n      dVar25 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n      local_a0 = dVar25;\n      if (dVar35 < dVar25) {\n        local_a0 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n        dVar35 = dVar25;\n      }\n      if (local_a0 <= local_c8 / dVar30) {\n        local_a0 = local_c8 / dVar30;\n      }\n      dVar30 = 0.0;\n      unaff_s7 = local_70;\n      if (0.0 < local_c8) {\n        dVar25 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4780);\n        dVar31 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4788);\n        if (unaff_s4 != (undefined4 ******)0x0) goto LAB_001c8b70;\nLAB_001c854c:\n        unaff_s7 = local_70;\n        dVar32 = dVar30;\n        if ((int)local_70 < 1) {\n          dVar32 = dVar30 - (double)(int)local_70;\n        }\n        dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n        dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n        if (dVar32 - dVar26 < dVar27 - dVar32) {\n          dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar23 = (code *)PTR_floor_003a9670;\n          if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d7c;\n        }\n        else {\n          if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d7c:\n            iVar15 = -0x7ffffdff;\n            goto joined_r0x001c8cbc;\n          }\n          dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar23 = (code *)PTR_ceil_003a8c20;\n        }\n        if (dVar26 < dVar32) {\n          iVar15 = 0x7ffffdff;\n        }\n        else {\n          dVar32 = (double)(*pcVar23)(dVar32);\n          iVar15 = (int)dVar32;\n        }\njoined_r0x001c8cbc:\n        dVar30 = dVar30 + local_a0;\n        if ((int)unaff_s7 < 0) {\n          dVar32 = 0.0;\n        }\n        else {\n          dVar32 = (double)(int)unaff_s7;\n        }\n        dVar32 = dVar30 + dVar32;\n        dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n        dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n        if (dVar32 - dVar26 < dVar27 - dVar32) {\n          if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8630;\n            goto LAB_001c8cec;\n          }\n        }\n        else if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;\n          goto LAB_001c8d18;\n        }\nLAB_001c8c88:\n        iVar14 = -0x7ffffdff;\nLAB_001c8644:\n        do {\n          unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n          param_2 = (undefined4 *******)((int)param_1[0x8d] + iVar15);\n          dVar32 = 0.0;\n          local_68 = unaff_s8;\n          local_60 = param_2;\n          if (0.0 < dVar34) {\n            dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n            unaff_s6 = &local_6c;\n            dVar27 = *(double *)((int)unaff_s3 + 0x4780);\n            do {\n              unaff_s7 = local_74;\n              if (unaff_s4 == (undefined4 ******)0x0) {\n                dVar33 = dVar32;\n                if ((int)local_74 < 1) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }\nLAB_001c8b04:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;\nLAB_001c8708:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8700:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar33 = 0.0;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8768:\n                  dVar33 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar33 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n              }\n              else {\n                dVar33 = dVar32;\n                if (0 < (int)local_74) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar27 <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar33 = 0.0;\n                }\n                else {\n                  if (dVar33 < dVar27) goto LAB_001c8b24;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (dVar26 < dVar33) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8850:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < dVar25) goto LAB_001c8a44;\n                  if (dVar33 <= dVar26) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar14 = 0x7ffffdff;\n                }\n                else if (dVar25 <= dVar33) {\n                  if (dVar33 <= dVar31) goto LAB_001c8abc;\n                  iVar14 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar14 = -0x7ffffdff;\n                }\n              }\n              unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n              param_2 = (undefined4 *******)((int)param_1[0x8c] + iVar15);\n              local_6c = unaff_s8;\n              local_64 = param_2;\n              iVar15 = (*(code *)PTR_CropImage_003a90b8)(param_1,unaff_s6,param_3);\n              if (iVar15 != 0) {\n                (*(code *)PTR_AppendImageToList_003a9880)(&local_80,iVar15);\n              }\n            } while (dVar32 < dVar34);\n          }\n          unaff_s5 = unaff_s3;\n          if (local_c8 <= dVar30) break;\n          if (unaff_s4 == (undefined4 ******)0x0) goto LAB_001c854c;\nLAB_001c8b70:\n          unaff_s7 = local_70;\n          dVar32 = dVar30;\n          if (0 < (int)local_70) {\n            dVar32 = dVar30 - (double)(int)local_70;\n          }\n          dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n          dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          if (dVar32 - dVar26 < dVar27 - dVar32) {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d8c;\n            pcVar23 = (code *)PTR_floor_003a9670;\n            if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8d50;\nLAB_001c8bd8:\n            dVar32 = (double)(*pcVar23)(dVar32);\n            iVar15 = (int)dVar32;\nLAB_001c8bf0:\n            dVar30 = dVar30 + local_a0;\n            if (-2 < (int)unaff_s7) goto LAB_001c8c00;\nLAB_001c8d6c:\n            dVar32 = (double)(int)unaff_s7;\n          }\n          else {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d8c:\n              iVar15 = -0x7ffffdff;\n              goto LAB_001c8bf0;\n            }\n            pcVar23 = (code *)PTR_ceil_003a8c20;\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8bd8;\nLAB_001c8d50:\n            iVar15 = 0x7ffffdff;\n            dVar30 = dVar30 + local_a0;\n            if ((int)unaff_s7 < -1) goto LAB_001c8d6c;\nLAB_001c8c00:\n            dVar32 = 0.0;\n          }\n          dVar32 = dVar30 + dVar32;\n          dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n          dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          if (dVar32 - dVar26 < dVar27 - dVar32) {\n            if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n              if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) {\nLAB_001c8cec:\n                iVar14 = 0x7ffffdff;\n              }\n              else {\nLAB_001c8630:\n                dVar32 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n                iVar14 = (int)dVar32;\n              }\n              goto LAB_001c8644;\n            }\n            goto LAB_001c8c88;\n          }\n          if (dVar32 < dVar25) goto LAB_001c8c88;\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;\nLAB_001c8d18:\n          dVar32 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          iVar14 = (int)dVar32;\n        } while( true );\n      }\n      (*(code *)PTR_ClearMagickException_003a90f8)(param_3);\n      pppppppuVar9 = local_80;\n      unaff_s0 = param_2;\n    }\n    else {\n      unaff_s3 = &local_7c;\n      if (((local_7c == (undefined4 *******)0x0) && (local_78 == (undefined4 ******)0x0)) ||\n         (((uint)ppppppuVar2 & 3) != 0)) {\n        local_80 = (undefined4 *******)(*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n        pppppppuVar9 = local_80;\n        unaff_s4 = ppppppuVar2;\n        if ((local_80 != (undefined4 *******)0x0) &&\n           (unaff_s4 = (undefined4 ******)((uint)ppppppuVar2 & 0x2000),\n           unaff_s4 != (undefined4 ******)0x0)) {\n          local_80[0x8c] = (undefined4 ******)((int)local_80[0x8c] - (int)local_74);\n          local_80[0x8d] = (undefined4 ******)((int)local_80[0x8d] - (int)local_70);\n          local_80[0x8a] = local_7c;\n          local_80[0x8b] = local_78;\n        }\n      }\n      else {\n        unaff_s7 = (undefined4 *******)param_1[6];\n        if ((local_7c < unaff_s7) || (local_78 < param_1[7])) {\n          ppppppuVar2 = param_1[0x8b];\n          if ((undefined4 *******)param_1[0x8a] != (undefined4 *******)0x0) {\n            unaff_s7 = (undefined4 *******)param_1[0x8a];\n          }\n          if (ppppppuVar2 == (undefined4 ******)0x0) {\n            ppppppuVar2 = param_1[7];\n          }\n          if (local_7c == (undefined4 *******)0x0) {\n            unaff_s0 = unaff_s7;\n          }\n          if (local_78 == (undefined4 ******)0x0) {\n            unaff_s4 = ppppppuVar2;\n          }\n          pppppppuVar9 = local_80;\n          if (0 < (int)ppppppuVar2) {\n            unaff_s3 = (undefined4 *******)0x0;\n            unaff_s8 = &local_80;\n            do {\n              unaff_s5 = (undefined4 *******)0x0;\n              if ((int)unaff_s7 < 1) {\n                pppppppuVar9 = local_80;\n                if (unaff_s6 == (undefined4 *******)0x0) break;\n              }\n              else {\n                do {\n                  local_7c = unaff_s0;\n                  local_78 = unaff_s4;\n                  local_74 = unaff_s5;\n                  local_70 = unaff_s3;\n                  unaff_s6 = (undefined4 *******)\n                             (*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n                  pppppppuVar9 = local_80;\n                  if (unaff_s6 == (undefined4 *******)0x0) goto LAB_001c8908;\n                  unaff_s5 = (undefined4 *******)((int)unaff_s5 + (int)unaff_s0);\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);\n              }\n              unaff_s3 = (undefined4 *******)((int)unaff_s3 + (int)unaff_s4);\n              pppppppuVar9 = local_80;\n            } while ((int)unaff_s3 < (int)ppppppuVar2);\n          }\n        }\n        else {\n          local_e8 = param_3;\n          pppppppuVar9 = (undefined4 *******)(*(code *)PTR_CloneImage_003a9830)(param_1,0,0,1);\n        }\n      }\n    }\nLAB_001c8908:\n    if (local_5c == *(int *)puVar20) {\n      return pppppppuVar9;\n    }\n    (*(code *)PTR___stack_chk_fail_003a9064)();\n    unaff_s1 = param_1;\n    unaff_s2 = param_3;\n    goto LAB_001c8ef8;\n  }" (if "if") (parenthesized_expression "(param_1 == (undefined4 *******)0x0)" (( "(") (binary_expression "param_1 == (undefined4 *******)0x0" (identifier "param_1") (== "==") (cast_expression "(undefined4 *******)0x0" (( "(") (type_descriptor "undefined4 *******" (type_identifier "undefined4") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\nLAB_001c8ef8:\n    param_1 = unaff_s1;\n    (*(code *)PTR___assert_fail_003a9608)\n              (PTR_LAB_003a88e0 + 0xdd0,PTR_s_courses_003a88ec + -0x288c,0x322,\n               PTR_s_courses_003a88ec + -0x2688);\n  }" ({ "{") (labeled_statement "LAB_001c8ef8:\n    param_1 = unaff_s1;" (statement_identifier "LAB_001c8ef8") (: ":") (expression_statement "param_1 = unaff_s1;" (assignment_expression "param_1 = unaff_s1" (identifier "param_1") (= "=") (identifier "unaff_s1")) (; ";"))) (expression_statement "(*(code *)PTR___assert_fail_003a9608)\n              (PTR_LAB_003a88e0 + 0xdd0,PTR_s_courses_003a88ec + -0x288c,0x322,\n               PTR_s_courses_003a88ec + -0x2688);" (call_expression "(*(code *)PTR___assert_fail_003a9608)\n              (PTR_LAB_003a88e0 + 0xdd0,PTR_s_courses_003a88ec + -0x288c,0x322,\n               PTR_s_courses_003a88ec + -0x2688)" (parenthesized_expression "(*(code *)PTR___assert_fail_003a9608)" (( "(") (pointer_expression "*(code *)PTR___assert_fail_003a9608" (* "*") (cast_expression "(code *)PTR___assert_fail_003a9608" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR___assert_fail_003a9608"))) () ")")) (argument_list "(PTR_LAB_003a88e0 + 0xdd0,PTR_s_courses_003a88ec + -0x288c,0x322,\n               PTR_s_courses_003a88ec + -0x2688)" (( "(") (binary_expression "PTR_LAB_003a88e0 + 0xdd0" (identifier "PTR_LAB_003a88e0") (+ "+") (number_literal "0xdd0")) (, ",") (binary_expression "PTR_s_courses_003a88ec + -0x288c" (identifier "PTR_s_courses_003a88ec") (+ "+") (number_literal "-0x288c")) (, ",") (number_literal "0x322") (, ",") (binary_expression "PTR_s_courses_003a88ec + -0x2688" (identifier "PTR_s_courses_003a88ec") (+ "+") (number_literal "-0x2688")) () ")"))) (; ";")) (} "}")) (else_clause "else if (param_1[0xcdb] == (undefined4 ******)0xabacadab) {\n    if (param_1[0xcd4] != (undefined4 ******)0x0) {\n      local_e4 = param_1 + 0xd0;\n      local_e8 = (undefined4 ******)(PTR_s_t_to_left_003a88e4 + -0x62ac);\n      (*(code *)PTR_LogMagickEvent_003a91e0)\n                (0x8000,PTR_s_courses_003a88ec + -0x288c,PTR_s_courses_003a88ec + -0x269c,0x325);\n    }\n    unaff_s6 = (undefined4 *******)(*(code *)PTR_NewImageList_003a8e84)();\n    local_80 = unaff_s6;\n    ppppppuVar2 = (undefined4 ******)\n                  (*(code *)PTR_ParseGravityGeometry_003a97fc)(param_1,param_2,&local_7c,param_3);\n    unaff_s4 = local_78;\n    unaff_s0 = local_7c;\n    unaff_s3 = (undefined4 *******)PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;\n    if ((int)ppppppuVar2 << 0xe < 0) {\n      ppppppuVar7 = param_1[7];\n      if (local_7c == (undefined4 *******)0x0) {\n        local_7c = (undefined4 *******)0x1;\n        dVar35 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n      }\n      else {\n        dVar35 = (double)(int)local_7c;\n        if ((int)local_7c < 0) {\n          dVar35 = dVar35 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n      }\n      if (local_78 == (undefined4 ******)0x0) {\n        dVar30 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n        local_78 = (undefined4 ******)0x1;\n        if (((uint)ppppppuVar2 & 0x2000) != 0) goto LAB_001c8e14;\nLAB_001c8484:\n        pppppppuVar9 = local_74;\n        if ((int)local_74 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_74;\n        }\n        puVar8 = (undefined *)((int)param_1[6] - (int)pppppppuVar9);\n        pppppppuVar9 = local_70;\n        if ((int)local_70 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_70;\n        }\n        puVar3 = (undefined *)((int)ppppppuVar7 - (int)pppppppuVar9);\n      }\n      else {\n        dVar30 = (double)(int)local_78;\n        if ((int)local_78 < 0) {\n          dVar30 = dVar30 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n        if (((uint)ppppppuVar2 & 0x2000) == 0) goto LAB_001c8484;\nLAB_001c8e14:\n        pppppppuVar9 = local_74;\n        if ((int)local_74 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_74;\n        }\n        puVar8 = (undefined *)((int)pppppppuVar9 + (int)param_1[6]);\n        if ((int)local_70 < 0) {\n          puVar3 = (undefined *)((int)ppppppuVar7 - (int)local_70);\n        }\n        else {\n          puVar3 = (undefined *)((int)local_70 + (int)ppppppuVar7);\n        }\n      }\n      unaff_s4 = (undefined4 ******)((uint)ppppppuVar2 & 0x2000);\n      dVar34 = (double)(int)puVar8;\n      if ((int)puVar8 < 0) {\n        dVar34 = dVar34 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n      }\n      dVar35 = dVar34 / dVar35;\n      local_c8 = (double)(int)puVar3;\n      if ((int)puVar3 < 0) {\n        local_c8 = local_c8 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n      }\n      dVar25 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n      local_a0 = dVar25;\n      if (dVar35 < dVar25) {\n        local_a0 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n        dVar35 = dVar25;\n      }\n      if (local_a0 <= local_c8 / dVar30) {\n        local_a0 = local_c8 / dVar30;\n      }\n      dVar30 = 0.0;\n      unaff_s7 = local_70;\n      if (0.0 < local_c8) {\n        dVar25 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4780);\n        dVar31 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4788);\n        if (unaff_s4 != (undefined4 ******)0x0) goto LAB_001c8b70;\nLAB_001c854c:\n        unaff_s7 = local_70;\n        dVar32 = dVar30;\n        if ((int)local_70 < 1) {\n          dVar32 = dVar30 - (double)(int)local_70;\n        }\n        dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n        dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n        if (dVar32 - dVar26 < dVar27 - dVar32) {\n          dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar23 = (code *)PTR_floor_003a9670;\n          if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d7c;\n        }\n        else {\n          if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d7c:\n            iVar15 = -0x7ffffdff;\n            goto joined_r0x001c8cbc;\n          }\n          dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar23 = (code *)PTR_ceil_003a8c20;\n        }\n        if (dVar26 < dVar32) {\n          iVar15 = 0x7ffffdff;\n        }\n        else {\n          dVar32 = (double)(*pcVar23)(dVar32);\n          iVar15 = (int)dVar32;\n        }\njoined_r0x001c8cbc:\n        dVar30 = dVar30 + local_a0;\n        if ((int)unaff_s7 < 0) {\n          dVar32 = 0.0;\n        }\n        else {\n          dVar32 = (double)(int)unaff_s7;\n        }\n        dVar32 = dVar30 + dVar32;\n        dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n        dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n        if (dVar32 - dVar26 < dVar27 - dVar32) {\n          if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8630;\n            goto LAB_001c8cec;\n          }\n        }\n        else if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;\n          goto LAB_001c8d18;\n        }\nLAB_001c8c88:\n        iVar14 = -0x7ffffdff;\nLAB_001c8644:\n        do {\n          unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n          param_2 = (undefined4 *******)((int)param_1[0x8d] + iVar15);\n          dVar32 = 0.0;\n          local_68 = unaff_s8;\n          local_60 = param_2;\n          if (0.0 < dVar34) {\n            dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n            unaff_s6 = &local_6c;\n            dVar27 = *(double *)((int)unaff_s3 + 0x4780);\n            do {\n              unaff_s7 = local_74;\n              if (unaff_s4 == (undefined4 ******)0x0) {\n                dVar33 = dVar32;\n                if ((int)local_74 < 1) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }\nLAB_001c8b04:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;\nLAB_001c8708:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8700:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar33 = 0.0;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8768:\n                  dVar33 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar33 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n              }\n              else {\n                dVar33 = dVar32;\n                if (0 < (int)local_74) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar27 <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar33 = 0.0;\n                }\n                else {\n                  if (dVar33 < dVar27) goto LAB_001c8b24;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (dVar26 < dVar33) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8850:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < dVar25) goto LAB_001c8a44;\n                  if (dVar33 <= dVar26) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar14 = 0x7ffffdff;\n                }\n                else if (dVar25 <= dVar33) {\n                  if (dVar33 <= dVar31) goto LAB_001c8abc;\n                  iVar14 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar14 = -0x7ffffdff;\n                }\n              }\n              unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n              param_2 = (undefined4 *******)((int)param_1[0x8c] + iVar15);\n              local_6c = unaff_s8;\n              local_64 = param_2;\n              iVar15 = (*(code *)PTR_CropImage_003a90b8)(param_1,unaff_s6,param_3);\n              if (iVar15 != 0) {\n                (*(code *)PTR_AppendImageToList_003a9880)(&local_80,iVar15);\n              }\n            } while (dVar32 < dVar34);\n          }\n          unaff_s5 = unaff_s3;\n          if (local_c8 <= dVar30) break;\n          if (unaff_s4 == (undefined4 ******)0x0) goto LAB_001c854c;\nLAB_001c8b70:\n          unaff_s7 = local_70;\n          dVar32 = dVar30;\n          if (0 < (int)local_70) {\n            dVar32 = dVar30 - (double)(int)local_70;\n          }\n          dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n          dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          if (dVar32 - dVar26 < dVar27 - dVar32) {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d8c;\n            pcVar23 = (code *)PTR_floor_003a9670;\n            if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8d50;\nLAB_001c8bd8:\n            dVar32 = (double)(*pcVar23)(dVar32);\n            iVar15 = (int)dVar32;\nLAB_001c8bf0:\n            dVar30 = dVar30 + local_a0;\n            if (-2 < (int)unaff_s7) goto LAB_001c8c00;\nLAB_001c8d6c:\n            dVar32 = (double)(int)unaff_s7;\n          }\n          else {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d8c:\n              iVar15 = -0x7ffffdff;\n              goto LAB_001c8bf0;\n            }\n            pcVar23 = (code *)PTR_ceil_003a8c20;\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8bd8;\nLAB_001c8d50:\n            iVar15 = 0x7ffffdff;\n            dVar30 = dVar30 + local_a0;\n            if ((int)unaff_s7 < -1) goto LAB_001c8d6c;\nLAB_001c8c00:\n            dVar32 = 0.0;\n          }\n          dVar32 = dVar30 + dVar32;\n          dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n          dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          if (dVar32 - dVar26 < dVar27 - dVar32) {\n            if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n              if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) {\nLAB_001c8cec:\n                iVar14 = 0x7ffffdff;\n              }\n              else {\nLAB_001c8630:\n                dVar32 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n                iVar14 = (int)dVar32;\n              }\n              goto LAB_001c8644;\n            }\n            goto LAB_001c8c88;\n          }\n          if (dVar32 < dVar25) goto LAB_001c8c88;\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;\nLAB_001c8d18:\n          dVar32 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          iVar14 = (int)dVar32;\n        } while( true );\n      }\n      (*(code *)PTR_ClearMagickException_003a90f8)(param_3);\n      pppppppuVar9 = local_80;\n      unaff_s0 = param_2;\n    }\n    else {\n      unaff_s3 = &local_7c;\n      if (((local_7c == (undefined4 *******)0x0) && (local_78 == (undefined4 ******)0x0)) ||\n         (((uint)ppppppuVar2 & 3) != 0)) {\n        local_80 = (undefined4 *******)(*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n        pppppppuVar9 = local_80;\n        unaff_s4 = ppppppuVar2;\n        if ((local_80 != (undefined4 *******)0x0) &&\n           (unaff_s4 = (undefined4 ******)((uint)ppppppuVar2 & 0x2000),\n           unaff_s4 != (undefined4 ******)0x0)) {\n          local_80[0x8c] = (undefined4 ******)((int)local_80[0x8c] - (int)local_74);\n          local_80[0x8d] = (undefined4 ******)((int)local_80[0x8d] - (int)local_70);\n          local_80[0x8a] = local_7c;\n          local_80[0x8b] = local_78;\n        }\n      }\n      else {\n        unaff_s7 = (undefined4 *******)param_1[6];\n        if ((local_7c < unaff_s7) || (local_78 < param_1[7])) {\n          ppppppuVar2 = param_1[0x8b];\n          if ((undefined4 *******)param_1[0x8a] != (undefined4 *******)0x0) {\n            unaff_s7 = (undefined4 *******)param_1[0x8a];\n          }\n          if (ppppppuVar2 == (undefined4 ******)0x0) {\n            ppppppuVar2 = param_1[7];\n          }\n          if (local_7c == (undefined4 *******)0x0) {\n            unaff_s0 = unaff_s7;\n          }\n          if (local_78 == (undefined4 ******)0x0) {\n            unaff_s4 = ppppppuVar2;\n          }\n          pppppppuVar9 = local_80;\n          if (0 < (int)ppppppuVar2) {\n            unaff_s3 = (undefined4 *******)0x0;\n            unaff_s8 = &local_80;\n            do {\n              unaff_s5 = (undefined4 *******)0x0;\n              if ((int)unaff_s7 < 1) {\n                pppppppuVar9 = local_80;\n                if (unaff_s6 == (undefined4 *******)0x0) break;\n              }\n              else {\n                do {\n                  local_7c = unaff_s0;\n                  local_78 = unaff_s4;\n                  local_74 = unaff_s5;\n                  local_70 = unaff_s3;\n                  unaff_s6 = (undefined4 *******)\n                             (*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n                  pppppppuVar9 = local_80;\n                  if (unaff_s6 == (undefined4 *******)0x0) goto LAB_001c8908;\n                  unaff_s5 = (undefined4 *******)((int)unaff_s5 + (int)unaff_s0);\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);\n              }\n              unaff_s3 = (undefined4 *******)((int)unaff_s3 + (int)unaff_s4);\n              pppppppuVar9 = local_80;\n            } while ((int)unaff_s3 < (int)ppppppuVar2);\n          }\n        }\n        else {\n          local_e8 = param_3;\n          pppppppuVar9 = (undefined4 *******)(*(code *)PTR_CloneImage_003a9830)(param_1,0,0,1);\n        }\n      }\n    }\nLAB_001c8908:\n    if (local_5c == *(int *)puVar20) {\n      return pppppppuVar9;\n    }\n    (*(code *)PTR___stack_chk_fail_003a9064)();\n    unaff_s1 = param_1;\n    unaff_s2 = param_3;\n    goto LAB_001c8ef8;\n  }" (else "else") (if_statement "if (param_1[0xcdb] == (undefined4 ******)0xabacadab) {\n    if (param_1[0xcd4] != (undefined4 ******)0x0) {\n      local_e4 = param_1 + 0xd0;\n      local_e8 = (undefined4 ******)(PTR_s_t_to_left_003a88e4 + -0x62ac);\n      (*(code *)PTR_LogMagickEvent_003a91e0)\n                (0x8000,PTR_s_courses_003a88ec + -0x288c,PTR_s_courses_003a88ec + -0x269c,0x325);\n    }\n    unaff_s6 = (undefined4 *******)(*(code *)PTR_NewImageList_003a8e84)();\n    local_80 = unaff_s6;\n    ppppppuVar2 = (undefined4 ******)\n                  (*(code *)PTR_ParseGravityGeometry_003a97fc)(param_1,param_2,&local_7c,param_3);\n    unaff_s4 = local_78;\n    unaff_s0 = local_7c;\n    unaff_s3 = (undefined4 *******)PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;\n    if ((int)ppppppuVar2 << 0xe < 0) {\n      ppppppuVar7 = param_1[7];\n      if (local_7c == (undefined4 *******)0x0) {\n        local_7c = (undefined4 *******)0x1;\n        dVar35 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n      }\n      else {\n        dVar35 = (double)(int)local_7c;\n        if ((int)local_7c < 0) {\n          dVar35 = dVar35 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n      }\n      if (local_78 == (undefined4 ******)0x0) {\n        dVar30 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n        local_78 = (undefined4 ******)0x1;\n        if (((uint)ppppppuVar2 & 0x2000) != 0) goto LAB_001c8e14;\nLAB_001c8484:\n        pppppppuVar9 = local_74;\n        if ((int)local_74 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_74;\n        }\n        puVar8 = (undefined *)((int)param_1[6] - (int)pppppppuVar9);\n        pppppppuVar9 = local_70;\n        if ((int)local_70 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_70;\n        }\n        puVar3 = (undefined *)((int)ppppppuVar7 - (int)pppppppuVar9);\n      }\n      else {\n        dVar30 = (double)(int)local_78;\n        if ((int)local_78 < 0) {\n          dVar30 = dVar30 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n        if (((uint)ppppppuVar2 & 0x2000) == 0) goto LAB_001c8484;\nLAB_001c8e14:\n        pppppppuVar9 = local_74;\n        if ((int)local_74 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_74;\n        }\n        puVar8 = (undefined *)((int)pppppppuVar9 + (int)param_1[6]);\n        if ((int)local_70 < 0) {\n          puVar3 = (undefined *)((int)ppppppuVar7 - (int)local_70);\n        }\n        else {\n          puVar3 = (undefined *)((int)local_70 + (int)ppppppuVar7);\n        }\n      }\n      unaff_s4 = (undefined4 ******)((uint)ppppppuVar2 & 0x2000);\n      dVar34 = (double)(int)puVar8;\n      if ((int)puVar8 < 0) {\n        dVar34 = dVar34 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n      }\n      dVar35 = dVar34 / dVar35;\n      local_c8 = (double)(int)puVar3;\n      if ((int)puVar3 < 0) {\n        local_c8 = local_c8 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n      }\n      dVar25 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n      local_a0 = dVar25;\n      if (dVar35 < dVar25) {\n        local_a0 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n        dVar35 = dVar25;\n      }\n      if (local_a0 <= local_c8 / dVar30) {\n        local_a0 = local_c8 / dVar30;\n      }\n      dVar30 = 0.0;\n      unaff_s7 = local_70;\n      if (0.0 < local_c8) {\n        dVar25 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4780);\n        dVar31 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4788);\n        if (unaff_s4 != (undefined4 ******)0x0) goto LAB_001c8b70;\nLAB_001c854c:\n        unaff_s7 = local_70;\n        dVar32 = dVar30;\n        if ((int)local_70 < 1) {\n          dVar32 = dVar30 - (double)(int)local_70;\n        }\n        dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n        dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n        if (dVar32 - dVar26 < dVar27 - dVar32) {\n          dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar23 = (code *)PTR_floor_003a9670;\n          if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d7c;\n        }\n        else {\n          if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d7c:\n            iVar15 = -0x7ffffdff;\n            goto joined_r0x001c8cbc;\n          }\n          dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar23 = (code *)PTR_ceil_003a8c20;\n        }\n        if (dVar26 < dVar32) {\n          iVar15 = 0x7ffffdff;\n        }\n        else {\n          dVar32 = (double)(*pcVar23)(dVar32);\n          iVar15 = (int)dVar32;\n        }\njoined_r0x001c8cbc:\n        dVar30 = dVar30 + local_a0;\n        if ((int)unaff_s7 < 0) {\n          dVar32 = 0.0;\n        }\n        else {\n          dVar32 = (double)(int)unaff_s7;\n        }\n        dVar32 = dVar30 + dVar32;\n        dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n        dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n        if (dVar32 - dVar26 < dVar27 - dVar32) {\n          if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8630;\n            goto LAB_001c8cec;\n          }\n        }\n        else if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;\n          goto LAB_001c8d18;\n        }\nLAB_001c8c88:\n        iVar14 = -0x7ffffdff;\nLAB_001c8644:\n        do {\n          unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n          param_2 = (undefined4 *******)((int)param_1[0x8d] + iVar15);\n          dVar32 = 0.0;\n          local_68 = unaff_s8;\n          local_60 = param_2;\n          if (0.0 < dVar34) {\n            dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n            unaff_s6 = &local_6c;\n            dVar27 = *(double *)((int)unaff_s3 + 0x4780);\n            do {\n              unaff_s7 = local_74;\n              if (unaff_s4 == (undefined4 ******)0x0) {\n                dVar33 = dVar32;\n                if ((int)local_74 < 1) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }\nLAB_001c8b04:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;\nLAB_001c8708:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8700:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar33 = 0.0;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8768:\n                  dVar33 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar33 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n              }\n              else {\n                dVar33 = dVar32;\n                if (0 < (int)local_74) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar27 <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar33 = 0.0;\n                }\n                else {\n                  if (dVar33 < dVar27) goto LAB_001c8b24;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (dVar26 < dVar33) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8850:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < dVar25) goto LAB_001c8a44;\n                  if (dVar33 <= dVar26) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar14 = 0x7ffffdff;\n                }\n                else if (dVar25 <= dVar33) {\n                  if (dVar33 <= dVar31) goto LAB_001c8abc;\n                  iVar14 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar14 = -0x7ffffdff;\n                }\n              }\n              unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n              param_2 = (undefined4 *******)((int)param_1[0x8c] + iVar15);\n              local_6c = unaff_s8;\n              local_64 = param_2;\n              iVar15 = (*(code *)PTR_CropImage_003a90b8)(param_1,unaff_s6,param_3);\n              if (iVar15 != 0) {\n                (*(code *)PTR_AppendImageToList_003a9880)(&local_80,iVar15);\n              }\n            } while (dVar32 < dVar34);\n          }\n          unaff_s5 = unaff_s3;\n          if (local_c8 <= dVar30) break;\n          if (unaff_s4 == (undefined4 ******)0x0) goto LAB_001c854c;\nLAB_001c8b70:\n          unaff_s7 = local_70;\n          dVar32 = dVar30;\n          if (0 < (int)local_70) {\n            dVar32 = dVar30 - (double)(int)local_70;\n          }\n          dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n          dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          if (dVar32 - dVar26 < dVar27 - dVar32) {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d8c;\n            pcVar23 = (code *)PTR_floor_003a9670;\n            if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8d50;\nLAB_001c8bd8:\n            dVar32 = (double)(*pcVar23)(dVar32);\n            iVar15 = (int)dVar32;\nLAB_001c8bf0:\n            dVar30 = dVar30 + local_a0;\n            if (-2 < (int)unaff_s7) goto LAB_001c8c00;\nLAB_001c8d6c:\n            dVar32 = (double)(int)unaff_s7;\n          }\n          else {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d8c:\n              iVar15 = -0x7ffffdff;\n              goto LAB_001c8bf0;\n            }\n            pcVar23 = (code *)PTR_ceil_003a8c20;\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8bd8;\nLAB_001c8d50:\n            iVar15 = 0x7ffffdff;\n            dVar30 = dVar30 + local_a0;\n            if ((int)unaff_s7 < -1) goto LAB_001c8d6c;\nLAB_001c8c00:\n            dVar32 = 0.0;\n          }\n          dVar32 = dVar30 + dVar32;\n          dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n          dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          if (dVar32 - dVar26 < dVar27 - dVar32) {\n            if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n              if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) {\nLAB_001c8cec:\n                iVar14 = 0x7ffffdff;\n              }\n              else {\nLAB_001c8630:\n                dVar32 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n                iVar14 = (int)dVar32;\n              }\n              goto LAB_001c8644;\n            }\n            goto LAB_001c8c88;\n          }\n          if (dVar32 < dVar25) goto LAB_001c8c88;\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;\nLAB_001c8d18:\n          dVar32 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          iVar14 = (int)dVar32;\n        } while( true );\n      }\n      (*(code *)PTR_ClearMagickException_003a90f8)(param_3);\n      pppppppuVar9 = local_80;\n      unaff_s0 = param_2;\n    }\n    else {\n      unaff_s3 = &local_7c;\n      if (((local_7c == (undefined4 *******)0x0) && (local_78 == (undefined4 ******)0x0)) ||\n         (((uint)ppppppuVar2 & 3) != 0)) {\n        local_80 = (undefined4 *******)(*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n        pppppppuVar9 = local_80;\n        unaff_s4 = ppppppuVar2;\n        if ((local_80 != (undefined4 *******)0x0) &&\n           (unaff_s4 = (undefined4 ******)((uint)ppppppuVar2 & 0x2000),\n           unaff_s4 != (undefined4 ******)0x0)) {\n          local_80[0x8c] = (undefined4 ******)((int)local_80[0x8c] - (int)local_74);\n          local_80[0x8d] = (undefined4 ******)((int)local_80[0x8d] - (int)local_70);\n          local_80[0x8a] = local_7c;\n          local_80[0x8b] = local_78;\n        }\n      }\n      else {\n        unaff_s7 = (undefined4 *******)param_1[6];\n        if ((local_7c < unaff_s7) || (local_78 < param_1[7])) {\n          ppppppuVar2 = param_1[0x8b];\n          if ((undefined4 *******)param_1[0x8a] != (undefined4 *******)0x0) {\n            unaff_s7 = (undefined4 *******)param_1[0x8a];\n          }\n          if (ppppppuVar2 == (undefined4 ******)0x0) {\n            ppppppuVar2 = param_1[7];\n          }\n          if (local_7c == (undefined4 *******)0x0) {\n            unaff_s0 = unaff_s7;\n          }\n          if (local_78 == (undefined4 ******)0x0) {\n            unaff_s4 = ppppppuVar2;\n          }\n          pppppppuVar9 = local_80;\n          if (0 < (int)ppppppuVar2) {\n            unaff_s3 = (undefined4 *******)0x0;\n            unaff_s8 = &local_80;\n            do {\n              unaff_s5 = (undefined4 *******)0x0;\n              if ((int)unaff_s7 < 1) {\n                pppppppuVar9 = local_80;\n                if (unaff_s6 == (undefined4 *******)0x0) break;\n              }\n              else {\n                do {\n                  local_7c = unaff_s0;\n                  local_78 = unaff_s4;\n                  local_74 = unaff_s5;\n                  local_70 = unaff_s3;\n                  unaff_s6 = (undefined4 *******)\n                             (*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n                  pppppppuVar9 = local_80;\n                  if (unaff_s6 == (undefined4 *******)0x0) goto LAB_001c8908;\n                  unaff_s5 = (undefined4 *******)((int)unaff_s5 + (int)unaff_s0);\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);\n              }\n              unaff_s3 = (undefined4 *******)((int)unaff_s3 + (int)unaff_s4);\n              pppppppuVar9 = local_80;\n            } while ((int)unaff_s3 < (int)ppppppuVar2);\n          }\n        }\n        else {\n          local_e8 = param_3;\n          pppppppuVar9 = (undefined4 *******)(*(code *)PTR_CloneImage_003a9830)(param_1,0,0,1);\n        }\n      }\n    }\nLAB_001c8908:\n    if (local_5c == *(int *)puVar20) {\n      return pppppppuVar9;\n    }\n    (*(code *)PTR___stack_chk_fail_003a9064)();\n    unaff_s1 = param_1;\n    unaff_s2 = param_3;\n    goto LAB_001c8ef8;\n  }" (if "if") (parenthesized_expression "(param_1[0xcdb] == (undefined4 ******)0xabacadab)" (( "(") (binary_expression "param_1[0xcdb] == (undefined4 ******)0xabacadab" (subscript_expression "param_1[0xcdb]" (identifier "param_1") ([ "[") (number_literal "0xcdb") (] "]")) (== "==") (cast_expression "(undefined4 ******)0xabacadab" (( "(") (type_descriptor "undefined4 ******" (type_identifier "undefined4") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (number_literal "0xabacadab"))) () ")")) (compound_statement "{\n    if (param_1[0xcd4] != (undefined4 ******)0x0) {\n      local_e4 = param_1 + 0xd0;\n      local_e8 = (undefined4 ******)(PTR_s_t_to_left_003a88e4 + -0x62ac);\n      (*(code *)PTR_LogMagickEvent_003a91e0)\n                (0x8000,PTR_s_courses_003a88ec + -0x288c,PTR_s_courses_003a88ec + -0x269c,0x325);\n    }\n    unaff_s6 = (undefined4 *******)(*(code *)PTR_NewImageList_003a8e84)();\n    local_80 = unaff_s6;\n    ppppppuVar2 = (undefined4 ******)\n                  (*(code *)PTR_ParseGravityGeometry_003a97fc)(param_1,param_2,&local_7c,param_3);\n    unaff_s4 = local_78;\n    unaff_s0 = local_7c;\n    unaff_s3 = (undefined4 *******)PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;\n    if ((int)ppppppuVar2 << 0xe < 0) {\n      ppppppuVar7 = param_1[7];\n      if (local_7c == (undefined4 *******)0x0) {\n        local_7c = (undefined4 *******)0x1;\n        dVar35 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n      }\n      else {\n        dVar35 = (double)(int)local_7c;\n        if ((int)local_7c < 0) {\n          dVar35 = dVar35 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n      }\n      if (local_78 == (undefined4 ******)0x0) {\n        dVar30 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n        local_78 = (undefined4 ******)0x1;\n        if (((uint)ppppppuVar2 & 0x2000) != 0) goto LAB_001c8e14;\nLAB_001c8484:\n        pppppppuVar9 = local_74;\n        if ((int)local_74 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_74;\n        }\n        puVar8 = (undefined *)((int)param_1[6] - (int)pppppppuVar9);\n        pppppppuVar9 = local_70;\n        if ((int)local_70 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_70;\n        }\n        puVar3 = (undefined *)((int)ppppppuVar7 - (int)pppppppuVar9);\n      }\n      else {\n        dVar30 = (double)(int)local_78;\n        if ((int)local_78 < 0) {\n          dVar30 = dVar30 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n        if (((uint)ppppppuVar2 & 0x2000) == 0) goto LAB_001c8484;\nLAB_001c8e14:\n        pppppppuVar9 = local_74;\n        if ((int)local_74 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_74;\n        }\n        puVar8 = (undefined *)((int)pppppppuVar9 + (int)param_1[6]);\n        if ((int)local_70 < 0) {\n          puVar3 = (undefined *)((int)ppppppuVar7 - (int)local_70);\n        }\n        else {\n          puVar3 = (undefined *)((int)local_70 + (int)ppppppuVar7);\n        }\n      }\n      unaff_s4 = (undefined4 ******)((uint)ppppppuVar2 & 0x2000);\n      dVar34 = (double)(int)puVar8;\n      if ((int)puVar8 < 0) {\n        dVar34 = dVar34 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n      }\n      dVar35 = dVar34 / dVar35;\n      local_c8 = (double)(int)puVar3;\n      if ((int)puVar3 < 0) {\n        local_c8 = local_c8 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n      }\n      dVar25 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n      local_a0 = dVar25;\n      if (dVar35 < dVar25) {\n        local_a0 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n        dVar35 = dVar25;\n      }\n      if (local_a0 <= local_c8 / dVar30) {\n        local_a0 = local_c8 / dVar30;\n      }\n      dVar30 = 0.0;\n      unaff_s7 = local_70;\n      if (0.0 < local_c8) {\n        dVar25 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4780);\n        dVar31 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4788);\n        if (unaff_s4 != (undefined4 ******)0x0) goto LAB_001c8b70;\nLAB_001c854c:\n        unaff_s7 = local_70;\n        dVar32 = dVar30;\n        if ((int)local_70 < 1) {\n          dVar32 = dVar30 - (double)(int)local_70;\n        }\n        dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n        dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n        if (dVar32 - dVar26 < dVar27 - dVar32) {\n          dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar23 = (code *)PTR_floor_003a9670;\n          if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d7c;\n        }\n        else {\n          if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d7c:\n            iVar15 = -0x7ffffdff;\n            goto joined_r0x001c8cbc;\n          }\n          dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar23 = (code *)PTR_ceil_003a8c20;\n        }\n        if (dVar26 < dVar32) {\n          iVar15 = 0x7ffffdff;\n        }\n        else {\n          dVar32 = (double)(*pcVar23)(dVar32);\n          iVar15 = (int)dVar32;\n        }\njoined_r0x001c8cbc:\n        dVar30 = dVar30 + local_a0;\n        if ((int)unaff_s7 < 0) {\n          dVar32 = 0.0;\n        }\n        else {\n          dVar32 = (double)(int)unaff_s7;\n        }\n        dVar32 = dVar30 + dVar32;\n        dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n        dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n        if (dVar32 - dVar26 < dVar27 - dVar32) {\n          if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8630;\n            goto LAB_001c8cec;\n          }\n        }\n        else if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;\n          goto LAB_001c8d18;\n        }\nLAB_001c8c88:\n        iVar14 = -0x7ffffdff;\nLAB_001c8644:\n        do {\n          unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n          param_2 = (undefined4 *******)((int)param_1[0x8d] + iVar15);\n          dVar32 = 0.0;\n          local_68 = unaff_s8;\n          local_60 = param_2;\n          if (0.0 < dVar34) {\n            dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n            unaff_s6 = &local_6c;\n            dVar27 = *(double *)((int)unaff_s3 + 0x4780);\n            do {\n              unaff_s7 = local_74;\n              if (unaff_s4 == (undefined4 ******)0x0) {\n                dVar33 = dVar32;\n                if ((int)local_74 < 1) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }\nLAB_001c8b04:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;\nLAB_001c8708:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8700:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar33 = 0.0;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8768:\n                  dVar33 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar33 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n              }\n              else {\n                dVar33 = dVar32;\n                if (0 < (int)local_74) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar27 <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar33 = 0.0;\n                }\n                else {\n                  if (dVar33 < dVar27) goto LAB_001c8b24;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (dVar26 < dVar33) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8850:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < dVar25) goto LAB_001c8a44;\n                  if (dVar33 <= dVar26) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar14 = 0x7ffffdff;\n                }\n                else if (dVar25 <= dVar33) {\n                  if (dVar33 <= dVar31) goto LAB_001c8abc;\n                  iVar14 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar14 = -0x7ffffdff;\n                }\n              }\n              unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n              param_2 = (undefined4 *******)((int)param_1[0x8c] + iVar15);\n              local_6c = unaff_s8;\n              local_64 = param_2;\n              iVar15 = (*(code *)PTR_CropImage_003a90b8)(param_1,unaff_s6,param_3);\n              if (iVar15 != 0) {\n                (*(code *)PTR_AppendImageToList_003a9880)(&local_80,iVar15);\n              }\n            } while (dVar32 < dVar34);\n          }\n          unaff_s5 = unaff_s3;\n          if (local_c8 <= dVar30) break;\n          if (unaff_s4 == (undefined4 ******)0x0) goto LAB_001c854c;\nLAB_001c8b70:\n          unaff_s7 = local_70;\n          dVar32 = dVar30;\n          if (0 < (int)local_70) {\n            dVar32 = dVar30 - (double)(int)local_70;\n          }\n          dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n          dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          if (dVar32 - dVar26 < dVar27 - dVar32) {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d8c;\n            pcVar23 = (code *)PTR_floor_003a9670;\n            if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8d50;\nLAB_001c8bd8:\n            dVar32 = (double)(*pcVar23)(dVar32);\n            iVar15 = (int)dVar32;\nLAB_001c8bf0:\n            dVar30 = dVar30 + local_a0;\n            if (-2 < (int)unaff_s7) goto LAB_001c8c00;\nLAB_001c8d6c:\n            dVar32 = (double)(int)unaff_s7;\n          }\n          else {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d8c:\n              iVar15 = -0x7ffffdff;\n              goto LAB_001c8bf0;\n            }\n            pcVar23 = (code *)PTR_ceil_003a8c20;\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8bd8;\nLAB_001c8d50:\n            iVar15 = 0x7ffffdff;\n            dVar30 = dVar30 + local_a0;\n            if ((int)unaff_s7 < -1) goto LAB_001c8d6c;\nLAB_001c8c00:\n            dVar32 = 0.0;\n          }\n          dVar32 = dVar30 + dVar32;\n          dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n          dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          if (dVar32 - dVar26 < dVar27 - dVar32) {\n            if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n              if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) {\nLAB_001c8cec:\n                iVar14 = 0x7ffffdff;\n              }\n              else {\nLAB_001c8630:\n                dVar32 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n                iVar14 = (int)dVar32;\n              }\n              goto LAB_001c8644;\n            }\n            goto LAB_001c8c88;\n          }\n          if (dVar32 < dVar25) goto LAB_001c8c88;\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;\nLAB_001c8d18:\n          dVar32 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          iVar14 = (int)dVar32;\n        } while( true );\n      }\n      (*(code *)PTR_ClearMagickException_003a90f8)(param_3);\n      pppppppuVar9 = local_80;\n      unaff_s0 = param_2;\n    }\n    else {\n      unaff_s3 = &local_7c;\n      if (((local_7c == (undefined4 *******)0x0) && (local_78 == (undefined4 ******)0x0)) ||\n         (((uint)ppppppuVar2 & 3) != 0)) {\n        local_80 = (undefined4 *******)(*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n        pppppppuVar9 = local_80;\n        unaff_s4 = ppppppuVar2;\n        if ((local_80 != (undefined4 *******)0x0) &&\n           (unaff_s4 = (undefined4 ******)((uint)ppppppuVar2 & 0x2000),\n           unaff_s4 != (undefined4 ******)0x0)) {\n          local_80[0x8c] = (undefined4 ******)((int)local_80[0x8c] - (int)local_74);\n          local_80[0x8d] = (undefined4 ******)((int)local_80[0x8d] - (int)local_70);\n          local_80[0x8a] = local_7c;\n          local_80[0x8b] = local_78;\n        }\n      }\n      else {\n        unaff_s7 = (undefined4 *******)param_1[6];\n        if ((local_7c < unaff_s7) || (local_78 < param_1[7])) {\n          ppppppuVar2 = param_1[0x8b];\n          if ((undefined4 *******)param_1[0x8a] != (undefined4 *******)0x0) {\n            unaff_s7 = (undefined4 *******)param_1[0x8a];\n          }\n          if (ppppppuVar2 == (undefined4 ******)0x0) {\n            ppppppuVar2 = param_1[7];\n          }\n          if (local_7c == (undefined4 *******)0x0) {\n            unaff_s0 = unaff_s7;\n          }\n          if (local_78 == (undefined4 ******)0x0) {\n            unaff_s4 = ppppppuVar2;\n          }\n          pppppppuVar9 = local_80;\n          if (0 < (int)ppppppuVar2) {\n            unaff_s3 = (undefined4 *******)0x0;\n            unaff_s8 = &local_80;\n            do {\n              unaff_s5 = (undefined4 *******)0x0;\n              if ((int)unaff_s7 < 1) {\n                pppppppuVar9 = local_80;\n                if (unaff_s6 == (undefined4 *******)0x0) break;\n              }\n              else {\n                do {\n                  local_7c = unaff_s0;\n                  local_78 = unaff_s4;\n                  local_74 = unaff_s5;\n                  local_70 = unaff_s3;\n                  unaff_s6 = (undefined4 *******)\n                             (*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n                  pppppppuVar9 = local_80;\n                  if (unaff_s6 == (undefined4 *******)0x0) goto LAB_001c8908;\n                  unaff_s5 = (undefined4 *******)((int)unaff_s5 + (int)unaff_s0);\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);\n              }\n              unaff_s3 = (undefined4 *******)((int)unaff_s3 + (int)unaff_s4);\n              pppppppuVar9 = local_80;\n            } while ((int)unaff_s3 < (int)ppppppuVar2);\n          }\n        }\n        else {\n          local_e8 = param_3;\n          pppppppuVar9 = (undefined4 *******)(*(code *)PTR_CloneImage_003a9830)(param_1,0,0,1);\n        }\n      }\n    }\nLAB_001c8908:\n    if (local_5c == *(int *)puVar20) {\n      return pppppppuVar9;\n    }\n    (*(code *)PTR___stack_chk_fail_003a9064)();\n    unaff_s1 = param_1;\n    unaff_s2 = param_3;\n    goto LAB_001c8ef8;\n  }" ({ "{") (if_statement "if (param_1[0xcd4] != (undefined4 ******)0x0) {\n      local_e4 = param_1 + 0xd0;\n      local_e8 = (undefined4 ******)(PTR_s_t_to_left_003a88e4 + -0x62ac);\n      (*(code *)PTR_LogMagickEvent_003a91e0)\n                (0x8000,PTR_s_courses_003a88ec + -0x288c,PTR_s_courses_003a88ec + -0x269c,0x325);\n    }" (if "if") (parenthesized_expression "(param_1[0xcd4] != (undefined4 ******)0x0)" (( "(") (binary_expression "param_1[0xcd4] != (undefined4 ******)0x0" (subscript_expression "param_1[0xcd4]" (identifier "param_1") ([ "[") (number_literal "0xcd4") (] "]")) (!= "!=") (cast_expression "(undefined4 ******)0x0" (( "(") (type_descriptor "undefined4 ******" (type_identifier "undefined4") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n      local_e4 = param_1 + 0xd0;\n      local_e8 = (undefined4 ******)(PTR_s_t_to_left_003a88e4 + -0x62ac);\n      (*(code *)PTR_LogMagickEvent_003a91e0)\n                (0x8000,PTR_s_courses_003a88ec + -0x288c,PTR_s_courses_003a88ec + -0x269c,0x325);\n    }" ({ "{") (expression_statement "local_e4 = param_1 + 0xd0;" (assignment_expression "local_e4 = param_1 + 0xd0" (identifier "local_e4") (= "=") (binary_expression "param_1 + 0xd0" (identifier "param_1") (+ "+") (number_literal "0xd0"))) (; ";")) (expression_statement "local_e8 = (undefined4 ******)(PTR_s_t_to_left_003a88e4 + -0x62ac);" (assignment_expression "local_e8 = (undefined4 ******)(PTR_s_t_to_left_003a88e4 + -0x62ac)" (identifier "local_e8") (= "=") (cast_expression "(undefined4 ******)(PTR_s_t_to_left_003a88e4 + -0x62ac)" (( "(") (type_descriptor "undefined4 ******" (type_identifier "undefined4") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (parenthesized_expression "(PTR_s_t_to_left_003a88e4 + -0x62ac)" (( "(") (binary_expression "PTR_s_t_to_left_003a88e4 + -0x62ac" (identifier "PTR_s_t_to_left_003a88e4") (+ "+") (number_literal "-0x62ac")) () ")")))) (; ";")) (expression_statement "(*(code *)PTR_LogMagickEvent_003a91e0)\n                (0x8000,PTR_s_courses_003a88ec + -0x288c,PTR_s_courses_003a88ec + -0x269c,0x325);" (call_expression "(*(code *)PTR_LogMagickEvent_003a91e0)\n                (0x8000,PTR_s_courses_003a88ec + -0x288c,PTR_s_courses_003a88ec + -0x269c,0x325)" (parenthesized_expression "(*(code *)PTR_LogMagickEvent_003a91e0)" (( "(") (pointer_expression "*(code *)PTR_LogMagickEvent_003a91e0" (* "*") (cast_expression "(code *)PTR_LogMagickEvent_003a91e0" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_LogMagickEvent_003a91e0"))) () ")")) (argument_list "(0x8000,PTR_s_courses_003a88ec + -0x288c,PTR_s_courses_003a88ec + -0x269c,0x325)" (( "(") (number_literal "0x8000") (, ",") (binary_expression "PTR_s_courses_003a88ec + -0x288c" (identifier "PTR_s_courses_003a88ec") (+ "+") (number_literal "-0x288c")) (, ",") (binary_expression "PTR_s_courses_003a88ec + -0x269c" (identifier "PTR_s_courses_003a88ec") (+ "+") (number_literal "-0x269c")) (, ",") (number_literal "0x325") () ")"))) (; ";")) (} "}"))) (expression_statement "unaff_s6 = (undefined4 *******)(*(code *)PTR_NewImageList_003a8e84)();" (assignment_expression "unaff_s6 = (undefined4 *******)(*(code *)PTR_NewImageList_003a8e84)()" (identifier "unaff_s6") (= "=") (cast_expression "(undefined4 *******)(*(code *)PTR_NewImageList_003a8e84)()" (( "(") (type_descriptor "undefined4 *******" (type_identifier "undefined4") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (call_expression "(*(code *)PTR_NewImageList_003a8e84)()" (parenthesized_expression "(*(code *)PTR_NewImageList_003a8e84)" (( "(") (pointer_expression "*(code *)PTR_NewImageList_003a8e84" (* "*") (cast_expression "(code *)PTR_NewImageList_003a8e84" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_NewImageList_003a8e84"))) () ")")) (argument_list "()" (( "(") () ")"))))) (; ";")) (expression_statement "local_80 = unaff_s6;" (assignment_expression "local_80 = unaff_s6" (identifier "local_80") (= "=") (identifier "unaff_s6")) (; ";")) (expression_statement "ppppppuVar2 = (undefined4 ******)\n                  (*(code *)PTR_ParseGravityGeometry_003a97fc)(param_1,param_2,&local_7c,param_3);" (assignment_expression "ppppppuVar2 = (undefined4 ******)\n                  (*(code *)PTR_ParseGravityGeometry_003a97fc)(param_1,param_2,&local_7c,param_3)" (identifier "ppppppuVar2") (= "=") (cast_expression "(undefined4 ******)\n                  (*(code *)PTR_ParseGravityGeometry_003a97fc)(param_1,param_2,&local_7c,param_3)" (( "(") (type_descriptor "undefined4 ******" (type_identifier "undefined4") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (call_expression "(*(code *)PTR_ParseGravityGeometry_003a97fc)(param_1,param_2,&local_7c,param_3)" (parenthesized_expression "(*(code *)PTR_ParseGravityGeometry_003a97fc)" (( "(") (pointer_expression "*(code *)PTR_ParseGravityGeometry_003a97fc" (* "*") (cast_expression "(code *)PTR_ParseGravityGeometry_003a97fc" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_ParseGravityGeometry_003a97fc"))) () ")")) (argument_list "(param_1,param_2,&local_7c,param_3)" (( "(") (identifier "param_1") (, ",") (identifier "param_2") (, ",") (pointer_expression "&local_7c" (& "&") (identifier "local_7c")) (, ",") (identifier "param_3") () ")"))))) (; ";")) (expression_statement "unaff_s4 = local_78;" (assignment_expression "unaff_s4 = local_78" (identifier "unaff_s4") (= "=") (identifier "local_78")) (; ";")) (expression_statement "unaff_s0 = local_7c;" (assignment_expression "unaff_s0 = local_7c" (identifier "unaff_s0") (= "=") (identifier "local_7c")) (; ";")) (expression_statement "unaff_s3 = (undefined4 *******)PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;" (assignment_expression "unaff_s3 = (undefined4 *******)PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8" (identifier "unaff_s3") (= "=") (cast_expression "(undefined4 *******)PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8" (( "(") (type_descriptor "undefined4 *******" (type_identifier "undefined4") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (identifier "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8"))) (; ";")) (if_statement "if ((int)ppppppuVar2 << 0xe < 0) {\n      ppppppuVar7 = param_1[7];\n      if (local_7c == (undefined4 *******)0x0) {\n        local_7c = (undefined4 *******)0x1;\n        dVar35 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n      }\n      else {\n        dVar35 = (double)(int)local_7c;\n        if ((int)local_7c < 0) {\n          dVar35 = dVar35 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n      }\n      if (local_78 == (undefined4 ******)0x0) {\n        dVar30 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n        local_78 = (undefined4 ******)0x1;\n        if (((uint)ppppppuVar2 & 0x2000) != 0) goto LAB_001c8e14;\nLAB_001c8484:\n        pppppppuVar9 = local_74;\n        if ((int)local_74 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_74;\n        }\n        puVar8 = (undefined *)((int)param_1[6] - (int)pppppppuVar9);\n        pppppppuVar9 = local_70;\n        if ((int)local_70 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_70;\n        }\n        puVar3 = (undefined *)((int)ppppppuVar7 - (int)pppppppuVar9);\n      }\n      else {\n        dVar30 = (double)(int)local_78;\n        if ((int)local_78 < 0) {\n          dVar30 = dVar30 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n        if (((uint)ppppppuVar2 & 0x2000) == 0) goto LAB_001c8484;\nLAB_001c8e14:\n        pppppppuVar9 = local_74;\n        if ((int)local_74 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_74;\n        }\n        puVar8 = (undefined *)((int)pppppppuVar9 + (int)param_1[6]);\n        if ((int)local_70 < 0) {\n          puVar3 = (undefined *)((int)ppppppuVar7 - (int)local_70);\n        }\n        else {\n          puVar3 = (undefined *)((int)local_70 + (int)ppppppuVar7);\n        }\n      }\n      unaff_s4 = (undefined4 ******)((uint)ppppppuVar2 & 0x2000);\n      dVar34 = (double)(int)puVar8;\n      if ((int)puVar8 < 0) {\n        dVar34 = dVar34 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n      }\n      dVar35 = dVar34 / dVar35;\n      local_c8 = (double)(int)puVar3;\n      if ((int)puVar3 < 0) {\n        local_c8 = local_c8 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n      }\n      dVar25 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n      local_a0 = dVar25;\n      if (dVar35 < dVar25) {\n        local_a0 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n        dVar35 = dVar25;\n      }\n      if (local_a0 <= local_c8 / dVar30) {\n        local_a0 = local_c8 / dVar30;\n      }\n      dVar30 = 0.0;\n      unaff_s7 = local_70;\n      if (0.0 < local_c8) {\n        dVar25 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4780);\n        dVar31 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4788);\n        if (unaff_s4 != (undefined4 ******)0x0) goto LAB_001c8b70;\nLAB_001c854c:\n        unaff_s7 = local_70;\n        dVar32 = dVar30;\n        if ((int)local_70 < 1) {\n          dVar32 = dVar30 - (double)(int)local_70;\n        }\n        dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n        dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n        if (dVar32 - dVar26 < dVar27 - dVar32) {\n          dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar23 = (code *)PTR_floor_003a9670;\n          if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d7c;\n        }\n        else {\n          if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d7c:\n            iVar15 = -0x7ffffdff;\n            goto joined_r0x001c8cbc;\n          }\n          dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar23 = (code *)PTR_ceil_003a8c20;\n        }\n        if (dVar26 < dVar32) {\n          iVar15 = 0x7ffffdff;\n        }\n        else {\n          dVar32 = (double)(*pcVar23)(dVar32);\n          iVar15 = (int)dVar32;\n        }\njoined_r0x001c8cbc:\n        dVar30 = dVar30 + local_a0;\n        if ((int)unaff_s7 < 0) {\n          dVar32 = 0.0;\n        }\n        else {\n          dVar32 = (double)(int)unaff_s7;\n        }\n        dVar32 = dVar30 + dVar32;\n        dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n        dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n        if (dVar32 - dVar26 < dVar27 - dVar32) {\n          if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8630;\n            goto LAB_001c8cec;\n          }\n        }\n        else if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;\n          goto LAB_001c8d18;\n        }\nLAB_001c8c88:\n        iVar14 = -0x7ffffdff;\nLAB_001c8644:\n        do {\n          unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n          param_2 = (undefined4 *******)((int)param_1[0x8d] + iVar15);\n          dVar32 = 0.0;\n          local_68 = unaff_s8;\n          local_60 = param_2;\n          if (0.0 < dVar34) {\n            dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n            unaff_s6 = &local_6c;\n            dVar27 = *(double *)((int)unaff_s3 + 0x4780);\n            do {\n              unaff_s7 = local_74;\n              if (unaff_s4 == (undefined4 ******)0x0) {\n                dVar33 = dVar32;\n                if ((int)local_74 < 1) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }\nLAB_001c8b04:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;\nLAB_001c8708:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8700:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar33 = 0.0;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8768:\n                  dVar33 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar33 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n              }\n              else {\n                dVar33 = dVar32;\n                if (0 < (int)local_74) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar27 <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar33 = 0.0;\n                }\n                else {\n                  if (dVar33 < dVar27) goto LAB_001c8b24;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (dVar26 < dVar33) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8850:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < dVar25) goto LAB_001c8a44;\n                  if (dVar33 <= dVar26) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar14 = 0x7ffffdff;\n                }\n                else if (dVar25 <= dVar33) {\n                  if (dVar33 <= dVar31) goto LAB_001c8abc;\n                  iVar14 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar14 = -0x7ffffdff;\n                }\n              }\n              unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n              param_2 = (undefined4 *******)((int)param_1[0x8c] + iVar15);\n              local_6c = unaff_s8;\n              local_64 = param_2;\n              iVar15 = (*(code *)PTR_CropImage_003a90b8)(param_1,unaff_s6,param_3);\n              if (iVar15 != 0) {\n                (*(code *)PTR_AppendImageToList_003a9880)(&local_80,iVar15);\n              }\n            } while (dVar32 < dVar34);\n          }\n          unaff_s5 = unaff_s3;\n          if (local_c8 <= dVar30) break;\n          if (unaff_s4 == (undefined4 ******)0x0) goto LAB_001c854c;\nLAB_001c8b70:\n          unaff_s7 = local_70;\n          dVar32 = dVar30;\n          if (0 < (int)local_70) {\n            dVar32 = dVar30 - (double)(int)local_70;\n          }\n          dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n          dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          if (dVar32 - dVar26 < dVar27 - dVar32) {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d8c;\n            pcVar23 = (code *)PTR_floor_003a9670;\n            if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8d50;\nLAB_001c8bd8:\n            dVar32 = (double)(*pcVar23)(dVar32);\n            iVar15 = (int)dVar32;\nLAB_001c8bf0:\n            dVar30 = dVar30 + local_a0;\n            if (-2 < (int)unaff_s7) goto LAB_001c8c00;\nLAB_001c8d6c:\n            dVar32 = (double)(int)unaff_s7;\n          }\n          else {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d8c:\n              iVar15 = -0x7ffffdff;\n              goto LAB_001c8bf0;\n            }\n            pcVar23 = (code *)PTR_ceil_003a8c20;\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8bd8;\nLAB_001c8d50:\n            iVar15 = 0x7ffffdff;\n            dVar30 = dVar30 + local_a0;\n            if ((int)unaff_s7 < -1) goto LAB_001c8d6c;\nLAB_001c8c00:\n            dVar32 = 0.0;\n          }\n          dVar32 = dVar30 + dVar32;\n          dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n          dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          if (dVar32 - dVar26 < dVar27 - dVar32) {\n            if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n              if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) {\nLAB_001c8cec:\n                iVar14 = 0x7ffffdff;\n              }\n              else {\nLAB_001c8630:\n                dVar32 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n                iVar14 = (int)dVar32;\n              }\n              goto LAB_001c8644;\n            }\n            goto LAB_001c8c88;\n          }\n          if (dVar32 < dVar25) goto LAB_001c8c88;\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;\nLAB_001c8d18:\n          dVar32 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          iVar14 = (int)dVar32;\n        } while( true );\n      }\n      (*(code *)PTR_ClearMagickException_003a90f8)(param_3);\n      pppppppuVar9 = local_80;\n      unaff_s0 = param_2;\n    }\n    else {\n      unaff_s3 = &local_7c;\n      if (((local_7c == (undefined4 *******)0x0) && (local_78 == (undefined4 ******)0x0)) ||\n         (((uint)ppppppuVar2 & 3) != 0)) {\n        local_80 = (undefined4 *******)(*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n        pppppppuVar9 = local_80;\n        unaff_s4 = ppppppuVar2;\n        if ((local_80 != (undefined4 *******)0x0) &&\n           (unaff_s4 = (undefined4 ******)((uint)ppppppuVar2 & 0x2000),\n           unaff_s4 != (undefined4 ******)0x0)) {\n          local_80[0x8c] = (undefined4 ******)((int)local_80[0x8c] - (int)local_74);\n          local_80[0x8d] = (undefined4 ******)((int)local_80[0x8d] - (int)local_70);\n          local_80[0x8a] = local_7c;\n          local_80[0x8b] = local_78;\n        }\n      }\n      else {\n        unaff_s7 = (undefined4 *******)param_1[6];\n        if ((local_7c < unaff_s7) || (local_78 < param_1[7])) {\n          ppppppuVar2 = param_1[0x8b];\n          if ((undefined4 *******)param_1[0x8a] != (undefined4 *******)0x0) {\n            unaff_s7 = (undefined4 *******)param_1[0x8a];\n          }\n          if (ppppppuVar2 == (undefined4 ******)0x0) {\n            ppppppuVar2 = param_1[7];\n          }\n          if (local_7c == (undefined4 *******)0x0) {\n            unaff_s0 = unaff_s7;\n          }\n          if (local_78 == (undefined4 ******)0x0) {\n            unaff_s4 = ppppppuVar2;\n          }\n          pppppppuVar9 = local_80;\n          if (0 < (int)ppppppuVar2) {\n            unaff_s3 = (undefined4 *******)0x0;\n            unaff_s8 = &local_80;\n            do {\n              unaff_s5 = (undefined4 *******)0x0;\n              if ((int)unaff_s7 < 1) {\n                pppppppuVar9 = local_80;\n                if (unaff_s6 == (undefined4 *******)0x0) break;\n              }\n              else {\n                do {\n                  local_7c = unaff_s0;\n                  local_78 = unaff_s4;\n                  local_74 = unaff_s5;\n                  local_70 = unaff_s3;\n                  unaff_s6 = (undefined4 *******)\n                             (*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n                  pppppppuVar9 = local_80;\n                  if (unaff_s6 == (undefined4 *******)0x0) goto LAB_001c8908;\n                  unaff_s5 = (undefined4 *******)((int)unaff_s5 + (int)unaff_s0);\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);\n              }\n              unaff_s3 = (undefined4 *******)((int)unaff_s3 + (int)unaff_s4);\n              pppppppuVar9 = local_80;\n            } while ((int)unaff_s3 < (int)ppppppuVar2);\n          }\n        }\n        else {\n          local_e8 = param_3;\n          pppppppuVar9 = (undefined4 *******)(*(code *)PTR_CloneImage_003a9830)(param_1,0,0,1);\n        }\n      }\n    }" (if "if") (parenthesized_expression "((int)ppppppuVar2 << 0xe < 0)" (( "(") (binary_expression "(int)ppppppuVar2 << 0xe < 0" (binary_expression "(int)ppppppuVar2 << 0xe" (cast_expression "(int)ppppppuVar2" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "ppppppuVar2")) (<< "<<") (number_literal "0xe")) (< "<") (number_literal "0")) () ")")) (compound_statement "{\n      ppppppuVar7 = param_1[7];\n      if (local_7c == (undefined4 *******)0x0) {\n        local_7c = (undefined4 *******)0x1;\n        dVar35 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n      }\n      else {\n        dVar35 = (double)(int)local_7c;\n        if ((int)local_7c < 0) {\n          dVar35 = dVar35 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n      }\n      if (local_78 == (undefined4 ******)0x0) {\n        dVar30 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n        local_78 = (undefined4 ******)0x1;\n        if (((uint)ppppppuVar2 & 0x2000) != 0) goto LAB_001c8e14;\nLAB_001c8484:\n        pppppppuVar9 = local_74;\n        if ((int)local_74 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_74;\n        }\n        puVar8 = (undefined *)((int)param_1[6] - (int)pppppppuVar9);\n        pppppppuVar9 = local_70;\n        if ((int)local_70 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_70;\n        }\n        puVar3 = (undefined *)((int)ppppppuVar7 - (int)pppppppuVar9);\n      }\n      else {\n        dVar30 = (double)(int)local_78;\n        if ((int)local_78 < 0) {\n          dVar30 = dVar30 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n        if (((uint)ppppppuVar2 & 0x2000) == 0) goto LAB_001c8484;\nLAB_001c8e14:\n        pppppppuVar9 = local_74;\n        if ((int)local_74 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_74;\n        }\n        puVar8 = (undefined *)((int)pppppppuVar9 + (int)param_1[6]);\n        if ((int)local_70 < 0) {\n          puVar3 = (undefined *)((int)ppppppuVar7 - (int)local_70);\n        }\n        else {\n          puVar3 = (undefined *)((int)local_70 + (int)ppppppuVar7);\n        }\n      }\n      unaff_s4 = (undefined4 ******)((uint)ppppppuVar2 & 0x2000);\n      dVar34 = (double)(int)puVar8;\n      if ((int)puVar8 < 0) {\n        dVar34 = dVar34 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n      }\n      dVar35 = dVar34 / dVar35;\n      local_c8 = (double)(int)puVar3;\n      if ((int)puVar3 < 0) {\n        local_c8 = local_c8 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n      }\n      dVar25 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n      local_a0 = dVar25;\n      if (dVar35 < dVar25) {\n        local_a0 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n        dVar35 = dVar25;\n      }\n      if (local_a0 <= local_c8 / dVar30) {\n        local_a0 = local_c8 / dVar30;\n      }\n      dVar30 = 0.0;\n      unaff_s7 = local_70;\n      if (0.0 < local_c8) {\n        dVar25 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4780);\n        dVar31 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4788);\n        if (unaff_s4 != (undefined4 ******)0x0) goto LAB_001c8b70;\nLAB_001c854c:\n        unaff_s7 = local_70;\n        dVar32 = dVar30;\n        if ((int)local_70 < 1) {\n          dVar32 = dVar30 - (double)(int)local_70;\n        }\n        dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n        dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n        if (dVar32 - dVar26 < dVar27 - dVar32) {\n          dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar23 = (code *)PTR_floor_003a9670;\n          if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d7c;\n        }\n        else {\n          if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d7c:\n            iVar15 = -0x7ffffdff;\n            goto joined_r0x001c8cbc;\n          }\n          dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar23 = (code *)PTR_ceil_003a8c20;\n        }\n        if (dVar26 < dVar32) {\n          iVar15 = 0x7ffffdff;\n        }\n        else {\n          dVar32 = (double)(*pcVar23)(dVar32);\n          iVar15 = (int)dVar32;\n        }\njoined_r0x001c8cbc:\n        dVar30 = dVar30 + local_a0;\n        if ((int)unaff_s7 < 0) {\n          dVar32 = 0.0;\n        }\n        else {\n          dVar32 = (double)(int)unaff_s7;\n        }\n        dVar32 = dVar30 + dVar32;\n        dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n        dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n        if (dVar32 - dVar26 < dVar27 - dVar32) {\n          if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8630;\n            goto LAB_001c8cec;\n          }\n        }\n        else if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;\n          goto LAB_001c8d18;\n        }\nLAB_001c8c88:\n        iVar14 = -0x7ffffdff;\nLAB_001c8644:\n        do {\n          unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n          param_2 = (undefined4 *******)((int)param_1[0x8d] + iVar15);\n          dVar32 = 0.0;\n          local_68 = unaff_s8;\n          local_60 = param_2;\n          if (0.0 < dVar34) {\n            dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n            unaff_s6 = &local_6c;\n            dVar27 = *(double *)((int)unaff_s3 + 0x4780);\n            do {\n              unaff_s7 = local_74;\n              if (unaff_s4 == (undefined4 ******)0x0) {\n                dVar33 = dVar32;\n                if ((int)local_74 < 1) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }\nLAB_001c8b04:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;\nLAB_001c8708:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8700:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar33 = 0.0;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8768:\n                  dVar33 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar33 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n              }\n              else {\n                dVar33 = dVar32;\n                if (0 < (int)local_74) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar27 <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar33 = 0.0;\n                }\n                else {\n                  if (dVar33 < dVar27) goto LAB_001c8b24;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (dVar26 < dVar33) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8850:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < dVar25) goto LAB_001c8a44;\n                  if (dVar33 <= dVar26) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar14 = 0x7ffffdff;\n                }\n                else if (dVar25 <= dVar33) {\n                  if (dVar33 <= dVar31) goto LAB_001c8abc;\n                  iVar14 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar14 = -0x7ffffdff;\n                }\n              }\n              unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n              param_2 = (undefined4 *******)((int)param_1[0x8c] + iVar15);\n              local_6c = unaff_s8;\n              local_64 = param_2;\n              iVar15 = (*(code *)PTR_CropImage_003a90b8)(param_1,unaff_s6,param_3);\n              if (iVar15 != 0) {\n                (*(code *)PTR_AppendImageToList_003a9880)(&local_80,iVar15);\n              }\n            } while (dVar32 < dVar34);\n          }\n          unaff_s5 = unaff_s3;\n          if (local_c8 <= dVar30) break;\n          if (unaff_s4 == (undefined4 ******)0x0) goto LAB_001c854c;\nLAB_001c8b70:\n          unaff_s7 = local_70;\n          dVar32 = dVar30;\n          if (0 < (int)local_70) {\n            dVar32 = dVar30 - (double)(int)local_70;\n          }\n          dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n          dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          if (dVar32 - dVar26 < dVar27 - dVar32) {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d8c;\n            pcVar23 = (code *)PTR_floor_003a9670;\n            if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8d50;\nLAB_001c8bd8:\n            dVar32 = (double)(*pcVar23)(dVar32);\n            iVar15 = (int)dVar32;\nLAB_001c8bf0:\n            dVar30 = dVar30 + local_a0;\n            if (-2 < (int)unaff_s7) goto LAB_001c8c00;\nLAB_001c8d6c:\n            dVar32 = (double)(int)unaff_s7;\n          }\n          else {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d8c:\n              iVar15 = -0x7ffffdff;\n              goto LAB_001c8bf0;\n            }\n            pcVar23 = (code *)PTR_ceil_003a8c20;\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8bd8;\nLAB_001c8d50:\n            iVar15 = 0x7ffffdff;\n            dVar30 = dVar30 + local_a0;\n            if ((int)unaff_s7 < -1) goto LAB_001c8d6c;\nLAB_001c8c00:\n            dVar32 = 0.0;\n          }\n          dVar32 = dVar30 + dVar32;\n          dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n          dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          if (dVar32 - dVar26 < dVar27 - dVar32) {\n            if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n              if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) {\nLAB_001c8cec:\n                iVar14 = 0x7ffffdff;\n              }\n              else {\nLAB_001c8630:\n                dVar32 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n                iVar14 = (int)dVar32;\n              }\n              goto LAB_001c8644;\n            }\n            goto LAB_001c8c88;\n          }\n          if (dVar32 < dVar25) goto LAB_001c8c88;\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;\nLAB_001c8d18:\n          dVar32 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          iVar14 = (int)dVar32;\n        } while( true );\n      }\n      (*(code *)PTR_ClearMagickException_003a90f8)(param_3);\n      pppppppuVar9 = local_80;\n      unaff_s0 = param_2;\n    }" ({ "{") (expression_statement "ppppppuVar7 = param_1[7];" (assignment_expression "ppppppuVar7 = param_1[7]" (identifier "ppppppuVar7") (= "=") (subscript_expression "param_1[7]" (identifier "param_1") ([ "[") (number_literal "7") (] "]"))) (; ";")) (if_statement "if (local_7c == (undefined4 *******)0x0) {\n        local_7c = (undefined4 *******)0x1;\n        dVar35 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n      }\n      else {\n        dVar35 = (double)(int)local_7c;\n        if ((int)local_7c < 0) {\n          dVar35 = dVar35 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n      }" (if "if") (parenthesized_expression "(local_7c == (undefined4 *******)0x0)" (( "(") (binary_expression "local_7c == (undefined4 *******)0x0" (identifier "local_7c") (== "==") (cast_expression "(undefined4 *******)0x0" (( "(") (type_descriptor "undefined4 *******" (type_identifier "undefined4") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n        local_7c = (undefined4 *******)0x1;\n        dVar35 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n      }" ({ "{") (expression_statement "local_7c = (undefined4 *******)0x1;" (assignment_expression "local_7c = (undefined4 *******)0x1" (identifier "local_7c") (= "=") (cast_expression "(undefined4 *******)0x1" (( "(") (type_descriptor "undefined4 *******" (type_identifier "undefined4") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x1"))) (; ";")) (expression_statement "dVar35 = *(double *)(PTR_LAB_003a88e0 + 0x1438);" (assignment_expression "dVar35 = *(double *)(PTR_LAB_003a88e0 + 0x1438)" (identifier "dVar35") (= "=") (pointer_expression "*(double *)(PTR_LAB_003a88e0 + 0x1438)" (* "*") (cast_expression "(double *)(PTR_LAB_003a88e0 + 0x1438)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(PTR_LAB_003a88e0 + 0x1438)" (( "(") (binary_expression "PTR_LAB_003a88e0 + 0x1438" (identifier "PTR_LAB_003a88e0") (+ "+") (number_literal "0x1438")) () ")"))))) (; ";")) (} "}")) (else_clause "else {\n        dVar35 = (double)(int)local_7c;\n        if ((int)local_7c < 0) {\n          dVar35 = dVar35 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n      }" (else "else") (compound_statement "{\n        dVar35 = (double)(int)local_7c;\n        if ((int)local_7c < 0) {\n          dVar35 = dVar35 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n      }" ({ "{") (expression_statement "dVar35 = (double)(int)local_7c;" (assignment_expression "dVar35 = (double)(int)local_7c" (identifier "dVar35") (= "=") (cast_expression "(double)(int)local_7c" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (cast_expression "(int)local_7c" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_7c")))) (; ";")) (if_statement "if ((int)local_7c < 0) {\n          dVar35 = dVar35 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }" (if "if") (parenthesized_expression "((int)local_7c < 0)" (( "(") (binary_expression "(int)local_7c < 0" (cast_expression "(int)local_7c" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_7c")) (< "<") (number_literal "0")) () ")")) (compound_statement "{\n          dVar35 = dVar35 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }" ({ "{") (expression_statement "dVar35 = dVar35 + *(double *)(PTR_LAB_003a88e0 + 0x1418);" (assignment_expression "dVar35 = dVar35 + *(double *)(PTR_LAB_003a88e0 + 0x1418)" (identifier "dVar35") (= "=") (binary_expression "dVar35 + *(double *)(PTR_LAB_003a88e0 + 0x1418)" (identifier "dVar35") (+ "+") (pointer_expression "*(double *)(PTR_LAB_003a88e0 + 0x1418)" (* "*") (cast_expression "(double *)(PTR_LAB_003a88e0 + 0x1418)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(PTR_LAB_003a88e0 + 0x1418)" (( "(") (binary_expression "PTR_LAB_003a88e0 + 0x1418" (identifier "PTR_LAB_003a88e0") (+ "+") (number_literal "0x1418")) () ")")))))) (; ";")) (} "}"))) (} "}")))) (if_statement "if (local_78 == (undefined4 ******)0x0) {\n        dVar30 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n        local_78 = (undefined4 ******)0x1;\n        if (((uint)ppppppuVar2 & 0x2000) != 0) goto LAB_001c8e14;\nLAB_001c8484:\n        pppppppuVar9 = local_74;\n        if ((int)local_74 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_74;\n        }\n        puVar8 = (undefined *)((int)param_1[6] - (int)pppppppuVar9);\n        pppppppuVar9 = local_70;\n        if ((int)local_70 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_70;\n        }\n        puVar3 = (undefined *)((int)ppppppuVar7 - (int)pppppppuVar9);\n      }\n      else {\n        dVar30 = (double)(int)local_78;\n        if ((int)local_78 < 0) {\n          dVar30 = dVar30 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n        if (((uint)ppppppuVar2 & 0x2000) == 0) goto LAB_001c8484;\nLAB_001c8e14:\n        pppppppuVar9 = local_74;\n        if ((int)local_74 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_74;\n        }\n        puVar8 = (undefined *)((int)pppppppuVar9 + (int)param_1[6]);\n        if ((int)local_70 < 0) {\n          puVar3 = (undefined *)((int)ppppppuVar7 - (int)local_70);\n        }\n        else {\n          puVar3 = (undefined *)((int)local_70 + (int)ppppppuVar7);\n        }\n      }" (if "if") (parenthesized_expression "(local_78 == (undefined4 ******)0x0)" (( "(") (binary_expression "local_78 == (undefined4 ******)0x0" (identifier "local_78") (== "==") (cast_expression "(undefined4 ******)0x0" (( "(") (type_descriptor "undefined4 ******" (type_identifier "undefined4") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n        dVar30 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n        local_78 = (undefined4 ******)0x1;\n        if (((uint)ppppppuVar2 & 0x2000) != 0) goto LAB_001c8e14;\nLAB_001c8484:\n        pppppppuVar9 = local_74;\n        if ((int)local_74 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_74;\n        }\n        puVar8 = (undefined *)((int)param_1[6] - (int)pppppppuVar9);\n        pppppppuVar9 = local_70;\n        if ((int)local_70 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_70;\n        }\n        puVar3 = (undefined *)((int)ppppppuVar7 - (int)pppppppuVar9);\n      }" ({ "{") (expression_statement "dVar30 = *(double *)(PTR_LAB_003a88e0 + 0x1438);" (assignment_expression "dVar30 = *(double *)(PTR_LAB_003a88e0 + 0x1438)" (identifier "dVar30") (= "=") (pointer_expression "*(double *)(PTR_LAB_003a88e0 + 0x1438)" (* "*") (cast_expression "(double *)(PTR_LAB_003a88e0 + 0x1438)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(PTR_LAB_003a88e0 + 0x1438)" (( "(") (binary_expression "PTR_LAB_003a88e0 + 0x1438" (identifier "PTR_LAB_003a88e0") (+ "+") (number_literal "0x1438")) () ")"))))) (; ";")) (expression_statement "local_78 = (undefined4 ******)0x1;" (assignment_expression "local_78 = (undefined4 ******)0x1" (identifier "local_78") (= "=") (cast_expression "(undefined4 ******)0x1" (( "(") (type_descriptor "undefined4 ******" (type_identifier "undefined4") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (number_literal "0x1"))) (; ";")) (if_statement "if (((uint)ppppppuVar2 & 0x2000) != 0) goto LAB_001c8e14;" (if "if") (parenthesized_expression "(((uint)ppppppuVar2 & 0x2000) != 0)" (( "(") (binary_expression "((uint)ppppppuVar2 & 0x2000) != 0" (parenthesized_expression "((uint)ppppppuVar2 & 0x2000)" (( "(") (binary_expression "(uint)ppppppuVar2 & 0x2000" (cast_expression "(uint)ppppppuVar2" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "ppppppuVar2")) (& "&") (number_literal "0x2000")) () ")")) (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto LAB_001c8e14;" (goto "goto") (statement_identifier "LAB_001c8e14") (; ";"))) (labeled_statement "LAB_001c8484:\n        pppppppuVar9 = local_74;" (statement_identifier "LAB_001c8484") (: ":") (expression_statement "pppppppuVar9 = local_74;" (assignment_expression "pppppppuVar9 = local_74" (identifier "pppppppuVar9") (= "=") (identifier "local_74")) (; ";"))) (if_statement "if ((int)local_74 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_74;\n        }" (if "if") (parenthesized_expression "((int)local_74 < 0)" (( "(") (binary_expression "(int)local_74 < 0" (cast_expression "(int)local_74" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_74")) (< "<") (number_literal "0")) () ")")) (compound_statement "{\n          pppppppuVar9 = (undefined4 *******)-(int)local_74;\n        }" ({ "{") (expression_statement "pppppppuVar9 = (undefined4 *******)-(int)local_74;" (assignment_expression "pppppppuVar9 = (undefined4 *******)-(int)local_74" (identifier "pppppppuVar9") (= "=") (cast_expression "(undefined4 *******)-(int)local_74" (( "(") (type_descriptor "undefined4 *******" (type_identifier "undefined4") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (unary_expression "-(int)local_74" (- "-") (cast_expression "(int)local_74" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_74"))))) (; ";")) (} "}"))) (expression_statement "puVar8 = (undefined *)((int)param_1[6] - (int)pppppppuVar9);" (assignment_expression "puVar8 = (undefined *)((int)param_1[6] - (int)pppppppuVar9)" (identifier "puVar8") (= "=") (cast_expression "(undefined *)((int)param_1[6] - (int)pppppppuVar9)" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)param_1[6] - (int)pppppppuVar9)" (( "(") (binary_expression "(int)param_1[6] - (int)pppppppuVar9" (cast_expression "(int)param_1[6]" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (subscript_expression "param_1[6]" (identifier "param_1") ([ "[") (number_literal "6") (] "]"))) (- "-") (cast_expression "(int)pppppppuVar9" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppppuVar9"))) () ")")))) (; ";")) (expression_statement "pppppppuVar9 = local_70;" (assignment_expression "pppppppuVar9 = local_70" (identifier "pppppppuVar9") (= "=") (identifier "local_70")) (; ";")) (if_statement "if ((int)local_70 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_70;\n        }" (if "if") (parenthesized_expression "((int)local_70 < 0)" (( "(") (binary_expression "(int)local_70 < 0" (cast_expression "(int)local_70" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_70")) (< "<") (number_literal "0")) () ")")) (compound_statement "{\n          pppppppuVar9 = (undefined4 *******)-(int)local_70;\n        }" ({ "{") (expression_statement "pppppppuVar9 = (undefined4 *******)-(int)local_70;" (assignment_expression "pppppppuVar9 = (undefined4 *******)-(int)local_70" (identifier "pppppppuVar9") (= "=") (cast_expression "(undefined4 *******)-(int)local_70" (( "(") (type_descriptor "undefined4 *******" (type_identifier "undefined4") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (unary_expression "-(int)local_70" (- "-") (cast_expression "(int)local_70" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_70"))))) (; ";")) (} "}"))) (expression_statement "puVar3 = (undefined *)((int)ppppppuVar7 - (int)pppppppuVar9);" (assignment_expression "puVar3 = (undefined *)((int)ppppppuVar7 - (int)pppppppuVar9)" (identifier "puVar3") (= "=") (cast_expression "(undefined *)((int)ppppppuVar7 - (int)pppppppuVar9)" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)ppppppuVar7 - (int)pppppppuVar9)" (( "(") (binary_expression "(int)ppppppuVar7 - (int)pppppppuVar9" (cast_expression "(int)ppppppuVar7" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "ppppppuVar7")) (- "-") (cast_expression "(int)pppppppuVar9" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppppuVar9"))) () ")")))) (; ";")) (} "}")) (else_clause "else {\n        dVar30 = (double)(int)local_78;\n        if ((int)local_78 < 0) {\n          dVar30 = dVar30 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n        if (((uint)ppppppuVar2 & 0x2000) == 0) goto LAB_001c8484;\nLAB_001c8e14:\n        pppppppuVar9 = local_74;\n        if ((int)local_74 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_74;\n        }\n        puVar8 = (undefined *)((int)pppppppuVar9 + (int)param_1[6]);\n        if ((int)local_70 < 0) {\n          puVar3 = (undefined *)((int)ppppppuVar7 - (int)local_70);\n        }\n        else {\n          puVar3 = (undefined *)((int)local_70 + (int)ppppppuVar7);\n        }\n      }" (else "else") (compound_statement "{\n        dVar30 = (double)(int)local_78;\n        if ((int)local_78 < 0) {\n          dVar30 = dVar30 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }\n        if (((uint)ppppppuVar2 & 0x2000) == 0) goto LAB_001c8484;\nLAB_001c8e14:\n        pppppppuVar9 = local_74;\n        if ((int)local_74 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_74;\n        }\n        puVar8 = (undefined *)((int)pppppppuVar9 + (int)param_1[6]);\n        if ((int)local_70 < 0) {\n          puVar3 = (undefined *)((int)ppppppuVar7 - (int)local_70);\n        }\n        else {\n          puVar3 = (undefined *)((int)local_70 + (int)ppppppuVar7);\n        }\n      }" ({ "{") (expression_statement "dVar30 = (double)(int)local_78;" (assignment_expression "dVar30 = (double)(int)local_78" (identifier "dVar30") (= "=") (cast_expression "(double)(int)local_78" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (cast_expression "(int)local_78" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_78")))) (; ";")) (if_statement "if ((int)local_78 < 0) {\n          dVar30 = dVar30 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }" (if "if") (parenthesized_expression "((int)local_78 < 0)" (( "(") (binary_expression "(int)local_78 < 0" (cast_expression "(int)local_78" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_78")) (< "<") (number_literal "0")) () ")")) (compound_statement "{\n          dVar30 = dVar30 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n        }" ({ "{") (expression_statement "dVar30 = dVar30 + *(double *)(PTR_LAB_003a88e0 + 0x1418);" (assignment_expression "dVar30 = dVar30 + *(double *)(PTR_LAB_003a88e0 + 0x1418)" (identifier "dVar30") (= "=") (binary_expression "dVar30 + *(double *)(PTR_LAB_003a88e0 + 0x1418)" (identifier "dVar30") (+ "+") (pointer_expression "*(double *)(PTR_LAB_003a88e0 + 0x1418)" (* "*") (cast_expression "(double *)(PTR_LAB_003a88e0 + 0x1418)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(PTR_LAB_003a88e0 + 0x1418)" (( "(") (binary_expression "PTR_LAB_003a88e0 + 0x1418" (identifier "PTR_LAB_003a88e0") (+ "+") (number_literal "0x1418")) () ")")))))) (; ";")) (} "}"))) (if_statement "if (((uint)ppppppuVar2 & 0x2000) == 0) goto LAB_001c8484;" (if "if") (parenthesized_expression "(((uint)ppppppuVar2 & 0x2000) == 0)" (( "(") (binary_expression "((uint)ppppppuVar2 & 0x2000) == 0" (parenthesized_expression "((uint)ppppppuVar2 & 0x2000)" (( "(") (binary_expression "(uint)ppppppuVar2 & 0x2000" (cast_expression "(uint)ppppppuVar2" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "ppppppuVar2")) (& "&") (number_literal "0x2000")) () ")")) (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_001c8484;" (goto "goto") (statement_identifier "LAB_001c8484") (; ";"))) (labeled_statement "LAB_001c8e14:\n        pppppppuVar9 = local_74;" (statement_identifier "LAB_001c8e14") (: ":") (expression_statement "pppppppuVar9 = local_74;" (assignment_expression "pppppppuVar9 = local_74" (identifier "pppppppuVar9") (= "=") (identifier "local_74")) (; ";"))) (if_statement "if ((int)local_74 < 0) {\n          pppppppuVar9 = (undefined4 *******)-(int)local_74;\n        }" (if "if") (parenthesized_expression "((int)local_74 < 0)" (( "(") (binary_expression "(int)local_74 < 0" (cast_expression "(int)local_74" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_74")) (< "<") (number_literal "0")) () ")")) (compound_statement "{\n          pppppppuVar9 = (undefined4 *******)-(int)local_74;\n        }" ({ "{") (expression_statement "pppppppuVar9 = (undefined4 *******)-(int)local_74;" (assignment_expression "pppppppuVar9 = (undefined4 *******)-(int)local_74" (identifier "pppppppuVar9") (= "=") (cast_expression "(undefined4 *******)-(int)local_74" (( "(") (type_descriptor "undefined4 *******" (type_identifier "undefined4") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (unary_expression "-(int)local_74" (- "-") (cast_expression "(int)local_74" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_74"))))) (; ";")) (} "}"))) (expression_statement "puVar8 = (undefined *)((int)pppppppuVar9 + (int)param_1[6]);" (assignment_expression "puVar8 = (undefined *)((int)pppppppuVar9 + (int)param_1[6])" (identifier "puVar8") (= "=") (cast_expression "(undefined *)((int)pppppppuVar9 + (int)param_1[6])" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)pppppppuVar9 + (int)param_1[6])" (( "(") (binary_expression "(int)pppppppuVar9 + (int)param_1[6]" (cast_expression "(int)pppppppuVar9" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppppuVar9")) (+ "+") (cast_expression "(int)param_1[6]" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (subscript_expression "param_1[6]" (identifier "param_1") ([ "[") (number_literal "6") (] "]")))) () ")")))) (; ";")) (if_statement "if ((int)local_70 < 0) {\n          puVar3 = (undefined *)((int)ppppppuVar7 - (int)local_70);\n        }\n        else {\n          puVar3 = (undefined *)((int)local_70 + (int)ppppppuVar7);\n        }" (if "if") (parenthesized_expression "((int)local_70 < 0)" (( "(") (binary_expression "(int)local_70 < 0" (cast_expression "(int)local_70" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_70")) (< "<") (number_literal "0")) () ")")) (compound_statement "{\n          puVar3 = (undefined *)((int)ppppppuVar7 - (int)local_70);\n        }" ({ "{") (expression_statement "puVar3 = (undefined *)((int)ppppppuVar7 - (int)local_70);" (assignment_expression "puVar3 = (undefined *)((int)ppppppuVar7 - (int)local_70)" (identifier "puVar3") (= "=") (cast_expression "(undefined *)((int)ppppppuVar7 - (int)local_70)" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)ppppppuVar7 - (int)local_70)" (( "(") (binary_expression "(int)ppppppuVar7 - (int)local_70" (cast_expression "(int)ppppppuVar7" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "ppppppuVar7")) (- "-") (cast_expression "(int)local_70" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_70"))) () ")")))) (; ";")) (} "}")) (else_clause "else {\n          puVar3 = (undefined *)((int)local_70 + (int)ppppppuVar7);\n        }" (else "else") (compound_statement "{\n          puVar3 = (undefined *)((int)local_70 + (int)ppppppuVar7);\n        }" ({ "{") (expression_statement "puVar3 = (undefined *)((int)local_70 + (int)ppppppuVar7);" (assignment_expression "puVar3 = (undefined *)((int)local_70 + (int)ppppppuVar7)" (identifier "puVar3") (= "=") (cast_expression "(undefined *)((int)local_70 + (int)ppppppuVar7)" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_70 + (int)ppppppuVar7)" (( "(") (binary_expression "(int)local_70 + (int)ppppppuVar7" (cast_expression "(int)local_70" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_70")) (+ "+") (cast_expression "(int)ppppppuVar7" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "ppppppuVar7"))) () ")")))) (; ";")) (} "}")))) (} "}")))) (expression_statement "unaff_s4 = (undefined4 ******)((uint)ppppppuVar2 & 0x2000);" (assignment_expression "unaff_s4 = (undefined4 ******)((uint)ppppppuVar2 & 0x2000)" (identifier "unaff_s4") (= "=") (cast_expression "(undefined4 ******)((uint)ppppppuVar2 & 0x2000)" (( "(") (type_descriptor "undefined4 ******" (type_identifier "undefined4") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (parenthesized_expression "((uint)ppppppuVar2 & 0x2000)" (( "(") (binary_expression "(uint)ppppppuVar2 & 0x2000" (cast_expression "(uint)ppppppuVar2" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "ppppppuVar2")) (& "&") (number_literal "0x2000")) () ")")))) (; ";")) (expression_statement "dVar34 = (double)(int)puVar8;" (assignment_expression "dVar34 = (double)(int)puVar8" (identifier "dVar34") (= "=") (cast_expression "(double)(int)puVar8" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (cast_expression "(int)puVar8" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar8")))) (; ";")) (if_statement "if ((int)puVar8 < 0) {\n        dVar34 = dVar34 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n      }" (if "if") (parenthesized_expression "((int)puVar8 < 0)" (( "(") (binary_expression "(int)puVar8 < 0" (cast_expression "(int)puVar8" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar8")) (< "<") (number_literal "0")) () ")")) (compound_statement "{\n        dVar34 = dVar34 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n      }" ({ "{") (expression_statement "dVar34 = dVar34 + *(double *)(PTR_LAB_003a88e0 + 0x1418);" (assignment_expression "dVar34 = dVar34 + *(double *)(PTR_LAB_003a88e0 + 0x1418)" (identifier "dVar34") (= "=") (binary_expression "dVar34 + *(double *)(PTR_LAB_003a88e0 + 0x1418)" (identifier "dVar34") (+ "+") (pointer_expression "*(double *)(PTR_LAB_003a88e0 + 0x1418)" (* "*") (cast_expression "(double *)(PTR_LAB_003a88e0 + 0x1418)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(PTR_LAB_003a88e0 + 0x1418)" (( "(") (binary_expression "PTR_LAB_003a88e0 + 0x1418" (identifier "PTR_LAB_003a88e0") (+ "+") (number_literal "0x1418")) () ")")))))) (; ";")) (} "}"))) (expression_statement "dVar35 = dVar34 / dVar35;" (assignment_expression "dVar35 = dVar34 / dVar35" (identifier "dVar35") (= "=") (binary_expression "dVar34 / dVar35" (identifier "dVar34") (/ "/") (identifier "dVar35"))) (; ";")) (expression_statement "local_c8 = (double)(int)puVar3;" (assignment_expression "local_c8 = (double)(int)puVar3" (identifier "local_c8") (= "=") (cast_expression "(double)(int)puVar3" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (cast_expression "(int)puVar3" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar3")))) (; ";")) (if_statement "if ((int)puVar3 < 0) {\n        local_c8 = local_c8 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n      }" (if "if") (parenthesized_expression "((int)puVar3 < 0)" (( "(") (binary_expression "(int)puVar3 < 0" (cast_expression "(int)puVar3" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar3")) (< "<") (number_literal "0")) () ")")) (compound_statement "{\n        local_c8 = local_c8 + *(double *)(PTR_LAB_003a88e0 + 0x1418);\n      }" ({ "{") (expression_statement "local_c8 = local_c8 + *(double *)(PTR_LAB_003a88e0 + 0x1418);" (assignment_expression "local_c8 = local_c8 + *(double *)(PTR_LAB_003a88e0 + 0x1418)" (identifier "local_c8") (= "=") (binary_expression "local_c8 + *(double *)(PTR_LAB_003a88e0 + 0x1418)" (identifier "local_c8") (+ "+") (pointer_expression "*(double *)(PTR_LAB_003a88e0 + 0x1418)" (* "*") (cast_expression "(double *)(PTR_LAB_003a88e0 + 0x1418)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(PTR_LAB_003a88e0 + 0x1418)" (( "(") (binary_expression "PTR_LAB_003a88e0 + 0x1418" (identifier "PTR_LAB_003a88e0") (+ "+") (number_literal "0x1418")) () ")")))))) (; ";")) (} "}"))) (expression_statement "dVar25 = *(double *)(PTR_LAB_003a88e0 + 0x1438);" (assignment_expression "dVar25 = *(double *)(PTR_LAB_003a88e0 + 0x1438)" (identifier "dVar25") (= "=") (pointer_expression "*(double *)(PTR_LAB_003a88e0 + 0x1438)" (* "*") (cast_expression "(double *)(PTR_LAB_003a88e0 + 0x1438)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(PTR_LAB_003a88e0 + 0x1438)" (( "(") (binary_expression "PTR_LAB_003a88e0 + 0x1438" (identifier "PTR_LAB_003a88e0") (+ "+") (number_literal "0x1438")) () ")"))))) (; ";")) (expression_statement "local_a0 = dVar25;" (assignment_expression "local_a0 = dVar25" (identifier "local_a0") (= "=") (identifier "dVar25")) (; ";")) (if_statement "if (dVar35 < dVar25) {\n        local_a0 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n        dVar35 = dVar25;\n      }" (if "if") (parenthesized_expression "(dVar35 < dVar25)" (( "(") (binary_expression "dVar35 < dVar25" (identifier "dVar35") (< "<") (identifier "dVar25")) () ")")) (compound_statement "{\n        local_a0 = *(double *)(PTR_LAB_003a88e0 + 0x1438);\n        dVar35 = dVar25;\n      }" ({ "{") (expression_statement "local_a0 = *(double *)(PTR_LAB_003a88e0 + 0x1438);" (assignment_expression "local_a0 = *(double *)(PTR_LAB_003a88e0 + 0x1438)" (identifier "local_a0") (= "=") (pointer_expression "*(double *)(PTR_LAB_003a88e0 + 0x1438)" (* "*") (cast_expression "(double *)(PTR_LAB_003a88e0 + 0x1438)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(PTR_LAB_003a88e0 + 0x1438)" (( "(") (binary_expression "PTR_LAB_003a88e0 + 0x1438" (identifier "PTR_LAB_003a88e0") (+ "+") (number_literal "0x1438")) () ")"))))) (; ";")) (expression_statement "dVar35 = dVar25;" (assignment_expression "dVar35 = dVar25" (identifier "dVar35") (= "=") (identifier "dVar25")) (; ";")) (} "}"))) (if_statement "if (local_a0 <= local_c8 / dVar30) {\n        local_a0 = local_c8 / dVar30;\n      }" (if "if") (parenthesized_expression "(local_a0 <= local_c8 / dVar30)" (( "(") (binary_expression "local_a0 <= local_c8 / dVar30" (identifier "local_a0") (<= "<=") (binary_expression "local_c8 / dVar30" (identifier "local_c8") (/ "/") (identifier "dVar30"))) () ")")) (compound_statement "{\n        local_a0 = local_c8 / dVar30;\n      }" ({ "{") (expression_statement "local_a0 = local_c8 / dVar30;" (assignment_expression "local_a0 = local_c8 / dVar30" (identifier "local_a0") (= "=") (binary_expression "local_c8 / dVar30" (identifier "local_c8") (/ "/") (identifier "dVar30"))) (; ";")) (} "}"))) (expression_statement "dVar30 = 0.0;" (assignment_expression "dVar30 = 0.0" (identifier "dVar30") (= "=") (number_literal "0.0")) (; ";")) (expression_statement "unaff_s7 = local_70;" (assignment_expression "unaff_s7 = local_70" (identifier "unaff_s7") (= "=") (identifier "local_70")) (; ";")) (if_statement "if (0.0 < local_c8) {\n        dVar25 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4780);\n        dVar31 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4788);\n        if (unaff_s4 != (undefined4 ******)0x0) goto LAB_001c8b70;\nLAB_001c854c:\n        unaff_s7 = local_70;\n        dVar32 = dVar30;\n        if ((int)local_70 < 1) {\n          dVar32 = dVar30 - (double)(int)local_70;\n        }\n        dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n        dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n        if (dVar32 - dVar26 < dVar27 - dVar32) {\n          dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar23 = (code *)PTR_floor_003a9670;\n          if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d7c;\n        }\n        else {\n          if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d7c:\n            iVar15 = -0x7ffffdff;\n            goto joined_r0x001c8cbc;\n          }\n          dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar23 = (code *)PTR_ceil_003a8c20;\n        }\n        if (dVar26 < dVar32) {\n          iVar15 = 0x7ffffdff;\n        }\n        else {\n          dVar32 = (double)(*pcVar23)(dVar32);\n          iVar15 = (int)dVar32;\n        }\njoined_r0x001c8cbc:\n        dVar30 = dVar30 + local_a0;\n        if ((int)unaff_s7 < 0) {\n          dVar32 = 0.0;\n        }\n        else {\n          dVar32 = (double)(int)unaff_s7;\n        }\n        dVar32 = dVar30 + dVar32;\n        dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n        dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n        if (dVar32 - dVar26 < dVar27 - dVar32) {\n          if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8630;\n            goto LAB_001c8cec;\n          }\n        }\n        else if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;\n          goto LAB_001c8d18;\n        }\nLAB_001c8c88:\n        iVar14 = -0x7ffffdff;\nLAB_001c8644:\n        do {\n          unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n          param_2 = (undefined4 *******)((int)param_1[0x8d] + iVar15);\n          dVar32 = 0.0;\n          local_68 = unaff_s8;\n          local_60 = param_2;\n          if (0.0 < dVar34) {\n            dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n            unaff_s6 = &local_6c;\n            dVar27 = *(double *)((int)unaff_s3 + 0x4780);\n            do {\n              unaff_s7 = local_74;\n              if (unaff_s4 == (undefined4 ******)0x0) {\n                dVar33 = dVar32;\n                if ((int)local_74 < 1) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }\nLAB_001c8b04:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;\nLAB_001c8708:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8700:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar33 = 0.0;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8768:\n                  dVar33 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar33 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n              }\n              else {\n                dVar33 = dVar32;\n                if (0 < (int)local_74) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar27 <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar33 = 0.0;\n                }\n                else {\n                  if (dVar33 < dVar27) goto LAB_001c8b24;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (dVar26 < dVar33) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8850:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < dVar25) goto LAB_001c8a44;\n                  if (dVar33 <= dVar26) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar14 = 0x7ffffdff;\n                }\n                else if (dVar25 <= dVar33) {\n                  if (dVar33 <= dVar31) goto LAB_001c8abc;\n                  iVar14 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar14 = -0x7ffffdff;\n                }\n              }\n              unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n              param_2 = (undefined4 *******)((int)param_1[0x8c] + iVar15);\n              local_6c = unaff_s8;\n              local_64 = param_2;\n              iVar15 = (*(code *)PTR_CropImage_003a90b8)(param_1,unaff_s6,param_3);\n              if (iVar15 != 0) {\n                (*(code *)PTR_AppendImageToList_003a9880)(&local_80,iVar15);\n              }\n            } while (dVar32 < dVar34);\n          }\n          unaff_s5 = unaff_s3;\n          if (local_c8 <= dVar30) break;\n          if (unaff_s4 == (undefined4 ******)0x0) goto LAB_001c854c;\nLAB_001c8b70:\n          unaff_s7 = local_70;\n          dVar32 = dVar30;\n          if (0 < (int)local_70) {\n            dVar32 = dVar30 - (double)(int)local_70;\n          }\n          dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n          dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          if (dVar32 - dVar26 < dVar27 - dVar32) {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d8c;\n            pcVar23 = (code *)PTR_floor_003a9670;\n            if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8d50;\nLAB_001c8bd8:\n            dVar32 = (double)(*pcVar23)(dVar32);\n            iVar15 = (int)dVar32;\nLAB_001c8bf0:\n            dVar30 = dVar30 + local_a0;\n            if (-2 < (int)unaff_s7) goto LAB_001c8c00;\nLAB_001c8d6c:\n            dVar32 = (double)(int)unaff_s7;\n          }\n          else {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d8c:\n              iVar15 = -0x7ffffdff;\n              goto LAB_001c8bf0;\n            }\n            pcVar23 = (code *)PTR_ceil_003a8c20;\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8bd8;\nLAB_001c8d50:\n            iVar15 = 0x7ffffdff;\n            dVar30 = dVar30 + local_a0;\n            if ((int)unaff_s7 < -1) goto LAB_001c8d6c;\nLAB_001c8c00:\n            dVar32 = 0.0;\n          }\n          dVar32 = dVar30 + dVar32;\n          dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n          dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          if (dVar32 - dVar26 < dVar27 - dVar32) {\n            if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n              if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) {\nLAB_001c8cec:\n                iVar14 = 0x7ffffdff;\n              }\n              else {\nLAB_001c8630:\n                dVar32 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n                iVar14 = (int)dVar32;\n              }\n              goto LAB_001c8644;\n            }\n            goto LAB_001c8c88;\n          }\n          if (dVar32 < dVar25) goto LAB_001c8c88;\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;\nLAB_001c8d18:\n          dVar32 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          iVar14 = (int)dVar32;\n        } while( true );\n      }" (if "if") (parenthesized_expression "(0.0 < local_c8)" (( "(") (binary_expression "0.0 < local_c8" (number_literal "0.0") (< "<") (identifier "local_c8")) () ")")) (compound_statement "{\n        dVar25 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4780);\n        dVar31 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4788);\n        if (unaff_s4 != (undefined4 ******)0x0) goto LAB_001c8b70;\nLAB_001c854c:\n        unaff_s7 = local_70;\n        dVar32 = dVar30;\n        if ((int)local_70 < 1) {\n          dVar32 = dVar30 - (double)(int)local_70;\n        }\n        dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n        dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n        if (dVar32 - dVar26 < dVar27 - dVar32) {\n          dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar23 = (code *)PTR_floor_003a9670;\n          if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d7c;\n        }\n        else {\n          if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d7c:\n            iVar15 = -0x7ffffdff;\n            goto joined_r0x001c8cbc;\n          }\n          dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar23 = (code *)PTR_ceil_003a8c20;\n        }\n        if (dVar26 < dVar32) {\n          iVar15 = 0x7ffffdff;\n        }\n        else {\n          dVar32 = (double)(*pcVar23)(dVar32);\n          iVar15 = (int)dVar32;\n        }\njoined_r0x001c8cbc:\n        dVar30 = dVar30 + local_a0;\n        if ((int)unaff_s7 < 0) {\n          dVar32 = 0.0;\n        }\n        else {\n          dVar32 = (double)(int)unaff_s7;\n        }\n        dVar32 = dVar30 + dVar32;\n        dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n        dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n        if (dVar32 - dVar26 < dVar27 - dVar32) {\n          if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8630;\n            goto LAB_001c8cec;\n          }\n        }\n        else if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;\n          goto LAB_001c8d18;\n        }\nLAB_001c8c88:\n        iVar14 = -0x7ffffdff;\nLAB_001c8644:\n        do {\n          unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n          param_2 = (undefined4 *******)((int)param_1[0x8d] + iVar15);\n          dVar32 = 0.0;\n          local_68 = unaff_s8;\n          local_60 = param_2;\n          if (0.0 < dVar34) {\n            dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n            unaff_s6 = &local_6c;\n            dVar27 = *(double *)((int)unaff_s3 + 0x4780);\n            do {\n              unaff_s7 = local_74;\n              if (unaff_s4 == (undefined4 ******)0x0) {\n                dVar33 = dVar32;\n                if ((int)local_74 < 1) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }\nLAB_001c8b04:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;\nLAB_001c8708:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8700:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar33 = 0.0;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8768:\n                  dVar33 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar33 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n              }\n              else {\n                dVar33 = dVar32;\n                if (0 < (int)local_74) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar27 <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar33 = 0.0;\n                }\n                else {\n                  if (dVar33 < dVar27) goto LAB_001c8b24;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (dVar26 < dVar33) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8850:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < dVar25) goto LAB_001c8a44;\n                  if (dVar33 <= dVar26) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar14 = 0x7ffffdff;\n                }\n                else if (dVar25 <= dVar33) {\n                  if (dVar33 <= dVar31) goto LAB_001c8abc;\n                  iVar14 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar14 = -0x7ffffdff;\n                }\n              }\n              unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n              param_2 = (undefined4 *******)((int)param_1[0x8c] + iVar15);\n              local_6c = unaff_s8;\n              local_64 = param_2;\n              iVar15 = (*(code *)PTR_CropImage_003a90b8)(param_1,unaff_s6,param_3);\n              if (iVar15 != 0) {\n                (*(code *)PTR_AppendImageToList_003a9880)(&local_80,iVar15);\n              }\n            } while (dVar32 < dVar34);\n          }\n          unaff_s5 = unaff_s3;\n          if (local_c8 <= dVar30) break;\n          if (unaff_s4 == (undefined4 ******)0x0) goto LAB_001c854c;\nLAB_001c8b70:\n          unaff_s7 = local_70;\n          dVar32 = dVar30;\n          if (0 < (int)local_70) {\n            dVar32 = dVar30 - (double)(int)local_70;\n          }\n          dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n          dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          if (dVar32 - dVar26 < dVar27 - dVar32) {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d8c;\n            pcVar23 = (code *)PTR_floor_003a9670;\n            if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8d50;\nLAB_001c8bd8:\n            dVar32 = (double)(*pcVar23)(dVar32);\n            iVar15 = (int)dVar32;\nLAB_001c8bf0:\n            dVar30 = dVar30 + local_a0;\n            if (-2 < (int)unaff_s7) goto LAB_001c8c00;\nLAB_001c8d6c:\n            dVar32 = (double)(int)unaff_s7;\n          }\n          else {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d8c:\n              iVar15 = -0x7ffffdff;\n              goto LAB_001c8bf0;\n            }\n            pcVar23 = (code *)PTR_ceil_003a8c20;\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8bd8;\nLAB_001c8d50:\n            iVar15 = 0x7ffffdff;\n            dVar30 = dVar30 + local_a0;\n            if ((int)unaff_s7 < -1) goto LAB_001c8d6c;\nLAB_001c8c00:\n            dVar32 = 0.0;\n          }\n          dVar32 = dVar30 + dVar32;\n          dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n          dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          if (dVar32 - dVar26 < dVar27 - dVar32) {\n            if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n              if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) {\nLAB_001c8cec:\n                iVar14 = 0x7ffffdff;\n              }\n              else {\nLAB_001c8630:\n                dVar32 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n                iVar14 = (int)dVar32;\n              }\n              goto LAB_001c8644;\n            }\n            goto LAB_001c8c88;\n          }\n          if (dVar32 < dVar25) goto LAB_001c8c88;\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;\nLAB_001c8d18:\n          dVar32 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          iVar14 = (int)dVar32;\n        } while( true );\n      }" ({ "{") (expression_statement "dVar25 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4780);" (assignment_expression "dVar25 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4780)" (identifier "dVar25") (= "=") (pointer_expression "*(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4780)" (* "*") (cast_expression "(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4780)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4780)" (( "(") (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4780" (identifier "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8") (+ "+") (number_literal "0x4780")) () ")"))))) (; ";")) (expression_statement "dVar31 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4788);" (assignment_expression "dVar31 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4788)" (identifier "dVar31") (= "=") (pointer_expression "*(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4788)" (* "*") (cast_expression "(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4788)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4788)" (( "(") (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4788" (identifier "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8") (+ "+") (number_literal "0x4788")) () ")"))))) (; ";")) (if_statement "if (unaff_s4 != (undefined4 ******)0x0) goto LAB_001c8b70;" (if "if") (parenthesized_expression "(unaff_s4 != (undefined4 ******)0x0)" (( "(") (binary_expression "unaff_s4 != (undefined4 ******)0x0" (identifier "unaff_s4") (!= "!=") (cast_expression "(undefined4 ******)0x0" (( "(") (type_descriptor "undefined4 ******" (type_identifier "undefined4") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (number_literal "0x0"))) () ")")) (goto_statement "goto LAB_001c8b70;" (goto "goto") (statement_identifier "LAB_001c8b70") (; ";"))) (labeled_statement "LAB_001c854c:\n        unaff_s7 = local_70;" (statement_identifier "LAB_001c854c") (: ":") (expression_statement "unaff_s7 = local_70;" (assignment_expression "unaff_s7 = local_70" (identifier "unaff_s7") (= "=") (identifier "local_70")) (; ";"))) (expression_statement "dVar32 = dVar30;" (assignment_expression "dVar32 = dVar30" (identifier "dVar32") (= "=") (identifier "dVar30")) (; ";")) (if_statement "if ((int)local_70 < 1) {\n          dVar32 = dVar30 - (double)(int)local_70;\n        }" (if "if") (parenthesized_expression "((int)local_70 < 1)" (( "(") (binary_expression "(int)local_70 < 1" (cast_expression "(int)local_70" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_70")) (< "<") (number_literal "1")) () ")")) (compound_statement "{\n          dVar32 = dVar30 - (double)(int)local_70;\n        }" ({ "{") (expression_statement "dVar32 = dVar30 - (double)(int)local_70;" (assignment_expression "dVar32 = dVar30 - (double)(int)local_70" (identifier "dVar32") (= "=") (binary_expression "dVar30 - (double)(int)local_70" (identifier "dVar30") (- "-") (cast_expression "(double)(int)local_70" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (cast_expression "(int)local_70" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_70"))))) (; ";")) (} "}"))) (expression_statement "dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);" (assignment_expression "dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32)" (identifier "dVar26") (= "=") (cast_expression "(double)(*(code *)PTR_floor_003a9670)(dVar32)" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (call_expression "(*(code *)PTR_floor_003a9670)(dVar32)" (parenthesized_expression "(*(code *)PTR_floor_003a9670)" (( "(") (pointer_expression "*(code *)PTR_floor_003a9670" (* "*") (cast_expression "(code *)PTR_floor_003a9670" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_floor_003a9670"))) () ")")) (argument_list "(dVar32)" (( "(") (identifier "dVar32") () ")"))))) (; ";")) (expression_statement "dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);" (assignment_expression "dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32)" (identifier "dVar27") (= "=") (cast_expression "(double)(*(code *)PTR_ceil_003a8c20)(dVar32)" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (call_expression "(*(code *)PTR_ceil_003a8c20)(dVar32)" (parenthesized_expression "(*(code *)PTR_ceil_003a8c20)" (( "(") (pointer_expression "*(code *)PTR_ceil_003a8c20" (* "*") (cast_expression "(code *)PTR_ceil_003a8c20" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_ceil_003a8c20"))) () ")")) (argument_list "(dVar32)" (( "(") (identifier "dVar32") () ")"))))) (; ";")) (if_statement "if (dVar32 - dVar26 < dVar27 - dVar32) {\n          dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar23 = (code *)PTR_floor_003a9670;\n          if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d7c;\n        }\n        else {\n          if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d7c:\n            iVar15 = -0x7ffffdff;\n            goto joined_r0x001c8cbc;\n          }\n          dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar23 = (code *)PTR_ceil_003a8c20;\n        }" (if "if") (parenthesized_expression "(dVar32 - dVar26 < dVar27 - dVar32)" (( "(") (binary_expression "dVar32 - dVar26 < dVar27 - dVar32" (binary_expression "dVar32 - dVar26" (identifier "dVar32") (- "-") (identifier "dVar26")) (< "<") (binary_expression "dVar27 - dVar32" (identifier "dVar27") (- "-") (identifier "dVar32"))) () ")")) (compound_statement "{\n          dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar23 = (code *)PTR_floor_003a9670;\n          if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d7c;\n        }" ({ "{") (expression_statement "dVar26 = *(double *)((int)unaff_s3 + 0x4788);" (assignment_expression "dVar26 = *(double *)((int)unaff_s3 + 0x4788)" (identifier "dVar26") (= "=") (pointer_expression "*(double *)((int)unaff_s3 + 0x4788)" (* "*") (cast_expression "(double *)((int)unaff_s3 + 0x4788)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)unaff_s3 + 0x4788)" (( "(") (binary_expression "(int)unaff_s3 + 0x4788" (cast_expression "(int)unaff_s3" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "unaff_s3")) (+ "+") (number_literal "0x4788")) () ")"))))) (; ";")) (expression_statement "pcVar23 = (code *)PTR_floor_003a9670;" (assignment_expression "pcVar23 = (code *)PTR_floor_003a9670" (identifier "pcVar23") (= "=") (cast_expression "(code *)PTR_floor_003a9670" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_floor_003a9670"))) (; ";")) (if_statement "if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d7c;" (if "if") (parenthesized_expression "(dVar32 < *(double *)((int)unaff_s3 + 0x4780))" (( "(") (binary_expression "dVar32 < *(double *)((int)unaff_s3 + 0x4780)" (identifier "dVar32") (< "<") (pointer_expression "*(double *)((int)unaff_s3 + 0x4780)" (* "*") (cast_expression "(double *)((int)unaff_s3 + 0x4780)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)unaff_s3 + 0x4780)" (( "(") (binary_expression "(int)unaff_s3 + 0x4780" (cast_expression "(int)unaff_s3" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "unaff_s3")) (+ "+") (number_literal "0x4780")) () ")"))))) () ")")) (goto_statement "goto LAB_001c8d7c;" (goto "goto") (statement_identifier "LAB_001c8d7c") (; ";"))) (} "}")) (else_clause "else {\n          if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d7c:\n            iVar15 = -0x7ffffdff;\n            goto joined_r0x001c8cbc;\n          }\n          dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar23 = (code *)PTR_ceil_003a8c20;\n        }" (else "else") (compound_statement "{\n          if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d7c:\n            iVar15 = -0x7ffffdff;\n            goto joined_r0x001c8cbc;\n          }\n          dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n          pcVar23 = (code *)PTR_ceil_003a8c20;\n        }" ({ "{") (if_statement "if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d7c:\n            iVar15 = -0x7ffffdff;\n            goto joined_r0x001c8cbc;\n          }" (if "if") (parenthesized_expression "(dVar32 < *(double *)((int)unaff_s3 + 0x4780))" (( "(") (binary_expression "dVar32 < *(double *)((int)unaff_s3 + 0x4780)" (identifier "dVar32") (< "<") (pointer_expression "*(double *)((int)unaff_s3 + 0x4780)" (* "*") (cast_expression "(double *)((int)unaff_s3 + 0x4780)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)unaff_s3 + 0x4780)" (( "(") (binary_expression "(int)unaff_s3 + 0x4780" (cast_expression "(int)unaff_s3" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "unaff_s3")) (+ "+") (number_literal "0x4780")) () ")"))))) () ")")) (compound_statement "{\nLAB_001c8d7c:\n            iVar15 = -0x7ffffdff;\n            goto joined_r0x001c8cbc;\n          }" ({ "{") (labeled_statement "LAB_001c8d7c:\n            iVar15 = -0x7ffffdff;" (statement_identifier "LAB_001c8d7c") (: ":") (expression_statement "iVar15 = -0x7ffffdff;" (assignment_expression "iVar15 = -0x7ffffdff" (identifier "iVar15") (= "=") (number_literal "-0x7ffffdff")) (; ";"))) (goto_statement "goto joined_r0x001c8cbc;" (goto "goto") (statement_identifier "joined_r0x001c8cbc") (; ";")) (} "}"))) (expression_statement "dVar26 = *(double *)((int)unaff_s3 + 0x4788);" (assignment_expression "dVar26 = *(double *)((int)unaff_s3 + 0x4788)" (identifier "dVar26") (= "=") (pointer_expression "*(double *)((int)unaff_s3 + 0x4788)" (* "*") (cast_expression "(double *)((int)unaff_s3 + 0x4788)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)unaff_s3 + 0x4788)" (( "(") (binary_expression "(int)unaff_s3 + 0x4788" (cast_expression "(int)unaff_s3" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "unaff_s3")) (+ "+") (number_literal "0x4788")) () ")"))))) (; ";")) (expression_statement "pcVar23 = (code *)PTR_ceil_003a8c20;" (assignment_expression "pcVar23 = (code *)PTR_ceil_003a8c20" (identifier "pcVar23") (= "=") (cast_expression "(code *)PTR_ceil_003a8c20" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_ceil_003a8c20"))) (; ";")) (} "}")))) (if_statement "if (dVar26 < dVar32) {\n          iVar15 = 0x7ffffdff;\n        }\n        else {\n          dVar32 = (double)(*pcVar23)(dVar32);\n          iVar15 = (int)dVar32;\n        }" (if "if") (parenthesized_expression "(dVar26 < dVar32)" (( "(") (binary_expression "dVar26 < dVar32" (identifier "dVar26") (< "<") (identifier "dVar32")) () ")")) (compound_statement "{\n          iVar15 = 0x7ffffdff;\n        }" ({ "{") (expression_statement "iVar15 = 0x7ffffdff;" (assignment_expression "iVar15 = 0x7ffffdff" (identifier "iVar15") (= "=") (number_literal "0x7ffffdff")) (; ";")) (} "}")) (else_clause "else {\n          dVar32 = (double)(*pcVar23)(dVar32);\n          iVar15 = (int)dVar32;\n        }" (else "else") (compound_statement "{\n          dVar32 = (double)(*pcVar23)(dVar32);\n          iVar15 = (int)dVar32;\n        }" ({ "{") (expression_statement "dVar32 = (double)(*pcVar23)(dVar32);" (assignment_expression "dVar32 = (double)(*pcVar23)(dVar32)" (identifier "dVar32") (= "=") (cast_expression "(double)(*pcVar23)(dVar32)" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (call_expression "(*pcVar23)(dVar32)" (parenthesized_expression "(*pcVar23)" (( "(") (pointer_expression "*pcVar23" (* "*") (identifier "pcVar23")) () ")")) (argument_list "(dVar32)" (( "(") (identifier "dVar32") () ")"))))) (; ";")) (expression_statement "iVar15 = (int)dVar32;" (assignment_expression "iVar15 = (int)dVar32" (identifier "iVar15") (= "=") (cast_expression "(int)dVar32" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "dVar32"))) (; ";")) (} "}")))) (labeled_statement "joined_r0x001c8cbc:\n        dVar30 = dVar30 + local_a0;" (statement_identifier "joined_r0x001c8cbc") (: ":") (expression_statement "dVar30 = dVar30 + local_a0;" (assignment_expression "dVar30 = dVar30 + local_a0" (identifier "dVar30") (= "=") (binary_expression "dVar30 + local_a0" (identifier "dVar30") (+ "+") (identifier "local_a0"))) (; ";"))) (if_statement "if ((int)unaff_s7 < 0) {\n          dVar32 = 0.0;\n        }\n        else {\n          dVar32 = (double)(int)unaff_s7;\n        }" (if "if") (parenthesized_expression "((int)unaff_s7 < 0)" (( "(") (binary_expression "(int)unaff_s7 < 0" (cast_expression "(int)unaff_s7" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "unaff_s7")) (< "<") (number_literal "0")) () ")")) (compound_statement "{\n          dVar32 = 0.0;\n        }" ({ "{") (expression_statement "dVar32 = 0.0;" (assignment_expression "dVar32 = 0.0" (identifier "dVar32") (= "=") (number_literal "0.0")) (; ";")) (} "}")) (else_clause "else {\n          dVar32 = (double)(int)unaff_s7;\n        }" (else "else") (compound_statement "{\n          dVar32 = (double)(int)unaff_s7;\n        }" ({ "{") (expression_statement "dVar32 = (double)(int)unaff_s7;" (assignment_expression "dVar32 = (double)(int)unaff_s7" (identifier "dVar32") (= "=") (cast_expression "(double)(int)unaff_s7" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (cast_expression "(int)unaff_s7" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "unaff_s7")))) (; ";")) (} "}")))) (expression_statement "dVar32 = dVar30 + dVar32;" (assignment_expression "dVar32 = dVar30 + dVar32" (identifier "dVar32") (= "=") (binary_expression "dVar30 + dVar32" (identifier "dVar30") (+ "+") (identifier "dVar32"))) (; ";")) (expression_statement "dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);" (assignment_expression "dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32)" (identifier "dVar26") (= "=") (cast_expression "(double)(*(code *)PTR_floor_003a9670)(dVar32)" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (call_expression "(*(code *)PTR_floor_003a9670)(dVar32)" (parenthesized_expression "(*(code *)PTR_floor_003a9670)" (( "(") (pointer_expression "*(code *)PTR_floor_003a9670" (* "*") (cast_expression "(code *)PTR_floor_003a9670" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_floor_003a9670"))) () ")")) (argument_list "(dVar32)" (( "(") (identifier "dVar32") () ")"))))) (; ";")) (expression_statement "dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);" (assignment_expression "dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32)" (identifier "dVar27") (= "=") (cast_expression "(double)(*(code *)PTR_ceil_003a8c20)(dVar32)" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (call_expression "(*(code *)PTR_ceil_003a8c20)(dVar32)" (parenthesized_expression "(*(code *)PTR_ceil_003a8c20)" (( "(") (pointer_expression "*(code *)PTR_ceil_003a8c20" (* "*") (cast_expression "(code *)PTR_ceil_003a8c20" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_ceil_003a8c20"))) () ")")) (argument_list "(dVar32)" (( "(") (identifier "dVar32") () ")"))))) (; ";")) (if_statement "if (dVar32 - dVar26 < dVar27 - dVar32) {\n          if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8630;\n            goto LAB_001c8cec;\n          }\n        }\n        else if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;\n          goto LAB_001c8d18;\n        }" (if "if") (parenthesized_expression "(dVar32 - dVar26 < dVar27 - dVar32)" (( "(") (binary_expression "dVar32 - dVar26 < dVar27 - dVar32" (binary_expression "dVar32 - dVar26" (identifier "dVar32") (- "-") (identifier "dVar26")) (< "<") (binary_expression "dVar27 - dVar32" (identifier "dVar27") (- "-") (identifier "dVar32"))) () ")")) (compound_statement "{\n          if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8630;\n            goto LAB_001c8cec;\n          }\n        }" ({ "{") (if_statement "if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8630;\n            goto LAB_001c8cec;\n          }" (if "if") (parenthesized_expression "(*(double *)((int)unaff_s3 + 0x4780) <= dVar32)" (( "(") (binary_expression "*(double *)((int)unaff_s3 + 0x4780) <= dVar32" (pointer_expression "*(double *)((int)unaff_s3 + 0x4780)" (* "*") (cast_expression "(double *)((int)unaff_s3 + 0x4780)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)unaff_s3 + 0x4780)" (( "(") (binary_expression "(int)unaff_s3 + 0x4780" (cast_expression "(int)unaff_s3" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "unaff_s3")) (+ "+") (number_literal "0x4780")) () ")")))) (<= "<=") (identifier "dVar32")) () ")")) (compound_statement "{\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8630;\n            goto LAB_001c8cec;\n          }" ({ "{") (if_statement "if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8630;" (if "if") (parenthesized_expression "(dVar32 <= *(double *)((int)unaff_s3 + 0x4788))" (( "(") (binary_expression "dVar32 <= *(double *)((int)unaff_s3 + 0x4788)" (identifier "dVar32") (<= "<=") (pointer_expression "*(double *)((int)unaff_s3 + 0x4788)" (* "*") (cast_expression "(double *)((int)unaff_s3 + 0x4788)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)unaff_s3 + 0x4788)" (( "(") (binary_expression "(int)unaff_s3 + 0x4788" (cast_expression "(int)unaff_s3" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "unaff_s3")) (+ "+") (number_literal "0x4788")) () ")"))))) () ")")) (goto_statement "goto LAB_001c8630;" (goto "goto") (statement_identifier "LAB_001c8630") (; ";"))) (goto_statement "goto LAB_001c8cec;" (goto "goto") (statement_identifier "LAB_001c8cec") (; ";")) (} "}"))) (} "}")) (else_clause "else if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;\n          goto LAB_001c8d18;\n        }" (else "else") (if_statement "if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;\n          goto LAB_001c8d18;\n        }" (if "if") (parenthesized_expression "(*(double *)((int)unaff_s3 + 0x4780) <= dVar32)" (( "(") (binary_expression "*(double *)((int)unaff_s3 + 0x4780) <= dVar32" (pointer_expression "*(double *)((int)unaff_s3 + 0x4780)" (* "*") (cast_expression "(double *)((int)unaff_s3 + 0x4780)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)unaff_s3 + 0x4780)" (( "(") (binary_expression "(int)unaff_s3 + 0x4780" (cast_expression "(int)unaff_s3" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "unaff_s3")) (+ "+") (number_literal "0x4780")) () ")")))) (<= "<=") (identifier "dVar32")) () ")")) (compound_statement "{\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;\n          goto LAB_001c8d18;\n        }" ({ "{") (if_statement "if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;" (if "if") (parenthesized_expression "(*(double *)((int)unaff_s3 + 0x4788) < dVar32)" (( "(") (binary_expression "*(double *)((int)unaff_s3 + 0x4788) < dVar32" (pointer_expression "*(double *)((int)unaff_s3 + 0x4788)" (* "*") (cast_expression "(double *)((int)unaff_s3 + 0x4788)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)unaff_s3 + 0x4788)" (( "(") (binary_expression "(int)unaff_s3 + 0x4788" (cast_expression "(int)unaff_s3" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "unaff_s3")) (+ "+") (number_literal "0x4788")) () ")")))) (< "<") (identifier "dVar32")) () ")")) (goto_statement "goto LAB_001c8cec;" (goto "goto") (statement_identifier "LAB_001c8cec") (; ";"))) (goto_statement "goto LAB_001c8d18;" (goto "goto") (statement_identifier "LAB_001c8d18") (; ";")) (} "}"))))) (labeled_statement "LAB_001c8c88:\n        iVar14 = -0x7ffffdff;" (statement_identifier "LAB_001c8c88") (: ":") (expression_statement "iVar14 = -0x7ffffdff;" (assignment_expression "iVar14 = -0x7ffffdff" (identifier "iVar14") (= "=") (number_literal "-0x7ffffdff")) (; ";"))) (labeled_statement "LAB_001c8644:\n        do {\n          unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n          param_2 = (undefined4 *******)((int)param_1[0x8d] + iVar15);\n          dVar32 = 0.0;\n          local_68 = unaff_s8;\n          local_60 = param_2;\n          if (0.0 < dVar34) {\n            dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n            unaff_s6 = &local_6c;\n            dVar27 = *(double *)((int)unaff_s3 + 0x4780);\n            do {\n              unaff_s7 = local_74;\n              if (unaff_s4 == (undefined4 ******)0x0) {\n                dVar33 = dVar32;\n                if ((int)local_74 < 1) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }\nLAB_001c8b04:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;\nLAB_001c8708:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8700:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar33 = 0.0;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8768:\n                  dVar33 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar33 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n              }\n              else {\n                dVar33 = dVar32;\n                if (0 < (int)local_74) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar27 <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar33 = 0.0;\n                }\n                else {\n                  if (dVar33 < dVar27) goto LAB_001c8b24;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (dVar26 < dVar33) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8850:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < dVar25) goto LAB_001c8a44;\n                  if (dVar33 <= dVar26) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar14 = 0x7ffffdff;\n                }\n                else if (dVar25 <= dVar33) {\n                  if (dVar33 <= dVar31) goto LAB_001c8abc;\n                  iVar14 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar14 = -0x7ffffdff;\n                }\n              }\n              unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n              param_2 = (undefined4 *******)((int)param_1[0x8c] + iVar15);\n              local_6c = unaff_s8;\n              local_64 = param_2;\n              iVar15 = (*(code *)PTR_CropImage_003a90b8)(param_1,unaff_s6,param_3);\n              if (iVar15 != 0) {\n                (*(code *)PTR_AppendImageToList_003a9880)(&local_80,iVar15);\n              }\n            } while (dVar32 < dVar34);\n          }\n          unaff_s5 = unaff_s3;\n          if (local_c8 <= dVar30) break;\n          if (unaff_s4 == (undefined4 ******)0x0) goto LAB_001c854c;\nLAB_001c8b70:\n          unaff_s7 = local_70;\n          dVar32 = dVar30;\n          if (0 < (int)local_70) {\n            dVar32 = dVar30 - (double)(int)local_70;\n          }\n          dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n          dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          if (dVar32 - dVar26 < dVar27 - dVar32) {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d8c;\n            pcVar23 = (code *)PTR_floor_003a9670;\n            if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8d50;\nLAB_001c8bd8:\n            dVar32 = (double)(*pcVar23)(dVar32);\n            iVar15 = (int)dVar32;\nLAB_001c8bf0:\n            dVar30 = dVar30 + local_a0;\n            if (-2 < (int)unaff_s7) goto LAB_001c8c00;\nLAB_001c8d6c:\n            dVar32 = (double)(int)unaff_s7;\n          }\n          else {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d8c:\n              iVar15 = -0x7ffffdff;\n              goto LAB_001c8bf0;\n            }\n            pcVar23 = (code *)PTR_ceil_003a8c20;\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8bd8;\nLAB_001c8d50:\n            iVar15 = 0x7ffffdff;\n            dVar30 = dVar30 + local_a0;\n            if ((int)unaff_s7 < -1) goto LAB_001c8d6c;\nLAB_001c8c00:\n            dVar32 = 0.0;\n          }\n          dVar32 = dVar30 + dVar32;\n          dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n          dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          if (dVar32 - dVar26 < dVar27 - dVar32) {\n            if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n              if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) {\nLAB_001c8cec:\n                iVar14 = 0x7ffffdff;\n              }\n              else {\nLAB_001c8630:\n                dVar32 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n                iVar14 = (int)dVar32;\n              }\n              goto LAB_001c8644;\n            }\n            goto LAB_001c8c88;\n          }\n          if (dVar32 < dVar25) goto LAB_001c8c88;\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;\nLAB_001c8d18:\n          dVar32 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          iVar14 = (int)dVar32;\n        } while( true );" (statement_identifier "LAB_001c8644") (: ":") (do_statement "do {\n          unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n          param_2 = (undefined4 *******)((int)param_1[0x8d] + iVar15);\n          dVar32 = 0.0;\n          local_68 = unaff_s8;\n          local_60 = param_2;\n          if (0.0 < dVar34) {\n            dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n            unaff_s6 = &local_6c;\n            dVar27 = *(double *)((int)unaff_s3 + 0x4780);\n            do {\n              unaff_s7 = local_74;\n              if (unaff_s4 == (undefined4 ******)0x0) {\n                dVar33 = dVar32;\n                if ((int)local_74 < 1) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }\nLAB_001c8b04:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;\nLAB_001c8708:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8700:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar33 = 0.0;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8768:\n                  dVar33 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar33 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n              }\n              else {\n                dVar33 = dVar32;\n                if (0 < (int)local_74) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar27 <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar33 = 0.0;\n                }\n                else {\n                  if (dVar33 < dVar27) goto LAB_001c8b24;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (dVar26 < dVar33) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8850:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < dVar25) goto LAB_001c8a44;\n                  if (dVar33 <= dVar26) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar14 = 0x7ffffdff;\n                }\n                else if (dVar25 <= dVar33) {\n                  if (dVar33 <= dVar31) goto LAB_001c8abc;\n                  iVar14 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar14 = -0x7ffffdff;\n                }\n              }\n              unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n              param_2 = (undefined4 *******)((int)param_1[0x8c] + iVar15);\n              local_6c = unaff_s8;\n              local_64 = param_2;\n              iVar15 = (*(code *)PTR_CropImage_003a90b8)(param_1,unaff_s6,param_3);\n              if (iVar15 != 0) {\n                (*(code *)PTR_AppendImageToList_003a9880)(&local_80,iVar15);\n              }\n            } while (dVar32 < dVar34);\n          }\n          unaff_s5 = unaff_s3;\n          if (local_c8 <= dVar30) break;\n          if (unaff_s4 == (undefined4 ******)0x0) goto LAB_001c854c;\nLAB_001c8b70:\n          unaff_s7 = local_70;\n          dVar32 = dVar30;\n          if (0 < (int)local_70) {\n            dVar32 = dVar30 - (double)(int)local_70;\n          }\n          dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n          dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          if (dVar32 - dVar26 < dVar27 - dVar32) {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d8c;\n            pcVar23 = (code *)PTR_floor_003a9670;\n            if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8d50;\nLAB_001c8bd8:\n            dVar32 = (double)(*pcVar23)(dVar32);\n            iVar15 = (int)dVar32;\nLAB_001c8bf0:\n            dVar30 = dVar30 + local_a0;\n            if (-2 < (int)unaff_s7) goto LAB_001c8c00;\nLAB_001c8d6c:\n            dVar32 = (double)(int)unaff_s7;\n          }\n          else {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d8c:\n              iVar15 = -0x7ffffdff;\n              goto LAB_001c8bf0;\n            }\n            pcVar23 = (code *)PTR_ceil_003a8c20;\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8bd8;\nLAB_001c8d50:\n            iVar15 = 0x7ffffdff;\n            dVar30 = dVar30 + local_a0;\n            if ((int)unaff_s7 < -1) goto LAB_001c8d6c;\nLAB_001c8c00:\n            dVar32 = 0.0;\n          }\n          dVar32 = dVar30 + dVar32;\n          dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n          dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          if (dVar32 - dVar26 < dVar27 - dVar32) {\n            if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n              if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) {\nLAB_001c8cec:\n                iVar14 = 0x7ffffdff;\n              }\n              else {\nLAB_001c8630:\n                dVar32 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n                iVar14 = (int)dVar32;\n              }\n              goto LAB_001c8644;\n            }\n            goto LAB_001c8c88;\n          }\n          if (dVar32 < dVar25) goto LAB_001c8c88;\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;\nLAB_001c8d18:\n          dVar32 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          iVar14 = (int)dVar32;\n        } while( true );" (do "do") (compound_statement "{\n          unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n          param_2 = (undefined4 *******)((int)param_1[0x8d] + iVar15);\n          dVar32 = 0.0;\n          local_68 = unaff_s8;\n          local_60 = param_2;\n          if (0.0 < dVar34) {\n            dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n            unaff_s6 = &local_6c;\n            dVar27 = *(double *)((int)unaff_s3 + 0x4780);\n            do {\n              unaff_s7 = local_74;\n              if (unaff_s4 == (undefined4 ******)0x0) {\n                dVar33 = dVar32;\n                if ((int)local_74 < 1) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }\nLAB_001c8b04:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;\nLAB_001c8708:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8700:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar33 = 0.0;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8768:\n                  dVar33 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar33 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n              }\n              else {\n                dVar33 = dVar32;\n                if (0 < (int)local_74) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar27 <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar33 = 0.0;\n                }\n                else {\n                  if (dVar33 < dVar27) goto LAB_001c8b24;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (dVar26 < dVar33) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8850:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < dVar25) goto LAB_001c8a44;\n                  if (dVar33 <= dVar26) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar14 = 0x7ffffdff;\n                }\n                else if (dVar25 <= dVar33) {\n                  if (dVar33 <= dVar31) goto LAB_001c8abc;\n                  iVar14 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar14 = -0x7ffffdff;\n                }\n              }\n              unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n              param_2 = (undefined4 *******)((int)param_1[0x8c] + iVar15);\n              local_6c = unaff_s8;\n              local_64 = param_2;\n              iVar15 = (*(code *)PTR_CropImage_003a90b8)(param_1,unaff_s6,param_3);\n              if (iVar15 != 0) {\n                (*(code *)PTR_AppendImageToList_003a9880)(&local_80,iVar15);\n              }\n            } while (dVar32 < dVar34);\n          }\n          unaff_s5 = unaff_s3;\n          if (local_c8 <= dVar30) break;\n          if (unaff_s4 == (undefined4 ******)0x0) goto LAB_001c854c;\nLAB_001c8b70:\n          unaff_s7 = local_70;\n          dVar32 = dVar30;\n          if (0 < (int)local_70) {\n            dVar32 = dVar30 - (double)(int)local_70;\n          }\n          dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n          dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          if (dVar32 - dVar26 < dVar27 - dVar32) {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d8c;\n            pcVar23 = (code *)PTR_floor_003a9670;\n            if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8d50;\nLAB_001c8bd8:\n            dVar32 = (double)(*pcVar23)(dVar32);\n            iVar15 = (int)dVar32;\nLAB_001c8bf0:\n            dVar30 = dVar30 + local_a0;\n            if (-2 < (int)unaff_s7) goto LAB_001c8c00;\nLAB_001c8d6c:\n            dVar32 = (double)(int)unaff_s7;\n          }\n          else {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d8c:\n              iVar15 = -0x7ffffdff;\n              goto LAB_001c8bf0;\n            }\n            pcVar23 = (code *)PTR_ceil_003a8c20;\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8bd8;\nLAB_001c8d50:\n            iVar15 = 0x7ffffdff;\n            dVar30 = dVar30 + local_a0;\n            if ((int)unaff_s7 < -1) goto LAB_001c8d6c;\nLAB_001c8c00:\n            dVar32 = 0.0;\n          }\n          dVar32 = dVar30 + dVar32;\n          dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n          dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          if (dVar32 - dVar26 < dVar27 - dVar32) {\n            if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n              if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) {\nLAB_001c8cec:\n                iVar14 = 0x7ffffdff;\n              }\n              else {\nLAB_001c8630:\n                dVar32 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n                iVar14 = (int)dVar32;\n              }\n              goto LAB_001c8644;\n            }\n            goto LAB_001c8c88;\n          }\n          if (dVar32 < dVar25) goto LAB_001c8c88;\n          if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;\nLAB_001c8d18:\n          dVar32 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);\n          iVar14 = (int)dVar32;\n        }" ({ "{") (expression_statement "unaff_s8 = (undefined4 *******)(iVar14 - iVar15);" (assignment_expression "unaff_s8 = (undefined4 *******)(iVar14 - iVar15)" (identifier "unaff_s8") (= "=") (cast_expression "(undefined4 *******)(iVar14 - iVar15)" (( "(") (type_descriptor "undefined4 *******" (type_identifier "undefined4") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "(iVar14 - iVar15)" (( "(") (binary_expression "iVar14 - iVar15" (identifier "iVar14") (- "-") (identifier "iVar15")) () ")")))) (; ";")) (expression_statement "param_2 = (undefined4 *******)((int)param_1[0x8d] + iVar15);" (assignment_expression "param_2 = (undefined4 *******)((int)param_1[0x8d] + iVar15)" (identifier "param_2") (= "=") (cast_expression "(undefined4 *******)((int)param_1[0x8d] + iVar15)" (( "(") (type_descriptor "undefined4 *******" (type_identifier "undefined4") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "((int)param_1[0x8d] + iVar15)" (( "(") (binary_expression "(int)param_1[0x8d] + iVar15" (cast_expression "(int)param_1[0x8d]" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (subscript_expression "param_1[0x8d]" (identifier "param_1") ([ "[") (number_literal "0x8d") (] "]"))) (+ "+") (identifier "iVar15")) () ")")))) (; ";")) (expression_statement "dVar32 = 0.0;" (assignment_expression "dVar32 = 0.0" (identifier "dVar32") (= "=") (number_literal "0.0")) (; ";")) (expression_statement "local_68 = unaff_s8;" (assignment_expression "local_68 = unaff_s8" (identifier "local_68") (= "=") (identifier "unaff_s8")) (; ";")) (expression_statement "local_60 = param_2;" (assignment_expression "local_60 = param_2" (identifier "local_60") (= "=") (identifier "param_2")) (; ";")) (if_statement "if (0.0 < dVar34) {\n            dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n            unaff_s6 = &local_6c;\n            dVar27 = *(double *)((int)unaff_s3 + 0x4780);\n            do {\n              unaff_s7 = local_74;\n              if (unaff_s4 == (undefined4 ******)0x0) {\n                dVar33 = dVar32;\n                if ((int)local_74 < 1) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }\nLAB_001c8b04:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;\nLAB_001c8708:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8700:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar33 = 0.0;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8768:\n                  dVar33 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar33 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n              }\n              else {\n                dVar33 = dVar32;\n                if (0 < (int)local_74) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar27 <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar33 = 0.0;\n                }\n                else {\n                  if (dVar33 < dVar27) goto LAB_001c8b24;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (dVar26 < dVar33) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8850:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < dVar25) goto LAB_001c8a44;\n                  if (dVar33 <= dVar26) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar14 = 0x7ffffdff;\n                }\n                else if (dVar25 <= dVar33) {\n                  if (dVar33 <= dVar31) goto LAB_001c8abc;\n                  iVar14 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar14 = -0x7ffffdff;\n                }\n              }\n              unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n              param_2 = (undefined4 *******)((int)param_1[0x8c] + iVar15);\n              local_6c = unaff_s8;\n              local_64 = param_2;\n              iVar15 = (*(code *)PTR_CropImage_003a90b8)(param_1,unaff_s6,param_3);\n              if (iVar15 != 0) {\n                (*(code *)PTR_AppendImageToList_003a9880)(&local_80,iVar15);\n              }\n            } while (dVar32 < dVar34);\n          }" (if "if") (parenthesized_expression "(0.0 < dVar34)" (( "(") (binary_expression "0.0 < dVar34" (number_literal "0.0") (< "<") (identifier "dVar34")) () ")")) (compound_statement "{\n            dVar26 = *(double *)((int)unaff_s3 + 0x4788);\n            unaff_s6 = &local_6c;\n            dVar27 = *(double *)((int)unaff_s3 + 0x4780);\n            do {\n              unaff_s7 = local_74;\n              if (unaff_s4 == (undefined4 ******)0x0) {\n                dVar33 = dVar32;\n                if ((int)local_74 < 1) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }\nLAB_001c8b04:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;\nLAB_001c8708:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8700:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar33 = 0.0;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8768:\n                  dVar33 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar33 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n              }\n              else {\n                dVar33 = dVar32;\n                if (0 < (int)local_74) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar27 <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar33 = 0.0;\n                }\n                else {\n                  if (dVar33 < dVar27) goto LAB_001c8b24;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (dVar26 < dVar33) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8850:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < dVar25) goto LAB_001c8a44;\n                  if (dVar33 <= dVar26) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar14 = 0x7ffffdff;\n                }\n                else if (dVar25 <= dVar33) {\n                  if (dVar33 <= dVar31) goto LAB_001c8abc;\n                  iVar14 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar14 = -0x7ffffdff;\n                }\n              }\n              unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n              param_2 = (undefined4 *******)((int)param_1[0x8c] + iVar15);\n              local_6c = unaff_s8;\n              local_64 = param_2;\n              iVar15 = (*(code *)PTR_CropImage_003a90b8)(param_1,unaff_s6,param_3);\n              if (iVar15 != 0) {\n                (*(code *)PTR_AppendImageToList_003a9880)(&local_80,iVar15);\n              }\n            } while (dVar32 < dVar34);\n          }" ({ "{") (expression_statement "dVar26 = *(double *)((int)unaff_s3 + 0x4788);" (assignment_expression "dVar26 = *(double *)((int)unaff_s3 + 0x4788)" (identifier "dVar26") (= "=") (pointer_expression "*(double *)((int)unaff_s3 + 0x4788)" (* "*") (cast_expression "(double *)((int)unaff_s3 + 0x4788)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)unaff_s3 + 0x4788)" (( "(") (binary_expression "(int)unaff_s3 + 0x4788" (cast_expression "(int)unaff_s3" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "unaff_s3")) (+ "+") (number_literal "0x4788")) () ")"))))) (; ";")) (expression_statement "unaff_s6 = &local_6c;" (assignment_expression "unaff_s6 = &local_6c" (identifier "unaff_s6") (= "=") (pointer_expression "&local_6c" (& "&") (identifier "local_6c"))) (; ";")) (expression_statement "dVar27 = *(double *)((int)unaff_s3 + 0x4780);" (assignment_expression "dVar27 = *(double *)((int)unaff_s3 + 0x4780)" (identifier "dVar27") (= "=") (pointer_expression "*(double *)((int)unaff_s3 + 0x4780)" (* "*") (cast_expression "(double *)((int)unaff_s3 + 0x4780)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)unaff_s3 + 0x4780)" (( "(") (binary_expression "(int)unaff_s3 + 0x4780" (cast_expression "(int)unaff_s3" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "unaff_s3")) (+ "+") (number_literal "0x4780")) () ")"))))) (; ";")) (do_statement "do {\n              unaff_s7 = local_74;\n              if (unaff_s4 == (undefined4 ******)0x0) {\n                dVar33 = dVar32;\n                if ((int)local_74 < 1) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }\nLAB_001c8b04:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;\nLAB_001c8708:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8700:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar33 = 0.0;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8768:\n                  dVar33 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar33 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n              }\n              else {\n                dVar33 = dVar32;\n                if (0 < (int)local_74) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar27 <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar33 = 0.0;\n                }\n                else {\n                  if (dVar33 < dVar27) goto LAB_001c8b24;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (dVar26 < dVar33) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8850:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < dVar25) goto LAB_001c8a44;\n                  if (dVar33 <= dVar26) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar14 = 0x7ffffdff;\n                }\n                else if (dVar25 <= dVar33) {\n                  if (dVar33 <= dVar31) goto LAB_001c8abc;\n                  iVar14 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar14 = -0x7ffffdff;\n                }\n              }\n              unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n              param_2 = (undefined4 *******)((int)param_1[0x8c] + iVar15);\n              local_6c = unaff_s8;\n              local_64 = param_2;\n              iVar15 = (*(code *)PTR_CropImage_003a90b8)(param_1,unaff_s6,param_3);\n              if (iVar15 != 0) {\n                (*(code *)PTR_AppendImageToList_003a9880)(&local_80,iVar15);\n              }\n            } while (dVar32 < dVar34);" (do "do") (compound_statement "{\n              unaff_s7 = local_74;\n              if (unaff_s4 == (undefined4 ******)0x0) {\n                dVar33 = dVar32;\n                if ((int)local_74 < 1) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }\nLAB_001c8b04:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;\nLAB_001c8708:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8700:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar33 = 0.0;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8768:\n                  dVar33 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar33 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n              }\n              else {\n                dVar33 = dVar32;\n                if (0 < (int)local_74) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar27 <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar33 = 0.0;\n                }\n                else {\n                  if (dVar33 < dVar27) goto LAB_001c8b24;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (dVar26 < dVar33) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8850:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < dVar25) goto LAB_001c8a44;\n                  if (dVar33 <= dVar26) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar14 = 0x7ffffdff;\n                }\n                else if (dVar25 <= dVar33) {\n                  if (dVar33 <= dVar31) goto LAB_001c8abc;\n                  iVar14 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar14 = -0x7ffffdff;\n                }\n              }\n              unaff_s8 = (undefined4 *******)(iVar14 - iVar15);\n              param_2 = (undefined4 *******)((int)param_1[0x8c] + iVar15);\n              local_6c = unaff_s8;\n              local_64 = param_2;\n              iVar15 = (*(code *)PTR_CropImage_003a90b8)(param_1,unaff_s6,param_3);\n              if (iVar15 != 0) {\n                (*(code *)PTR_AppendImageToList_003a9880)(&local_80,iVar15);\n              }\n            }" ({ "{") (expression_statement "unaff_s7 = local_74;" (assignment_expression "unaff_s7 = local_74" (identifier "unaff_s7") (= "=") (identifier "local_74")) (; ";")) (if_statement "if (unaff_s4 == (undefined4 ******)0x0) {\n                dVar33 = dVar32;\n                if ((int)local_74 < 1) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }\nLAB_001c8b04:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;\nLAB_001c8708:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8700:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar33 = 0.0;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8768:\n                  dVar33 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar33 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n              }\n              else {\n                dVar33 = dVar32;\n                if (0 < (int)local_74) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar27 <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar33 = 0.0;\n                }\n                else {\n                  if (dVar33 < dVar27) goto LAB_001c8b24;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (dVar26 < dVar33) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8850:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < dVar25) goto LAB_001c8a44;\n                  if (dVar33 <= dVar26) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar14 = 0x7ffffdff;\n                }\n                else if (dVar25 <= dVar33) {\n                  if (dVar33 <= dVar31) goto LAB_001c8abc;\n                  iVar14 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar14 = -0x7ffffdff;\n                }\n              }" (if "if") (parenthesized_expression "(unaff_s4 == (undefined4 ******)0x0)" (( "(") (binary_expression "unaff_s4 == (undefined4 ******)0x0" (identifier "unaff_s4") (== "==") (cast_expression "(undefined4 ******)0x0" (( "(") (type_descriptor "undefined4 ******" (type_identifier "undefined4") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n                dVar33 = dVar32;\n                if ((int)local_74 < 1) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }\nLAB_001c8b04:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;\nLAB_001c8708:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8700:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar33 = 0.0;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8768:\n                  dVar33 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar33 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n              }" ({ "{") (expression_statement "dVar33 = dVar32;" (assignment_expression "dVar33 = dVar32" (identifier "dVar33") (= "=") (identifier "dVar32")) (; ";")) (if_statement "if ((int)local_74 < 1) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }" (if "if") (parenthesized_expression "((int)local_74 < 1)" (( "(") (binary_expression "(int)local_74 < 1" (cast_expression "(int)local_74" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_74")) (< "<") (number_literal "1")) () ")")) (compound_statement "{\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }" ({ "{") (expression_statement "dVar33 = dVar32 - (double)(int)local_74;" (assignment_expression "dVar33 = dVar32 - (double)(int)local_74" (identifier "dVar33") (= "=") (binary_expression "dVar32 - (double)(int)local_74" (identifier "dVar32") (- "-") (cast_expression "(double)(int)local_74" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (cast_expression "(int)local_74" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_74"))))) (; ";")) (} "}"))) (expression_statement "dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);" (assignment_expression "dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33)" (identifier "dVar28") (= "=") (cast_expression "(double)(*(code *)PTR_floor_003a9670)(dVar33)" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (call_expression "(*(code *)PTR_floor_003a9670)(dVar33)" (parenthesized_expression "(*(code *)PTR_floor_003a9670)" (( "(") (pointer_expression "*(code *)PTR_floor_003a9670" (* "*") (cast_expression "(code *)PTR_floor_003a9670" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_floor_003a9670"))) () ")")) (argument_list "(dVar33)" (( "(") (identifier "dVar33") () ")"))))) (; ";")) (expression_statement "dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);" (assignment_expression "dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33)" (identifier "dVar29") (= "=") (cast_expression "(double)(*(code *)PTR_ceil_003a8c20)(dVar33)" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (call_expression "(*(code *)PTR_ceil_003a8c20)(dVar33)" (parenthesized_expression "(*(code *)PTR_ceil_003a8c20)" (( "(") (pointer_expression "*(code *)PTR_ceil_003a8c20" (* "*") (cast_expression "(code *)PTR_ceil_003a8c20" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_ceil_003a8c20"))) () ")")) (argument_list "(dVar33)" (( "(") (identifier "dVar33") () ")"))))) (; ";")) (if_statement "if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }\nLAB_001c8b04:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;\nLAB_001c8708:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8700:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar33 = 0.0;\n                }" (if "if") (parenthesized_expression "(dVar33 - dVar28 < dVar29 - dVar33)" (( "(") (binary_expression "dVar33 - dVar28 < dVar29 - dVar33" (binary_expression "dVar33 - dVar28" (identifier "dVar33") (- "-") (identifier "dVar28")) (< "<") (binary_expression "dVar29 - dVar33" (identifier "dVar29") (- "-") (identifier "dVar33"))) () ")")) (compound_statement "{\n                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }\nLAB_001c8b04:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;\nLAB_001c8708:\n                  dVar33 = (double)(int)unaff_s7;\n                }" ({ "{") (if_statement "if (*(double *)((int)unaff_s3 + 0x4780) <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }" (if "if") (parenthesized_expression "(*(double *)((int)unaff_s3 + 0x4780) <= dVar33)" (( "(") (binary_expression "*(double *)((int)unaff_s3 + 0x4780) <= dVar33" (pointer_expression "*(double *)((int)unaff_s3 + 0x4780)" (* "*") (cast_expression "(double *)((int)unaff_s3 + 0x4780)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)unaff_s3 + 0x4780)" (( "(") (binary_expression "(int)unaff_s3 + 0x4780" (cast_expression "(int)unaff_s3" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "unaff_s3")) (+ "+") (number_literal "0x4780")) () ")")))) (<= "<=") (identifier "dVar33")) () ")")) (compound_statement "{\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;\nLAB_001c8c78:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8700;\n                  }" ({ "{") (expression_statement "pcVar23 = (code *)PTR_floor_003a9670;" (assignment_expression "pcVar23 = (code *)PTR_floor_003a9670" (identifier "pcVar23") (= "=") (cast_expression "(code *)PTR_floor_003a9670" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_floor_003a9670"))) (; ";")) (if_statement "if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;" (if "if") (parenthesized_expression "(dVar33 <= *(double *)((int)unaff_s3 + 0x4788))" (( "(") (binary_expression "dVar33 <= *(double *)((int)unaff_s3 + 0x4788)" (identifier "dVar33") (<= "<=") (pointer_expression "*(double *)((int)unaff_s3 + 0x4788)" (* "*") (cast_expression "(double *)((int)unaff_s3 + 0x4788)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)unaff_s3 + 0x4788)" (( "(") (binary_expression "(int)unaff_s3 + 0x4788" (cast_expression "(int)unaff_s3" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "unaff_s3")) (+ "+") (number_literal "0x4788")) () ")"))))) () ")")) (goto_statement "goto LAB_001c86e8;" (goto "goto") (statement_identifier "LAB_001c86e8") (; ";"))) (labeled_statement "LAB_001c8c78:\n                    iVar15 = 0x7ffffdff;" (statement_identifier "LAB_001c8c78") (: ":") (expression_statement "iVar15 = 0x7ffffdff;" (assignment_expression "iVar15 = 0x7ffffdff" (identifier "iVar15") (= "=") (number_literal "0x7ffffdff")) (; ";"))) (goto_statement "goto LAB_001c8700;" (goto "goto") (statement_identifier "LAB_001c8700") (; ";")) (} "}"))) (labeled_statement "LAB_001c8b04:\n                  dVar32 = dVar32 + dVar35;" (statement_identifier "LAB_001c8b04") (: ":") (expression_statement "dVar32 = dVar32 + dVar35;" (assignment_expression "dVar32 = dVar32 + dVar35" (identifier "dVar32") (= "=") (binary_expression "dVar32 + dVar35" (identifier "dVar32") (+ "+") (identifier "dVar35"))) (; ";"))) (expression_statement "iVar15 = -0x7ffffdff;" (assignment_expression "iVar15 = -0x7ffffdff" (identifier "iVar15") (= "=") (number_literal "-0x7ffffdff")) (; ";")) (if_statement "if ((int)unaff_s7 < 0) goto LAB_001c8b14;" (if "if") (parenthesized_expression "((int)unaff_s7 < 0)" (( "(") (binary_expression "(int)unaff_s7 < 0" (cast_expression "(int)unaff_s7" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "unaff_s7")) (< "<") (number_literal "0")) () ")")) (goto_statement "goto LAB_001c8b14;" (goto "goto") (statement_identifier "LAB_001c8b14") (; ";"))) (labeled_statement "LAB_001c8708:\n                  dVar33 = (double)(int)unaff_s7;" (statement_identifier "LAB_001c8708") (: ":") (expression_statement "dVar33 = (double)(int)unaff_s7;" (assignment_expression "dVar33 = (double)(int)unaff_s7" (identifier "dVar33") (= "=") (cast_expression "(double)(int)unaff_s7" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (cast_expression "(int)unaff_s7" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "unaff_s7")))) (; ";"))) (} "}")) (else_clause "else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8700:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar33 = 0.0;\n                }" (else "else") (compound_statement "{\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c8c78;\nLAB_001c86e8:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8700:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8708;\nLAB_001c8b14:\n                  dVar33 = 0.0;\n                }" ({ "{") (if_statement "if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;" (if "if") (parenthesized_expression "(dVar33 < *(double *)((int)unaff_s3 + 0x4780))" (( "(") (binary_expression "dVar33 < *(double *)((int)unaff_s3 + 0x4780)" (identifier "dVar33") (< "<") (pointer_expression "*(double *)((int)unaff_s3 + 0x4780)" (* "*") (cast_expression "(double *)((int)unaff_s3 + 0x4780)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)unaff_s3 + 0x4780)" (( "(") (binary_expression "(int)unaff_s3 + 0x4780" (cast_expression "(int)unaff_s3" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "unaff_s3")) (+ "+") (number_literal "0x4780")) () ")"))))) () ")")) (goto_statement "goto LAB_001c8b04;" (goto "goto") (statement_identifier "LAB_001c8b04") (; ";"))) (expression_statement "pcVar23 = (code *)PTR_ceil_003a8c20;" (assignment_expression "pcVar23 = (code *)PTR_ceil_003a8c20" (identifier "pcVar23") (= "=") (cast_expression "(code *)PTR_ceil_003a8c20" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_ceil_003a8c20"))) (; ";")) (if_statement "if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c8c78;" (if "if") (parenthesized_expression "(*(double *)((int)unaff_s3 + 0x4788) < dVar33)" (( "(") (binary_expression "*(double *)((int)unaff_s3 + 0x4788) < dVar33" (pointer_expression "*(double *)((int)unaff_s3 + 0x4788)" (* "*") (cast_expression "(double *)((int)unaff_s3 + 0x4788)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)unaff_s3 + 0x4788)" (( "(") (binary_expression "(int)unaff_s3 + 0x4788" (cast_expression "(int)unaff_s3" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "unaff_s3")) (+ "+") (number_literal "0x4788")) () ")")))) (< "<") (identifier "dVar33")) () ")")) (goto_statement "goto LAB_001c8c78;" (goto "goto") (statement_identifier "LAB_001c8c78") (; ";"))) (labeled_statement "LAB_001c86e8:\n                  dVar33 = (double)(*pcVar23)(dVar33);" (statement_identifier "LAB_001c86e8") (: ":") (expression_statement "dVar33 = (double)(*pcVar23)(dVar33);" (assignment_expression "dVar33 = (double)(*pcVar23)(dVar33)" (identifier "dVar33") (= "=") (cast_expression "(double)(*pcVar23)(dVar33)" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (call_expression "(*pcVar23)(dVar33)" (parenthesized_expression "(*pcVar23)" (( "(") (pointer_expression "*pcVar23" (* "*") (identifier "pcVar23")) () ")")) (argument_list "(dVar33)" (( "(") (identifier "dVar33") () ")"))))) (; ";"))) (expression_statement "iVar15 = (int)dVar33;" (assignment_expression "iVar15 = (int)dVar33" (identifier "iVar15") (= "=") (cast_expression "(int)dVar33" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "dVar33"))) (; ";")) (labeled_statement "LAB_001c8700:\n                  dVar32 = dVar32 + dVar35;" (statement_identifier "LAB_001c8700") (: ":") (expression_statement "dVar32 = dVar32 + dVar35;" (assignment_expression "dVar32 = dVar32 + dVar35" (identifier "dVar32") (= "=") (binary_expression "dVar32 + dVar35" (identifier "dVar32") (+ "+") (identifier "dVar35"))) (; ";"))) (if_statement "if (-1 < (int)unaff_s7) goto LAB_001c8708;" (if "if") (parenthesized_expression "(-1 < (int)unaff_s7)" (( "(") (binary_expression "-1 < (int)unaff_s7" (number_literal "-1") (< "<") (cast_expression "(int)unaff_s7" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "unaff_s7"))) () ")")) (goto_statement "goto LAB_001c8708;" (goto "goto") (statement_identifier "LAB_001c8708") (; ";"))) (labeled_statement "LAB_001c8b14:\n                  dVar33 = 0.0;" (statement_identifier "LAB_001c8b14") (: ":") (expression_statement "dVar33 = 0.0;" (assignment_expression "dVar33 = 0.0" (identifier "dVar33") (= "=") (number_literal "0.0")) (; ";"))) (} "}")))) (expression_statement "dVar33 = dVar32 + dVar33;" (assignment_expression "dVar33 = dVar32 + dVar33" (identifier "dVar33") (= "=") (binary_expression "dVar32 + dVar33" (identifier "dVar32") (+ "+") (identifier "dVar33"))) (; ";")) (expression_statement "dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);" (assignment_expression "dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33)" (identifier "dVar28") (= "=") (cast_expression "(double)(*(code *)PTR_floor_003a9670)(dVar33)" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (call_expression "(*(code *)PTR_floor_003a9670)(dVar33)" (parenthesized_expression "(*(code *)PTR_floor_003a9670)" (( "(") (pointer_expression "*(code *)PTR_floor_003a9670" (* "*") (cast_expression "(code *)PTR_floor_003a9670" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_floor_003a9670"))) () ")")) (argument_list "(dVar33)" (( "(") (identifier "dVar33") () ")"))))) (; ";")) (expression_statement "dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);" (assignment_expression "dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33)" (identifier "dVar29") (= "=") (cast_expression "(double)(*(code *)PTR_ceil_003a8c20)(dVar33)" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (call_expression "(*(code *)PTR_ceil_003a8c20)(dVar33)" (parenthesized_expression "(*(code *)PTR_ceil_003a8c20)" (( "(") (pointer_expression "*(code *)PTR_ceil_003a8c20" (* "*") (cast_expression "(code *)PTR_ceil_003a8c20" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_ceil_003a8c20"))) () ")")) (argument_list "(dVar33)" (( "(") (identifier "dVar33") () ")"))))) (; ";")) (if_statement "if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8768:\n                  dVar33 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                  iVar14 = (int)dVar33;\n                }\n                else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar33 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                  iVar14 = (int)dVar33;\n                }" (if "if") (parenthesized_expression "(dVar33 - dVar28 < dVar29 - dVar33)" (( "(") (binary_expression "dVar33 - dVar28 < dVar29 - dVar33" (binary_expression "dVar33 - dVar28" (identifier "dVar33") (- "-") (identifier "dVar28")) (< "<") (binary_expression "dVar29 - dVar33" (identifier "dVar29") (- "-") (identifier "dVar33"))) () ")")) (compound_statement "{\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8768:\n                  dVar33 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                  iVar14 = (int)dVar33;\n                }" ({ "{") (if_statement "if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;" (if "if") (parenthesized_expression "(dVar33 < *(double *)((int)unaff_s3 + 0x4780))" (( "(") (binary_expression "dVar33 < *(double *)((int)unaff_s3 + 0x4780)" (identifier "dVar33") (< "<") (pointer_expression "*(double *)((int)unaff_s3 + 0x4780)" (* "*") (cast_expression "(double *)((int)unaff_s3 + 0x4780)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)unaff_s3 + 0x4780)" (( "(") (binary_expression "(int)unaff_s3 + 0x4780" (cast_expression "(int)unaff_s3" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "unaff_s3")) (+ "+") (number_literal "0x4780")) () ")"))))) () ")")) (goto_statement "goto LAB_001c8a44;" (goto "goto") (statement_identifier "LAB_001c8a44") (; ";"))) (if_statement "if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;" (if "if") (parenthesized_expression "(*(double *)((int)unaff_s3 + 0x4788) < dVar33)" (( "(") (binary_expression "*(double *)((int)unaff_s3 + 0x4788) < dVar33" (pointer_expression "*(double *)((int)unaff_s3 + 0x4788)" (* "*") (cast_expression "(double *)((int)unaff_s3 + 0x4788)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)unaff_s3 + 0x4788)" (( "(") (binary_expression "(int)unaff_s3 + 0x4788" (cast_expression "(int)unaff_s3" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "unaff_s3")) (+ "+") (number_literal "0x4788")) () ")")))) (< "<") (identifier "dVar33")) () ")")) (goto_statement "goto LAB_001c88b8;" (goto "goto") (statement_identifier "LAB_001c88b8") (; ";"))) (labeled_statement "LAB_001c8768:\n                  dVar33 = (double)(*(code *)PTR_floor_003a9670)(dVar33);" (statement_identifier "LAB_001c8768") (: ":") (expression_statement "dVar33 = (double)(*(code *)PTR_floor_003a9670)(dVar33);" (assignment_expression "dVar33 = (double)(*(code *)PTR_floor_003a9670)(dVar33)" (identifier "dVar33") (= "=") (cast_expression "(double)(*(code *)PTR_floor_003a9670)(dVar33)" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (call_expression "(*(code *)PTR_floor_003a9670)(dVar33)" (parenthesized_expression "(*(code *)PTR_floor_003a9670)" (( "(") (pointer_expression "*(code *)PTR_floor_003a9670" (* "*") (cast_expression "(code *)PTR_floor_003a9670" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_floor_003a9670"))) () ")")) (argument_list "(dVar33)" (( "(") (identifier "dVar33") () ")"))))) (; ";"))) (expression_statement "iVar14 = (int)dVar33;" (assignment_expression "iVar14 = (int)dVar33" (identifier "iVar14") (= "=") (cast_expression "(int)dVar33" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "dVar33"))) (; ";")) (} "}")) (else_clause "else {\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar33 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                  iVar14 = (int)dVar33;\n                }" (else "else") (compound_statement "{\n                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;\n                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;\nLAB_001c8abc:\n                  dVar33 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                  iVar14 = (int)dVar33;\n                }" ({ "{") (if_statement "if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;" (if "if") (parenthesized_expression "(dVar33 < *(double *)((int)unaff_s3 + 0x4780))" (( "(") (binary_expression "dVar33 < *(double *)((int)unaff_s3 + 0x4780)" (identifier "dVar33") (< "<") (pointer_expression "*(double *)((int)unaff_s3 + 0x4780)" (* "*") (cast_expression "(double *)((int)unaff_s3 + 0x4780)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)unaff_s3 + 0x4780)" (( "(") (binary_expression "(int)unaff_s3 + 0x4780" (cast_expression "(int)unaff_s3" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "unaff_s3")) (+ "+") (number_literal "0x4780")) () ")"))))) () ")")) (goto_statement "goto LAB_001c8a44;" (goto "goto") (statement_identifier "LAB_001c8a44") (; ";"))) (if_statement "if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;" (if "if") (parenthesized_expression "(*(double *)((int)unaff_s3 + 0x4788) < dVar33)" (( "(") (binary_expression "*(double *)((int)unaff_s3 + 0x4788) < dVar33" (pointer_expression "*(double *)((int)unaff_s3 + 0x4788)" (* "*") (cast_expression "(double *)((int)unaff_s3 + 0x4788)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)unaff_s3 + 0x4788)" (( "(") (binary_expression "(int)unaff_s3 + 0x4788" (cast_expression "(int)unaff_s3" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "unaff_s3")) (+ "+") (number_literal "0x4788")) () ")")))) (< "<") (identifier "dVar33")) () ")")) (goto_statement "goto LAB_001c88b8;" (goto "goto") (statement_identifier "LAB_001c88b8") (; ";"))) (labeled_statement "LAB_001c8abc:\n                  dVar33 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);" (statement_identifier "LAB_001c8abc") (: ":") (expression_statement "dVar33 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);" (assignment_expression "dVar33 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33)" (identifier "dVar33") (= "=") (cast_expression "(double)(*(code *)PTR_ceil_003a8c20)(dVar33)" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (call_expression "(*(code *)PTR_ceil_003a8c20)(dVar33)" (parenthesized_expression "(*(code *)PTR_ceil_003a8c20)" (( "(") (pointer_expression "*(code *)PTR_ceil_003a8c20" (* "*") (cast_expression "(code *)PTR_ceil_003a8c20" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_ceil_003a8c20"))) () ")")) (argument_list "(dVar33)" (( "(") (identifier "dVar33") () ")"))))) (; ";"))) (expression_statement "iVar14 = (int)dVar33;" (assignment_expression "iVar14 = (int)dVar33" (identifier "iVar14") (= "=") (cast_expression "(int)dVar33" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "dVar33"))) (; ";")) (} "}")))) (} "}")) (else_clause "else {\n                dVar33 = dVar32;\n                if (0 < (int)local_74) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar27 <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar33 = 0.0;\n                }\n                else {\n                  if (dVar33 < dVar27) goto LAB_001c8b24;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (dVar26 < dVar33) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8850:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < dVar25) goto LAB_001c8a44;\n                  if (dVar33 <= dVar26) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar14 = 0x7ffffdff;\n                }\n                else if (dVar25 <= dVar33) {\n                  if (dVar33 <= dVar31) goto LAB_001c8abc;\n                  iVar14 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar14 = -0x7ffffdff;\n                }\n              }" (else "else") (compound_statement "{\n                dVar33 = dVar32;\n                if (0 < (int)local_74) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar27 <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar33 = 0.0;\n                }\n                else {\n                  if (dVar33 < dVar27) goto LAB_001c8b24;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (dVar26 < dVar33) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8850:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar33 = (double)(int)unaff_s7;\n                }\n                dVar33 = dVar32 + dVar33;\n                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);\n                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);\n                if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < dVar25) goto LAB_001c8a44;\n                  if (dVar33 <= dVar26) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar14 = 0x7ffffdff;\n                }\n                else if (dVar25 <= dVar33) {\n                  if (dVar33 <= dVar31) goto LAB_001c8abc;\n                  iVar14 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar14 = -0x7ffffdff;\n                }\n              }" ({ "{") (expression_statement "dVar33 = dVar32;" (assignment_expression "dVar33 = dVar32" (identifier "dVar33") (= "=") (identifier "dVar32")) (; ";")) (if_statement "if (0 < (int)local_74) {\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }" (if "if") (parenthesized_expression "(0 < (int)local_74)" (( "(") (binary_expression "0 < (int)local_74" (number_literal "0") (< "<") (cast_expression "(int)local_74" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_74"))) () ")")) (compound_statement "{\n                  dVar33 = dVar32 - (double)(int)local_74;\n                }" ({ "{") (expression_statement "dVar33 = dVar32 - (double)(int)local_74;" (assignment_expression "dVar33 = dVar32 - (double)(int)local_74" (identifier "dVar33") (= "=") (binary_expression "dVar32 - (double)(int)local_74" (identifier "dVar32") (- "-") (cast_expression "(double)(int)local_74" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (cast_expression "(int)local_74" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_74"))))) (; ";")) (} "}"))) (expression_statement "dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);" (assignment_expression "dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33)" (identifier "dVar28") (= "=") (cast_expression "(double)(*(code *)PTR_floor_003a9670)(dVar33)" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (call_expression "(*(code *)PTR_floor_003a9670)(dVar33)" (parenthesized_expression "(*(code *)PTR_floor_003a9670)" (( "(") (pointer_expression "*(code *)PTR_floor_003a9670" (* "*") (cast_expression "(code *)PTR_floor_003a9670" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_floor_003a9670"))) () ")")) (argument_list "(dVar33)" (( "(") (identifier "dVar33") () ")"))))) (; ";")) (expression_statement "dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);" (assignment_expression "dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33)" (identifier "dVar29") (= "=") (cast_expression "(double)(*(code *)PTR_ceil_003a8c20)(dVar33)" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (call_expression "(*(code *)PTR_ceil_003a8c20)(dVar33)" (parenthesized_expression "(*(code *)PTR_ceil_003a8c20)" (( "(") (pointer_expression "*(code *)PTR_ceil_003a8c20" (* "*") (cast_expression "(code *)PTR_ceil_003a8c20" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_ceil_003a8c20"))) () ")")) (argument_list "(dVar33)" (( "(") (identifier "dVar33") () ")"))))) (; ";")) (if_statement "if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar27 <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar33 = 0.0;\n                }\n                else {\n                  if (dVar33 < dVar27) goto LAB_001c8b24;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (dVar26 < dVar33) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8850:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar33 = (double)(int)unaff_s7;\n                }" (if "if") (parenthesized_expression "(dVar33 - dVar28 < dVar29 - dVar33)" (( "(") (binary_expression "dVar33 - dVar28 < dVar29 - dVar33" (binary_expression "dVar33 - dVar28" (identifier "dVar33") (- "-") (identifier "dVar28")) (< "<") (binary_expression "dVar29 - dVar33" (identifier "dVar29") (- "-") (identifier "dVar33"))) () ")")) (compound_statement "{\n                  if (dVar27 <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }\nLAB_001c8b24:\n                  dVar32 = dVar32 + dVar35;\n                  iVar15 = -0x7ffffdff;\n                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;\nLAB_001c8858:\n                  dVar33 = 0.0;\n                }" ({ "{") (if_statement "if (dVar27 <= dVar33) {\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }" (if "if") (parenthesized_expression "(dVar27 <= dVar33)" (( "(") (binary_expression "dVar27 <= dVar33" (identifier "dVar27") (<= "<=") (identifier "dVar33")) () ")")) (compound_statement "{\n                    pcVar23 = (code *)PTR_floor_003a9670;\n                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;\nLAB_001c8c68:\n                    iVar15 = 0x7ffffdff;\n                    goto LAB_001c8850;\n                  }" ({ "{") (expression_statement "pcVar23 = (code *)PTR_floor_003a9670;" (assignment_expression "pcVar23 = (code *)PTR_floor_003a9670" (identifier "pcVar23") (= "=") (cast_expression "(code *)PTR_floor_003a9670" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_floor_003a9670"))) (; ";")) (if_statement "if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;" (if "if") (parenthesized_expression "(dVar33 <= *(double *)((int)unaff_s3 + 0x4788))" (( "(") (binary_expression "dVar33 <= *(double *)((int)unaff_s3 + 0x4788)" (identifier "dVar33") (<= "<=") (pointer_expression "*(double *)((int)unaff_s3 + 0x4788)" (* "*") (cast_expression "(double *)((int)unaff_s3 + 0x4788)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)unaff_s3 + 0x4788)" (( "(") (binary_expression "(int)unaff_s3 + 0x4788" (cast_expression "(int)unaff_s3" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "unaff_s3")) (+ "+") (number_literal "0x4788")) () ")"))))) () ")")) (goto_statement "goto LAB_001c8838;" (goto "goto") (statement_identifier "LAB_001c8838") (; ";"))) (labeled_statement "LAB_001c8c68:\n                    iVar15 = 0x7ffffdff;" (statement_identifier "LAB_001c8c68") (: ":") (expression_statement "iVar15 = 0x7ffffdff;" (assignment_expression "iVar15 = 0x7ffffdff" (identifier "iVar15") (= "=") (number_literal "0x7ffffdff")) (; ";"))) (goto_statement "goto LAB_001c8850;" (goto "goto") (statement_identifier "LAB_001c8850") (; ";")) (} "}"))) (labeled_statement "LAB_001c8b24:\n                  dVar32 = dVar32 + dVar35;" (statement_identifier "LAB_001c8b24") (: ":") (expression_statement "dVar32 = dVar32 + dVar35;" (assignment_expression "dVar32 = dVar32 + dVar35" (identifier "dVar32") (= "=") (binary_expression "dVar32 + dVar35" (identifier "dVar32") (+ "+") (identifier "dVar35"))) (; ";"))) (expression_statement "iVar15 = -0x7ffffdff;" (assignment_expression "iVar15 = -0x7ffffdff" (identifier "iVar15") (= "=") (number_literal "-0x7ffffdff")) (; ";")) (if_statement "if ((int)unaff_s7 < 0) goto LAB_001c8b34;" (if "if") (parenthesized_expression "((int)unaff_s7 < 0)" (( "(") (binary_expression "(int)unaff_s7 < 0" (cast_expression "(int)unaff_s7" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "unaff_s7")) (< "<") (number_literal "0")) () ")")) (goto_statement "goto LAB_001c8b34;" (goto "goto") (statement_identifier "LAB_001c8b34") (; ";"))) (labeled_statement "LAB_001c8858:\n                  dVar33 = 0.0;" (statement_identifier "LAB_001c8858") (: ":") (expression_statement "dVar33 = 0.0;" (assignment_expression "dVar33 = 0.0" (identifier "dVar33") (= "=") (number_literal "0.0")) (; ";"))) (} "}")) (else_clause "else {\n                  if (dVar33 < dVar27) goto LAB_001c8b24;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (dVar26 < dVar33) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8850:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar33 = (double)(int)unaff_s7;\n                }" (else "else") (compound_statement "{\n                  if (dVar33 < dVar27) goto LAB_001c8b24;\n                  pcVar23 = (code *)PTR_ceil_003a8c20;\n                  if (dVar26 < dVar33) goto LAB_001c8c68;\nLAB_001c8838:\n                  dVar33 = (double)(*pcVar23)(dVar33);\n                  iVar15 = (int)dVar33;\nLAB_001c8850:\n                  dVar32 = dVar32 + dVar35;\n                  if (-1 < (int)unaff_s7) goto LAB_001c8858;\nLAB_001c8b34:\n                  dVar33 = (double)(int)unaff_s7;\n                }" ({ "{") (if_statement "if (dVar33 < dVar27) goto LAB_001c8b24;" (if "if") (parenthesized_expression "(dVar33 < dVar27)" (( "(") (binary_expression "dVar33 < dVar27" (identifier "dVar33") (< "<") (identifier "dVar27")) () ")")) (goto_statement "goto LAB_001c8b24;" (goto "goto") (statement_identifier "LAB_001c8b24") (; ";"))) (expression_statement "pcVar23 = (code *)PTR_ceil_003a8c20;" (assignment_expression "pcVar23 = (code *)PTR_ceil_003a8c20" (identifier "pcVar23") (= "=") (cast_expression "(code *)PTR_ceil_003a8c20" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_ceil_003a8c20"))) (; ";")) (if_statement "if (dVar26 < dVar33) goto LAB_001c8c68;" (if "if") (parenthesized_expression "(dVar26 < dVar33)" (( "(") (binary_expression "dVar26 < dVar33" (identifier "dVar26") (< "<") (identifier "dVar33")) () ")")) (goto_statement "goto LAB_001c8c68;" (goto "goto") (statement_identifier "LAB_001c8c68") (; ";"))) (labeled_statement "LAB_001c8838:\n                  dVar33 = (double)(*pcVar23)(dVar33);" (statement_identifier "LAB_001c8838") (: ":") (expression_statement "dVar33 = (double)(*pcVar23)(dVar33);" (assignment_expression "dVar33 = (double)(*pcVar23)(dVar33)" (identifier "dVar33") (= "=") (cast_expression "(double)(*pcVar23)(dVar33)" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (call_expression "(*pcVar23)(dVar33)" (parenthesized_expression "(*pcVar23)" (( "(") (pointer_expression "*pcVar23" (* "*") (identifier "pcVar23")) () ")")) (argument_list "(dVar33)" (( "(") (identifier "dVar33") () ")"))))) (; ";"))) (expression_statement "iVar15 = (int)dVar33;" (assignment_expression "iVar15 = (int)dVar33" (identifier "iVar15") (= "=") (cast_expression "(int)dVar33" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "dVar33"))) (; ";")) (labeled_statement "LAB_001c8850:\n                  dVar32 = dVar32 + dVar35;" (statement_identifier "LAB_001c8850") (: ":") (expression_statement "dVar32 = dVar32 + dVar35;" (assignment_expression "dVar32 = dVar32 + dVar35" (identifier "dVar32") (= "=") (binary_expression "dVar32 + dVar35" (identifier "dVar32") (+ "+") (identifier "dVar35"))) (; ";"))) (if_statement "if (-1 < (int)unaff_s7) goto LAB_001c8858;" (if "if") (parenthesized_expression "(-1 < (int)unaff_s7)" (( "(") (binary_expression "-1 < (int)unaff_s7" (number_literal "-1") (< "<") (cast_expression "(int)unaff_s7" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "unaff_s7"))) () ")")) (goto_statement "goto LAB_001c8858;" (goto "goto") (statement_identifier "LAB_001c8858") (; ";"))) (labeled_statement "LAB_001c8b34:\n                  dVar33 = (double)(int)unaff_s7;" (statement_identifier "LAB_001c8b34") (: ":") (expression_statement "dVar33 = (double)(int)unaff_s7;" (assignment_expression "dVar33 = (double)(int)unaff_s7" (identifier "dVar33") (= "=") (cast_expression "(double)(int)unaff_s7" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (cast_expression "(int)unaff_s7" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "unaff_s7")))) (; ";"))) (} "}")))) (expression_statement "dVar33 = dVar32 + dVar33;" (assignment_expression "dVar33 = dVar32 + dVar33" (identifier "dVar33") (= "=") (binary_expression "dVar32 + dVar33" (identifier "dVar32") (+ "+") (identifier "dVar33"))) (; ";")) (expression_statement "dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);" (assignment_expression "dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33)" (identifier "dVar28") (= "=") (cast_expression "(double)(*(code *)PTR_floor_003a9670)(dVar33)" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (call_expression "(*(code *)PTR_floor_003a9670)(dVar33)" (parenthesized_expression "(*(code *)PTR_floor_003a9670)" (( "(") (pointer_expression "*(code *)PTR_floor_003a9670" (* "*") (cast_expression "(code *)PTR_floor_003a9670" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_floor_003a9670"))) () ")")) (argument_list "(dVar33)" (( "(") (identifier "dVar33") () ")"))))) (; ";")) (expression_statement "dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);" (assignment_expression "dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33)" (identifier "dVar29") (= "=") (cast_expression "(double)(*(code *)PTR_ceil_003a8c20)(dVar33)" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (call_expression "(*(code *)PTR_ceil_003a8c20)(dVar33)" (parenthesized_expression "(*(code *)PTR_ceil_003a8c20)" (( "(") (pointer_expression "*(code *)PTR_ceil_003a8c20" (* "*") (cast_expression "(code *)PTR_ceil_003a8c20" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_ceil_003a8c20"))) () ")")) (argument_list "(dVar33)" (( "(") (identifier "dVar33") () ")"))))) (; ";")) (if_statement "if (dVar33 - dVar28 < dVar29 - dVar33) {\n                  if (dVar33 < dVar25) goto LAB_001c8a44;\n                  if (dVar33 <= dVar26) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar14 = 0x7ffffdff;\n                }\n                else if (dVar25 <= dVar33) {\n                  if (dVar33 <= dVar31) goto LAB_001c8abc;\n                  iVar14 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar14 = -0x7ffffdff;\n                }" (if "if") (parenthesized_expression "(dVar33 - dVar28 < dVar29 - dVar33)" (( "(") (binary_expression "dVar33 - dVar28 < dVar29 - dVar33" (binary_expression "dVar33 - dVar28" (identifier "dVar33") (- "-") (identifier "dVar28")) (< "<") (binary_expression "dVar29 - dVar33" (identifier "dVar29") (- "-") (identifier "dVar33"))) () ")")) (compound_statement "{\n                  if (dVar33 < dVar25) goto LAB_001c8a44;\n                  if (dVar33 <= dVar26) goto LAB_001c8768;\nLAB_001c88b8:\n                  iVar14 = 0x7ffffdff;\n                }" ({ "{") (if_statement "if (dVar33 < dVar25) goto LAB_001c8a44;" (if "if") (parenthesized_expression "(dVar33 < dVar25)" (( "(") (binary_expression "dVar33 < dVar25" (identifier "dVar33") (< "<") (identifier "dVar25")) () ")")) (goto_statement "goto LAB_001c8a44;" (goto "goto") (statement_identifier "LAB_001c8a44") (; ";"))) (if_statement "if (dVar33 <= dVar26) goto LAB_001c8768;" (if "if") (parenthesized_expression "(dVar33 <= dVar26)" (( "(") (binary_expression "dVar33 <= dVar26" (identifier "dVar33") (<= "<=") (identifier "dVar26")) () ")")) (goto_statement "goto LAB_001c8768;" (goto "goto") (statement_identifier "LAB_001c8768") (; ";"))) (labeled_statement "LAB_001c88b8:\n                  iVar14 = 0x7ffffdff;" (statement_identifier "LAB_001c88b8") (: ":") (expression_statement "iVar14 = 0x7ffffdff;" (assignment_expression "iVar14 = 0x7ffffdff" (identifier "iVar14") (= "=") (number_literal "0x7ffffdff")) (; ";"))) (} "}")) (else_clause "else if (dVar25 <= dVar33) {\n                  if (dVar33 <= dVar31) goto LAB_001c8abc;\n                  iVar14 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar14 = -0x7ffffdff;\n                }" (else "else") (if_statement "if (dVar25 <= dVar33) {\n                  if (dVar33 <= dVar31) goto LAB_001c8abc;\n                  iVar14 = 0x7ffffdff;\n                }\n                else {\nLAB_001c8a44:\n                  iVar14 = -0x7ffffdff;\n                }" (if "if") (parenthesized_expression "(dVar25 <= dVar33)" (( "(") (binary_expression "dVar25 <= dVar33" (identifier "dVar25") (<= "<=") (identifier "dVar33")) () ")")) (compound_statement "{\n                  if (dVar33 <= dVar31) goto LAB_001c8abc;\n                  iVar14 = 0x7ffffdff;\n                }" ({ "{") (if_statement "if (dVar33 <= dVar31) goto LAB_001c8abc;" (if "if") (parenthesized_expression "(dVar33 <= dVar31)" (( "(") (binary_expression "dVar33 <= dVar31" (identifier "dVar33") (<= "<=") (identifier "dVar31")) () ")")) (goto_statement "goto LAB_001c8abc;" (goto "goto") (statement_identifier "LAB_001c8abc") (; ";"))) (expression_statement "iVar14 = 0x7ffffdff;" (assignment_expression "iVar14 = 0x7ffffdff" (identifier "iVar14") (= "=") (number_literal "0x7ffffdff")) (; ";")) (} "}")) (else_clause "else {\nLAB_001c8a44:\n                  iVar14 = -0x7ffffdff;\n                }" (else "else") (compound_statement "{\nLAB_001c8a44:\n                  iVar14 = -0x7ffffdff;\n                }" ({ "{") (labeled_statement "LAB_001c8a44:\n                  iVar14 = -0x7ffffdff;" (statement_identifier "LAB_001c8a44") (: ":") (expression_statement "iVar14 = -0x7ffffdff;" (assignment_expression "iVar14 = -0x7ffffdff" (identifier "iVar14") (= "=") (number_literal "-0x7ffffdff")) (; ";"))) (} "}")))))) (} "}")))) (expression_statement "unaff_s8 = (undefined4 *******)(iVar14 - iVar15);" (assignment_expression "unaff_s8 = (undefined4 *******)(iVar14 - iVar15)" (identifier "unaff_s8") (= "=") (cast_expression "(undefined4 *******)(iVar14 - iVar15)" (( "(") (type_descriptor "undefined4 *******" (type_identifier "undefined4") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "(iVar14 - iVar15)" (( "(") (binary_expression "iVar14 - iVar15" (identifier "iVar14") (- "-") (identifier "iVar15")) () ")")))) (; ";")) (expression_statement "param_2 = (undefined4 *******)((int)param_1[0x8c] + iVar15);" (assignment_expression "param_2 = (undefined4 *******)((int)param_1[0x8c] + iVar15)" (identifier "param_2") (= "=") (cast_expression "(undefined4 *******)((int)param_1[0x8c] + iVar15)" (( "(") (type_descriptor "undefined4 *******" (type_identifier "undefined4") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "((int)param_1[0x8c] + iVar15)" (( "(") (binary_expression "(int)param_1[0x8c] + iVar15" (cast_expression "(int)param_1[0x8c]" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (subscript_expression "param_1[0x8c]" (identifier "param_1") ([ "[") (number_literal "0x8c") (] "]"))) (+ "+") (identifier "iVar15")) () ")")))) (; ";")) (expression_statement "local_6c = unaff_s8;" (assignment_expression "local_6c = unaff_s8" (identifier "local_6c") (= "=") (identifier "unaff_s8")) (; ";")) (expression_statement "local_64 = param_2;" (assignment_expression "local_64 = param_2" (identifier "local_64") (= "=") (identifier "param_2")) (; ";")) (expression_statement "iVar15 = (*(code *)PTR_CropImage_003a90b8)(param_1,unaff_s6,param_3);" (assignment_expression "iVar15 = (*(code *)PTR_CropImage_003a90b8)(param_1,unaff_s6,param_3)" (identifier "iVar15") (= "=") (call_expression "(*(code *)PTR_CropImage_003a90b8)(param_1,unaff_s6,param_3)" (parenthesized_expression "(*(code *)PTR_CropImage_003a90b8)" (( "(") (pointer_expression "*(code *)PTR_CropImage_003a90b8" (* "*") (cast_expression "(code *)PTR_CropImage_003a90b8" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_CropImage_003a90b8"))) () ")")) (argument_list "(param_1,unaff_s6,param_3)" (( "(") (identifier "param_1") (, ",") (identifier "unaff_s6") (, ",") (identifier "param_3") () ")")))) (; ";")) (if_statement "if (iVar15 != 0) {\n                (*(code *)PTR_AppendImageToList_003a9880)(&local_80,iVar15);\n              }" (if "if") (parenthesized_expression "(iVar15 != 0)" (( "(") (binary_expression "iVar15 != 0" (identifier "iVar15") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n                (*(code *)PTR_AppendImageToList_003a9880)(&local_80,iVar15);\n              }" ({ "{") (expression_statement "(*(code *)PTR_AppendImageToList_003a9880)(&local_80,iVar15);" (call_expression "(*(code *)PTR_AppendImageToList_003a9880)(&local_80,iVar15)" (parenthesized_expression "(*(code *)PTR_AppendImageToList_003a9880)" (( "(") (pointer_expression "*(code *)PTR_AppendImageToList_003a9880" (* "*") (cast_expression "(code *)PTR_AppendImageToList_003a9880" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_AppendImageToList_003a9880"))) () ")")) (argument_list "(&local_80,iVar15)" (( "(") (pointer_expression "&local_80" (& "&") (identifier "local_80")) (, ",") (identifier "iVar15") () ")"))) (; ";")) (} "}"))) (} "}")) (while "while") (parenthesized_expression "(dVar32 < dVar34)" (( "(") (binary_expression "dVar32 < dVar34" (identifier "dVar32") (< "<") (identifier "dVar34")) () ")")) (; ";")) (} "}"))) (expression_statement "unaff_s5 = unaff_s3;" (assignment_expression "unaff_s5 = unaff_s3" (identifier "unaff_s5") (= "=") (identifier "unaff_s3")) (; ";")) (if_statement "if (local_c8 <= dVar30) break;" (if "if") (parenthesized_expression "(local_c8 <= dVar30)" (( "(") (binary_expression "local_c8 <= dVar30" (identifier "local_c8") (<= "<=") (identifier "dVar30")) () ")")) (break_statement "break;" (break "break") (; ";"))) (if_statement "if (unaff_s4 == (undefined4 ******)0x0) goto LAB_001c854c;" (if "if") (parenthesized_expression "(unaff_s4 == (undefined4 ******)0x0)" (( "(") (binary_expression "unaff_s4 == (undefined4 ******)0x0" (identifier "unaff_s4") (== "==") (cast_expression "(undefined4 ******)0x0" (( "(") (type_descriptor "undefined4 ******" (type_identifier "undefined4") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (number_literal "0x0"))) () ")")) (goto_statement "goto LAB_001c854c;" (goto "goto") (statement_identifier "LAB_001c854c") (; ";"))) (labeled_statement "LAB_001c8b70:\n          unaff_s7 = local_70;" (statement_identifier "LAB_001c8b70") (: ":") (expression_statement "unaff_s7 = local_70;" (assignment_expression "unaff_s7 = local_70" (identifier "unaff_s7") (= "=") (identifier "local_70")) (; ";"))) (expression_statement "dVar32 = dVar30;" (assignment_expression "dVar32 = dVar30" (identifier "dVar32") (= "=") (identifier "dVar30")) (; ";")) (if_statement "if (0 < (int)local_70) {\n            dVar32 = dVar30 - (double)(int)local_70;\n          }" (if "if") (parenthesized_expression "(0 < (int)local_70)" (( "(") (binary_expression "0 < (int)local_70" (number_literal "0") (< "<") (cast_expression "(int)local_70" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_70"))) () ")")) (compound_statement "{\n            dVar32 = dVar30 - (double)(int)local_70;\n          }" ({ "{") (expression_statement "dVar32 = dVar30 - (double)(int)local_70;" (assignment_expression "dVar32 = dVar30 - (double)(int)local_70" (identifier "dVar32") (= "=") (binary_expression "dVar30 - (double)(int)local_70" (identifier "dVar30") (- "-") (cast_expression "(double)(int)local_70" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (cast_expression "(int)local_70" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_70"))))) (; ";")) (} "}"))) (expression_statement "dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);" (assignment_expression "dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32)" (identifier "dVar26") (= "=") (cast_expression "(double)(*(code *)PTR_floor_003a9670)(dVar32)" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (call_expression "(*(code *)PTR_floor_003a9670)(dVar32)" (parenthesized_expression "(*(code *)PTR_floor_003a9670)" (( "(") (pointer_expression "*(code *)PTR_floor_003a9670" (* "*") (cast_expression "(code *)PTR_floor_003a9670" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_floor_003a9670"))) () ")")) (argument_list "(dVar32)" (( "(") (identifier "dVar32") () ")"))))) (; ";")) (expression_statement "dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);" (assignment_expression "dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32)" (identifier "dVar27") (= "=") (cast_expression "(double)(*(code *)PTR_ceil_003a8c20)(dVar32)" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (call_expression "(*(code *)PTR_ceil_003a8c20)(dVar32)" (parenthesized_expression "(*(code *)PTR_ceil_003a8c20)" (( "(") (pointer_expression "*(code *)PTR_ceil_003a8c20" (* "*") (cast_expression "(code *)PTR_ceil_003a8c20" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_ceil_003a8c20"))) () ")")) (argument_list "(dVar32)" (( "(") (identifier "dVar32") () ")"))))) (; ";")) (if_statement "if (dVar32 - dVar26 < dVar27 - dVar32) {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d8c;\n            pcVar23 = (code *)PTR_floor_003a9670;\n            if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8d50;\nLAB_001c8bd8:\n            dVar32 = (double)(*pcVar23)(dVar32);\n            iVar15 = (int)dVar32;\nLAB_001c8bf0:\n            dVar30 = dVar30 + local_a0;\n            if (-2 < (int)unaff_s7) goto LAB_001c8c00;\nLAB_001c8d6c:\n            dVar32 = (double)(int)unaff_s7;\n          }\n          else {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d8c:\n              iVar15 = -0x7ffffdff;\n              goto LAB_001c8bf0;\n            }\n            pcVar23 = (code *)PTR_ceil_003a8c20;\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8bd8;\nLAB_001c8d50:\n            iVar15 = 0x7ffffdff;\n            dVar30 = dVar30 + local_a0;\n            if ((int)unaff_s7 < -1) goto LAB_001c8d6c;\nLAB_001c8c00:\n            dVar32 = 0.0;\n          }" (if "if") (parenthesized_expression "(dVar32 - dVar26 < dVar27 - dVar32)" (( "(") (binary_expression "dVar32 - dVar26 < dVar27 - dVar32" (binary_expression "dVar32 - dVar26" (identifier "dVar32") (- "-") (identifier "dVar26")) (< "<") (binary_expression "dVar27 - dVar32" (identifier "dVar27") (- "-") (identifier "dVar32"))) () ")")) (compound_statement "{\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d8c;\n            pcVar23 = (code *)PTR_floor_003a9670;\n            if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8d50;\nLAB_001c8bd8:\n            dVar32 = (double)(*pcVar23)(dVar32);\n            iVar15 = (int)dVar32;\nLAB_001c8bf0:\n            dVar30 = dVar30 + local_a0;\n            if (-2 < (int)unaff_s7) goto LAB_001c8c00;\nLAB_001c8d6c:\n            dVar32 = (double)(int)unaff_s7;\n          }" ({ "{") (if_statement "if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d8c;" (if "if") (parenthesized_expression "(dVar32 < *(double *)((int)unaff_s3 + 0x4780))" (( "(") (binary_expression "dVar32 < *(double *)((int)unaff_s3 + 0x4780)" (identifier "dVar32") (< "<") (pointer_expression "*(double *)((int)unaff_s3 + 0x4780)" (* "*") (cast_expression "(double *)((int)unaff_s3 + 0x4780)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)unaff_s3 + 0x4780)" (( "(") (binary_expression "(int)unaff_s3 + 0x4780" (cast_expression "(int)unaff_s3" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "unaff_s3")) (+ "+") (number_literal "0x4780")) () ")"))))) () ")")) (goto_statement "goto LAB_001c8d8c;" (goto "goto") (statement_identifier "LAB_001c8d8c") (; ";"))) (expression_statement "pcVar23 = (code *)PTR_floor_003a9670;" (assignment_expression "pcVar23 = (code *)PTR_floor_003a9670" (identifier "pcVar23") (= "=") (cast_expression "(code *)PTR_floor_003a9670" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_floor_003a9670"))) (; ";")) (if_statement "if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8d50;" (if "if") (parenthesized_expression "(*(double *)((int)unaff_s3 + 0x4788) < dVar32)" (( "(") (binary_expression "*(double *)((int)unaff_s3 + 0x4788) < dVar32" (pointer_expression "*(double *)((int)unaff_s3 + 0x4788)" (* "*") (cast_expression "(double *)((int)unaff_s3 + 0x4788)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)unaff_s3 + 0x4788)" (( "(") (binary_expression "(int)unaff_s3 + 0x4788" (cast_expression "(int)unaff_s3" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "unaff_s3")) (+ "+") (number_literal "0x4788")) () ")")))) (< "<") (identifier "dVar32")) () ")")) (goto_statement "goto LAB_001c8d50;" (goto "goto") (statement_identifier "LAB_001c8d50") (; ";"))) (labeled_statement "LAB_001c8bd8:\n            dVar32 = (double)(*pcVar23)(dVar32);" (statement_identifier "LAB_001c8bd8") (: ":") (expression_statement "dVar32 = (double)(*pcVar23)(dVar32);" (assignment_expression "dVar32 = (double)(*pcVar23)(dVar32)" (identifier "dVar32") (= "=") (cast_expression "(double)(*pcVar23)(dVar32)" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (call_expression "(*pcVar23)(dVar32)" (parenthesized_expression "(*pcVar23)" (( "(") (pointer_expression "*pcVar23" (* "*") (identifier "pcVar23")) () ")")) (argument_list "(dVar32)" (( "(") (identifier "dVar32") () ")"))))) (; ";"))) (expression_statement "iVar15 = (int)dVar32;" (assignment_expression "iVar15 = (int)dVar32" (identifier "iVar15") (= "=") (cast_expression "(int)dVar32" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "dVar32"))) (; ";")) (labeled_statement "LAB_001c8bf0:\n            dVar30 = dVar30 + local_a0;" (statement_identifier "LAB_001c8bf0") (: ":") (expression_statement "dVar30 = dVar30 + local_a0;" (assignment_expression "dVar30 = dVar30 + local_a0" (identifier "dVar30") (= "=") (binary_expression "dVar30 + local_a0" (identifier "dVar30") (+ "+") (identifier "local_a0"))) (; ";"))) (if_statement "if (-2 < (int)unaff_s7) goto LAB_001c8c00;" (if "if") (parenthesized_expression "(-2 < (int)unaff_s7)" (( "(") (binary_expression "-2 < (int)unaff_s7" (number_literal "-2") (< "<") (cast_expression "(int)unaff_s7" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "unaff_s7"))) () ")")) (goto_statement "goto LAB_001c8c00;" (goto "goto") (statement_identifier "LAB_001c8c00") (; ";"))) (labeled_statement "LAB_001c8d6c:\n            dVar32 = (double)(int)unaff_s7;" (statement_identifier "LAB_001c8d6c") (: ":") (expression_statement "dVar32 = (double)(int)unaff_s7;" (assignment_expression "dVar32 = (double)(int)unaff_s7" (identifier "dVar32") (= "=") (cast_expression "(double)(int)unaff_s7" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (cast_expression "(int)unaff_s7" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "unaff_s7")))) (; ";"))) (} "}")) (else_clause "else {\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d8c:\n              iVar15 = -0x7ffffdff;\n              goto LAB_001c8bf0;\n            }\n            pcVar23 = (code *)PTR_ceil_003a8c20;\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8bd8;\nLAB_001c8d50:\n            iVar15 = 0x7ffffdff;\n            dVar30 = dVar30 + local_a0;\n            if ((int)unaff_s7 < -1) goto LAB_001c8d6c;\nLAB_001c8c00:\n            dVar32 = 0.0;\n          }" (else "else") (compound_statement "{\n            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d8c:\n              iVar15 = -0x7ffffdff;\n              goto LAB_001c8bf0;\n            }\n            pcVar23 = (code *)PTR_ceil_003a8c20;\n            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8bd8;\nLAB_001c8d50:\n            iVar15 = 0x7ffffdff;\n            dVar30 = dVar30 + local_a0;\n            if ((int)unaff_s7 < -1) goto LAB_001c8d6c;\nLAB_001c8c00:\n            dVar32 = 0.0;\n          }" ({ "{") (if_statement "if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {\nLAB_001c8d8c:\n              iVar15 = -0x7ffffdff;\n              goto LAB_001c8bf0;\n            }" (if "if") (parenthesized_expression "(dVar32 < *(double *)((int)unaff_s3 + 0x4780))" (( "(") (binary_expression "dVar32 < *(double *)((int)unaff_s3 + 0x4780)" (identifier "dVar32") (< "<") (pointer_expression "*(double *)((int)unaff_s3 + 0x4780)" (* "*") (cast_expression "(double *)((int)unaff_s3 + 0x4780)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)unaff_s3 + 0x4780)" (( "(") (binary_expression "(int)unaff_s3 + 0x4780" (cast_expression "(int)unaff_s3" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "unaff_s3")) (+ "+") (number_literal "0x4780")) () ")"))))) () ")")) (compound_statement "{\nLAB_001c8d8c:\n              iVar15 = -0x7ffffdff;\n              goto LAB_001c8bf0;\n            }" ({ "{") (labeled_statement "LAB_001c8d8c:\n              iVar15 = -0x7ffffdff;" (statement_identifier "LAB_001c8d8c") (: ":") (expression_statement "iVar15 = -0x7ffffdff;" (assignment_expression "iVar15 = -0x7ffffdff" (identifier "iVar15") (= "=") (number_literal "-0x7ffffdff")) (; ";"))) (goto_statement "goto LAB_001c8bf0;" (goto "goto") (statement_identifier "LAB_001c8bf0") (; ";")) (} "}"))) (expression_statement "pcVar23 = (code *)PTR_ceil_003a8c20;" (assignment_expression "pcVar23 = (code *)PTR_ceil_003a8c20" (identifier "pcVar23") (= "=") (cast_expression "(code *)PTR_ceil_003a8c20" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_ceil_003a8c20"))) (; ";")) (if_statement "if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8bd8;" (if "if") (parenthesized_expression "(dVar32 <= *(double *)((int)unaff_s3 + 0x4788))" (( "(") (binary_expression "dVar32 <= *(double *)((int)unaff_s3 + 0x4788)" (identifier "dVar32") (<= "<=") (pointer_expression "*(double *)((int)unaff_s3 + 0x4788)" (* "*") (cast_expression "(double *)((int)unaff_s3 + 0x4788)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)unaff_s3 + 0x4788)" (( "(") (binary_expression "(int)unaff_s3 + 0x4788" (cast_expression "(int)unaff_s3" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "unaff_s3")) (+ "+") (number_literal "0x4788")) () ")"))))) () ")")) (goto_statement "goto LAB_001c8bd8;" (goto "goto") (statement_identifier "LAB_001c8bd8") (; ";"))) (labeled_statement "LAB_001c8d50:\n            iVar15 = 0x7ffffdff;" (statement_identifier "LAB_001c8d50") (: ":") (expression_statement "iVar15 = 0x7ffffdff;" (assignment_expression "iVar15 = 0x7ffffdff" (identifier "iVar15") (= "=") (number_literal "0x7ffffdff")) (; ";"))) (expression_statement "dVar30 = dVar30 + local_a0;" (assignment_expression "dVar30 = dVar30 + local_a0" (identifier "dVar30") (= "=") (binary_expression "dVar30 + local_a0" (identifier "dVar30") (+ "+") (identifier "local_a0"))) (; ";")) (if_statement "if ((int)unaff_s7 < -1) goto LAB_001c8d6c;" (if "if") (parenthesized_expression "((int)unaff_s7 < -1)" (( "(") (binary_expression "(int)unaff_s7 < -1" (cast_expression "(int)unaff_s7" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "unaff_s7")) (< "<") (number_literal "-1")) () ")")) (goto_statement "goto LAB_001c8d6c;" (goto "goto") (statement_identifier "LAB_001c8d6c") (; ";"))) (labeled_statement "LAB_001c8c00:\n            dVar32 = 0.0;" (statement_identifier "LAB_001c8c00") (: ":") (expression_statement "dVar32 = 0.0;" (assignment_expression "dVar32 = 0.0" (identifier "dVar32") (= "=") (number_literal "0.0")) (; ";"))) (} "}")))) (expression_statement "dVar32 = dVar30 + dVar32;" (assignment_expression "dVar32 = dVar30 + dVar32" (identifier "dVar32") (= "=") (binary_expression "dVar30 + dVar32" (identifier "dVar30") (+ "+") (identifier "dVar32"))) (; ";")) (expression_statement "dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);" (assignment_expression "dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32)" (identifier "dVar26") (= "=") (cast_expression "(double)(*(code *)PTR_floor_003a9670)(dVar32)" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (call_expression "(*(code *)PTR_floor_003a9670)(dVar32)" (parenthesized_expression "(*(code *)PTR_floor_003a9670)" (( "(") (pointer_expression "*(code *)PTR_floor_003a9670" (* "*") (cast_expression "(code *)PTR_floor_003a9670" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_floor_003a9670"))) () ")")) (argument_list "(dVar32)" (( "(") (identifier "dVar32") () ")"))))) (; ";")) (expression_statement "dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);" (assignment_expression "dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32)" (identifier "dVar27") (= "=") (cast_expression "(double)(*(code *)PTR_ceil_003a8c20)(dVar32)" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (call_expression "(*(code *)PTR_ceil_003a8c20)(dVar32)" (parenthesized_expression "(*(code *)PTR_ceil_003a8c20)" (( "(") (pointer_expression "*(code *)PTR_ceil_003a8c20" (* "*") (cast_expression "(code *)PTR_ceil_003a8c20" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_ceil_003a8c20"))) () ")")) (argument_list "(dVar32)" (( "(") (identifier "dVar32") () ")"))))) (; ";")) (if_statement "if (dVar32 - dVar26 < dVar27 - dVar32) {\n            if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n              if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) {\nLAB_001c8cec:\n                iVar14 = 0x7ffffdff;\n              }\n              else {\nLAB_001c8630:\n                dVar32 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n                iVar14 = (int)dVar32;\n              }\n              goto LAB_001c8644;\n            }\n            goto LAB_001c8c88;\n          }" (if "if") (parenthesized_expression "(dVar32 - dVar26 < dVar27 - dVar32)" (( "(") (binary_expression "dVar32 - dVar26 < dVar27 - dVar32" (binary_expression "dVar32 - dVar26" (identifier "dVar32") (- "-") (identifier "dVar26")) (< "<") (binary_expression "dVar27 - dVar32" (identifier "dVar27") (- "-") (identifier "dVar32"))) () ")")) (compound_statement "{\n            if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n              if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) {\nLAB_001c8cec:\n                iVar14 = 0x7ffffdff;\n              }\n              else {\nLAB_001c8630:\n                dVar32 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n                iVar14 = (int)dVar32;\n              }\n              goto LAB_001c8644;\n            }\n            goto LAB_001c8c88;\n          }" ({ "{") (if_statement "if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {\n              if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) {\nLAB_001c8cec:\n                iVar14 = 0x7ffffdff;\n              }\n              else {\nLAB_001c8630:\n                dVar32 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n                iVar14 = (int)dVar32;\n              }\n              goto LAB_001c8644;\n            }" (if "if") (parenthesized_expression "(*(double *)((int)unaff_s3 + 0x4780) <= dVar32)" (( "(") (binary_expression "*(double *)((int)unaff_s3 + 0x4780) <= dVar32" (pointer_expression "*(double *)((int)unaff_s3 + 0x4780)" (* "*") (cast_expression "(double *)((int)unaff_s3 + 0x4780)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)unaff_s3 + 0x4780)" (( "(") (binary_expression "(int)unaff_s3 + 0x4780" (cast_expression "(int)unaff_s3" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "unaff_s3")) (+ "+") (number_literal "0x4780")) () ")")))) (<= "<=") (identifier "dVar32")) () ")")) (compound_statement "{\n              if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) {\nLAB_001c8cec:\n                iVar14 = 0x7ffffdff;\n              }\n              else {\nLAB_001c8630:\n                dVar32 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n                iVar14 = (int)dVar32;\n              }\n              goto LAB_001c8644;\n            }" ({ "{") (if_statement "if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) {\nLAB_001c8cec:\n                iVar14 = 0x7ffffdff;\n              }\n              else {\nLAB_001c8630:\n                dVar32 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n                iVar14 = (int)dVar32;\n              }" (if "if") (parenthesized_expression "(*(double *)((int)unaff_s3 + 0x4788) < dVar32)" (( "(") (binary_expression "*(double *)((int)unaff_s3 + 0x4788) < dVar32" (pointer_expression "*(double *)((int)unaff_s3 + 0x4788)" (* "*") (cast_expression "(double *)((int)unaff_s3 + 0x4788)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)unaff_s3 + 0x4788)" (( "(") (binary_expression "(int)unaff_s3 + 0x4788" (cast_expression "(int)unaff_s3" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "unaff_s3")) (+ "+") (number_literal "0x4788")) () ")")))) (< "<") (identifier "dVar32")) () ")")) (compound_statement "{\nLAB_001c8cec:\n                iVar14 = 0x7ffffdff;\n              }" ({ "{") (labeled_statement "LAB_001c8cec:\n                iVar14 = 0x7ffffdff;" (statement_identifier "LAB_001c8cec") (: ":") (expression_statement "iVar14 = 0x7ffffdff;" (assignment_expression "iVar14 = 0x7ffffdff" (identifier "iVar14") (= "=") (number_literal "0x7ffffdff")) (; ";"))) (} "}")) (else_clause "else {\nLAB_001c8630:\n                dVar32 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n                iVar14 = (int)dVar32;\n              }" (else "else") (compound_statement "{\nLAB_001c8630:\n                dVar32 = (double)(*(code *)PTR_floor_003a9670)(dVar32);\n                iVar14 = (int)dVar32;\n              }" ({ "{") (labeled_statement "LAB_001c8630:\n                dVar32 = (double)(*(code *)PTR_floor_003a9670)(dVar32);" (statement_identifier "LAB_001c8630") (: ":") (expression_statement "dVar32 = (double)(*(code *)PTR_floor_003a9670)(dVar32);" (assignment_expression "dVar32 = (double)(*(code *)PTR_floor_003a9670)(dVar32)" (identifier "dVar32") (= "=") (cast_expression "(double)(*(code *)PTR_floor_003a9670)(dVar32)" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (call_expression "(*(code *)PTR_floor_003a9670)(dVar32)" (parenthesized_expression "(*(code *)PTR_floor_003a9670)" (( "(") (pointer_expression "*(code *)PTR_floor_003a9670" (* "*") (cast_expression "(code *)PTR_floor_003a9670" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_floor_003a9670"))) () ")")) (argument_list "(dVar32)" (( "(") (identifier "dVar32") () ")"))))) (; ";"))) (expression_statement "iVar14 = (int)dVar32;" (assignment_expression "iVar14 = (int)dVar32" (identifier "iVar14") (= "=") (cast_expression "(int)dVar32" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "dVar32"))) (; ";")) (} "}")))) (goto_statement "goto LAB_001c8644;" (goto "goto") (statement_identifier "LAB_001c8644") (; ";")) (} "}"))) (goto_statement "goto LAB_001c8c88;" (goto "goto") (statement_identifier "LAB_001c8c88") (; ";")) (} "}"))) (if_statement "if (dVar32 < dVar25) goto LAB_001c8c88;" (if "if") (parenthesized_expression "(dVar32 < dVar25)" (( "(") (binary_expression "dVar32 < dVar25" (identifier "dVar32") (< "<") (identifier "dVar25")) () ")")) (goto_statement "goto LAB_001c8c88;" (goto "goto") (statement_identifier "LAB_001c8c88") (; ";"))) (if_statement "if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;" (if "if") (parenthesized_expression "(*(double *)((int)unaff_s3 + 0x4788) < dVar32)" (( "(") (binary_expression "*(double *)((int)unaff_s3 + 0x4788) < dVar32" (pointer_expression "*(double *)((int)unaff_s3 + 0x4788)" (* "*") (cast_expression "(double *)((int)unaff_s3 + 0x4788)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)unaff_s3 + 0x4788)" (( "(") (binary_expression "(int)unaff_s3 + 0x4788" (cast_expression "(int)unaff_s3" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "unaff_s3")) (+ "+") (number_literal "0x4788")) () ")")))) (< "<") (identifier "dVar32")) () ")")) (goto_statement "goto LAB_001c8cec;" (goto "goto") (statement_identifier "LAB_001c8cec") (; ";"))) (labeled_statement "LAB_001c8d18:\n          dVar32 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);" (statement_identifier "LAB_001c8d18") (: ":") (expression_statement "dVar32 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);" (assignment_expression "dVar32 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32)" (identifier "dVar32") (= "=") (cast_expression "(double)(*(code *)PTR_ceil_003a8c20)(dVar32)" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (call_expression "(*(code *)PTR_ceil_003a8c20)(dVar32)" (parenthesized_expression "(*(code *)PTR_ceil_003a8c20)" (( "(") (pointer_expression "*(code *)PTR_ceil_003a8c20" (* "*") (cast_expression "(code *)PTR_ceil_003a8c20" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_ceil_003a8c20"))) () ")")) (argument_list "(dVar32)" (( "(") (identifier "dVar32") () ")"))))) (; ";"))) (expression_statement "iVar14 = (int)dVar32;" (assignment_expression "iVar14 = (int)dVar32" (identifier "iVar14") (= "=") (cast_expression "(int)dVar32" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "dVar32"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "( true )" (( "(") (true "true") () ")")) (; ";"))) (} "}"))) (expression_statement "(*(code *)PTR_ClearMagickException_003a90f8)(param_3);" (call_expression "(*(code *)PTR_ClearMagickException_003a90f8)(param_3)" (parenthesized_expression "(*(code *)PTR_ClearMagickException_003a90f8)" (( "(") (pointer_expression "*(code *)PTR_ClearMagickException_003a90f8" (* "*") (cast_expression "(code *)PTR_ClearMagickException_003a90f8" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_ClearMagickException_003a90f8"))) () ")")) (argument_list "(param_3)" (( "(") (identifier "param_3") () ")"))) (; ";")) (expression_statement "pppppppuVar9 = local_80;" (assignment_expression "pppppppuVar9 = local_80" (identifier "pppppppuVar9") (= "=") (identifier "local_80")) (; ";")) (expression_statement "unaff_s0 = param_2;" (assignment_expression "unaff_s0 = param_2" (identifier "unaff_s0") (= "=") (identifier "param_2")) (; ";")) (} "}")) (else_clause "else {\n      unaff_s3 = &local_7c;\n      if (((local_7c == (undefined4 *******)0x0) && (local_78 == (undefined4 ******)0x0)) ||\n         (((uint)ppppppuVar2 & 3) != 0)) {\n        local_80 = (undefined4 *******)(*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n        pppppppuVar9 = local_80;\n        unaff_s4 = ppppppuVar2;\n        if ((local_80 != (undefined4 *******)0x0) &&\n           (unaff_s4 = (undefined4 ******)((uint)ppppppuVar2 & 0x2000),\n           unaff_s4 != (undefined4 ******)0x0)) {\n          local_80[0x8c] = (undefined4 ******)((int)local_80[0x8c] - (int)local_74);\n          local_80[0x8d] = (undefined4 ******)((int)local_80[0x8d] - (int)local_70);\n          local_80[0x8a] = local_7c;\n          local_80[0x8b] = local_78;\n        }\n      }\n      else {\n        unaff_s7 = (undefined4 *******)param_1[6];\n        if ((local_7c < unaff_s7) || (local_78 < param_1[7])) {\n          ppppppuVar2 = param_1[0x8b];\n          if ((undefined4 *******)param_1[0x8a] != (undefined4 *******)0x0) {\n            unaff_s7 = (undefined4 *******)param_1[0x8a];\n          }\n          if (ppppppuVar2 == (undefined4 ******)0x0) {\n            ppppppuVar2 = param_1[7];\n          }\n          if (local_7c == (undefined4 *******)0x0) {\n            unaff_s0 = unaff_s7;\n          }\n          if (local_78 == (undefined4 ******)0x0) {\n            unaff_s4 = ppppppuVar2;\n          }\n          pppppppuVar9 = local_80;\n          if (0 < (int)ppppppuVar2) {\n            unaff_s3 = (undefined4 *******)0x0;\n            unaff_s8 = &local_80;\n            do {\n              unaff_s5 = (undefined4 *******)0x0;\n              if ((int)unaff_s7 < 1) {\n                pppppppuVar9 = local_80;\n                if (unaff_s6 == (undefined4 *******)0x0) break;\n              }\n              else {\n                do {\n                  local_7c = unaff_s0;\n                  local_78 = unaff_s4;\n                  local_74 = unaff_s5;\n                  local_70 = unaff_s3;\n                  unaff_s6 = (undefined4 *******)\n                             (*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n                  pppppppuVar9 = local_80;\n                  if (unaff_s6 == (undefined4 *******)0x0) goto LAB_001c8908;\n                  unaff_s5 = (undefined4 *******)((int)unaff_s5 + (int)unaff_s0);\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);\n              }\n              unaff_s3 = (undefined4 *******)((int)unaff_s3 + (int)unaff_s4);\n              pppppppuVar9 = local_80;\n            } while ((int)unaff_s3 < (int)ppppppuVar2);\n          }\n        }\n        else {\n          local_e8 = param_3;\n          pppppppuVar9 = (undefined4 *******)(*(code *)PTR_CloneImage_003a9830)(param_1,0,0,1);\n        }\n      }\n    }" (else "else") (compound_statement "{\n      unaff_s3 = &local_7c;\n      if (((local_7c == (undefined4 *******)0x0) && (local_78 == (undefined4 ******)0x0)) ||\n         (((uint)ppppppuVar2 & 3) != 0)) {\n        local_80 = (undefined4 *******)(*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n        pppppppuVar9 = local_80;\n        unaff_s4 = ppppppuVar2;\n        if ((local_80 != (undefined4 *******)0x0) &&\n           (unaff_s4 = (undefined4 ******)((uint)ppppppuVar2 & 0x2000),\n           unaff_s4 != (undefined4 ******)0x0)) {\n          local_80[0x8c] = (undefined4 ******)((int)local_80[0x8c] - (int)local_74);\n          local_80[0x8d] = (undefined4 ******)((int)local_80[0x8d] - (int)local_70);\n          local_80[0x8a] = local_7c;\n          local_80[0x8b] = local_78;\n        }\n      }\n      else {\n        unaff_s7 = (undefined4 *******)param_1[6];\n        if ((local_7c < unaff_s7) || (local_78 < param_1[7])) {\n          ppppppuVar2 = param_1[0x8b];\n          if ((undefined4 *******)param_1[0x8a] != (undefined4 *******)0x0) {\n            unaff_s7 = (undefined4 *******)param_1[0x8a];\n          }\n          if (ppppppuVar2 == (undefined4 ******)0x0) {\n            ppppppuVar2 = param_1[7];\n          }\n          if (local_7c == (undefined4 *******)0x0) {\n            unaff_s0 = unaff_s7;\n          }\n          if (local_78 == (undefined4 ******)0x0) {\n            unaff_s4 = ppppppuVar2;\n          }\n          pppppppuVar9 = local_80;\n          if (0 < (int)ppppppuVar2) {\n            unaff_s3 = (undefined4 *******)0x0;\n            unaff_s8 = &local_80;\n            do {\n              unaff_s5 = (undefined4 *******)0x0;\n              if ((int)unaff_s7 < 1) {\n                pppppppuVar9 = local_80;\n                if (unaff_s6 == (undefined4 *******)0x0) break;\n              }\n              else {\n                do {\n                  local_7c = unaff_s0;\n                  local_78 = unaff_s4;\n                  local_74 = unaff_s5;\n                  local_70 = unaff_s3;\n                  unaff_s6 = (undefined4 *******)\n                             (*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n                  pppppppuVar9 = local_80;\n                  if (unaff_s6 == (undefined4 *******)0x0) goto LAB_001c8908;\n                  unaff_s5 = (undefined4 *******)((int)unaff_s5 + (int)unaff_s0);\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);\n              }\n              unaff_s3 = (undefined4 *******)((int)unaff_s3 + (int)unaff_s4);\n              pppppppuVar9 = local_80;\n            } while ((int)unaff_s3 < (int)ppppppuVar2);\n          }\n        }\n        else {\n          local_e8 = param_3;\n          pppppppuVar9 = (undefined4 *******)(*(code *)PTR_CloneImage_003a9830)(param_1,0,0,1);\n        }\n      }\n    }" ({ "{") (expression_statement "unaff_s3 = &local_7c;" (assignment_expression "unaff_s3 = &local_7c" (identifier "unaff_s3") (= "=") (pointer_expression "&local_7c" (& "&") (identifier "local_7c"))) (; ";")) (if_statement "if (((local_7c == (undefined4 *******)0x0) && (local_78 == (undefined4 ******)0x0)) ||\n         (((uint)ppppppuVar2 & 3) != 0)) {\n        local_80 = (undefined4 *******)(*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n        pppppppuVar9 = local_80;\n        unaff_s4 = ppppppuVar2;\n        if ((local_80 != (undefined4 *******)0x0) &&\n           (unaff_s4 = (undefined4 ******)((uint)ppppppuVar2 & 0x2000),\n           unaff_s4 != (undefined4 ******)0x0)) {\n          local_80[0x8c] = (undefined4 ******)((int)local_80[0x8c] - (int)local_74);\n          local_80[0x8d] = (undefined4 ******)((int)local_80[0x8d] - (int)local_70);\n          local_80[0x8a] = local_7c;\n          local_80[0x8b] = local_78;\n        }\n      }\n      else {\n        unaff_s7 = (undefined4 *******)param_1[6];\n        if ((local_7c < unaff_s7) || (local_78 < param_1[7])) {\n          ppppppuVar2 = param_1[0x8b];\n          if ((undefined4 *******)param_1[0x8a] != (undefined4 *******)0x0) {\n            unaff_s7 = (undefined4 *******)param_1[0x8a];\n          }\n          if (ppppppuVar2 == (undefined4 ******)0x0) {\n            ppppppuVar2 = param_1[7];\n          }\n          if (local_7c == (undefined4 *******)0x0) {\n            unaff_s0 = unaff_s7;\n          }\n          if (local_78 == (undefined4 ******)0x0) {\n            unaff_s4 = ppppppuVar2;\n          }\n          pppppppuVar9 = local_80;\n          if (0 < (int)ppppppuVar2) {\n            unaff_s3 = (undefined4 *******)0x0;\n            unaff_s8 = &local_80;\n            do {\n              unaff_s5 = (undefined4 *******)0x0;\n              if ((int)unaff_s7 < 1) {\n                pppppppuVar9 = local_80;\n                if (unaff_s6 == (undefined4 *******)0x0) break;\n              }\n              else {\n                do {\n                  local_7c = unaff_s0;\n                  local_78 = unaff_s4;\n                  local_74 = unaff_s5;\n                  local_70 = unaff_s3;\n                  unaff_s6 = (undefined4 *******)\n                             (*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n                  pppppppuVar9 = local_80;\n                  if (unaff_s6 == (undefined4 *******)0x0) goto LAB_001c8908;\n                  unaff_s5 = (undefined4 *******)((int)unaff_s5 + (int)unaff_s0);\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);\n              }\n              unaff_s3 = (undefined4 *******)((int)unaff_s3 + (int)unaff_s4);\n              pppppppuVar9 = local_80;\n            } while ((int)unaff_s3 < (int)ppppppuVar2);\n          }\n        }\n        else {\n          local_e8 = param_3;\n          pppppppuVar9 = (undefined4 *******)(*(code *)PTR_CloneImage_003a9830)(param_1,0,0,1);\n        }\n      }" (if "if") (parenthesized_expression "(((local_7c == (undefined4 *******)0x0) && (local_78 == (undefined4 ******)0x0)) ||\n         (((uint)ppppppuVar2 & 3) != 0))" (( "(") (binary_expression "((local_7c == (undefined4 *******)0x0) && (local_78 == (undefined4 ******)0x0)) ||\n         (((uint)ppppppuVar2 & 3) != 0)" (parenthesized_expression "((local_7c == (undefined4 *******)0x0) && (local_78 == (undefined4 ******)0x0))" (( "(") (binary_expression "(local_7c == (undefined4 *******)0x0) && (local_78 == (undefined4 ******)0x0)" (parenthesized_expression "(local_7c == (undefined4 *******)0x0)" (( "(") (binary_expression "local_7c == (undefined4 *******)0x0" (identifier "local_7c") (== "==") (cast_expression "(undefined4 *******)0x0" (( "(") (type_descriptor "undefined4 *******" (type_identifier "undefined4") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (&& "&&") (parenthesized_expression "(local_78 == (undefined4 ******)0x0)" (( "(") (binary_expression "local_78 == (undefined4 ******)0x0" (identifier "local_78") (== "==") (cast_expression "(undefined4 ******)0x0" (( "(") (type_descriptor "undefined4 ******" (type_identifier "undefined4") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (number_literal "0x0"))) () ")"))) () ")")) (|| "||") (parenthesized_expression "(((uint)ppppppuVar2 & 3) != 0)" (( "(") (binary_expression "((uint)ppppppuVar2 & 3) != 0" (parenthesized_expression "((uint)ppppppuVar2 & 3)" (( "(") (binary_expression "(uint)ppppppuVar2 & 3" (cast_expression "(uint)ppppppuVar2" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "ppppppuVar2")) (& "&") (number_literal "3")) () ")")) (!= "!=") (number_literal "0")) () ")"))) () ")")) (compound_statement "{\n        local_80 = (undefined4 *******)(*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n        pppppppuVar9 = local_80;\n        unaff_s4 = ppppppuVar2;\n        if ((local_80 != (undefined4 *******)0x0) &&\n           (unaff_s4 = (undefined4 ******)((uint)ppppppuVar2 & 0x2000),\n           unaff_s4 != (undefined4 ******)0x0)) {\n          local_80[0x8c] = (undefined4 ******)((int)local_80[0x8c] - (int)local_74);\n          local_80[0x8d] = (undefined4 ******)((int)local_80[0x8d] - (int)local_70);\n          local_80[0x8a] = local_7c;\n          local_80[0x8b] = local_78;\n        }\n      }" ({ "{") (expression_statement "local_80 = (undefined4 *******)(*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);" (assignment_expression "local_80 = (undefined4 *******)(*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3)" (identifier "local_80") (= "=") (cast_expression "(undefined4 *******)(*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3)" (( "(") (type_descriptor "undefined4 *******" (type_identifier "undefined4") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (call_expression "(*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3)" (parenthesized_expression "(*(code *)PTR_CropImage_003a90b8)" (( "(") (pointer_expression "*(code *)PTR_CropImage_003a90b8" (* "*") (cast_expression "(code *)PTR_CropImage_003a90b8" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_CropImage_003a90b8"))) () ")")) (argument_list "(param_1,&local_7c,param_3)" (( "(") (identifier "param_1") (, ",") (pointer_expression "&local_7c" (& "&") (identifier "local_7c")) (, ",") (identifier "param_3") () ")"))))) (; ";")) (expression_statement "pppppppuVar9 = local_80;" (assignment_expression "pppppppuVar9 = local_80" (identifier "pppppppuVar9") (= "=") (identifier "local_80")) (; ";")) (expression_statement "unaff_s4 = ppppppuVar2;" (assignment_expression "unaff_s4 = ppppppuVar2" (identifier "unaff_s4") (= "=") (identifier "ppppppuVar2")) (; ";")) (if_statement "if ((local_80 != (undefined4 *******)0x0) &&\n           (unaff_s4 = (undefined4 ******)((uint)ppppppuVar2 & 0x2000),\n           unaff_s4 != (undefined4 ******)0x0)) {\n          local_80[0x8c] = (undefined4 ******)((int)local_80[0x8c] - (int)local_74);\n          local_80[0x8d] = (undefined4 ******)((int)local_80[0x8d] - (int)local_70);\n          local_80[0x8a] = local_7c;\n          local_80[0x8b] = local_78;\n        }" (if "if") (parenthesized_expression "((local_80 != (undefined4 *******)0x0) &&\n           (unaff_s4 = (undefined4 ******)((uint)ppppppuVar2 & 0x2000),\n           unaff_s4 != (undefined4 ******)0x0))" (( "(") (binary_expression "(local_80 != (undefined4 *******)0x0) &&\n           (unaff_s4 = (undefined4 ******)((uint)ppppppuVar2 & 0x2000),\n           unaff_s4 != (undefined4 ******)0x0)" (parenthesized_expression "(local_80 != (undefined4 *******)0x0)" (( "(") (binary_expression "local_80 != (undefined4 *******)0x0" (identifier "local_80") (!= "!=") (cast_expression "(undefined4 *******)0x0" (( "(") (type_descriptor "undefined4 *******" (type_identifier "undefined4") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (&& "&&") (parenthesized_expression "(unaff_s4 = (undefined4 ******)((uint)ppppppuVar2 & 0x2000),\n           unaff_s4 != (undefined4 ******)0x0)" (( "(") (comma_expression "unaff_s4 = (undefined4 ******)((uint)ppppppuVar2 & 0x2000),\n           unaff_s4 != (undefined4 ******)0x0" (assignment_expression "unaff_s4 = (undefined4 ******)((uint)ppppppuVar2 & 0x2000)" (identifier "unaff_s4") (= "=") (cast_expression "(undefined4 ******)((uint)ppppppuVar2 & 0x2000)" (( "(") (type_descriptor "undefined4 ******" (type_identifier "undefined4") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (parenthesized_expression "((uint)ppppppuVar2 & 0x2000)" (( "(") (binary_expression "(uint)ppppppuVar2 & 0x2000" (cast_expression "(uint)ppppppuVar2" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "ppppppuVar2")) (& "&") (number_literal "0x2000")) () ")")))) (, ",") (binary_expression "unaff_s4 != (undefined4 ******)0x0" (identifier "unaff_s4") (!= "!=") (cast_expression "(undefined4 ******)0x0" (( "(") (type_descriptor "undefined4 ******" (type_identifier "undefined4") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (number_literal "0x0")))) () ")"))) () ")")) (compound_statement "{\n          local_80[0x8c] = (undefined4 ******)((int)local_80[0x8c] - (int)local_74);\n          local_80[0x8d] = (undefined4 ******)((int)local_80[0x8d] - (int)local_70);\n          local_80[0x8a] = local_7c;\n          local_80[0x8b] = local_78;\n        }" ({ "{") (expression_statement "local_80[0x8c] = (undefined4 ******)((int)local_80[0x8c] - (int)local_74);" (assignment_expression "local_80[0x8c] = (undefined4 ******)((int)local_80[0x8c] - (int)local_74)" (subscript_expression "local_80[0x8c]" (identifier "local_80") ([ "[") (number_literal "0x8c") (] "]")) (= "=") (cast_expression "(undefined4 ******)((int)local_80[0x8c] - (int)local_74)" (( "(") (type_descriptor "undefined4 ******" (type_identifier "undefined4") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (parenthesized_expression "((int)local_80[0x8c] - (int)local_74)" (( "(") (binary_expression "(int)local_80[0x8c] - (int)local_74" (cast_expression "(int)local_80[0x8c]" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (subscript_expression "local_80[0x8c]" (identifier "local_80") ([ "[") (number_literal "0x8c") (] "]"))) (- "-") (cast_expression "(int)local_74" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_74"))) () ")")))) (; ";")) (expression_statement "local_80[0x8d] = (undefined4 ******)((int)local_80[0x8d] - (int)local_70);" (assignment_expression "local_80[0x8d] = (undefined4 ******)((int)local_80[0x8d] - (int)local_70)" (subscript_expression "local_80[0x8d]" (identifier "local_80") ([ "[") (number_literal "0x8d") (] "]")) (= "=") (cast_expression "(undefined4 ******)((int)local_80[0x8d] - (int)local_70)" (( "(") (type_descriptor "undefined4 ******" (type_identifier "undefined4") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (parenthesized_expression "((int)local_80[0x8d] - (int)local_70)" (( "(") (binary_expression "(int)local_80[0x8d] - (int)local_70" (cast_expression "(int)local_80[0x8d]" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (subscript_expression "local_80[0x8d]" (identifier "local_80") ([ "[") (number_literal "0x8d") (] "]"))) (- "-") (cast_expression "(int)local_70" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_70"))) () ")")))) (; ";")) (expression_statement "local_80[0x8a] = local_7c;" (assignment_expression "local_80[0x8a] = local_7c" (subscript_expression "local_80[0x8a]" (identifier "local_80") ([ "[") (number_literal "0x8a") (] "]")) (= "=") (identifier "local_7c")) (; ";")) (expression_statement "local_80[0x8b] = local_78;" (assignment_expression "local_80[0x8b] = local_78" (subscript_expression "local_80[0x8b]" (identifier "local_80") ([ "[") (number_literal "0x8b") (] "]")) (= "=") (identifier "local_78")) (; ";")) (} "}"))) (} "}")) (else_clause "else {\n        unaff_s7 = (undefined4 *******)param_1[6];\n        if ((local_7c < unaff_s7) || (local_78 < param_1[7])) {\n          ppppppuVar2 = param_1[0x8b];\n          if ((undefined4 *******)param_1[0x8a] != (undefined4 *******)0x0) {\n            unaff_s7 = (undefined4 *******)param_1[0x8a];\n          }\n          if (ppppppuVar2 == (undefined4 ******)0x0) {\n            ppppppuVar2 = param_1[7];\n          }\n          if (local_7c == (undefined4 *******)0x0) {\n            unaff_s0 = unaff_s7;\n          }\n          if (local_78 == (undefined4 ******)0x0) {\n            unaff_s4 = ppppppuVar2;\n          }\n          pppppppuVar9 = local_80;\n          if (0 < (int)ppppppuVar2) {\n            unaff_s3 = (undefined4 *******)0x0;\n            unaff_s8 = &local_80;\n            do {\n              unaff_s5 = (undefined4 *******)0x0;\n              if ((int)unaff_s7 < 1) {\n                pppppppuVar9 = local_80;\n                if (unaff_s6 == (undefined4 *******)0x0) break;\n              }\n              else {\n                do {\n                  local_7c = unaff_s0;\n                  local_78 = unaff_s4;\n                  local_74 = unaff_s5;\n                  local_70 = unaff_s3;\n                  unaff_s6 = (undefined4 *******)\n                             (*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n                  pppppppuVar9 = local_80;\n                  if (unaff_s6 == (undefined4 *******)0x0) goto LAB_001c8908;\n                  unaff_s5 = (undefined4 *******)((int)unaff_s5 + (int)unaff_s0);\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);\n              }\n              unaff_s3 = (undefined4 *******)((int)unaff_s3 + (int)unaff_s4);\n              pppppppuVar9 = local_80;\n            } while ((int)unaff_s3 < (int)ppppppuVar2);\n          }\n        }\n        else {\n          local_e8 = param_3;\n          pppppppuVar9 = (undefined4 *******)(*(code *)PTR_CloneImage_003a9830)(param_1,0,0,1);\n        }\n      }" (else "else") (compound_statement "{\n        unaff_s7 = (undefined4 *******)param_1[6];\n        if ((local_7c < unaff_s7) || (local_78 < param_1[7])) {\n          ppppppuVar2 = param_1[0x8b];\n          if ((undefined4 *******)param_1[0x8a] != (undefined4 *******)0x0) {\n            unaff_s7 = (undefined4 *******)param_1[0x8a];\n          }\n          if (ppppppuVar2 == (undefined4 ******)0x0) {\n            ppppppuVar2 = param_1[7];\n          }\n          if (local_7c == (undefined4 *******)0x0) {\n            unaff_s0 = unaff_s7;\n          }\n          if (local_78 == (undefined4 ******)0x0) {\n            unaff_s4 = ppppppuVar2;\n          }\n          pppppppuVar9 = local_80;\n          if (0 < (int)ppppppuVar2) {\n            unaff_s3 = (undefined4 *******)0x0;\n            unaff_s8 = &local_80;\n            do {\n              unaff_s5 = (undefined4 *******)0x0;\n              if ((int)unaff_s7 < 1) {\n                pppppppuVar9 = local_80;\n                if (unaff_s6 == (undefined4 *******)0x0) break;\n              }\n              else {\n                do {\n                  local_7c = unaff_s0;\n                  local_78 = unaff_s4;\n                  local_74 = unaff_s5;\n                  local_70 = unaff_s3;\n                  unaff_s6 = (undefined4 *******)\n                             (*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n                  pppppppuVar9 = local_80;\n                  if (unaff_s6 == (undefined4 *******)0x0) goto LAB_001c8908;\n                  unaff_s5 = (undefined4 *******)((int)unaff_s5 + (int)unaff_s0);\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);\n              }\n              unaff_s3 = (undefined4 *******)((int)unaff_s3 + (int)unaff_s4);\n              pppppppuVar9 = local_80;\n            } while ((int)unaff_s3 < (int)ppppppuVar2);\n          }\n        }\n        else {\n          local_e8 = param_3;\n          pppppppuVar9 = (undefined4 *******)(*(code *)PTR_CloneImage_003a9830)(param_1,0,0,1);\n        }\n      }" ({ "{") (expression_statement "unaff_s7 = (undefined4 *******)param_1[6];" (assignment_expression "unaff_s7 = (undefined4 *******)param_1[6]" (identifier "unaff_s7") (= "=") (cast_expression "(undefined4 *******)param_1[6]" (( "(") (type_descriptor "undefined4 *******" (type_identifier "undefined4") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (subscript_expression "param_1[6]" (identifier "param_1") ([ "[") (number_literal "6") (] "]")))) (; ";")) (if_statement "if ((local_7c < unaff_s7) || (local_78 < param_1[7])) {\n          ppppppuVar2 = param_1[0x8b];\n          if ((undefined4 *******)param_1[0x8a] != (undefined4 *******)0x0) {\n            unaff_s7 = (undefined4 *******)param_1[0x8a];\n          }\n          if (ppppppuVar2 == (undefined4 ******)0x0) {\n            ppppppuVar2 = param_1[7];\n          }\n          if (local_7c == (undefined4 *******)0x0) {\n            unaff_s0 = unaff_s7;\n          }\n          if (local_78 == (undefined4 ******)0x0) {\n            unaff_s4 = ppppppuVar2;\n          }\n          pppppppuVar9 = local_80;\n          if (0 < (int)ppppppuVar2) {\n            unaff_s3 = (undefined4 *******)0x0;\n            unaff_s8 = &local_80;\n            do {\n              unaff_s5 = (undefined4 *******)0x0;\n              if ((int)unaff_s7 < 1) {\n                pppppppuVar9 = local_80;\n                if (unaff_s6 == (undefined4 *******)0x0) break;\n              }\n              else {\n                do {\n                  local_7c = unaff_s0;\n                  local_78 = unaff_s4;\n                  local_74 = unaff_s5;\n                  local_70 = unaff_s3;\n                  unaff_s6 = (undefined4 *******)\n                             (*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n                  pppppppuVar9 = local_80;\n                  if (unaff_s6 == (undefined4 *******)0x0) goto LAB_001c8908;\n                  unaff_s5 = (undefined4 *******)((int)unaff_s5 + (int)unaff_s0);\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);\n              }\n              unaff_s3 = (undefined4 *******)((int)unaff_s3 + (int)unaff_s4);\n              pppppppuVar9 = local_80;\n            } while ((int)unaff_s3 < (int)ppppppuVar2);\n          }\n        }\n        else {\n          local_e8 = param_3;\n          pppppppuVar9 = (undefined4 *******)(*(code *)PTR_CloneImage_003a9830)(param_1,0,0,1);\n        }" (if "if") (parenthesized_expression "((local_7c < unaff_s7) || (local_78 < param_1[7]))" (( "(") (binary_expression "(local_7c < unaff_s7) || (local_78 < param_1[7])" (parenthesized_expression "(local_7c < unaff_s7)" (( "(") (binary_expression "local_7c < unaff_s7" (identifier "local_7c") (< "<") (identifier "unaff_s7")) () ")")) (|| "||") (parenthesized_expression "(local_78 < param_1[7])" (( "(") (binary_expression "local_78 < param_1[7]" (identifier "local_78") (< "<") (subscript_expression "param_1[7]" (identifier "param_1") ([ "[") (number_literal "7") (] "]"))) () ")"))) () ")")) (compound_statement "{\n          ppppppuVar2 = param_1[0x8b];\n          if ((undefined4 *******)param_1[0x8a] != (undefined4 *******)0x0) {\n            unaff_s7 = (undefined4 *******)param_1[0x8a];\n          }\n          if (ppppppuVar2 == (undefined4 ******)0x0) {\n            ppppppuVar2 = param_1[7];\n          }\n          if (local_7c == (undefined4 *******)0x0) {\n            unaff_s0 = unaff_s7;\n          }\n          if (local_78 == (undefined4 ******)0x0) {\n            unaff_s4 = ppppppuVar2;\n          }\n          pppppppuVar9 = local_80;\n          if (0 < (int)ppppppuVar2) {\n            unaff_s3 = (undefined4 *******)0x0;\n            unaff_s8 = &local_80;\n            do {\n              unaff_s5 = (undefined4 *******)0x0;\n              if ((int)unaff_s7 < 1) {\n                pppppppuVar9 = local_80;\n                if (unaff_s6 == (undefined4 *******)0x0) break;\n              }\n              else {\n                do {\n                  local_7c = unaff_s0;\n                  local_78 = unaff_s4;\n                  local_74 = unaff_s5;\n                  local_70 = unaff_s3;\n                  unaff_s6 = (undefined4 *******)\n                             (*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n                  pppppppuVar9 = local_80;\n                  if (unaff_s6 == (undefined4 *******)0x0) goto LAB_001c8908;\n                  unaff_s5 = (undefined4 *******)((int)unaff_s5 + (int)unaff_s0);\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);\n              }\n              unaff_s3 = (undefined4 *******)((int)unaff_s3 + (int)unaff_s4);\n              pppppppuVar9 = local_80;\n            } while ((int)unaff_s3 < (int)ppppppuVar2);\n          }\n        }" ({ "{") (expression_statement "ppppppuVar2 = param_1[0x8b];" (assignment_expression "ppppppuVar2 = param_1[0x8b]" (identifier "ppppppuVar2") (= "=") (subscript_expression "param_1[0x8b]" (identifier "param_1") ([ "[") (number_literal "0x8b") (] "]"))) (; ";")) (if_statement "if ((undefined4 *******)param_1[0x8a] != (undefined4 *******)0x0) {\n            unaff_s7 = (undefined4 *******)param_1[0x8a];\n          }" (if "if") (parenthesized_expression "((undefined4 *******)param_1[0x8a] != (undefined4 *******)0x0)" (( "(") (binary_expression "(undefined4 *******)param_1[0x8a] != (undefined4 *******)0x0" (cast_expression "(undefined4 *******)param_1[0x8a]" (( "(") (type_descriptor "undefined4 *******" (type_identifier "undefined4") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (subscript_expression "param_1[0x8a]" (identifier "param_1") ([ "[") (number_literal "0x8a") (] "]"))) (!= "!=") (cast_expression "(undefined4 *******)0x0" (( "(") (type_descriptor "undefined4 *******" (type_identifier "undefined4") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n            unaff_s7 = (undefined4 *******)param_1[0x8a];\n          }" ({ "{") (expression_statement "unaff_s7 = (undefined4 *******)param_1[0x8a];" (assignment_expression "unaff_s7 = (undefined4 *******)param_1[0x8a]" (identifier "unaff_s7") (= "=") (cast_expression "(undefined4 *******)param_1[0x8a]" (( "(") (type_descriptor "undefined4 *******" (type_identifier "undefined4") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (subscript_expression "param_1[0x8a]" (identifier "param_1") ([ "[") (number_literal "0x8a") (] "]")))) (; ";")) (} "}"))) (if_statement "if (ppppppuVar2 == (undefined4 ******)0x0) {\n            ppppppuVar2 = param_1[7];\n          }" (if "if") (parenthesized_expression "(ppppppuVar2 == (undefined4 ******)0x0)" (( "(") (binary_expression "ppppppuVar2 == (undefined4 ******)0x0" (identifier "ppppppuVar2") (== "==") (cast_expression "(undefined4 ******)0x0" (( "(") (type_descriptor "undefined4 ******" (type_identifier "undefined4") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n            ppppppuVar2 = param_1[7];\n          }" ({ "{") (expression_statement "ppppppuVar2 = param_1[7];" (assignment_expression "ppppppuVar2 = param_1[7]" (identifier "ppppppuVar2") (= "=") (subscript_expression "param_1[7]" (identifier "param_1") ([ "[") (number_literal "7") (] "]"))) (; ";")) (} "}"))) (if_statement "if (local_7c == (undefined4 *******)0x0) {\n            unaff_s0 = unaff_s7;\n          }" (if "if") (parenthesized_expression "(local_7c == (undefined4 *******)0x0)" (( "(") (binary_expression "local_7c == (undefined4 *******)0x0" (identifier "local_7c") (== "==") (cast_expression "(undefined4 *******)0x0" (( "(") (type_descriptor "undefined4 *******" (type_identifier "undefined4") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n            unaff_s0 = unaff_s7;\n          }" ({ "{") (expression_statement "unaff_s0 = unaff_s7;" (assignment_expression "unaff_s0 = unaff_s7" (identifier "unaff_s0") (= "=") (identifier "unaff_s7")) (; ";")) (} "}"))) (if_statement "if (local_78 == (undefined4 ******)0x0) {\n            unaff_s4 = ppppppuVar2;\n          }" (if "if") (parenthesized_expression "(local_78 == (undefined4 ******)0x0)" (( "(") (binary_expression "local_78 == (undefined4 ******)0x0" (identifier "local_78") (== "==") (cast_expression "(undefined4 ******)0x0" (( "(") (type_descriptor "undefined4 ******" (type_identifier "undefined4") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n            unaff_s4 = ppppppuVar2;\n          }" ({ "{") (expression_statement "unaff_s4 = ppppppuVar2;" (assignment_expression "unaff_s4 = ppppppuVar2" (identifier "unaff_s4") (= "=") (identifier "ppppppuVar2")) (; ";")) (} "}"))) (expression_statement "pppppppuVar9 = local_80;" (assignment_expression "pppppppuVar9 = local_80" (identifier "pppppppuVar9") (= "=") (identifier "local_80")) (; ";")) (if_statement "if (0 < (int)ppppppuVar2) {\n            unaff_s3 = (undefined4 *******)0x0;\n            unaff_s8 = &local_80;\n            do {\n              unaff_s5 = (undefined4 *******)0x0;\n              if ((int)unaff_s7 < 1) {\n                pppppppuVar9 = local_80;\n                if (unaff_s6 == (undefined4 *******)0x0) break;\n              }\n              else {\n                do {\n                  local_7c = unaff_s0;\n                  local_78 = unaff_s4;\n                  local_74 = unaff_s5;\n                  local_70 = unaff_s3;\n                  unaff_s6 = (undefined4 *******)\n                             (*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n                  pppppppuVar9 = local_80;\n                  if (unaff_s6 == (undefined4 *******)0x0) goto LAB_001c8908;\n                  unaff_s5 = (undefined4 *******)((int)unaff_s5 + (int)unaff_s0);\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);\n              }\n              unaff_s3 = (undefined4 *******)((int)unaff_s3 + (int)unaff_s4);\n              pppppppuVar9 = local_80;\n            } while ((int)unaff_s3 < (int)ppppppuVar2);\n          }" (if "if") (parenthesized_expression "(0 < (int)ppppppuVar2)" (( "(") (binary_expression "0 < (int)ppppppuVar2" (number_literal "0") (< "<") (cast_expression "(int)ppppppuVar2" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "ppppppuVar2"))) () ")")) (compound_statement "{\n            unaff_s3 = (undefined4 *******)0x0;\n            unaff_s8 = &local_80;\n            do {\n              unaff_s5 = (undefined4 *******)0x0;\n              if ((int)unaff_s7 < 1) {\n                pppppppuVar9 = local_80;\n                if (unaff_s6 == (undefined4 *******)0x0) break;\n              }\n              else {\n                do {\n                  local_7c = unaff_s0;\n                  local_78 = unaff_s4;\n                  local_74 = unaff_s5;\n                  local_70 = unaff_s3;\n                  unaff_s6 = (undefined4 *******)\n                             (*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n                  pppppppuVar9 = local_80;\n                  if (unaff_s6 == (undefined4 *******)0x0) goto LAB_001c8908;\n                  unaff_s5 = (undefined4 *******)((int)unaff_s5 + (int)unaff_s0);\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);\n              }\n              unaff_s3 = (undefined4 *******)((int)unaff_s3 + (int)unaff_s4);\n              pppppppuVar9 = local_80;\n            } while ((int)unaff_s3 < (int)ppppppuVar2);\n          }" ({ "{") (expression_statement "unaff_s3 = (undefined4 *******)0x0;" (assignment_expression "unaff_s3 = (undefined4 *******)0x0" (identifier "unaff_s3") (= "=") (cast_expression "(undefined4 *******)0x0" (( "(") (type_descriptor "undefined4 *******" (type_identifier "undefined4") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "unaff_s8 = &local_80;" (assignment_expression "unaff_s8 = &local_80" (identifier "unaff_s8") (= "=") (pointer_expression "&local_80" (& "&") (identifier "local_80"))) (; ";")) (do_statement "do {\n              unaff_s5 = (undefined4 *******)0x0;\n              if ((int)unaff_s7 < 1) {\n                pppppppuVar9 = local_80;\n                if (unaff_s6 == (undefined4 *******)0x0) break;\n              }\n              else {\n                do {\n                  local_7c = unaff_s0;\n                  local_78 = unaff_s4;\n                  local_74 = unaff_s5;\n                  local_70 = unaff_s3;\n                  unaff_s6 = (undefined4 *******)\n                             (*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n                  pppppppuVar9 = local_80;\n                  if (unaff_s6 == (undefined4 *******)0x0) goto LAB_001c8908;\n                  unaff_s5 = (undefined4 *******)((int)unaff_s5 + (int)unaff_s0);\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);\n              }\n              unaff_s3 = (undefined4 *******)((int)unaff_s3 + (int)unaff_s4);\n              pppppppuVar9 = local_80;\n            } while ((int)unaff_s3 < (int)ppppppuVar2);" (do "do") (compound_statement "{\n              unaff_s5 = (undefined4 *******)0x0;\n              if ((int)unaff_s7 < 1) {\n                pppppppuVar9 = local_80;\n                if (unaff_s6 == (undefined4 *******)0x0) break;\n              }\n              else {\n                do {\n                  local_7c = unaff_s0;\n                  local_78 = unaff_s4;\n                  local_74 = unaff_s5;\n                  local_70 = unaff_s3;\n                  unaff_s6 = (undefined4 *******)\n                             (*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n                  pppppppuVar9 = local_80;\n                  if (unaff_s6 == (undefined4 *******)0x0) goto LAB_001c8908;\n                  unaff_s5 = (undefined4 *******)((int)unaff_s5 + (int)unaff_s0);\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);\n              }\n              unaff_s3 = (undefined4 *******)((int)unaff_s3 + (int)unaff_s4);\n              pppppppuVar9 = local_80;\n            }" ({ "{") (expression_statement "unaff_s5 = (undefined4 *******)0x0;" (assignment_expression "unaff_s5 = (undefined4 *******)0x0" (identifier "unaff_s5") (= "=") (cast_expression "(undefined4 *******)0x0" (( "(") (type_descriptor "undefined4 *******" (type_identifier "undefined4") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) (; ";")) (if_statement "if ((int)unaff_s7 < 1) {\n                pppppppuVar9 = local_80;\n                if (unaff_s6 == (undefined4 *******)0x0) break;\n              }\n              else {\n                do {\n                  local_7c = unaff_s0;\n                  local_78 = unaff_s4;\n                  local_74 = unaff_s5;\n                  local_70 = unaff_s3;\n                  unaff_s6 = (undefined4 *******)\n                             (*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n                  pppppppuVar9 = local_80;\n                  if (unaff_s6 == (undefined4 *******)0x0) goto LAB_001c8908;\n                  unaff_s5 = (undefined4 *******)((int)unaff_s5 + (int)unaff_s0);\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);\n              }" (if "if") (parenthesized_expression "((int)unaff_s7 < 1)" (( "(") (binary_expression "(int)unaff_s7 < 1" (cast_expression "(int)unaff_s7" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "unaff_s7")) (< "<") (number_literal "1")) () ")")) (compound_statement "{\n                pppppppuVar9 = local_80;\n                if (unaff_s6 == (undefined4 *******)0x0) break;\n              }" ({ "{") (expression_statement "pppppppuVar9 = local_80;" (assignment_expression "pppppppuVar9 = local_80" (identifier "pppppppuVar9") (= "=") (identifier "local_80")) (; ";")) (if_statement "if (unaff_s6 == (undefined4 *******)0x0) break;" (if "if") (parenthesized_expression "(unaff_s6 == (undefined4 *******)0x0)" (( "(") (binary_expression "unaff_s6 == (undefined4 *******)0x0" (identifier "unaff_s6") (== "==") (cast_expression "(undefined4 *******)0x0" (( "(") (type_descriptor "undefined4 *******" (type_identifier "undefined4") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (break_statement "break;" (break "break") (; ";"))) (} "}")) (else_clause "else {\n                do {\n                  local_7c = unaff_s0;\n                  local_78 = unaff_s4;\n                  local_74 = unaff_s5;\n                  local_70 = unaff_s3;\n                  unaff_s6 = (undefined4 *******)\n                             (*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n                  pppppppuVar9 = local_80;\n                  if (unaff_s6 == (undefined4 *******)0x0) goto LAB_001c8908;\n                  unaff_s5 = (undefined4 *******)((int)unaff_s5 + (int)unaff_s0);\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);\n              }" (else "else") (compound_statement "{\n                do {\n                  local_7c = unaff_s0;\n                  local_78 = unaff_s4;\n                  local_74 = unaff_s5;\n                  local_70 = unaff_s3;\n                  unaff_s6 = (undefined4 *******)\n                             (*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n                  pppppppuVar9 = local_80;\n                  if (unaff_s6 == (undefined4 *******)0x0) goto LAB_001c8908;\n                  unaff_s5 = (undefined4 *******)((int)unaff_s5 + (int)unaff_s0);\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);\n              }" ({ "{") (do_statement "do {\n                  local_7c = unaff_s0;\n                  local_78 = unaff_s4;\n                  local_74 = unaff_s5;\n                  local_70 = unaff_s3;\n                  unaff_s6 = (undefined4 *******)\n                             (*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n                  pppppppuVar9 = local_80;\n                  if (unaff_s6 == (undefined4 *******)0x0) goto LAB_001c8908;\n                  unaff_s5 = (undefined4 *******)((int)unaff_s5 + (int)unaff_s0);\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                } while ((int)unaff_s5 < (int)unaff_s7);" (do "do") (compound_statement "{\n                  local_7c = unaff_s0;\n                  local_78 = unaff_s4;\n                  local_74 = unaff_s5;\n                  local_70 = unaff_s3;\n                  unaff_s6 = (undefined4 *******)\n                             (*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);\n                  pppppppuVar9 = local_80;\n                  if (unaff_s6 == (undefined4 *******)0x0) goto LAB_001c8908;\n                  unaff_s5 = (undefined4 *******)((int)unaff_s5 + (int)unaff_s0);\n                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);\n                }" ({ "{") (expression_statement "local_7c = unaff_s0;" (assignment_expression "local_7c = unaff_s0" (identifier "local_7c") (= "=") (identifier "unaff_s0")) (; ";")) (expression_statement "local_78 = unaff_s4;" (assignment_expression "local_78 = unaff_s4" (identifier "local_78") (= "=") (identifier "unaff_s4")) (; ";")) (expression_statement "local_74 = unaff_s5;" (assignment_expression "local_74 = unaff_s5" (identifier "local_74") (= "=") (identifier "unaff_s5")) (; ";")) (expression_statement "local_70 = unaff_s3;" (assignment_expression "local_70 = unaff_s3" (identifier "local_70") (= "=") (identifier "unaff_s3")) (; ";")) (expression_statement "unaff_s6 = (undefined4 *******)\n                             (*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);" (assignment_expression "unaff_s6 = (undefined4 *******)\n                             (*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3)" (identifier "unaff_s6") (= "=") (cast_expression "(undefined4 *******)\n                             (*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3)" (( "(") (type_descriptor "undefined4 *******" (type_identifier "undefined4") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (call_expression "(*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3)" (parenthesized_expression "(*(code *)PTR_CropImage_003a90b8)" (( "(") (pointer_expression "*(code *)PTR_CropImage_003a90b8" (* "*") (cast_expression "(code *)PTR_CropImage_003a90b8" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_CropImage_003a90b8"))) () ")")) (argument_list "(param_1,&local_7c,param_3)" (( "(") (identifier "param_1") (, ",") (pointer_expression "&local_7c" (& "&") (identifier "local_7c")) (, ",") (identifier "param_3") () ")"))))) (; ";")) (expression_statement "pppppppuVar9 = local_80;" (assignment_expression "pppppppuVar9 = local_80" (identifier "pppppppuVar9") (= "=") (identifier "local_80")) (; ";")) (if_statement "if (unaff_s6 == (undefined4 *******)0x0) goto LAB_001c8908;" (if "if") (parenthesized_expression "(unaff_s6 == (undefined4 *******)0x0)" (( "(") (binary_expression "unaff_s6 == (undefined4 *******)0x0" (identifier "unaff_s6") (== "==") (cast_expression "(undefined4 *******)0x0" (( "(") (type_descriptor "undefined4 *******" (type_identifier "undefined4") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (goto_statement "goto LAB_001c8908;" (goto "goto") (statement_identifier "LAB_001c8908") (; ";"))) (expression_statement "unaff_s5 = (undefined4 *******)((int)unaff_s5 + (int)unaff_s0);" (assignment_expression "unaff_s5 = (undefined4 *******)((int)unaff_s5 + (int)unaff_s0)" (identifier "unaff_s5") (= "=") (cast_expression "(undefined4 *******)((int)unaff_s5 + (int)unaff_s0)" (( "(") (type_descriptor "undefined4 *******" (type_identifier "undefined4") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "((int)unaff_s5 + (int)unaff_s0)" (( "(") (binary_expression "(int)unaff_s5 + (int)unaff_s0" (cast_expression "(int)unaff_s5" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "unaff_s5")) (+ "+") (cast_expression "(int)unaff_s0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "unaff_s0"))) () ")")))) (; ";")) (expression_statement "(*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);" (call_expression "(*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6)" (parenthesized_expression "(*(code *)PTR_AppendImageToList_003a9880)" (( "(") (pointer_expression "*(code *)PTR_AppendImageToList_003a9880" (* "*") (cast_expression "(code *)PTR_AppendImageToList_003a9880" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_AppendImageToList_003a9880"))) () ")")) (argument_list "(unaff_s8,unaff_s6)" (( "(") (identifier "unaff_s8") (, ",") (identifier "unaff_s6") () ")"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "((int)unaff_s5 < (int)unaff_s7)" (( "(") (binary_expression "(int)unaff_s5 < (int)unaff_s7" (cast_expression "(int)unaff_s5" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "unaff_s5")) (< "<") (cast_expression "(int)unaff_s7" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "unaff_s7"))) () ")")) (; ";")) (} "}")))) (expression_statement "unaff_s3 = (undefined4 *******)((int)unaff_s3 + (int)unaff_s4);" (assignment_expression "unaff_s3 = (undefined4 *******)((int)unaff_s3 + (int)unaff_s4)" (identifier "unaff_s3") (= "=") (cast_expression "(undefined4 *******)((int)unaff_s3 + (int)unaff_s4)" (( "(") (type_descriptor "undefined4 *******" (type_identifier "undefined4") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "((int)unaff_s3 + (int)unaff_s4)" (( "(") (binary_expression "(int)unaff_s3 + (int)unaff_s4" (cast_expression "(int)unaff_s3" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "unaff_s3")) (+ "+") (cast_expression "(int)unaff_s4" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "unaff_s4"))) () ")")))) (; ";")) (expression_statement "pppppppuVar9 = local_80;" (assignment_expression "pppppppuVar9 = local_80" (identifier "pppppppuVar9") (= "=") (identifier "local_80")) (; ";")) (} "}")) (while "while") (parenthesized_expression "((int)unaff_s3 < (int)ppppppuVar2)" (( "(") (binary_expression "(int)unaff_s3 < (int)ppppppuVar2" (cast_expression "(int)unaff_s3" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "unaff_s3")) (< "<") (cast_expression "(int)ppppppuVar2" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "ppppppuVar2"))) () ")")) (; ";")) (} "}"))) (} "}")) (else_clause "else {\n          local_e8 = param_3;\n          pppppppuVar9 = (undefined4 *******)(*(code *)PTR_CloneImage_003a9830)(param_1,0,0,1);\n        }" (else "else") (compound_statement "{\n          local_e8 = param_3;\n          pppppppuVar9 = (undefined4 *******)(*(code *)PTR_CloneImage_003a9830)(param_1,0,0,1);\n        }" ({ "{") (expression_statement "local_e8 = param_3;" (assignment_expression "local_e8 = param_3" (identifier "local_e8") (= "=") (identifier "param_3")) (; ";")) (expression_statement "pppppppuVar9 = (undefined4 *******)(*(code *)PTR_CloneImage_003a9830)(param_1,0,0,1);" (assignment_expression "pppppppuVar9 = (undefined4 *******)(*(code *)PTR_CloneImage_003a9830)(param_1,0,0,1)" (identifier "pppppppuVar9") (= "=") (cast_expression "(undefined4 *******)(*(code *)PTR_CloneImage_003a9830)(param_1,0,0,1)" (( "(") (type_descriptor "undefined4 *******" (type_identifier "undefined4") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (call_expression "(*(code *)PTR_CloneImage_003a9830)(param_1,0,0,1)" (parenthesized_expression "(*(code *)PTR_CloneImage_003a9830)" (( "(") (pointer_expression "*(code *)PTR_CloneImage_003a9830" (* "*") (cast_expression "(code *)PTR_CloneImage_003a9830" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_CloneImage_003a9830"))) () ")")) (argument_list "(param_1,0,0,1)" (( "(") (identifier "param_1") (, ",") (number_literal "0") (, ",") (number_literal "0") (, ",") (number_literal "1") () ")"))))) (; ";")) (} "}")))) (} "}")))) (} "}")))) (labeled_statement "LAB_001c8908:\n    if (local_5c == *(int *)puVar20) {\n      return pppppppuVar9;\n    }" (statement_identifier "LAB_001c8908") (: ":") (if_statement "if (local_5c == *(int *)puVar20) {\n      return pppppppuVar9;\n    }" (if "if") (parenthesized_expression "(local_5c == *(int *)puVar20)" (( "(") (binary_expression "local_5c == *(int *)puVar20" (identifier "local_5c") (== "==") (pointer_expression "*(int *)puVar20" (* "*") (cast_expression "(int *)puVar20" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "puVar20")))) () ")")) (compound_statement "{\n      return pppppppuVar9;\n    }" ({ "{") (return_statement "return pppppppuVar9;" (return "return") (identifier "pppppppuVar9") (; ";")) (} "}")))) (expression_statement "(*(code *)PTR___stack_chk_fail_003a9064)();" (call_expression "(*(code *)PTR___stack_chk_fail_003a9064)()" (parenthesized_expression "(*(code *)PTR___stack_chk_fail_003a9064)" (( "(") (pointer_expression "*(code *)PTR___stack_chk_fail_003a9064" (* "*") (cast_expression "(code *)PTR___stack_chk_fail_003a9064" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR___stack_chk_fail_003a9064"))) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "unaff_s1 = param_1;" (assignment_expression "unaff_s1 = param_1" (identifier "unaff_s1") (= "=") (identifier "param_1")) (; ";")) (expression_statement "unaff_s2 = param_3;" (assignment_expression "unaff_s2 = param_3" (identifier "unaff_s2") (= "=") (identifier "param_3")) (; ";")) (goto_statement "goto LAB_001c8ef8;" (goto "goto") (statement_identifier "LAB_001c8ef8") (; ";")) (} "}"))))) (expression_statement "ppppppuVar2 = (undefined4 ******)0x323;" (assignment_expression "ppppppuVar2 = (undefined4 ******)0x323" (identifier "ppppppuVar2") (= "=") (cast_expression "(undefined4 ******)0x323" (( "(") (type_descriptor "undefined4 ******" (type_identifier "undefined4") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (number_literal "0x323"))) (; ";")) (expression_statement "pppppppuVar12 = (undefined4 *******)(PTR_s_courses_003a88ec + -0x288c);" (assignment_expression "pppppppuVar12 = (undefined4 *******)(PTR_s_courses_003a88ec + -0x288c)" (identifier "pppppppuVar12") (= "=") (cast_expression "(undefined4 *******)(PTR_s_courses_003a88ec + -0x288c)" (( "(") (type_descriptor "undefined4 *******" (type_identifier "undefined4") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "(PTR_s_courses_003a88ec + -0x288c)" (( "(") (binary_expression "PTR_s_courses_003a88ec + -0x288c" (identifier "PTR_s_courses_003a88ec") (+ "+") (number_literal "-0x288c")) () ")")))) (; ";")) (expression_statement "pcVar23 = ExcerptImage;" (assignment_expression "pcVar23 = ExcerptImage" (identifier "pcVar23") (= "=") (identifier "ExcerptImage")) (; ";")) (expression_statement "pppppppuVar9 = (undefined4 *******)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3784);" (assignment_expression "pppppppuVar9 = (undefined4 *******)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3784)" (identifier "pppppppuVar9") (= "=") (cast_expression "(undefined4 *******)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3784)" (( "(") (type_descriptor "undefined4 *******" (type_identifier "undefined4") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3784)" (( "(") (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3784" (identifier "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8") (+ "+") (number_literal "-0x3784")) () ")")))) (; ";")) (expression_statement "puVar20 = PTR___assert_fail_003a9608;" (assignment_expression "puVar20 = PTR___assert_fail_003a9608" (identifier "puVar20") (= "=") (identifier "PTR___assert_fail_003a9608")) (; ";")) (expression_statement "(*(code *)PTR___assert_fail_003a9608)();" (call_expression "(*(code *)PTR___assert_fail_003a9608)()" (parenthesized_expression "(*(code *)PTR___assert_fail_003a9608)" (( "(") (pointer_expression "*(code *)PTR___assert_fail_003a9608" (* "*") (cast_expression "(code *)PTR___assert_fail_003a9608" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR___assert_fail_003a9608"))) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "puVar8 = puVar20 + 0x1e7970;" (assignment_expression "puVar8 = puVar20 + 0x1e7970" (identifier "puVar8") (= "=") (binary_expression "puVar20 + 0x1e7970" (identifier "puVar20") (+ "+") (number_literal "0x1e7970"))) (; ";")) (expression_statement "piVar18 = *(int **)(puVar20 + 0x1e02f0);" (assignment_expression "piVar18 = *(int **)(puVar20 + 0x1e02f0)" (identifier "piVar18") (= "=") (pointer_expression "*(int **)(puVar20 + 0x1e02f0)" (* "*") (cast_expression "(int **)(puVar20 + 0x1e02f0)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar20 + 0x1e02f0)" (( "(") (binary_expression "puVar20 + 0x1e02f0" (identifier "puVar20") (+ "+") (number_literal "0x1e02f0")) () ")"))))) (; ";")) (expression_statement "iStack_11c = *piVar18;" (assignment_expression "iStack_11c = *piVar18" (identifier "iStack_11c") (= "=") (pointer_expression "*piVar18" (* "*") (identifier "piVar18"))) (; ";")) (expression_statement "puStack_150 = puVar8;" (assignment_expression "puStack_150 = puVar8" (identifier "puStack_150") (= "=") (identifier "puVar8")) (; ";")) (expression_statement "pppppppuStack_118 = unaff_s0;" (assignment_expression "pppppppuStack_118 = unaff_s0" (identifier "pppppppuStack_118") (= "=") (identifier "unaff_s0")) (; ";")) (expression_statement "pppppppuStack_114 = param_1;" (assignment_expression "pppppppuStack_114 = param_1" (identifier "pppppppuStack_114") (= "=") (identifier "param_1")) (; ";")) (expression_statement "ppppppuStack_110 = unaff_s2;" (assignment_expression "ppppppuStack_110 = unaff_s2" (identifier "ppppppuStack_110") (= "=") (identifier "unaff_s2")) (; ";")) (expression_statement "pppppppuStack_10c = unaff_s3;" (assignment_expression "pppppppuStack_10c = unaff_s3" (identifier "pppppppuStack_10c") (= "=") (identifier "unaff_s3")) (; ";")) (expression_statement "ppppppuStack_108 = unaff_s4;" (assignment_expression "ppppppuStack_108 = unaff_s4" (identifier "ppppppuStack_108") (= "=") (identifier "unaff_s4")) (; ";")) (expression_statement "pppppppuStack_104 = unaff_s5;" (assignment_expression "pppppppuStack_104 = unaff_s5" (identifier "pppppppuStack_104") (= "=") (identifier "unaff_s5")) (; ";")) (expression_statement "pppppppuStack_100 = unaff_s6;" (assignment_expression "pppppppuStack_100 = unaff_s6" (identifier "pppppppuStack_100") (= "=") (identifier "unaff_s6")) (; ";")) (expression_statement "pcStack_fc = pcVar23;" (assignment_expression "pcStack_fc = pcVar23" (identifier "pcStack_fc") (= "=") (identifier "pcVar23")) (; ";")) (if_statement "if (pppppppuVar9 == (undefined4 *******)0x0) {\n    iVar15 = *(int *)(puVar20 + 0x1df9ac) + -0x26ac;\n    (**(code **)(puVar20 + 0x1e06c8))\n              (*(int *)(puVar20 + 0x1df9a8) + -0x37b0,*(int *)(puVar20 + 0x1df9ac) + -0x288c,0x3f4,\n               iVar15);\nLAB_001c92d4:\n    iVar15 = iVar15 + -0x26ac;\n    (**(code **)(puVar8 + -0x72a8))\n              (*(int *)(puVar8 + -0x7fd0) + 0x294c,*(int *)(puVar8 + -0x7fc4) + -0x288c,0x3fa,iVar15\n              );\n    ppppppuVar2 = unaff_s2;\nLAB_001c92f4:\n    iVar15 = iVar15 + -0x26ac;\n    (**(code **)(puVar8 + -0x72a8))\n              (*(int *)(puVar8 + -0x7fd0) + 0x1cac,*(int *)(puVar8 + -0x7fc4) + -0x288c,0x3f9,iVar15\n              );\nLAB_001c9314:\n    (**(code **)(puVar8 + -0x784c))();\n    pppppppuVar9 = unaff_s0;\nLAB_001c9320:\n    (**(code **)(puVar8 + -0x72a8))\n              (*(int *)(puVar8 + -0x7fc4) + -0x2850,*(int *)(puVar8 + -0x7fc4) + -0x288c,0x3f8,\n               iVar15 + -0x26ac);\n    unaff_s2 = ppppppuVar2;\n  }\n  else if (pppppppuVar9[0xcdb] == (undefined4 ******)0xabacadab) {\n    if (pppppppuVar9[0xcd4] != (undefined4 ******)0x0) {\n      pppppppuStack_154 = pppppppuVar9 + 0xd0;\n      ppppppuStack_158 = (undefined4 ******)(*(int *)(puVar20 + 0x1df9a4) + -0x62ac);\n      (**(code **)(puVar20 + 0x1e02a0))\n                (0x8000,*(int *)(puVar20 + 0x1df9ac) + -0x288c,\n                 *(int *)(puVar20 + 0x1df9ac) + -0x26bc,0x3f7);\n    }\n    iVar15 = *(int *)(puStack_150 + -0x7fc4);\n    unaff_s3 = pppppppuVar12;\n    puVar8 = puStack_150;\n    if (pppppppuVar12 != (undefined4 *******)0x0) {\n      unaff_s0 = pppppppuVar9;\n      if (ppppppuVar2 == (undefined4 ******)0x0) goto LAB_001c92f4;\n      unaff_s2 = ppppppuVar2;\n      if (ppppppuVar2[7] != (undefined4 *****)0xabacadab) goto LAB_001c92d4;\n      iVar15 = 1;\n      ppppppuStack_158 = ppppppuVar2;\n      param_1 = (undefined4 *******)\n                (**(code **)(puStack_150 + -0x7080))(pppppppuVar9,*pppppppuVar12,pppppppuVar12[1],1)\n      ;\n      if (param_1 != (undefined4 *******)0x0) {\n        uStack_144 = 0;\n        uStack_148 = 0;\n        unaff_s5 = (undefined4 *******)\n                   (**(code **)(puStack_150 + -0x715c))(pppppppuVar9,ppppppuVar2);\n        unaff_s6 = (undefined4 *******)(**(code **)(puStack_150 + -0x79dc))(param_1,ppppppuVar2);\n        iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9);\n        if (((iVar15 == 4) ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9), iVar15 == 3)) &&\n           ((iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 4 ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 3)))) {\n          (**(code **)(puStack_150 + -0x7774))(7);\n          ppppppuVar7 = param_1[7];\n          if ((int)ppppppuVar7 < 0) {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1 < (int)ppppppuVar7 + 0x3f >> 6) goto LAB_001c9298;\nLAB_001c91a4:\n            bVar1 = (int)ppppppuVar7 < 0x80;\n          }\n          else {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if ((int)ppppppuVar7 >> 6 <= extraout_v1) goto LAB_001c91a4;\nLAB_001c9298:\n            (*pcVar23)(7);\n            bVar1 = extraout_v1_02 < 2;\n          }\n          iVar14 = 1;\n          if ((bool)(bVar1 ^ 1)) {\n            (**(code **)(puStack_150 + -0x7774))(7);\n            ppppppuVar7 = param_1[7];\n            if ((int)ppppppuVar7 < 0) {\n              ppppppuVar7 = (undefined4 ******)((int)ppppppuVar7 + 0x3f);\n            }\n            iVar14 = (int)ppppppuVar7 >> 6;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1_01 < iVar14) {\nLAB_001c9234:\n              (*pcVar23)(7);\n              iVar14 = extraout_v1_00;\n            }\n            goto LAB_001c9088;\n          }\n          iVar10 = *(int *)(puStack_150 + -0x7f10);\n        }\n        else {\n          uVar36 = (**(code **)(puStack_150 + -0x7774))(7);\n          if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            uVar36 = (*pcVar23)(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c9070;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            iVar14 = 1;\n          }\n          else {\nLAB_001c9070:\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\nLAB_001c9074:\n            uVar36 = (*pcVar23)(7);\n            if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n               (pcVar23 = *(code **)(puStack_150 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c9234;\n            iVar14 = 2;\n          }\nLAB_001c9088:\n          iVar10 = *(int *)(puStack_150 + -0x7f10);\n        }\n        iVar15 = 0;\n        ppppppuStack_124 = (undefined4 ******)0x1;\n        puStack_120 = &uStack_148;\n        pppppppuStack_13c = pppppppuVar9;\n        pppppppuStack_138 = pppppppuVar12;\n        ppppppuStack_134 = ppppppuVar2;\n        pppppppuStack_130 = unaff_s6;\n        pppppppuStack_12c = unaff_s5;\n        pppppppuStack_128 = param_1;\n        (**(code **)(puStack_150 + -0x7718))(iVar10 + 0x5428,&pppppppuStack_13c,iVar14,0);\n        ppppppuVar2 = ppppppuStack_124;\n        (**(code **)(puStack_150 + -0x79bc))(unaff_s6);\n        (**(code **)(puStack_150 + -0x79bc))(unaff_s5);\n        param_1[0xa8] = pppppppuVar9[0xa8];\n        if (ppppppuVar2 == (undefined4 ******)0x0) {\n          param_1 = (undefined4 *******)(**(code **)(puStack_150 + -0x7964))(param_1);\n        }\n      }\n      puVar8 = puStack_150;\n      if (iStack_11c == *piVar18) {\n        return param_1;\n      }\n      goto LAB_001c9314;\n    }\n    goto LAB_001c9320;\n  }" (if "if") (parenthesized_expression "(pppppppuVar9 == (undefined4 *******)0x0)" (( "(") (binary_expression "pppppppuVar9 == (undefined4 *******)0x0" (identifier "pppppppuVar9") (== "==") (cast_expression "(undefined4 *******)0x0" (( "(") (type_descriptor "undefined4 *******" (type_identifier "undefined4") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n    iVar15 = *(int *)(puVar20 + 0x1df9ac) + -0x26ac;\n    (**(code **)(puVar20 + 0x1e06c8))\n              (*(int *)(puVar20 + 0x1df9a8) + -0x37b0,*(int *)(puVar20 + 0x1df9ac) + -0x288c,0x3f4,\n               iVar15);\nLAB_001c92d4:\n    iVar15 = iVar15 + -0x26ac;\n    (**(code **)(puVar8 + -0x72a8))\n              (*(int *)(puVar8 + -0x7fd0) + 0x294c,*(int *)(puVar8 + -0x7fc4) + -0x288c,0x3fa,iVar15\n              );\n    ppppppuVar2 = unaff_s2;\nLAB_001c92f4:\n    iVar15 = iVar15 + -0x26ac;\n    (**(code **)(puVar8 + -0x72a8))\n              (*(int *)(puVar8 + -0x7fd0) + 0x1cac,*(int *)(puVar8 + -0x7fc4) + -0x288c,0x3f9,iVar15\n              );\nLAB_001c9314:\n    (**(code **)(puVar8 + -0x784c))();\n    pppppppuVar9 = unaff_s0;\nLAB_001c9320:\n    (**(code **)(puVar8 + -0x72a8))\n              (*(int *)(puVar8 + -0x7fc4) + -0x2850,*(int *)(puVar8 + -0x7fc4) + -0x288c,0x3f8,\n               iVar15 + -0x26ac);\n    unaff_s2 = ppppppuVar2;\n  }" ({ "{") (expression_statement "iVar15 = *(int *)(puVar20 + 0x1df9ac) + -0x26ac;" (assignment_expression "iVar15 = *(int *)(puVar20 + 0x1df9ac) + -0x26ac" (identifier "iVar15") (= "=") (binary_expression "*(int *)(puVar20 + 0x1df9ac) + -0x26ac" (pointer_expression "*(int *)(puVar20 + 0x1df9ac)" (* "*") (cast_expression "(int *)(puVar20 + 0x1df9ac)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar20 + 0x1df9ac)" (( "(") (binary_expression "puVar20 + 0x1df9ac" (identifier "puVar20") (+ "+") (number_literal "0x1df9ac")) () ")")))) (+ "+") (number_literal "-0x26ac"))) (; ";")) (expression_statement "(**(code **)(puVar20 + 0x1e06c8))\n              (*(int *)(puVar20 + 0x1df9a8) + -0x37b0,*(int *)(puVar20 + 0x1df9ac) + -0x288c,0x3f4,\n               iVar15);" (call_expression "(**(code **)(puVar20 + 0x1e06c8))\n              (*(int *)(puVar20 + 0x1df9a8) + -0x37b0,*(int *)(puVar20 + 0x1df9ac) + -0x288c,0x3f4,\n               iVar15)" (parenthesized_expression "(**(code **)(puVar20 + 0x1e06c8))" (( "(") (pointer_expression "**(code **)(puVar20 + 0x1e06c8)" (* "*") (pointer_expression "*(code **)(puVar20 + 0x1e06c8)" (* "*") (cast_expression "(code **)(puVar20 + 0x1e06c8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar20 + 0x1e06c8)" (( "(") (binary_expression "puVar20 + 0x1e06c8" (identifier "puVar20") (+ "+") (number_literal "0x1e06c8")) () ")"))))) () ")")) (argument_list "(*(int *)(puVar20 + 0x1df9a8) + -0x37b0,*(int *)(puVar20 + 0x1df9ac) + -0x288c,0x3f4,\n               iVar15)" (( "(") (binary_expression "*(int *)(puVar20 + 0x1df9a8) + -0x37b0" (pointer_expression "*(int *)(puVar20 + 0x1df9a8)" (* "*") (cast_expression "(int *)(puVar20 + 0x1df9a8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar20 + 0x1df9a8)" (( "(") (binary_expression "puVar20 + 0x1df9a8" (identifier "puVar20") (+ "+") (number_literal "0x1df9a8")) () ")")))) (+ "+") (number_literal "-0x37b0")) (, ",") (binary_expression "*(int *)(puVar20 + 0x1df9ac) + -0x288c" (pointer_expression "*(int *)(puVar20 + 0x1df9ac)" (* "*") (cast_expression "(int *)(puVar20 + 0x1df9ac)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar20 + 0x1df9ac)" (( "(") (binary_expression "puVar20 + 0x1df9ac" (identifier "puVar20") (+ "+") (number_literal "0x1df9ac")) () ")")))) (+ "+") (number_literal "-0x288c")) (, ",") (number_literal "0x3f4") (, ",") (identifier "iVar15") () ")"))) (; ";")) (labeled_statement "LAB_001c92d4:\n    iVar15 = iVar15 + -0x26ac;" (statement_identifier "LAB_001c92d4") (: ":") (expression_statement "iVar15 = iVar15 + -0x26ac;" (assignment_expression "iVar15 = iVar15 + -0x26ac" (identifier "iVar15") (= "=") (binary_expression "iVar15 + -0x26ac" (identifier "iVar15") (+ "+") (number_literal "-0x26ac"))) (; ";"))) (expression_statement "(**(code **)(puVar8 + -0x72a8))\n              (*(int *)(puVar8 + -0x7fd0) + 0x294c,*(int *)(puVar8 + -0x7fc4) + -0x288c,0x3fa,iVar15\n              );" (call_expression "(**(code **)(puVar8 + -0x72a8))\n              (*(int *)(puVar8 + -0x7fd0) + 0x294c,*(int *)(puVar8 + -0x7fc4) + -0x288c,0x3fa,iVar15\n              )" (parenthesized_expression "(**(code **)(puVar8 + -0x72a8))" (( "(") (pointer_expression "**(code **)(puVar8 + -0x72a8)" (* "*") (pointer_expression "*(code **)(puVar8 + -0x72a8)" (* "*") (cast_expression "(code **)(puVar8 + -0x72a8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar8 + -0x72a8)" (( "(") (binary_expression "puVar8 + -0x72a8" (identifier "puVar8") (+ "+") (number_literal "-0x72a8")) () ")"))))) () ")")) (argument_list "(*(int *)(puVar8 + -0x7fd0) + 0x294c,*(int *)(puVar8 + -0x7fc4) + -0x288c,0x3fa,iVar15\n              )" (( "(") (binary_expression "*(int *)(puVar8 + -0x7fd0) + 0x294c" (pointer_expression "*(int *)(puVar8 + -0x7fd0)" (* "*") (cast_expression "(int *)(puVar8 + -0x7fd0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + -0x7fd0)" (( "(") (binary_expression "puVar8 + -0x7fd0" (identifier "puVar8") (+ "+") (number_literal "-0x7fd0")) () ")")))) (+ "+") (number_literal "0x294c")) (, ",") (binary_expression "*(int *)(puVar8 + -0x7fc4) + -0x288c" (pointer_expression "*(int *)(puVar8 + -0x7fc4)" (* "*") (cast_expression "(int *)(puVar8 + -0x7fc4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + -0x7fc4)" (( "(") (binary_expression "puVar8 + -0x7fc4" (identifier "puVar8") (+ "+") (number_literal "-0x7fc4")) () ")")))) (+ "+") (number_literal "-0x288c")) (, ",") (number_literal "0x3fa") (, ",") (identifier "iVar15") () ")"))) (; ";")) (expression_statement "ppppppuVar2 = unaff_s2;" (assignment_expression "ppppppuVar2 = unaff_s2" (identifier "ppppppuVar2") (= "=") (identifier "unaff_s2")) (; ";")) (labeled_statement "LAB_001c92f4:\n    iVar15 = iVar15 + -0x26ac;" (statement_identifier "LAB_001c92f4") (: ":") (expression_statement "iVar15 = iVar15 + -0x26ac;" (assignment_expression "iVar15 = iVar15 + -0x26ac" (identifier "iVar15") (= "=") (binary_expression "iVar15 + -0x26ac" (identifier "iVar15") (+ "+") (number_literal "-0x26ac"))) (; ";"))) (expression_statement "(**(code **)(puVar8 + -0x72a8))\n              (*(int *)(puVar8 + -0x7fd0) + 0x1cac,*(int *)(puVar8 + -0x7fc4) + -0x288c,0x3f9,iVar15\n              );" (call_expression "(**(code **)(puVar8 + -0x72a8))\n              (*(int *)(puVar8 + -0x7fd0) + 0x1cac,*(int *)(puVar8 + -0x7fc4) + -0x288c,0x3f9,iVar15\n              )" (parenthesized_expression "(**(code **)(puVar8 + -0x72a8))" (( "(") (pointer_expression "**(code **)(puVar8 + -0x72a8)" (* "*") (pointer_expression "*(code **)(puVar8 + -0x72a8)" (* "*") (cast_expression "(code **)(puVar8 + -0x72a8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar8 + -0x72a8)" (( "(") (binary_expression "puVar8 + -0x72a8" (identifier "puVar8") (+ "+") (number_literal "-0x72a8")) () ")"))))) () ")")) (argument_list "(*(int *)(puVar8 + -0x7fd0) + 0x1cac,*(int *)(puVar8 + -0x7fc4) + -0x288c,0x3f9,iVar15\n              )" (( "(") (binary_expression "*(int *)(puVar8 + -0x7fd0) + 0x1cac" (pointer_expression "*(int *)(puVar8 + -0x7fd0)" (* "*") (cast_expression "(int *)(puVar8 + -0x7fd0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + -0x7fd0)" (( "(") (binary_expression "puVar8 + -0x7fd0" (identifier "puVar8") (+ "+") (number_literal "-0x7fd0")) () ")")))) (+ "+") (number_literal "0x1cac")) (, ",") (binary_expression "*(int *)(puVar8 + -0x7fc4) + -0x288c" (pointer_expression "*(int *)(puVar8 + -0x7fc4)" (* "*") (cast_expression "(int *)(puVar8 + -0x7fc4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + -0x7fc4)" (( "(") (binary_expression "puVar8 + -0x7fc4" (identifier "puVar8") (+ "+") (number_literal "-0x7fc4")) () ")")))) (+ "+") (number_literal "-0x288c")) (, ",") (number_literal "0x3f9") (, ",") (identifier "iVar15") () ")"))) (; ";")) (labeled_statement "LAB_001c9314:\n    (**(code **)(puVar8 + -0x784c))();" (statement_identifier "LAB_001c9314") (: ":") (expression_statement "(**(code **)(puVar8 + -0x784c))();" (call_expression "(**(code **)(puVar8 + -0x784c))()" (parenthesized_expression "(**(code **)(puVar8 + -0x784c))" (( "(") (pointer_expression "**(code **)(puVar8 + -0x784c)" (* "*") (pointer_expression "*(code **)(puVar8 + -0x784c)" (* "*") (cast_expression "(code **)(puVar8 + -0x784c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar8 + -0x784c)" (( "(") (binary_expression "puVar8 + -0x784c" (identifier "puVar8") (+ "+") (number_literal "-0x784c")) () ")"))))) () ")")) (argument_list "()" (( "(") () ")"))) (; ";"))) (expression_statement "pppppppuVar9 = unaff_s0;" (assignment_expression "pppppppuVar9 = unaff_s0" (identifier "pppppppuVar9") (= "=") (identifier "unaff_s0")) (; ";")) (labeled_statement "LAB_001c9320:\n    (**(code **)(puVar8 + -0x72a8))\n              (*(int *)(puVar8 + -0x7fc4) + -0x2850,*(int *)(puVar8 + -0x7fc4) + -0x288c,0x3f8,\n               iVar15 + -0x26ac);" (statement_identifier "LAB_001c9320") (: ":") (expression_statement "(**(code **)(puVar8 + -0x72a8))\n              (*(int *)(puVar8 + -0x7fc4) + -0x2850,*(int *)(puVar8 + -0x7fc4) + -0x288c,0x3f8,\n               iVar15 + -0x26ac);" (call_expression "(**(code **)(puVar8 + -0x72a8))\n              (*(int *)(puVar8 + -0x7fc4) + -0x2850,*(int *)(puVar8 + -0x7fc4) + -0x288c,0x3f8,\n               iVar15 + -0x26ac)" (parenthesized_expression "(**(code **)(puVar8 + -0x72a8))" (( "(") (pointer_expression "**(code **)(puVar8 + -0x72a8)" (* "*") (pointer_expression "*(code **)(puVar8 + -0x72a8)" (* "*") (cast_expression "(code **)(puVar8 + -0x72a8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar8 + -0x72a8)" (( "(") (binary_expression "puVar8 + -0x72a8" (identifier "puVar8") (+ "+") (number_literal "-0x72a8")) () ")"))))) () ")")) (argument_list "(*(int *)(puVar8 + -0x7fc4) + -0x2850,*(int *)(puVar8 + -0x7fc4) + -0x288c,0x3f8,\n               iVar15 + -0x26ac)" (( "(") (binary_expression "*(int *)(puVar8 + -0x7fc4) + -0x2850" (pointer_expression "*(int *)(puVar8 + -0x7fc4)" (* "*") (cast_expression "(int *)(puVar8 + -0x7fc4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + -0x7fc4)" (( "(") (binary_expression "puVar8 + -0x7fc4" (identifier "puVar8") (+ "+") (number_literal "-0x7fc4")) () ")")))) (+ "+") (number_literal "-0x2850")) (, ",") (binary_expression "*(int *)(puVar8 + -0x7fc4) + -0x288c" (pointer_expression "*(int *)(puVar8 + -0x7fc4)" (* "*") (cast_expression "(int *)(puVar8 + -0x7fc4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + -0x7fc4)" (( "(") (binary_expression "puVar8 + -0x7fc4" (identifier "puVar8") (+ "+") (number_literal "-0x7fc4")) () ")")))) (+ "+") (number_literal "-0x288c")) (, ",") (number_literal "0x3f8") (, ",") (binary_expression "iVar15 + -0x26ac" (identifier "iVar15") (+ "+") (number_literal "-0x26ac")) () ")"))) (; ";"))) (expression_statement "unaff_s2 = ppppppuVar2;" (assignment_expression "unaff_s2 = ppppppuVar2" (identifier "unaff_s2") (= "=") (identifier "ppppppuVar2")) (; ";")) (} "}")) (else_clause "else if (pppppppuVar9[0xcdb] == (undefined4 ******)0xabacadab) {\n    if (pppppppuVar9[0xcd4] != (undefined4 ******)0x0) {\n      pppppppuStack_154 = pppppppuVar9 + 0xd0;\n      ppppppuStack_158 = (undefined4 ******)(*(int *)(puVar20 + 0x1df9a4) + -0x62ac);\n      (**(code **)(puVar20 + 0x1e02a0))\n                (0x8000,*(int *)(puVar20 + 0x1df9ac) + -0x288c,\n                 *(int *)(puVar20 + 0x1df9ac) + -0x26bc,0x3f7);\n    }\n    iVar15 = *(int *)(puStack_150 + -0x7fc4);\n    unaff_s3 = pppppppuVar12;\n    puVar8 = puStack_150;\n    if (pppppppuVar12 != (undefined4 *******)0x0) {\n      unaff_s0 = pppppppuVar9;\n      if (ppppppuVar2 == (undefined4 ******)0x0) goto LAB_001c92f4;\n      unaff_s2 = ppppppuVar2;\n      if (ppppppuVar2[7] != (undefined4 *****)0xabacadab) goto LAB_001c92d4;\n      iVar15 = 1;\n      ppppppuStack_158 = ppppppuVar2;\n      param_1 = (undefined4 *******)\n                (**(code **)(puStack_150 + -0x7080))(pppppppuVar9,*pppppppuVar12,pppppppuVar12[1],1)\n      ;\n      if (param_1 != (undefined4 *******)0x0) {\n        uStack_144 = 0;\n        uStack_148 = 0;\n        unaff_s5 = (undefined4 *******)\n                   (**(code **)(puStack_150 + -0x715c))(pppppppuVar9,ppppppuVar2);\n        unaff_s6 = (undefined4 *******)(**(code **)(puStack_150 + -0x79dc))(param_1,ppppppuVar2);\n        iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9);\n        if (((iVar15 == 4) ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9), iVar15 == 3)) &&\n           ((iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 4 ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 3)))) {\n          (**(code **)(puStack_150 + -0x7774))(7);\n          ppppppuVar7 = param_1[7];\n          if ((int)ppppppuVar7 < 0) {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1 < (int)ppppppuVar7 + 0x3f >> 6) goto LAB_001c9298;\nLAB_001c91a4:\n            bVar1 = (int)ppppppuVar7 < 0x80;\n          }\n          else {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if ((int)ppppppuVar7 >> 6 <= extraout_v1) goto LAB_001c91a4;\nLAB_001c9298:\n            (*pcVar23)(7);\n            bVar1 = extraout_v1_02 < 2;\n          }\n          iVar14 = 1;\n          if ((bool)(bVar1 ^ 1)) {\n            (**(code **)(puStack_150 + -0x7774))(7);\n            ppppppuVar7 = param_1[7];\n            if ((int)ppppppuVar7 < 0) {\n              ppppppuVar7 = (undefined4 ******)((int)ppppppuVar7 + 0x3f);\n            }\n            iVar14 = (int)ppppppuVar7 >> 6;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1_01 < iVar14) {\nLAB_001c9234:\n              (*pcVar23)(7);\n              iVar14 = extraout_v1_00;\n            }\n            goto LAB_001c9088;\n          }\n          iVar10 = *(int *)(puStack_150 + -0x7f10);\n        }\n        else {\n          uVar36 = (**(code **)(puStack_150 + -0x7774))(7);\n          if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            uVar36 = (*pcVar23)(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c9070;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            iVar14 = 1;\n          }\n          else {\nLAB_001c9070:\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\nLAB_001c9074:\n            uVar36 = (*pcVar23)(7);\n            if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n               (pcVar23 = *(code **)(puStack_150 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c9234;\n            iVar14 = 2;\n          }\nLAB_001c9088:\n          iVar10 = *(int *)(puStack_150 + -0x7f10);\n        }\n        iVar15 = 0;\n        ppppppuStack_124 = (undefined4 ******)0x1;\n        puStack_120 = &uStack_148;\n        pppppppuStack_13c = pppppppuVar9;\n        pppppppuStack_138 = pppppppuVar12;\n        ppppppuStack_134 = ppppppuVar2;\n        pppppppuStack_130 = unaff_s6;\n        pppppppuStack_12c = unaff_s5;\n        pppppppuStack_128 = param_1;\n        (**(code **)(puStack_150 + -0x7718))(iVar10 + 0x5428,&pppppppuStack_13c,iVar14,0);\n        ppppppuVar2 = ppppppuStack_124;\n        (**(code **)(puStack_150 + -0x79bc))(unaff_s6);\n        (**(code **)(puStack_150 + -0x79bc))(unaff_s5);\n        param_1[0xa8] = pppppppuVar9[0xa8];\n        if (ppppppuVar2 == (undefined4 ******)0x0) {\n          param_1 = (undefined4 *******)(**(code **)(puStack_150 + -0x7964))(param_1);\n        }\n      }\n      puVar8 = puStack_150;\n      if (iStack_11c == *piVar18) {\n        return param_1;\n      }\n      goto LAB_001c9314;\n    }\n    goto LAB_001c9320;\n  }" (else "else") (if_statement "if (pppppppuVar9[0xcdb] == (undefined4 ******)0xabacadab) {\n    if (pppppppuVar9[0xcd4] != (undefined4 ******)0x0) {\n      pppppppuStack_154 = pppppppuVar9 + 0xd0;\n      ppppppuStack_158 = (undefined4 ******)(*(int *)(puVar20 + 0x1df9a4) + -0x62ac);\n      (**(code **)(puVar20 + 0x1e02a0))\n                (0x8000,*(int *)(puVar20 + 0x1df9ac) + -0x288c,\n                 *(int *)(puVar20 + 0x1df9ac) + -0x26bc,0x3f7);\n    }\n    iVar15 = *(int *)(puStack_150 + -0x7fc4);\n    unaff_s3 = pppppppuVar12;\n    puVar8 = puStack_150;\n    if (pppppppuVar12 != (undefined4 *******)0x0) {\n      unaff_s0 = pppppppuVar9;\n      if (ppppppuVar2 == (undefined4 ******)0x0) goto LAB_001c92f4;\n      unaff_s2 = ppppppuVar2;\n      if (ppppppuVar2[7] != (undefined4 *****)0xabacadab) goto LAB_001c92d4;\n      iVar15 = 1;\n      ppppppuStack_158 = ppppppuVar2;\n      param_1 = (undefined4 *******)\n                (**(code **)(puStack_150 + -0x7080))(pppppppuVar9,*pppppppuVar12,pppppppuVar12[1],1)\n      ;\n      if (param_1 != (undefined4 *******)0x0) {\n        uStack_144 = 0;\n        uStack_148 = 0;\n        unaff_s5 = (undefined4 *******)\n                   (**(code **)(puStack_150 + -0x715c))(pppppppuVar9,ppppppuVar2);\n        unaff_s6 = (undefined4 *******)(**(code **)(puStack_150 + -0x79dc))(param_1,ppppppuVar2);\n        iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9);\n        if (((iVar15 == 4) ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9), iVar15 == 3)) &&\n           ((iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 4 ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 3)))) {\n          (**(code **)(puStack_150 + -0x7774))(7);\n          ppppppuVar7 = param_1[7];\n          if ((int)ppppppuVar7 < 0) {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1 < (int)ppppppuVar7 + 0x3f >> 6) goto LAB_001c9298;\nLAB_001c91a4:\n            bVar1 = (int)ppppppuVar7 < 0x80;\n          }\n          else {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if ((int)ppppppuVar7 >> 6 <= extraout_v1) goto LAB_001c91a4;\nLAB_001c9298:\n            (*pcVar23)(7);\n            bVar1 = extraout_v1_02 < 2;\n          }\n          iVar14 = 1;\n          if ((bool)(bVar1 ^ 1)) {\n            (**(code **)(puStack_150 + -0x7774))(7);\n            ppppppuVar7 = param_1[7];\n            if ((int)ppppppuVar7 < 0) {\n              ppppppuVar7 = (undefined4 ******)((int)ppppppuVar7 + 0x3f);\n            }\n            iVar14 = (int)ppppppuVar7 >> 6;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1_01 < iVar14) {\nLAB_001c9234:\n              (*pcVar23)(7);\n              iVar14 = extraout_v1_00;\n            }\n            goto LAB_001c9088;\n          }\n          iVar10 = *(int *)(puStack_150 + -0x7f10);\n        }\n        else {\n          uVar36 = (**(code **)(puStack_150 + -0x7774))(7);\n          if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            uVar36 = (*pcVar23)(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c9070;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            iVar14 = 1;\n          }\n          else {\nLAB_001c9070:\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\nLAB_001c9074:\n            uVar36 = (*pcVar23)(7);\n            if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n               (pcVar23 = *(code **)(puStack_150 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c9234;\n            iVar14 = 2;\n          }\nLAB_001c9088:\n          iVar10 = *(int *)(puStack_150 + -0x7f10);\n        }\n        iVar15 = 0;\n        ppppppuStack_124 = (undefined4 ******)0x1;\n        puStack_120 = &uStack_148;\n        pppppppuStack_13c = pppppppuVar9;\n        pppppppuStack_138 = pppppppuVar12;\n        ppppppuStack_134 = ppppppuVar2;\n        pppppppuStack_130 = unaff_s6;\n        pppppppuStack_12c = unaff_s5;\n        pppppppuStack_128 = param_1;\n        (**(code **)(puStack_150 + -0x7718))(iVar10 + 0x5428,&pppppppuStack_13c,iVar14,0);\n        ppppppuVar2 = ppppppuStack_124;\n        (**(code **)(puStack_150 + -0x79bc))(unaff_s6);\n        (**(code **)(puStack_150 + -0x79bc))(unaff_s5);\n        param_1[0xa8] = pppppppuVar9[0xa8];\n        if (ppppppuVar2 == (undefined4 ******)0x0) {\n          param_1 = (undefined4 *******)(**(code **)(puStack_150 + -0x7964))(param_1);\n        }\n      }\n      puVar8 = puStack_150;\n      if (iStack_11c == *piVar18) {\n        return param_1;\n      }\n      goto LAB_001c9314;\n    }\n    goto LAB_001c9320;\n  }" (if "if") (parenthesized_expression "(pppppppuVar9[0xcdb] == (undefined4 ******)0xabacadab)" (( "(") (binary_expression "pppppppuVar9[0xcdb] == (undefined4 ******)0xabacadab" (subscript_expression "pppppppuVar9[0xcdb]" (identifier "pppppppuVar9") ([ "[") (number_literal "0xcdb") (] "]")) (== "==") (cast_expression "(undefined4 ******)0xabacadab" (( "(") (type_descriptor "undefined4 ******" (type_identifier "undefined4") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (number_literal "0xabacadab"))) () ")")) (compound_statement "{\n    if (pppppppuVar9[0xcd4] != (undefined4 ******)0x0) {\n      pppppppuStack_154 = pppppppuVar9 + 0xd0;\n      ppppppuStack_158 = (undefined4 ******)(*(int *)(puVar20 + 0x1df9a4) + -0x62ac);\n      (**(code **)(puVar20 + 0x1e02a0))\n                (0x8000,*(int *)(puVar20 + 0x1df9ac) + -0x288c,\n                 *(int *)(puVar20 + 0x1df9ac) + -0x26bc,0x3f7);\n    }\n    iVar15 = *(int *)(puStack_150 + -0x7fc4);\n    unaff_s3 = pppppppuVar12;\n    puVar8 = puStack_150;\n    if (pppppppuVar12 != (undefined4 *******)0x0) {\n      unaff_s0 = pppppppuVar9;\n      if (ppppppuVar2 == (undefined4 ******)0x0) goto LAB_001c92f4;\n      unaff_s2 = ppppppuVar2;\n      if (ppppppuVar2[7] != (undefined4 *****)0xabacadab) goto LAB_001c92d4;\n      iVar15 = 1;\n      ppppppuStack_158 = ppppppuVar2;\n      param_1 = (undefined4 *******)\n                (**(code **)(puStack_150 + -0x7080))(pppppppuVar9,*pppppppuVar12,pppppppuVar12[1],1)\n      ;\n      if (param_1 != (undefined4 *******)0x0) {\n        uStack_144 = 0;\n        uStack_148 = 0;\n        unaff_s5 = (undefined4 *******)\n                   (**(code **)(puStack_150 + -0x715c))(pppppppuVar9,ppppppuVar2);\n        unaff_s6 = (undefined4 *******)(**(code **)(puStack_150 + -0x79dc))(param_1,ppppppuVar2);\n        iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9);\n        if (((iVar15 == 4) ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9), iVar15 == 3)) &&\n           ((iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 4 ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 3)))) {\n          (**(code **)(puStack_150 + -0x7774))(7);\n          ppppppuVar7 = param_1[7];\n          if ((int)ppppppuVar7 < 0) {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1 < (int)ppppppuVar7 + 0x3f >> 6) goto LAB_001c9298;\nLAB_001c91a4:\n            bVar1 = (int)ppppppuVar7 < 0x80;\n          }\n          else {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if ((int)ppppppuVar7 >> 6 <= extraout_v1) goto LAB_001c91a4;\nLAB_001c9298:\n            (*pcVar23)(7);\n            bVar1 = extraout_v1_02 < 2;\n          }\n          iVar14 = 1;\n          if ((bool)(bVar1 ^ 1)) {\n            (**(code **)(puStack_150 + -0x7774))(7);\n            ppppppuVar7 = param_1[7];\n            if ((int)ppppppuVar7 < 0) {\n              ppppppuVar7 = (undefined4 ******)((int)ppppppuVar7 + 0x3f);\n            }\n            iVar14 = (int)ppppppuVar7 >> 6;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1_01 < iVar14) {\nLAB_001c9234:\n              (*pcVar23)(7);\n              iVar14 = extraout_v1_00;\n            }\n            goto LAB_001c9088;\n          }\n          iVar10 = *(int *)(puStack_150 + -0x7f10);\n        }\n        else {\n          uVar36 = (**(code **)(puStack_150 + -0x7774))(7);\n          if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            uVar36 = (*pcVar23)(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c9070;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            iVar14 = 1;\n          }\n          else {\nLAB_001c9070:\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\nLAB_001c9074:\n            uVar36 = (*pcVar23)(7);\n            if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n               (pcVar23 = *(code **)(puStack_150 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c9234;\n            iVar14 = 2;\n          }\nLAB_001c9088:\n          iVar10 = *(int *)(puStack_150 + -0x7f10);\n        }\n        iVar15 = 0;\n        ppppppuStack_124 = (undefined4 ******)0x1;\n        puStack_120 = &uStack_148;\n        pppppppuStack_13c = pppppppuVar9;\n        pppppppuStack_138 = pppppppuVar12;\n        ppppppuStack_134 = ppppppuVar2;\n        pppppppuStack_130 = unaff_s6;\n        pppppppuStack_12c = unaff_s5;\n        pppppppuStack_128 = param_1;\n        (**(code **)(puStack_150 + -0x7718))(iVar10 + 0x5428,&pppppppuStack_13c,iVar14,0);\n        ppppppuVar2 = ppppppuStack_124;\n        (**(code **)(puStack_150 + -0x79bc))(unaff_s6);\n        (**(code **)(puStack_150 + -0x79bc))(unaff_s5);\n        param_1[0xa8] = pppppppuVar9[0xa8];\n        if (ppppppuVar2 == (undefined4 ******)0x0) {\n          param_1 = (undefined4 *******)(**(code **)(puStack_150 + -0x7964))(param_1);\n        }\n      }\n      puVar8 = puStack_150;\n      if (iStack_11c == *piVar18) {\n        return param_1;\n      }\n      goto LAB_001c9314;\n    }\n    goto LAB_001c9320;\n  }" ({ "{") (if_statement "if (pppppppuVar9[0xcd4] != (undefined4 ******)0x0) {\n      pppppppuStack_154 = pppppppuVar9 + 0xd0;\n      ppppppuStack_158 = (undefined4 ******)(*(int *)(puVar20 + 0x1df9a4) + -0x62ac);\n      (**(code **)(puVar20 + 0x1e02a0))\n                (0x8000,*(int *)(puVar20 + 0x1df9ac) + -0x288c,\n                 *(int *)(puVar20 + 0x1df9ac) + -0x26bc,0x3f7);\n    }" (if "if") (parenthesized_expression "(pppppppuVar9[0xcd4] != (undefined4 ******)0x0)" (( "(") (binary_expression "pppppppuVar9[0xcd4] != (undefined4 ******)0x0" (subscript_expression "pppppppuVar9[0xcd4]" (identifier "pppppppuVar9") ([ "[") (number_literal "0xcd4") (] "]")) (!= "!=") (cast_expression "(undefined4 ******)0x0" (( "(") (type_descriptor "undefined4 ******" (type_identifier "undefined4") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n      pppppppuStack_154 = pppppppuVar9 + 0xd0;\n      ppppppuStack_158 = (undefined4 ******)(*(int *)(puVar20 + 0x1df9a4) + -0x62ac);\n      (**(code **)(puVar20 + 0x1e02a0))\n                (0x8000,*(int *)(puVar20 + 0x1df9ac) + -0x288c,\n                 *(int *)(puVar20 + 0x1df9ac) + -0x26bc,0x3f7);\n    }" ({ "{") (expression_statement "pppppppuStack_154 = pppppppuVar9 + 0xd0;" (assignment_expression "pppppppuStack_154 = pppppppuVar9 + 0xd0" (identifier "pppppppuStack_154") (= "=") (binary_expression "pppppppuVar9 + 0xd0" (identifier "pppppppuVar9") (+ "+") (number_literal "0xd0"))) (; ";")) (expression_statement "ppppppuStack_158 = (undefined4 ******)(*(int *)(puVar20 + 0x1df9a4) + -0x62ac);" (assignment_expression "ppppppuStack_158 = (undefined4 ******)(*(int *)(puVar20 + 0x1df9a4) + -0x62ac)" (identifier "ppppppuStack_158") (= "=") (cast_expression "(undefined4 ******)(*(int *)(puVar20 + 0x1df9a4) + -0x62ac)" (( "(") (type_descriptor "undefined4 ******" (type_identifier "undefined4") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (parenthesized_expression "(*(int *)(puVar20 + 0x1df9a4) + -0x62ac)" (( "(") (binary_expression "*(int *)(puVar20 + 0x1df9a4) + -0x62ac" (pointer_expression "*(int *)(puVar20 + 0x1df9a4)" (* "*") (cast_expression "(int *)(puVar20 + 0x1df9a4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar20 + 0x1df9a4)" (( "(") (binary_expression "puVar20 + 0x1df9a4" (identifier "puVar20") (+ "+") (number_literal "0x1df9a4")) () ")")))) (+ "+") (number_literal "-0x62ac")) () ")")))) (; ";")) (expression_statement "(**(code **)(puVar20 + 0x1e02a0))\n                (0x8000,*(int *)(puVar20 + 0x1df9ac) + -0x288c,\n                 *(int *)(puVar20 + 0x1df9ac) + -0x26bc,0x3f7);" (call_expression "(**(code **)(puVar20 + 0x1e02a0))\n                (0x8000,*(int *)(puVar20 + 0x1df9ac) + -0x288c,\n                 *(int *)(puVar20 + 0x1df9ac) + -0x26bc,0x3f7)" (parenthesized_expression "(**(code **)(puVar20 + 0x1e02a0))" (( "(") (pointer_expression "**(code **)(puVar20 + 0x1e02a0)" (* "*") (pointer_expression "*(code **)(puVar20 + 0x1e02a0)" (* "*") (cast_expression "(code **)(puVar20 + 0x1e02a0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar20 + 0x1e02a0)" (( "(") (binary_expression "puVar20 + 0x1e02a0" (identifier "puVar20") (+ "+") (number_literal "0x1e02a0")) () ")"))))) () ")")) (argument_list "(0x8000,*(int *)(puVar20 + 0x1df9ac) + -0x288c,\n                 *(int *)(puVar20 + 0x1df9ac) + -0x26bc,0x3f7)" (( "(") (number_literal "0x8000") (, ",") (binary_expression "*(int *)(puVar20 + 0x1df9ac) + -0x288c" (pointer_expression "*(int *)(puVar20 + 0x1df9ac)" (* "*") (cast_expression "(int *)(puVar20 + 0x1df9ac)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar20 + 0x1df9ac)" (( "(") (binary_expression "puVar20 + 0x1df9ac" (identifier "puVar20") (+ "+") (number_literal "0x1df9ac")) () ")")))) (+ "+") (number_literal "-0x288c")) (, ",") (binary_expression "*(int *)(puVar20 + 0x1df9ac) + -0x26bc" (pointer_expression "*(int *)(puVar20 + 0x1df9ac)" (* "*") (cast_expression "(int *)(puVar20 + 0x1df9ac)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar20 + 0x1df9ac)" (( "(") (binary_expression "puVar20 + 0x1df9ac" (identifier "puVar20") (+ "+") (number_literal "0x1df9ac")) () ")")))) (+ "+") (number_literal "-0x26bc")) (, ",") (number_literal "0x3f7") () ")"))) (; ";")) (} "}"))) (expression_statement "iVar15 = *(int *)(puStack_150 + -0x7fc4);" (assignment_expression "iVar15 = *(int *)(puStack_150 + -0x7fc4)" (identifier "iVar15") (= "=") (pointer_expression "*(int *)(puStack_150 + -0x7fc4)" (* "*") (cast_expression "(int *)(puStack_150 + -0x7fc4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puStack_150 + -0x7fc4)" (( "(") (binary_expression "puStack_150 + -0x7fc4" (identifier "puStack_150") (+ "+") (number_literal "-0x7fc4")) () ")"))))) (; ";")) (expression_statement "unaff_s3 = pppppppuVar12;" (assignment_expression "unaff_s3 = pppppppuVar12" (identifier "unaff_s3") (= "=") (identifier "pppppppuVar12")) (; ";")) (expression_statement "puVar8 = puStack_150;" (assignment_expression "puVar8 = puStack_150" (identifier "puVar8") (= "=") (identifier "puStack_150")) (; ";")) (if_statement "if (pppppppuVar12 != (undefined4 *******)0x0) {\n      unaff_s0 = pppppppuVar9;\n      if (ppppppuVar2 == (undefined4 ******)0x0) goto LAB_001c92f4;\n      unaff_s2 = ppppppuVar2;\n      if (ppppppuVar2[7] != (undefined4 *****)0xabacadab) goto LAB_001c92d4;\n      iVar15 = 1;\n      ppppppuStack_158 = ppppppuVar2;\n      param_1 = (undefined4 *******)\n                (**(code **)(puStack_150 + -0x7080))(pppppppuVar9,*pppppppuVar12,pppppppuVar12[1],1)\n      ;\n      if (param_1 != (undefined4 *******)0x0) {\n        uStack_144 = 0;\n        uStack_148 = 0;\n        unaff_s5 = (undefined4 *******)\n                   (**(code **)(puStack_150 + -0x715c))(pppppppuVar9,ppppppuVar2);\n        unaff_s6 = (undefined4 *******)(**(code **)(puStack_150 + -0x79dc))(param_1,ppppppuVar2);\n        iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9);\n        if (((iVar15 == 4) ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9), iVar15 == 3)) &&\n           ((iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 4 ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 3)))) {\n          (**(code **)(puStack_150 + -0x7774))(7);\n          ppppppuVar7 = param_1[7];\n          if ((int)ppppppuVar7 < 0) {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1 < (int)ppppppuVar7 + 0x3f >> 6) goto LAB_001c9298;\nLAB_001c91a4:\n            bVar1 = (int)ppppppuVar7 < 0x80;\n          }\n          else {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if ((int)ppppppuVar7 >> 6 <= extraout_v1) goto LAB_001c91a4;\nLAB_001c9298:\n            (*pcVar23)(7);\n            bVar1 = extraout_v1_02 < 2;\n          }\n          iVar14 = 1;\n          if ((bool)(bVar1 ^ 1)) {\n            (**(code **)(puStack_150 + -0x7774))(7);\n            ppppppuVar7 = param_1[7];\n            if ((int)ppppppuVar7 < 0) {\n              ppppppuVar7 = (undefined4 ******)((int)ppppppuVar7 + 0x3f);\n            }\n            iVar14 = (int)ppppppuVar7 >> 6;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1_01 < iVar14) {\nLAB_001c9234:\n              (*pcVar23)(7);\n              iVar14 = extraout_v1_00;\n            }\n            goto LAB_001c9088;\n          }\n          iVar10 = *(int *)(puStack_150 + -0x7f10);\n        }\n        else {\n          uVar36 = (**(code **)(puStack_150 + -0x7774))(7);\n          if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            uVar36 = (*pcVar23)(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c9070;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            iVar14 = 1;\n          }\n          else {\nLAB_001c9070:\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\nLAB_001c9074:\n            uVar36 = (*pcVar23)(7);\n            if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n               (pcVar23 = *(code **)(puStack_150 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c9234;\n            iVar14 = 2;\n          }\nLAB_001c9088:\n          iVar10 = *(int *)(puStack_150 + -0x7f10);\n        }\n        iVar15 = 0;\n        ppppppuStack_124 = (undefined4 ******)0x1;\n        puStack_120 = &uStack_148;\n        pppppppuStack_13c = pppppppuVar9;\n        pppppppuStack_138 = pppppppuVar12;\n        ppppppuStack_134 = ppppppuVar2;\n        pppppppuStack_130 = unaff_s6;\n        pppppppuStack_12c = unaff_s5;\n        pppppppuStack_128 = param_1;\n        (**(code **)(puStack_150 + -0x7718))(iVar10 + 0x5428,&pppppppuStack_13c,iVar14,0);\n        ppppppuVar2 = ppppppuStack_124;\n        (**(code **)(puStack_150 + -0x79bc))(unaff_s6);\n        (**(code **)(puStack_150 + -0x79bc))(unaff_s5);\n        param_1[0xa8] = pppppppuVar9[0xa8];\n        if (ppppppuVar2 == (undefined4 ******)0x0) {\n          param_1 = (undefined4 *******)(**(code **)(puStack_150 + -0x7964))(param_1);\n        }\n      }\n      puVar8 = puStack_150;\n      if (iStack_11c == *piVar18) {\n        return param_1;\n      }\n      goto LAB_001c9314;\n    }" (if "if") (parenthesized_expression "(pppppppuVar12 != (undefined4 *******)0x0)" (( "(") (binary_expression "pppppppuVar12 != (undefined4 *******)0x0" (identifier "pppppppuVar12") (!= "!=") (cast_expression "(undefined4 *******)0x0" (( "(") (type_descriptor "undefined4 *******" (type_identifier "undefined4") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n      unaff_s0 = pppppppuVar9;\n      if (ppppppuVar2 == (undefined4 ******)0x0) goto LAB_001c92f4;\n      unaff_s2 = ppppppuVar2;\n      if (ppppppuVar2[7] != (undefined4 *****)0xabacadab) goto LAB_001c92d4;\n      iVar15 = 1;\n      ppppppuStack_158 = ppppppuVar2;\n      param_1 = (undefined4 *******)\n                (**(code **)(puStack_150 + -0x7080))(pppppppuVar9,*pppppppuVar12,pppppppuVar12[1],1)\n      ;\n      if (param_1 != (undefined4 *******)0x0) {\n        uStack_144 = 0;\n        uStack_148 = 0;\n        unaff_s5 = (undefined4 *******)\n                   (**(code **)(puStack_150 + -0x715c))(pppppppuVar9,ppppppuVar2);\n        unaff_s6 = (undefined4 *******)(**(code **)(puStack_150 + -0x79dc))(param_1,ppppppuVar2);\n        iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9);\n        if (((iVar15 == 4) ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9), iVar15 == 3)) &&\n           ((iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 4 ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 3)))) {\n          (**(code **)(puStack_150 + -0x7774))(7);\n          ppppppuVar7 = param_1[7];\n          if ((int)ppppppuVar7 < 0) {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1 < (int)ppppppuVar7 + 0x3f >> 6) goto LAB_001c9298;\nLAB_001c91a4:\n            bVar1 = (int)ppppppuVar7 < 0x80;\n          }\n          else {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if ((int)ppppppuVar7 >> 6 <= extraout_v1) goto LAB_001c91a4;\nLAB_001c9298:\n            (*pcVar23)(7);\n            bVar1 = extraout_v1_02 < 2;\n          }\n          iVar14 = 1;\n          if ((bool)(bVar1 ^ 1)) {\n            (**(code **)(puStack_150 + -0x7774))(7);\n            ppppppuVar7 = param_1[7];\n            if ((int)ppppppuVar7 < 0) {\n              ppppppuVar7 = (undefined4 ******)((int)ppppppuVar7 + 0x3f);\n            }\n            iVar14 = (int)ppppppuVar7 >> 6;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1_01 < iVar14) {\nLAB_001c9234:\n              (*pcVar23)(7);\n              iVar14 = extraout_v1_00;\n            }\n            goto LAB_001c9088;\n          }\n          iVar10 = *(int *)(puStack_150 + -0x7f10);\n        }\n        else {\n          uVar36 = (**(code **)(puStack_150 + -0x7774))(7);\n          if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            uVar36 = (*pcVar23)(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c9070;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            iVar14 = 1;\n          }\n          else {\nLAB_001c9070:\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\nLAB_001c9074:\n            uVar36 = (*pcVar23)(7);\n            if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n               (pcVar23 = *(code **)(puStack_150 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c9234;\n            iVar14 = 2;\n          }\nLAB_001c9088:\n          iVar10 = *(int *)(puStack_150 + -0x7f10);\n        }\n        iVar15 = 0;\n        ppppppuStack_124 = (undefined4 ******)0x1;\n        puStack_120 = &uStack_148;\n        pppppppuStack_13c = pppppppuVar9;\n        pppppppuStack_138 = pppppppuVar12;\n        ppppppuStack_134 = ppppppuVar2;\n        pppppppuStack_130 = unaff_s6;\n        pppppppuStack_12c = unaff_s5;\n        pppppppuStack_128 = param_1;\n        (**(code **)(puStack_150 + -0x7718))(iVar10 + 0x5428,&pppppppuStack_13c,iVar14,0);\n        ppppppuVar2 = ppppppuStack_124;\n        (**(code **)(puStack_150 + -0x79bc))(unaff_s6);\n        (**(code **)(puStack_150 + -0x79bc))(unaff_s5);\n        param_1[0xa8] = pppppppuVar9[0xa8];\n        if (ppppppuVar2 == (undefined4 ******)0x0) {\n          param_1 = (undefined4 *******)(**(code **)(puStack_150 + -0x7964))(param_1);\n        }\n      }\n      puVar8 = puStack_150;\n      if (iStack_11c == *piVar18) {\n        return param_1;\n      }\n      goto LAB_001c9314;\n    }" ({ "{") (expression_statement "unaff_s0 = pppppppuVar9;" (assignment_expression "unaff_s0 = pppppppuVar9" (identifier "unaff_s0") (= "=") (identifier "pppppppuVar9")) (; ";")) (if_statement "if (ppppppuVar2 == (undefined4 ******)0x0) goto LAB_001c92f4;" (if "if") (parenthesized_expression "(ppppppuVar2 == (undefined4 ******)0x0)" (( "(") (binary_expression "ppppppuVar2 == (undefined4 ******)0x0" (identifier "ppppppuVar2") (== "==") (cast_expression "(undefined4 ******)0x0" (( "(") (type_descriptor "undefined4 ******" (type_identifier "undefined4") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (number_literal "0x0"))) () ")")) (goto_statement "goto LAB_001c92f4;" (goto "goto") (statement_identifier "LAB_001c92f4") (; ";"))) (expression_statement "unaff_s2 = ppppppuVar2;" (assignment_expression "unaff_s2 = ppppppuVar2" (identifier "unaff_s2") (= "=") (identifier "ppppppuVar2")) (; ";")) (if_statement "if (ppppppuVar2[7] != (undefined4 *****)0xabacadab) goto LAB_001c92d4;" (if "if") (parenthesized_expression "(ppppppuVar2[7] != (undefined4 *****)0xabacadab)" (( "(") (binary_expression "ppppppuVar2[7] != (undefined4 *****)0xabacadab" (subscript_expression "ppppppuVar2[7]" (identifier "ppppppuVar2") ([ "[") (number_literal "7") (] "]")) (!= "!=") (cast_expression "(undefined4 *****)0xabacadab" (( "(") (type_descriptor "undefined4 *****" (type_identifier "undefined4") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))) () ")") (number_literal "0xabacadab"))) () ")")) (goto_statement "goto LAB_001c92d4;" (goto "goto") (statement_identifier "LAB_001c92d4") (; ";"))) (expression_statement "iVar15 = 1;" (assignment_expression "iVar15 = 1" (identifier "iVar15") (= "=") (number_literal "1")) (; ";")) (expression_statement "ppppppuStack_158 = ppppppuVar2;" (assignment_expression "ppppppuStack_158 = ppppppuVar2" (identifier "ppppppuStack_158") (= "=") (identifier "ppppppuVar2")) (; ";")) (expression_statement "param_1 = (undefined4 *******)\n                (**(code **)(puStack_150 + -0x7080))(pppppppuVar9,*pppppppuVar12,pppppppuVar12[1],1)\n      ;" (assignment_expression "param_1 = (undefined4 *******)\n                (**(code **)(puStack_150 + -0x7080))(pppppppuVar9,*pppppppuVar12,pppppppuVar12[1],1)" (identifier "param_1") (= "=") (cast_expression "(undefined4 *******)\n                (**(code **)(puStack_150 + -0x7080))(pppppppuVar9,*pppppppuVar12,pppppppuVar12[1],1)" (( "(") (type_descriptor "undefined4 *******" (type_identifier "undefined4") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (call_expression "(**(code **)(puStack_150 + -0x7080))(pppppppuVar9,*pppppppuVar12,pppppppuVar12[1],1)" (parenthesized_expression "(**(code **)(puStack_150 + -0x7080))" (( "(") (pointer_expression "**(code **)(puStack_150 + -0x7080)" (* "*") (pointer_expression "*(code **)(puStack_150 + -0x7080)" (* "*") (cast_expression "(code **)(puStack_150 + -0x7080)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puStack_150 + -0x7080)" (( "(") (binary_expression "puStack_150 + -0x7080" (identifier "puStack_150") (+ "+") (number_literal "-0x7080")) () ")"))))) () ")")) (argument_list "(pppppppuVar9,*pppppppuVar12,pppppppuVar12[1],1)" (( "(") (identifier "pppppppuVar9") (, ",") (pointer_expression "*pppppppuVar12" (* "*") (identifier "pppppppuVar12")) (, ",") (subscript_expression "pppppppuVar12[1]" (identifier "pppppppuVar12") ([ "[") (number_literal "1") (] "]")) (, ",") (number_literal "1") () ")"))))) (; ";")) (if_statement "if (param_1 != (undefined4 *******)0x0) {\n        uStack_144 = 0;\n        uStack_148 = 0;\n        unaff_s5 = (undefined4 *******)\n                   (**(code **)(puStack_150 + -0x715c))(pppppppuVar9,ppppppuVar2);\n        unaff_s6 = (undefined4 *******)(**(code **)(puStack_150 + -0x79dc))(param_1,ppppppuVar2);\n        iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9);\n        if (((iVar15 == 4) ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9), iVar15 == 3)) &&\n           ((iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 4 ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 3)))) {\n          (**(code **)(puStack_150 + -0x7774))(7);\n          ppppppuVar7 = param_1[7];\n          if ((int)ppppppuVar7 < 0) {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1 < (int)ppppppuVar7 + 0x3f >> 6) goto LAB_001c9298;\nLAB_001c91a4:\n            bVar1 = (int)ppppppuVar7 < 0x80;\n          }\n          else {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if ((int)ppppppuVar7 >> 6 <= extraout_v1) goto LAB_001c91a4;\nLAB_001c9298:\n            (*pcVar23)(7);\n            bVar1 = extraout_v1_02 < 2;\n          }\n          iVar14 = 1;\n          if ((bool)(bVar1 ^ 1)) {\n            (**(code **)(puStack_150 + -0x7774))(7);\n            ppppppuVar7 = param_1[7];\n            if ((int)ppppppuVar7 < 0) {\n              ppppppuVar7 = (undefined4 ******)((int)ppppppuVar7 + 0x3f);\n            }\n            iVar14 = (int)ppppppuVar7 >> 6;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1_01 < iVar14) {\nLAB_001c9234:\n              (*pcVar23)(7);\n              iVar14 = extraout_v1_00;\n            }\n            goto LAB_001c9088;\n          }\n          iVar10 = *(int *)(puStack_150 + -0x7f10);\n        }\n        else {\n          uVar36 = (**(code **)(puStack_150 + -0x7774))(7);\n          if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            uVar36 = (*pcVar23)(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c9070;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            iVar14 = 1;\n          }\n          else {\nLAB_001c9070:\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\nLAB_001c9074:\n            uVar36 = (*pcVar23)(7);\n            if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n               (pcVar23 = *(code **)(puStack_150 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c9234;\n            iVar14 = 2;\n          }\nLAB_001c9088:\n          iVar10 = *(int *)(puStack_150 + -0x7f10);\n        }\n        iVar15 = 0;\n        ppppppuStack_124 = (undefined4 ******)0x1;\n        puStack_120 = &uStack_148;\n        pppppppuStack_13c = pppppppuVar9;\n        pppppppuStack_138 = pppppppuVar12;\n        ppppppuStack_134 = ppppppuVar2;\n        pppppppuStack_130 = unaff_s6;\n        pppppppuStack_12c = unaff_s5;\n        pppppppuStack_128 = param_1;\n        (**(code **)(puStack_150 + -0x7718))(iVar10 + 0x5428,&pppppppuStack_13c,iVar14,0);\n        ppppppuVar2 = ppppppuStack_124;\n        (**(code **)(puStack_150 + -0x79bc))(unaff_s6);\n        (**(code **)(puStack_150 + -0x79bc))(unaff_s5);\n        param_1[0xa8] = pppppppuVar9[0xa8];\n        if (ppppppuVar2 == (undefined4 ******)0x0) {\n          param_1 = (undefined4 *******)(**(code **)(puStack_150 + -0x7964))(param_1);\n        }\n      }" (if "if") (parenthesized_expression "(param_1 != (undefined4 *******)0x0)" (( "(") (binary_expression "param_1 != (undefined4 *******)0x0" (identifier "param_1") (!= "!=") (cast_expression "(undefined4 *******)0x0" (( "(") (type_descriptor "undefined4 *******" (type_identifier "undefined4") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n        uStack_144 = 0;\n        uStack_148 = 0;\n        unaff_s5 = (undefined4 *******)\n                   (**(code **)(puStack_150 + -0x715c))(pppppppuVar9,ppppppuVar2);\n        unaff_s6 = (undefined4 *******)(**(code **)(puStack_150 + -0x79dc))(param_1,ppppppuVar2);\n        iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9);\n        if (((iVar15 == 4) ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9), iVar15 == 3)) &&\n           ((iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 4 ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 3)))) {\n          (**(code **)(puStack_150 + -0x7774))(7);\n          ppppppuVar7 = param_1[7];\n          if ((int)ppppppuVar7 < 0) {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1 < (int)ppppppuVar7 + 0x3f >> 6) goto LAB_001c9298;\nLAB_001c91a4:\n            bVar1 = (int)ppppppuVar7 < 0x80;\n          }\n          else {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if ((int)ppppppuVar7 >> 6 <= extraout_v1) goto LAB_001c91a4;\nLAB_001c9298:\n            (*pcVar23)(7);\n            bVar1 = extraout_v1_02 < 2;\n          }\n          iVar14 = 1;\n          if ((bool)(bVar1 ^ 1)) {\n            (**(code **)(puStack_150 + -0x7774))(7);\n            ppppppuVar7 = param_1[7];\n            if ((int)ppppppuVar7 < 0) {\n              ppppppuVar7 = (undefined4 ******)((int)ppppppuVar7 + 0x3f);\n            }\n            iVar14 = (int)ppppppuVar7 >> 6;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1_01 < iVar14) {\nLAB_001c9234:\n              (*pcVar23)(7);\n              iVar14 = extraout_v1_00;\n            }\n            goto LAB_001c9088;\n          }\n          iVar10 = *(int *)(puStack_150 + -0x7f10);\n        }\n        else {\n          uVar36 = (**(code **)(puStack_150 + -0x7774))(7);\n          if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            uVar36 = (*pcVar23)(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c9070;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            iVar14 = 1;\n          }\n          else {\nLAB_001c9070:\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\nLAB_001c9074:\n            uVar36 = (*pcVar23)(7);\n            if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n               (pcVar23 = *(code **)(puStack_150 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c9234;\n            iVar14 = 2;\n          }\nLAB_001c9088:\n          iVar10 = *(int *)(puStack_150 + -0x7f10);\n        }\n        iVar15 = 0;\n        ppppppuStack_124 = (undefined4 ******)0x1;\n        puStack_120 = &uStack_148;\n        pppppppuStack_13c = pppppppuVar9;\n        pppppppuStack_138 = pppppppuVar12;\n        ppppppuStack_134 = ppppppuVar2;\n        pppppppuStack_130 = unaff_s6;\n        pppppppuStack_12c = unaff_s5;\n        pppppppuStack_128 = param_1;\n        (**(code **)(puStack_150 + -0x7718))(iVar10 + 0x5428,&pppppppuStack_13c,iVar14,0);\n        ppppppuVar2 = ppppppuStack_124;\n        (**(code **)(puStack_150 + -0x79bc))(unaff_s6);\n        (**(code **)(puStack_150 + -0x79bc))(unaff_s5);\n        param_1[0xa8] = pppppppuVar9[0xa8];\n        if (ppppppuVar2 == (undefined4 ******)0x0) {\n          param_1 = (undefined4 *******)(**(code **)(puStack_150 + -0x7964))(param_1);\n        }\n      }" ({ "{") (expression_statement "uStack_144 = 0;" (assignment_expression "uStack_144 = 0" (identifier "uStack_144") (= "=") (number_literal "0")) (; ";")) (expression_statement "uStack_148 = 0;" (assignment_expression "uStack_148 = 0" (identifier "uStack_148") (= "=") (number_literal "0")) (; ";")) (expression_statement "unaff_s5 = (undefined4 *******)\n                   (**(code **)(puStack_150 + -0x715c))(pppppppuVar9,ppppppuVar2);" (assignment_expression "unaff_s5 = (undefined4 *******)\n                   (**(code **)(puStack_150 + -0x715c))(pppppppuVar9,ppppppuVar2)" (identifier "unaff_s5") (= "=") (cast_expression "(undefined4 *******)\n                   (**(code **)(puStack_150 + -0x715c))(pppppppuVar9,ppppppuVar2)" (( "(") (type_descriptor "undefined4 *******" (type_identifier "undefined4") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (call_expression "(**(code **)(puStack_150 + -0x715c))(pppppppuVar9,ppppppuVar2)" (parenthesized_expression "(**(code **)(puStack_150 + -0x715c))" (( "(") (pointer_expression "**(code **)(puStack_150 + -0x715c)" (* "*") (pointer_expression "*(code **)(puStack_150 + -0x715c)" (* "*") (cast_expression "(code **)(puStack_150 + -0x715c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puStack_150 + -0x715c)" (( "(") (binary_expression "puStack_150 + -0x715c" (identifier "puStack_150") (+ "+") (number_literal "-0x715c")) () ")"))))) () ")")) (argument_list "(pppppppuVar9,ppppppuVar2)" (( "(") (identifier "pppppppuVar9") (, ",") (identifier "ppppppuVar2") () ")"))))) (; ";")) (expression_statement "unaff_s6 = (undefined4 *******)(**(code **)(puStack_150 + -0x79dc))(param_1,ppppppuVar2);" (assignment_expression "unaff_s6 = (undefined4 *******)(**(code **)(puStack_150 + -0x79dc))(param_1,ppppppuVar2)" (identifier "unaff_s6") (= "=") (cast_expression "(undefined4 *******)(**(code **)(puStack_150 + -0x79dc))(param_1,ppppppuVar2)" (( "(") (type_descriptor "undefined4 *******" (type_identifier "undefined4") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (call_expression "(**(code **)(puStack_150 + -0x79dc))(param_1,ppppppuVar2)" (parenthesized_expression "(**(code **)(puStack_150 + -0x79dc))" (( "(") (pointer_expression "**(code **)(puStack_150 + -0x79dc)" (* "*") (pointer_expression "*(code **)(puStack_150 + -0x79dc)" (* "*") (cast_expression "(code **)(puStack_150 + -0x79dc)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puStack_150 + -0x79dc)" (( "(") (binary_expression "puStack_150 + -0x79dc" (identifier "puStack_150") (+ "+") (number_literal "-0x79dc")) () ")"))))) () ")")) (argument_list "(param_1,ppppppuVar2)" (( "(") (identifier "param_1") (, ",") (identifier "ppppppuVar2") () ")"))))) (; ";")) (expression_statement "iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9);" (assignment_expression "iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9)" (identifier "iVar15") (= "=") (call_expression "(**(code **)(puStack_150 + -0x73fc))(pppppppuVar9)" (parenthesized_expression "(**(code **)(puStack_150 + -0x73fc))" (( "(") (pointer_expression "**(code **)(puStack_150 + -0x73fc)" (* "*") (pointer_expression "*(code **)(puStack_150 + -0x73fc)" (* "*") (cast_expression "(code **)(puStack_150 + -0x73fc)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puStack_150 + -0x73fc)" (( "(") (binary_expression "puStack_150 + -0x73fc" (identifier "puStack_150") (+ "+") (number_literal "-0x73fc")) () ")"))))) () ")")) (argument_list "(pppppppuVar9)" (( "(") (identifier "pppppppuVar9") () ")")))) (; ";")) (if_statement "if (((iVar15 == 4) ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9), iVar15 == 3)) &&\n           ((iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 4 ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 3)))) {\n          (**(code **)(puStack_150 + -0x7774))(7);\n          ppppppuVar7 = param_1[7];\n          if ((int)ppppppuVar7 < 0) {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1 < (int)ppppppuVar7 + 0x3f >> 6) goto LAB_001c9298;\nLAB_001c91a4:\n            bVar1 = (int)ppppppuVar7 < 0x80;\n          }\n          else {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if ((int)ppppppuVar7 >> 6 <= extraout_v1) goto LAB_001c91a4;\nLAB_001c9298:\n            (*pcVar23)(7);\n            bVar1 = extraout_v1_02 < 2;\n          }\n          iVar14 = 1;\n          if ((bool)(bVar1 ^ 1)) {\n            (**(code **)(puStack_150 + -0x7774))(7);\n            ppppppuVar7 = param_1[7];\n            if ((int)ppppppuVar7 < 0) {\n              ppppppuVar7 = (undefined4 ******)((int)ppppppuVar7 + 0x3f);\n            }\n            iVar14 = (int)ppppppuVar7 >> 6;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1_01 < iVar14) {\nLAB_001c9234:\n              (*pcVar23)(7);\n              iVar14 = extraout_v1_00;\n            }\n            goto LAB_001c9088;\n          }\n          iVar10 = *(int *)(puStack_150 + -0x7f10);\n        }\n        else {\n          uVar36 = (**(code **)(puStack_150 + -0x7774))(7);\n          if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            uVar36 = (*pcVar23)(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c9070;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            iVar14 = 1;\n          }\n          else {\nLAB_001c9070:\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\nLAB_001c9074:\n            uVar36 = (*pcVar23)(7);\n            if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n               (pcVar23 = *(code **)(puStack_150 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c9234;\n            iVar14 = 2;\n          }\nLAB_001c9088:\n          iVar10 = *(int *)(puStack_150 + -0x7f10);\n        }" (if "if") (parenthesized_expression "(((iVar15 == 4) ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9), iVar15 == 3)) &&\n           ((iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 4 ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 3))))" (( "(") (binary_expression "((iVar15 == 4) ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9), iVar15 == 3)) &&\n           ((iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 4 ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 3)))" (parenthesized_expression "((iVar15 == 4) ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9), iVar15 == 3))" (( "(") (binary_expression "(iVar15 == 4) ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9), iVar15 == 3)" (parenthesized_expression "(iVar15 == 4)" (( "(") (binary_expression "iVar15 == 4" (identifier "iVar15") (== "==") (number_literal "4")) () ")")) (|| "||") (parenthesized_expression "(iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9), iVar15 == 3)" (( "(") (comma_expression "iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9), iVar15 == 3" (assignment_expression "iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9)" (identifier "iVar15") (= "=") (call_expression "(**(code **)(puStack_150 + -0x73fc))(pppppppuVar9)" (parenthesized_expression "(**(code **)(puStack_150 + -0x73fc))" (( "(") (pointer_expression "**(code **)(puStack_150 + -0x73fc)" (* "*") (pointer_expression "*(code **)(puStack_150 + -0x73fc)" (* "*") (cast_expression "(code **)(puStack_150 + -0x73fc)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puStack_150 + -0x73fc)" (( "(") (binary_expression "puStack_150 + -0x73fc" (identifier "puStack_150") (+ "+") (number_literal "-0x73fc")) () ")"))))) () ")")) (argument_list "(pppppppuVar9)" (( "(") (identifier "pppppppuVar9") () ")")))) (, ",") (binary_expression "iVar15 == 3" (identifier "iVar15") (== "==") (number_literal "3"))) () ")"))) () ")")) (&& "&&") (parenthesized_expression "((iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 4 ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 3)))" (( "(") (parenthesized_expression "(iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 4 ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 3))" (( "(") (comma_expression "iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 4 ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 3)" (assignment_expression "iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1)" (identifier "iVar15") (= "=") (call_expression "(**(code **)(puStack_150 + -0x73fc))(param_1)" (parenthesized_expression "(**(code **)(puStack_150 + -0x73fc))" (( "(") (pointer_expression "**(code **)(puStack_150 + -0x73fc)" (* "*") (pointer_expression "*(code **)(puStack_150 + -0x73fc)" (* "*") (cast_expression "(code **)(puStack_150 + -0x73fc)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puStack_150 + -0x73fc)" (( "(") (binary_expression "puStack_150 + -0x73fc" (identifier "puStack_150") (+ "+") (number_literal "-0x73fc")) () ")"))))) () ")")) (argument_list "(param_1)" (( "(") (identifier "param_1") () ")")))) (, ",") (binary_expression "iVar15 == 4 ||\n            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 3)" (binary_expression "iVar15 == 4" (identifier "iVar15") (== "==") (number_literal "4")) (|| "||") (parenthesized_expression "(iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 3)" (( "(") (comma_expression "iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 3" (assignment_expression "iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1)" (identifier "iVar15") (= "=") (call_expression "(**(code **)(puStack_150 + -0x73fc))(param_1)" (parenthesized_expression "(**(code **)(puStack_150 + -0x73fc))" (( "(") (pointer_expression "**(code **)(puStack_150 + -0x73fc)" (* "*") (pointer_expression "*(code **)(puStack_150 + -0x73fc)" (* "*") (cast_expression "(code **)(puStack_150 + -0x73fc)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puStack_150 + -0x73fc)" (( "(") (binary_expression "puStack_150 + -0x73fc" (identifier "puStack_150") (+ "+") (number_literal "-0x73fc")) () ")"))))) () ")")) (argument_list "(param_1)" (( "(") (identifier "param_1") () ")")))) (, ",") (binary_expression "iVar15 == 3" (identifier "iVar15") (== "==") (number_literal "3"))) () ")")))) () ")")) () ")"))) () ")")) (compound_statement "{\n          (**(code **)(puStack_150 + -0x7774))(7);\n          ppppppuVar7 = param_1[7];\n          if ((int)ppppppuVar7 < 0) {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1 < (int)ppppppuVar7 + 0x3f >> 6) goto LAB_001c9298;\nLAB_001c91a4:\n            bVar1 = (int)ppppppuVar7 < 0x80;\n          }\n          else {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if ((int)ppppppuVar7 >> 6 <= extraout_v1) goto LAB_001c91a4;\nLAB_001c9298:\n            (*pcVar23)(7);\n            bVar1 = extraout_v1_02 < 2;\n          }\n          iVar14 = 1;\n          if ((bool)(bVar1 ^ 1)) {\n            (**(code **)(puStack_150 + -0x7774))(7);\n            ppppppuVar7 = param_1[7];\n            if ((int)ppppppuVar7 < 0) {\n              ppppppuVar7 = (undefined4 ******)((int)ppppppuVar7 + 0x3f);\n            }\n            iVar14 = (int)ppppppuVar7 >> 6;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1_01 < iVar14) {\nLAB_001c9234:\n              (*pcVar23)(7);\n              iVar14 = extraout_v1_00;\n            }\n            goto LAB_001c9088;\n          }\n          iVar10 = *(int *)(puStack_150 + -0x7f10);\n        }" ({ "{") (expression_statement "(**(code **)(puStack_150 + -0x7774))(7);" (call_expression "(**(code **)(puStack_150 + -0x7774))(7)" (parenthesized_expression "(**(code **)(puStack_150 + -0x7774))" (( "(") (pointer_expression "**(code **)(puStack_150 + -0x7774)" (* "*") (pointer_expression "*(code **)(puStack_150 + -0x7774)" (* "*") (cast_expression "(code **)(puStack_150 + -0x7774)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puStack_150 + -0x7774)" (( "(") (binary_expression "puStack_150 + -0x7774" (identifier "puStack_150") (+ "+") (number_literal "-0x7774")) () ")"))))) () ")")) (argument_list "(7)" (( "(") (number_literal "7") () ")"))) (; ";")) (expression_statement "ppppppuVar7 = param_1[7];" (assignment_expression "ppppppuVar7 = param_1[7]" (identifier "ppppppuVar7") (= "=") (subscript_expression "param_1[7]" (identifier "param_1") ([ "[") (number_literal "7") (] "]"))) (; ";")) (if_statement "if ((int)ppppppuVar7 < 0) {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1 < (int)ppppppuVar7 + 0x3f >> 6) goto LAB_001c9298;\nLAB_001c91a4:\n            bVar1 = (int)ppppppuVar7 < 0x80;\n          }\n          else {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if ((int)ppppppuVar7 >> 6 <= extraout_v1) goto LAB_001c91a4;\nLAB_001c9298:\n            (*pcVar23)(7);\n            bVar1 = extraout_v1_02 < 2;\n          }" (if "if") (parenthesized_expression "((int)ppppppuVar7 < 0)" (( "(") (binary_expression "(int)ppppppuVar7 < 0" (cast_expression "(int)ppppppuVar7" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "ppppppuVar7")) (< "<") (number_literal "0")) () ")")) (compound_statement "{\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1 < (int)ppppppuVar7 + 0x3f >> 6) goto LAB_001c9298;\nLAB_001c91a4:\n            bVar1 = (int)ppppppuVar7 < 0x80;\n          }" ({ "{") (expression_statement "pcVar23 = *(code **)(puStack_150 + -0x7774);" (assignment_expression "pcVar23 = *(code **)(puStack_150 + -0x7774)" (identifier "pcVar23") (= "=") (pointer_expression "*(code **)(puStack_150 + -0x7774)" (* "*") (cast_expression "(code **)(puStack_150 + -0x7774)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puStack_150 + -0x7774)" (( "(") (binary_expression "puStack_150 + -0x7774" (identifier "puStack_150") (+ "+") (number_literal "-0x7774")) () ")"))))) (; ";")) (if_statement "if (extraout_v1 < (int)ppppppuVar7 + 0x3f >> 6) goto LAB_001c9298;" (if "if") (parenthesized_expression "(extraout_v1 < (int)ppppppuVar7 + 0x3f >> 6)" (( "(") (binary_expression "extraout_v1 < (int)ppppppuVar7 + 0x3f >> 6" (identifier "extraout_v1") (< "<") (binary_expression "(int)ppppppuVar7 + 0x3f >> 6" (binary_expression "(int)ppppppuVar7 + 0x3f" (cast_expression "(int)ppppppuVar7" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "ppppppuVar7")) (+ "+") (number_literal "0x3f")) (>> ">>") (number_literal "6"))) () ")")) (goto_statement "goto LAB_001c9298;" (goto "goto") (statement_identifier "LAB_001c9298") (; ";"))) (labeled_statement "LAB_001c91a4:\n            bVar1 = (int)ppppppuVar7 < 0x80;" (statement_identifier "LAB_001c91a4") (: ":") (expression_statement "bVar1 = (int)ppppppuVar7 < 0x80;" (assignment_expression "bVar1 = (int)ppppppuVar7 < 0x80" (identifier "bVar1") (= "=") (binary_expression "(int)ppppppuVar7 < 0x80" (cast_expression "(int)ppppppuVar7" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "ppppppuVar7")) (< "<") (number_literal "0x80"))) (; ";"))) (} "}")) (else_clause "else {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if ((int)ppppppuVar7 >> 6 <= extraout_v1) goto LAB_001c91a4;\nLAB_001c9298:\n            (*pcVar23)(7);\n            bVar1 = extraout_v1_02 < 2;\n          }" (else "else") (compound_statement "{\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if ((int)ppppppuVar7 >> 6 <= extraout_v1) goto LAB_001c91a4;\nLAB_001c9298:\n            (*pcVar23)(7);\n            bVar1 = extraout_v1_02 < 2;\n          }" ({ "{") (expression_statement "pcVar23 = *(code **)(puStack_150 + -0x7774);" (assignment_expression "pcVar23 = *(code **)(puStack_150 + -0x7774)" (identifier "pcVar23") (= "=") (pointer_expression "*(code **)(puStack_150 + -0x7774)" (* "*") (cast_expression "(code **)(puStack_150 + -0x7774)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puStack_150 + -0x7774)" (( "(") (binary_expression "puStack_150 + -0x7774" (identifier "puStack_150") (+ "+") (number_literal "-0x7774")) () ")"))))) (; ";")) (if_statement "if ((int)ppppppuVar7 >> 6 <= extraout_v1) goto LAB_001c91a4;" (if "if") (parenthesized_expression "((int)ppppppuVar7 >> 6 <= extraout_v1)" (( "(") (binary_expression "(int)ppppppuVar7 >> 6 <= extraout_v1" (binary_expression "(int)ppppppuVar7 >> 6" (cast_expression "(int)ppppppuVar7" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "ppppppuVar7")) (>> ">>") (number_literal "6")) (<= "<=") (identifier "extraout_v1")) () ")")) (goto_statement "goto LAB_001c91a4;" (goto "goto") (statement_identifier "LAB_001c91a4") (; ";"))) (labeled_statement "LAB_001c9298:\n            (*pcVar23)(7);" (statement_identifier "LAB_001c9298") (: ":") (expression_statement "(*pcVar23)(7);" (call_expression "(*pcVar23)(7)" (parenthesized_expression "(*pcVar23)" (( "(") (pointer_expression "*pcVar23" (* "*") (identifier "pcVar23")) () ")")) (argument_list "(7)" (( "(") (number_literal "7") () ")"))) (; ";"))) (expression_statement "bVar1 = extraout_v1_02 < 2;" (assignment_expression "bVar1 = extraout_v1_02 < 2" (identifier "bVar1") (= "=") (binary_expression "extraout_v1_02 < 2" (identifier "extraout_v1_02") (< "<") (number_literal "2"))) (; ";")) (} "}")))) (expression_statement "iVar14 = 1;" (assignment_expression "iVar14 = 1" (identifier "iVar14") (= "=") (number_literal "1")) (; ";")) (if_statement "if ((bool)(bVar1 ^ 1)) {\n            (**(code **)(puStack_150 + -0x7774))(7);\n            ppppppuVar7 = param_1[7];\n            if ((int)ppppppuVar7 < 0) {\n              ppppppuVar7 = (undefined4 ******)((int)ppppppuVar7 + 0x3f);\n            }\n            iVar14 = (int)ppppppuVar7 >> 6;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1_01 < iVar14) {\nLAB_001c9234:\n              (*pcVar23)(7);\n              iVar14 = extraout_v1_00;\n            }\n            goto LAB_001c9088;\n          }" (if "if") (parenthesized_expression "((bool)(bVar1 ^ 1))" (( "(") (cast_expression "(bool)(bVar1 ^ 1)" (( "(") (type_descriptor "bool" (primitive_type "bool")) () ")") (parenthesized_expression "(bVar1 ^ 1)" (( "(") (binary_expression "bVar1 ^ 1" (identifier "bVar1") (^ "^") (number_literal "1")) () ")"))) () ")")) (compound_statement "{\n            (**(code **)(puStack_150 + -0x7774))(7);\n            ppppppuVar7 = param_1[7];\n            if ((int)ppppppuVar7 < 0) {\n              ppppppuVar7 = (undefined4 ******)((int)ppppppuVar7 + 0x3f);\n            }\n            iVar14 = (int)ppppppuVar7 >> 6;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (extraout_v1_01 < iVar14) {\nLAB_001c9234:\n              (*pcVar23)(7);\n              iVar14 = extraout_v1_00;\n            }\n            goto LAB_001c9088;\n          }" ({ "{") (expression_statement "(**(code **)(puStack_150 + -0x7774))(7);" (call_expression "(**(code **)(puStack_150 + -0x7774))(7)" (parenthesized_expression "(**(code **)(puStack_150 + -0x7774))" (( "(") (pointer_expression "**(code **)(puStack_150 + -0x7774)" (* "*") (pointer_expression "*(code **)(puStack_150 + -0x7774)" (* "*") (cast_expression "(code **)(puStack_150 + -0x7774)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puStack_150 + -0x7774)" (( "(") (binary_expression "puStack_150 + -0x7774" (identifier "puStack_150") (+ "+") (number_literal "-0x7774")) () ")"))))) () ")")) (argument_list "(7)" (( "(") (number_literal "7") () ")"))) (; ";")) (expression_statement "ppppppuVar7 = param_1[7];" (assignment_expression "ppppppuVar7 = param_1[7]" (identifier "ppppppuVar7") (= "=") (subscript_expression "param_1[7]" (identifier "param_1") ([ "[") (number_literal "7") (] "]"))) (; ";")) (if_statement "if ((int)ppppppuVar7 < 0) {\n              ppppppuVar7 = (undefined4 ******)((int)ppppppuVar7 + 0x3f);\n            }" (if "if") (parenthesized_expression "((int)ppppppuVar7 < 0)" (( "(") (binary_expression "(int)ppppppuVar7 < 0" (cast_expression "(int)ppppppuVar7" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "ppppppuVar7")) (< "<") (number_literal "0")) () ")")) (compound_statement "{\n              ppppppuVar7 = (undefined4 ******)((int)ppppppuVar7 + 0x3f);\n            }" ({ "{") (expression_statement "ppppppuVar7 = (undefined4 ******)((int)ppppppuVar7 + 0x3f);" (assignment_expression "ppppppuVar7 = (undefined4 ******)((int)ppppppuVar7 + 0x3f)" (identifier "ppppppuVar7") (= "=") (cast_expression "(undefined4 ******)((int)ppppppuVar7 + 0x3f)" (( "(") (type_descriptor "undefined4 ******" (type_identifier "undefined4") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (parenthesized_expression "((int)ppppppuVar7 + 0x3f)" (( "(") (binary_expression "(int)ppppppuVar7 + 0x3f" (cast_expression "(int)ppppppuVar7" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "ppppppuVar7")) (+ "+") (number_literal "0x3f")) () ")")))) (; ";")) (} "}"))) (expression_statement "iVar14 = (int)ppppppuVar7 >> 6;" (assignment_expression "iVar14 = (int)ppppppuVar7 >> 6" (identifier "iVar14") (= "=") (binary_expression "(int)ppppppuVar7 >> 6" (cast_expression "(int)ppppppuVar7" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "ppppppuVar7")) (>> ">>") (number_literal "6"))) (; ";")) (expression_statement "pcVar23 = *(code **)(puStack_150 + -0x7774);" (assignment_expression "pcVar23 = *(code **)(puStack_150 + -0x7774)" (identifier "pcVar23") (= "=") (pointer_expression "*(code **)(puStack_150 + -0x7774)" (* "*") (cast_expression "(code **)(puStack_150 + -0x7774)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puStack_150 + -0x7774)" (( "(") (binary_expression "puStack_150 + -0x7774" (identifier "puStack_150") (+ "+") (number_literal "-0x7774")) () ")"))))) (; ";")) (if_statement "if (extraout_v1_01 < iVar14) {\nLAB_001c9234:\n              (*pcVar23)(7);\n              iVar14 = extraout_v1_00;\n            }" (if "if") (parenthesized_expression "(extraout_v1_01 < iVar14)" (( "(") (binary_expression "extraout_v1_01 < iVar14" (identifier "extraout_v1_01") (< "<") (identifier "iVar14")) () ")")) (compound_statement "{\nLAB_001c9234:\n              (*pcVar23)(7);\n              iVar14 = extraout_v1_00;\n            }" ({ "{") (labeled_statement "LAB_001c9234:\n              (*pcVar23)(7);" (statement_identifier "LAB_001c9234") (: ":") (expression_statement "(*pcVar23)(7);" (call_expression "(*pcVar23)(7)" (parenthesized_expression "(*pcVar23)" (( "(") (pointer_expression "*pcVar23" (* "*") (identifier "pcVar23")) () ")")) (argument_list "(7)" (( "(") (number_literal "7") () ")"))) (; ";"))) (expression_statement "iVar14 = extraout_v1_00;" (assignment_expression "iVar14 = extraout_v1_00" (identifier "iVar14") (= "=") (identifier "extraout_v1_00")) (; ";")) (} "}"))) (goto_statement "goto LAB_001c9088;" (goto "goto") (statement_identifier "LAB_001c9088") (; ";")) (} "}"))) (expression_statement "iVar10 = *(int *)(puStack_150 + -0x7f10);" (assignment_expression "iVar10 = *(int *)(puStack_150 + -0x7f10)" (identifier "iVar10") (= "=") (pointer_expression "*(int *)(puStack_150 + -0x7f10)" (* "*") (cast_expression "(int *)(puStack_150 + -0x7f10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puStack_150 + -0x7f10)" (( "(") (binary_expression "puStack_150 + -0x7f10" (identifier "puStack_150") (+ "+") (number_literal "-0x7f10")) () ")"))))) (; ";")) (} "}")) (else_clause "else {\n          uVar36 = (**(code **)(puStack_150 + -0x7774))(7);\n          if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            uVar36 = (*pcVar23)(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c9070;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            iVar14 = 1;\n          }\n          else {\nLAB_001c9070:\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\nLAB_001c9074:\n            uVar36 = (*pcVar23)(7);\n            if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n               (pcVar23 = *(code **)(puStack_150 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c9234;\n            iVar14 = 2;\n          }\nLAB_001c9088:\n          iVar10 = *(int *)(puStack_150 + -0x7f10);\n        }" (else "else") (compound_statement "{\n          uVar36 = (**(code **)(puStack_150 + -0x7774))(7);\n          if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            uVar36 = (*pcVar23)(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c9070;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            iVar14 = 1;\n          }\n          else {\nLAB_001c9070:\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\nLAB_001c9074:\n            uVar36 = (*pcVar23)(7);\n            if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n               (pcVar23 = *(code **)(puStack_150 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c9234;\n            iVar14 = 2;\n          }\nLAB_001c9088:\n          iVar10 = *(int *)(puStack_150 + -0x7f10);\n        }" ({ "{") (expression_statement "uVar36 = (**(code **)(puStack_150 + -0x7774))(7);" (assignment_expression "uVar36 = (**(code **)(puStack_150 + -0x7774))(7)" (identifier "uVar36") (= "=") (call_expression "(**(code **)(puStack_150 + -0x7774))(7)" (parenthesized_expression "(**(code **)(puStack_150 + -0x7774))" (( "(") (pointer_expression "**(code **)(puStack_150 + -0x7774)" (* "*") (pointer_expression "*(code **)(puStack_150 + -0x7774)" (* "*") (cast_expression "(code **)(puStack_150 + -0x7774)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puStack_150 + -0x7774)" (( "(") (binary_expression "puStack_150 + -0x7774" (identifier "puStack_150") (+ "+") (number_literal "-0x7774")) () ")"))))) () ")")) (argument_list "(7)" (( "(") (number_literal "7") () ")")))) (; ";")) (if_statement "if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            uVar36 = (*pcVar23)(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c9070;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            iVar14 = 1;\n          }\n          else {\nLAB_001c9070:\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\nLAB_001c9074:\n            uVar36 = (*pcVar23)(7);\n            if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n               (pcVar23 = *(code **)(puStack_150 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c9234;\n            iVar14 = 2;\n          }" (if "if") (parenthesized_expression "((int)((ulonglong)uVar36 >> 0x20) == 0)" (( "(") (binary_expression "(int)((ulonglong)uVar36 >> 0x20) == 0" (cast_expression "(int)((ulonglong)uVar36 >> 0x20)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "((ulonglong)uVar36 >> 0x20)" (( "(") (binary_expression "(ulonglong)uVar36 >> 0x20" (cast_expression "(ulonglong)uVar36" (( "(") (type_descriptor "ulonglong" (type_identifier "ulonglong")) () ")") (identifier "uVar36")) (>> ">>") (number_literal "0x20")) () ")"))) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            uVar36 = (*pcVar23)(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c9070;\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\n            if (1 < (uint)uVar36) goto LAB_001c9074;\n            iVar14 = 1;\n          }" ({ "{") (expression_statement "pcVar23 = *(code **)(puStack_150 + -0x7774);" (assignment_expression "pcVar23 = *(code **)(puStack_150 + -0x7774)" (identifier "pcVar23") (= "=") (pointer_expression "*(code **)(puStack_150 + -0x7774)" (* "*") (cast_expression "(code **)(puStack_150 + -0x7774)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puStack_150 + -0x7774)" (( "(") (binary_expression "puStack_150 + -0x7774" (identifier "puStack_150") (+ "+") (number_literal "-0x7774")) () ")"))))) (; ";")) (if_statement "if (1 < (uint)uVar36) goto LAB_001c9074;" (if "if") (parenthesized_expression "(1 < (uint)uVar36)" (( "(") (binary_expression "1 < (uint)uVar36" (number_literal "1") (< "<") (cast_expression "(uint)uVar36" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "uVar36"))) () ")")) (goto_statement "goto LAB_001c9074;" (goto "goto") (statement_identifier "LAB_001c9074") (; ";"))) (expression_statement "uVar36 = (*pcVar23)(7);" (assignment_expression "uVar36 = (*pcVar23)(7)" (identifier "uVar36") (= "=") (call_expression "(*pcVar23)(7)" (parenthesized_expression "(*pcVar23)" (( "(") (pointer_expression "*pcVar23" (* "*") (identifier "pcVar23")) () ")")) (argument_list "(7)" (( "(") (number_literal "7") () ")")))) (; ";")) (if_statement "if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c9070;" (if "if") (parenthesized_expression "((int)((ulonglong)uVar36 >> 0x20) != 0)" (( "(") (binary_expression "(int)((ulonglong)uVar36 >> 0x20) != 0" (cast_expression "(int)((ulonglong)uVar36 >> 0x20)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "((ulonglong)uVar36 >> 0x20)" (( "(") (binary_expression "(ulonglong)uVar36 >> 0x20" (cast_expression "(ulonglong)uVar36" (( "(") (type_descriptor "ulonglong" (type_identifier "ulonglong")) () ")") (identifier "uVar36")) (>> ">>") (number_literal "0x20")) () ")"))) (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto LAB_001c9070;" (goto "goto") (statement_identifier "LAB_001c9070") (; ";"))) (expression_statement "pcVar23 = *(code **)(puStack_150 + -0x7774);" (assignment_expression "pcVar23 = *(code **)(puStack_150 + -0x7774)" (identifier "pcVar23") (= "=") (pointer_expression "*(code **)(puStack_150 + -0x7774)" (* "*") (cast_expression "(code **)(puStack_150 + -0x7774)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puStack_150 + -0x7774)" (( "(") (binary_expression "puStack_150 + -0x7774" (identifier "puStack_150") (+ "+") (number_literal "-0x7774")) () ")"))))) (; ";")) (if_statement "if (1 < (uint)uVar36) goto LAB_001c9074;" (if "if") (parenthesized_expression "(1 < (uint)uVar36)" (( "(") (binary_expression "1 < (uint)uVar36" (number_literal "1") (< "<") (cast_expression "(uint)uVar36" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "uVar36"))) () ")")) (goto_statement "goto LAB_001c9074;" (goto "goto") (statement_identifier "LAB_001c9074") (; ";"))) (expression_statement "iVar14 = 1;" (assignment_expression "iVar14 = 1" (identifier "iVar14") (= "=") (number_literal "1")) (; ";")) (} "}")) (else_clause "else {\nLAB_001c9070:\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\nLAB_001c9074:\n            uVar36 = (*pcVar23)(7);\n            if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n               (pcVar23 = *(code **)(puStack_150 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c9234;\n            iVar14 = 2;\n          }" (else "else") (compound_statement "{\nLAB_001c9070:\n            pcVar23 = *(code **)(puStack_150 + -0x7774);\nLAB_001c9074:\n            uVar36 = (*pcVar23)(7);\n            if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n               (pcVar23 = *(code **)(puStack_150 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c9234;\n            iVar14 = 2;\n          }" ({ "{") (labeled_statement "LAB_001c9070:\n            pcVar23 = *(code **)(puStack_150 + -0x7774);" (statement_identifier "LAB_001c9070") (: ":") (expression_statement "pcVar23 = *(code **)(puStack_150 + -0x7774);" (assignment_expression "pcVar23 = *(code **)(puStack_150 + -0x7774)" (identifier "pcVar23") (= "=") (pointer_expression "*(code **)(puStack_150 + -0x7774)" (* "*") (cast_expression "(code **)(puStack_150 + -0x7774)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puStack_150 + -0x7774)" (( "(") (binary_expression "puStack_150 + -0x7774" (identifier "puStack_150") (+ "+") (number_literal "-0x7774")) () ")"))))) (; ";"))) (labeled_statement "LAB_001c9074:\n            uVar36 = (*pcVar23)(7);" (statement_identifier "LAB_001c9074") (: ":") (expression_statement "uVar36 = (*pcVar23)(7);" (assignment_expression "uVar36 = (*pcVar23)(7)" (identifier "uVar36") (= "=") (call_expression "(*pcVar23)(7)" (parenthesized_expression "(*pcVar23)" (( "(") (pointer_expression "*pcVar23" (* "*") (identifier "pcVar23")) () ")")) (argument_list "(7)" (( "(") (number_literal "7") () ")")))) (; ";"))) (if_statement "if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n               (pcVar23 = *(code **)(puStack_150 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c9234;" (if "if") (parenthesized_expression "(((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n               (pcVar23 = *(code **)(puStack_150 + -0x7774), (uint)uVar36 < 2))" (( "(") (binary_expression "((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n               (pcVar23 = *(code **)(puStack_150 + -0x7774), (uint)uVar36 < 2)" (parenthesized_expression "((int)((ulonglong)uVar36 >> 0x20) == 0)" (( "(") (binary_expression "(int)((ulonglong)uVar36 >> 0x20) == 0" (cast_expression "(int)((ulonglong)uVar36 >> 0x20)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "((ulonglong)uVar36 >> 0x20)" (( "(") (binary_expression "(ulonglong)uVar36 >> 0x20" (cast_expression "(ulonglong)uVar36" (( "(") (type_descriptor "ulonglong" (type_identifier "ulonglong")) () ")") (identifier "uVar36")) (>> ">>") (number_literal "0x20")) () ")"))) (== "==") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(pcVar23 = *(code **)(puStack_150 + -0x7774), (uint)uVar36 < 2)" (( "(") (comma_expression "pcVar23 = *(code **)(puStack_150 + -0x7774), (uint)uVar36 < 2" (assignment_expression "pcVar23 = *(code **)(puStack_150 + -0x7774)" (identifier "pcVar23") (= "=") (pointer_expression "*(code **)(puStack_150 + -0x7774)" (* "*") (cast_expression "(code **)(puStack_150 + -0x7774)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puStack_150 + -0x7774)" (( "(") (binary_expression "puStack_150 + -0x7774" (identifier "puStack_150") (+ "+") (number_literal "-0x7774")) () ")"))))) (, ",") (binary_expression "(uint)uVar36 < 2" (cast_expression "(uint)uVar36" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "uVar36")) (< "<") (number_literal "2"))) () ")"))) () ")")) (goto_statement "goto LAB_001c9234;" (goto "goto") (statement_identifier "LAB_001c9234") (; ";"))) (expression_statement "iVar14 = 2;" (assignment_expression "iVar14 = 2" (identifier "iVar14") (= "=") (number_literal "2")) (; ";")) (} "}")))) (labeled_statement "LAB_001c9088:\n          iVar10 = *(int *)(puStack_150 + -0x7f10);" (statement_identifier "LAB_001c9088") (: ":") (expression_statement "iVar10 = *(int *)(puStack_150 + -0x7f10);" (assignment_expression "iVar10 = *(int *)(puStack_150 + -0x7f10)" (identifier "iVar10") (= "=") (pointer_expression "*(int *)(puStack_150 + -0x7f10)" (* "*") (cast_expression "(int *)(puStack_150 + -0x7f10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puStack_150 + -0x7f10)" (( "(") (binary_expression "puStack_150 + -0x7f10" (identifier "puStack_150") (+ "+") (number_literal "-0x7f10")) () ")"))))) (; ";"))) (} "}")))) (expression_statement "iVar15 = 0;" (assignment_expression "iVar15 = 0" (identifier "iVar15") (= "=") (number_literal "0")) (; ";")) (expression_statement "ppppppuStack_124 = (undefined4 ******)0x1;" (assignment_expression "ppppppuStack_124 = (undefined4 ******)0x1" (identifier "ppppppuStack_124") (= "=") (cast_expression "(undefined4 ******)0x1" (( "(") (type_descriptor "undefined4 ******" (type_identifier "undefined4") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (number_literal "0x1"))) (; ";")) (expression_statement "puStack_120 = &uStack_148;" (assignment_expression "puStack_120 = &uStack_148" (identifier "puStack_120") (= "=") (pointer_expression "&uStack_148" (& "&") (identifier "uStack_148"))) (; ";")) (expression_statement "pppppppuStack_13c = pppppppuVar9;" (assignment_expression "pppppppuStack_13c = pppppppuVar9" (identifier "pppppppuStack_13c") (= "=") (identifier "pppppppuVar9")) (; ";")) (expression_statement "pppppppuStack_138 = pppppppuVar12;" (assignment_expression "pppppppuStack_138 = pppppppuVar12" (identifier "pppppppuStack_138") (= "=") (identifier "pppppppuVar12")) (; ";")) (expression_statement "ppppppuStack_134 = ppppppuVar2;" (assignment_expression "ppppppuStack_134 = ppppppuVar2" (identifier "ppppppuStack_134") (= "=") (identifier "ppppppuVar2")) (; ";")) (expression_statement "pppppppuStack_130 = unaff_s6;" (assignment_expression "pppppppuStack_130 = unaff_s6" (identifier "pppppppuStack_130") (= "=") (identifier "unaff_s6")) (; ";")) (expression_statement "pppppppuStack_12c = unaff_s5;" (assignment_expression "pppppppuStack_12c = unaff_s5" (identifier "pppppppuStack_12c") (= "=") (identifier "unaff_s5")) (; ";")) (expression_statement "pppppppuStack_128 = param_1;" (assignment_expression "pppppppuStack_128 = param_1" (identifier "pppppppuStack_128") (= "=") (identifier "param_1")) (; ";")) (expression_statement "(**(code **)(puStack_150 + -0x7718))(iVar10 + 0x5428,&pppppppuStack_13c,iVar14,0);" (call_expression "(**(code **)(puStack_150 + -0x7718))(iVar10 + 0x5428,&pppppppuStack_13c,iVar14,0)" (parenthesized_expression "(**(code **)(puStack_150 + -0x7718))" (( "(") (pointer_expression "**(code **)(puStack_150 + -0x7718)" (* "*") (pointer_expression "*(code **)(puStack_150 + -0x7718)" (* "*") (cast_expression "(code **)(puStack_150 + -0x7718)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puStack_150 + -0x7718)" (( "(") (binary_expression "puStack_150 + -0x7718" (identifier "puStack_150") (+ "+") (number_literal "-0x7718")) () ")"))))) () ")")) (argument_list "(iVar10 + 0x5428,&pppppppuStack_13c,iVar14,0)" (( "(") (binary_expression "iVar10 + 0x5428" (identifier "iVar10") (+ "+") (number_literal "0x5428")) (, ",") (pointer_expression "&pppppppuStack_13c" (& "&") (identifier "pppppppuStack_13c")) (, ",") (identifier "iVar14") (, ",") (number_literal "0") () ")"))) (; ";")) (expression_statement "ppppppuVar2 = ppppppuStack_124;" (assignment_expression "ppppppuVar2 = ppppppuStack_124" (identifier "ppppppuVar2") (= "=") (identifier "ppppppuStack_124")) (; ";")) (expression_statement "(**(code **)(puStack_150 + -0x79bc))(unaff_s6);" (call_expression "(**(code **)(puStack_150 + -0x79bc))(unaff_s6)" (parenthesized_expression "(**(code **)(puStack_150 + -0x79bc))" (( "(") (pointer_expression "**(code **)(puStack_150 + -0x79bc)" (* "*") (pointer_expression "*(code **)(puStack_150 + -0x79bc)" (* "*") (cast_expression "(code **)(puStack_150 + -0x79bc)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puStack_150 + -0x79bc)" (( "(") (binary_expression "puStack_150 + -0x79bc" (identifier "puStack_150") (+ "+") (number_literal "-0x79bc")) () ")"))))) () ")")) (argument_list "(unaff_s6)" (( "(") (identifier "unaff_s6") () ")"))) (; ";")) (expression_statement "(**(code **)(puStack_150 + -0x79bc))(unaff_s5);" (call_expression "(**(code **)(puStack_150 + -0x79bc))(unaff_s5)" (parenthesized_expression "(**(code **)(puStack_150 + -0x79bc))" (( "(") (pointer_expression "**(code **)(puStack_150 + -0x79bc)" (* "*") (pointer_expression "*(code **)(puStack_150 + -0x79bc)" (* "*") (cast_expression "(code **)(puStack_150 + -0x79bc)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puStack_150 + -0x79bc)" (( "(") (binary_expression "puStack_150 + -0x79bc" (identifier "puStack_150") (+ "+") (number_literal "-0x79bc")) () ")"))))) () ")")) (argument_list "(unaff_s5)" (( "(") (identifier "unaff_s5") () ")"))) (; ";")) (expression_statement "param_1[0xa8] = pppppppuVar9[0xa8];" (assignment_expression "param_1[0xa8] = pppppppuVar9[0xa8]" (subscript_expression "param_1[0xa8]" (identifier "param_1") ([ "[") (number_literal "0xa8") (] "]")) (= "=") (subscript_expression "pppppppuVar9[0xa8]" (identifier "pppppppuVar9") ([ "[") (number_literal "0xa8") (] "]"))) (; ";")) (if_statement "if (ppppppuVar2 == (undefined4 ******)0x0) {\n          param_1 = (undefined4 *******)(**(code **)(puStack_150 + -0x7964))(param_1);\n        }" (if "if") (parenthesized_expression "(ppppppuVar2 == (undefined4 ******)0x0)" (( "(") (binary_expression "ppppppuVar2 == (undefined4 ******)0x0" (identifier "ppppppuVar2") (== "==") (cast_expression "(undefined4 ******)0x0" (( "(") (type_descriptor "undefined4 ******" (type_identifier "undefined4") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n          param_1 = (undefined4 *******)(**(code **)(puStack_150 + -0x7964))(param_1);\n        }" ({ "{") (expression_statement "param_1 = (undefined4 *******)(**(code **)(puStack_150 + -0x7964))(param_1);" (assignment_expression "param_1 = (undefined4 *******)(**(code **)(puStack_150 + -0x7964))(param_1)" (identifier "param_1") (= "=") (cast_expression "(undefined4 *******)(**(code **)(puStack_150 + -0x7964))(param_1)" (( "(") (type_descriptor "undefined4 *******" (type_identifier "undefined4") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (call_expression "(**(code **)(puStack_150 + -0x7964))(param_1)" (parenthesized_expression "(**(code **)(puStack_150 + -0x7964))" (( "(") (pointer_expression "**(code **)(puStack_150 + -0x7964)" (* "*") (pointer_expression "*(code **)(puStack_150 + -0x7964)" (* "*") (cast_expression "(code **)(puStack_150 + -0x7964)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puStack_150 + -0x7964)" (( "(") (binary_expression "puStack_150 + -0x7964" (identifier "puStack_150") (+ "+") (number_literal "-0x7964")) () ")"))))) () ")")) (argument_list "(param_1)" (( "(") (identifier "param_1") () ")"))))) (; ";")) (} "}"))) (} "}"))) (expression_statement "puVar8 = puStack_150;" (assignment_expression "puVar8 = puStack_150" (identifier "puVar8") (= "=") (identifier "puStack_150")) (; ";")) (if_statement "if (iStack_11c == *piVar18) {\n        return param_1;\n      }" (if "if") (parenthesized_expression "(iStack_11c == *piVar18)" (( "(") (binary_expression "iStack_11c == *piVar18" (identifier "iStack_11c") (== "==") (pointer_expression "*piVar18" (* "*") (identifier "piVar18"))) () ")")) (compound_statement "{\n        return param_1;\n      }" ({ "{") (return_statement "return param_1;" (return "return") (identifier "param_1") (; ";")) (} "}"))) (goto_statement "goto LAB_001c9314;" (goto "goto") (statement_identifier "LAB_001c9314") (; ";")) (} "}"))) (goto_statement "goto LAB_001c9320;" (goto "goto") (statement_identifier "LAB_001c9320") (; ";")) (} "}"))))) (expression_statement "ppppppuVar2 = (undefined4 ******)0x3f5;" (assignment_expression "ppppppuVar2 = (undefined4 ******)0x3f5" (identifier "ppppppuVar2") (= "=") (cast_expression "(undefined4 ******)0x3f5" (( "(") (type_descriptor "undefined4 ******" (type_identifier "undefined4") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (number_literal "0x3f5"))) (; ";")) (expression_statement "pcVar21 = *(code **)(puVar8 + -0x72a8);" (assignment_expression "pcVar21 = *(code **)(puVar8 + -0x72a8)" (identifier "pcVar21") (= "=") (pointer_expression "*(code **)(puVar8 + -0x72a8)" (* "*") (cast_expression "(code **)(puVar8 + -0x72a8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar8 + -0x72a8)" (( "(") (binary_expression "puVar8 + -0x72a8" (identifier "puVar8") (+ "+") (number_literal "-0x72a8")) () ")"))))) (; ";")) (expression_statement "pppppppuVar13 = (undefined4 *******)(*(int *)(puVar8 + -0x7fc4) + -0x288c);" (assignment_expression "pppppppuVar13 = (undefined4 *******)(*(int *)(puVar8 + -0x7fc4) + -0x288c)" (identifier "pppppppuVar13") (= "=") (cast_expression "(undefined4 *******)(*(int *)(puVar8 + -0x7fc4) + -0x288c)" (( "(") (type_descriptor "undefined4 *******" (type_identifier "undefined4") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "(*(int *)(puVar8 + -0x7fc4) + -0x288c)" (( "(") (binary_expression "*(int *)(puVar8 + -0x7fc4) + -0x288c" (pointer_expression "*(int *)(puVar8 + -0x7fc4)" (* "*") (cast_expression "(int *)(puVar8 + -0x7fc4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + -0x7fc4)" (( "(") (binary_expression "puVar8 + -0x7fc4" (identifier "puVar8") (+ "+") (number_literal "-0x7fc4")) () ")")))) (+ "+") (number_literal "-0x288c")) () ")")))) (; ";")) (expression_statement "pcVar24 = ExtentImage;" (assignment_expression "pcVar24 = ExtentImage" (identifier "pcVar24") (= "=") (identifier "ExtentImage")) (; ";")) (expression_statement "pppppppuVar12 = (undefined4 *******)(*(int *)(puVar8 + -0x7fc8) + -0x3784);" (assignment_expression "pppppppuVar12 = (undefined4 *******)(*(int *)(puVar8 + -0x7fc8) + -0x3784)" (identifier "pppppppuVar12") (= "=") (cast_expression "(undefined4 *******)(*(int *)(puVar8 + -0x7fc8) + -0x3784)" (( "(") (type_descriptor "undefined4 *******" (type_identifier "undefined4") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "(*(int *)(puVar8 + -0x7fc8) + -0x3784)" (( "(") (binary_expression "*(int *)(puVar8 + -0x7fc8) + -0x3784" (pointer_expression "*(int *)(puVar8 + -0x7fc8)" (* "*") (cast_expression "(int *)(puVar8 + -0x7fc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + -0x7fc8)" (( "(") (binary_expression "puVar8 + -0x7fc8" (identifier "puVar8") (+ "+") (number_literal "-0x7fc8")) () ")")))) (+ "+") (number_literal "-0x3784")) () ")")))) (; ";")) (expression_statement "(*pcVar21)();" (call_expression "(*pcVar21)()" (parenthesized_expression "(*pcVar21)" (( "(") (pointer_expression "*pcVar21" (* "*") (identifier "pcVar21")) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "pcVar23 = pcVar21 + 0x1e754c;" (assignment_expression "pcVar23 = pcVar21 + 0x1e754c" (identifier "pcVar23") (= "=") (binary_expression "pcVar21 + 0x1e754c" (identifier "pcVar21") (+ "+") (number_literal "0x1e754c"))) (; ";")) (expression_statement "pcStack_188 = pcVar23;" (assignment_expression "pcStack_188 = pcVar23" (identifier "pcStack_188") (= "=") (identifier "pcVar23")) (; ";")) (expression_statement "pppppppuStack_17c = pppppppuVar9;" (assignment_expression "pppppppuStack_17c = pppppppuVar9" (identifier "pppppppuStack_17c") (= "=") (identifier "pppppppuVar9")) (; ";")) (expression_statement "pppppppuStack_178 = param_1;" (assignment_expression "pppppppuStack_178 = param_1" (identifier "pppppppuStack_178") (= "=") (identifier "param_1")) (; ";")) (expression_statement "ppppppuStack_174 = unaff_s2;" (assignment_expression "ppppppuStack_174 = unaff_s2" (identifier "ppppppuStack_174") (= "=") (identifier "unaff_s2")) (; ";")) (expression_statement "pppppppuStack_170 = unaff_s3;" (assignment_expression "pppppppuStack_170 = unaff_s3" (identifier "pppppppuStack_170") (= "=") (identifier "unaff_s3")) (; ";")) (expression_statement "pcStack_16c = pcVar24;" (assignment_expression "pcStack_16c = pcVar24" (identifier "pcStack_16c") (= "=") (identifier "pcVar24")) (; ";")) (if_statement "if (pppppppuVar12 == (undefined4 *******)0x0) {\n    iVar15 = *(int *)(pcVar21 + 0x1df588) + -0x26c8;\n    (**(code **)(pcVar21 + 0x1e02a4))\n              (*(int *)(pcVar21 + 0x1df584) + -0x37b0,*(int *)(pcVar21 + 0x1df588) + -0x288c,0x474,\n               iVar15);\nLAB_001c94fc:\n    iVar15 = iVar15 + -0x26c8;\n    (**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fc4) + -0x2850,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x478,\n               iVar15);\nLAB_001c951c:\n    iVar15 = iVar15 + -0x26c8;\n    (**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fd0) + 0x294c,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x47a,\n               iVar15);\n    pppppppuVar12 = pppppppuVar9;\nLAB_001c953c:\n    (**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fd0) + 0x1cac,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x479,\n               iVar15 + -0x26c8);\n  }\n  else if (pppppppuVar12[0xcdb] == (undefined4 ******)0xabacadab) {\n    if (pppppppuVar12[0xcd4] != (undefined4 ******)0x0) {\n      pppppppuStack_194 = pppppppuVar12 + 0xd0;\n      ppppppuStack_198 = (undefined4 ******)(*(int *)(pcVar21 + 0x1df580) + -0x62ac);\n      (**(code **)(pcVar21 + 0x1dfe7c))\n                (0x8000,*(int *)(pcVar21 + 0x1df588) + -0x288c,\n                 *(int *)(pcVar21 + 0x1df588) + -0x26d4,0x477);\n    }\n    iVar15 = *(int *)(pcStack_188 + -0x7fc4);\n    pppppppuVar9 = pppppppuVar12;\n    param_1 = pppppppuVar13;\n    unaff_s2 = ppppppuVar2;\n    pcVar23 = pcStack_188;\n    if (pppppppuVar13 == (undefined4 *******)0x0) goto LAB_001c94fc;\n    if (ppppppuVar2 != (undefined4 ******)0x0) {\n      if (ppppppuVar2[7] == (undefined4 *****)0xabacadab) {\n        ppppppuStack_198 = ppppppuVar2;\n        pppppppuVar9 = (undefined4 *******)\n                       (**(code **)(pcStack_188 + -0x7080))\n                                 (pppppppuVar12,*pppppppuVar13,pppppppuVar13[1],1);\n        if (pppppppuVar9 != (undefined4 *******)0x0) {\n          iVar15 = (**(code **)(pcStack_188 + -0x7a20))(pppppppuVar9,ppppppuVar2);\n          if (iVar15 == 0) {\n            (**(code **)(pcStack_188 + -0x7964))(pppppppuVar9);\n            pppppppuVar9 = (undefined4 *******)0x0;\n          }\n          else {\n            pppppppuStack_194 = (undefined4 *******)-(int)pppppppuVar13[3];\n            ppppppuStack_198 = (undefined4 ******)-(int)pppppppuVar13[2];\n            ppppppuStack_190 = ppppppuVar2;\n            iVar15 = (**(code **)(pcStack_188 + -0x7bec))\n                               (pppppppuVar9,pppppppuVar12,pppppppuVar12[0x99],1);\n            if (iVar15 != 0) {\n              (**(code **)(pcStack_188 + -0x7d18))\n                        (pppppppuVar9,pppppppuVar12[6],pppppppuVar12[7],pppppppuVar13);\n            }\n          }\n        }\n        return pppppppuVar9;\n      }\n      goto LAB_001c951c;\n    }\n    goto LAB_001c953c;\n  }" (if "if") (parenthesized_expression "(pppppppuVar12 == (undefined4 *******)0x0)" (( "(") (binary_expression "pppppppuVar12 == (undefined4 *******)0x0" (identifier "pppppppuVar12") (== "==") (cast_expression "(undefined4 *******)0x0" (( "(") (type_descriptor "undefined4 *******" (type_identifier "undefined4") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n    iVar15 = *(int *)(pcVar21 + 0x1df588) + -0x26c8;\n    (**(code **)(pcVar21 + 0x1e02a4))\n              (*(int *)(pcVar21 + 0x1df584) + -0x37b0,*(int *)(pcVar21 + 0x1df588) + -0x288c,0x474,\n               iVar15);\nLAB_001c94fc:\n    iVar15 = iVar15 + -0x26c8;\n    (**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fc4) + -0x2850,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x478,\n               iVar15);\nLAB_001c951c:\n    iVar15 = iVar15 + -0x26c8;\n    (**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fd0) + 0x294c,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x47a,\n               iVar15);\n    pppppppuVar12 = pppppppuVar9;\nLAB_001c953c:\n    (**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fd0) + 0x1cac,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x479,\n               iVar15 + -0x26c8);\n  }" ({ "{") (expression_statement "iVar15 = *(int *)(pcVar21 + 0x1df588) + -0x26c8;" (assignment_expression "iVar15 = *(int *)(pcVar21 + 0x1df588) + -0x26c8" (identifier "iVar15") (= "=") (binary_expression "*(int *)(pcVar21 + 0x1df588) + -0x26c8" (pointer_expression "*(int *)(pcVar21 + 0x1df588)" (* "*") (cast_expression "(int *)(pcVar21 + 0x1df588)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar21 + 0x1df588)" (( "(") (binary_expression "pcVar21 + 0x1df588" (identifier "pcVar21") (+ "+") (number_literal "0x1df588")) () ")")))) (+ "+") (number_literal "-0x26c8"))) (; ";")) (expression_statement "(**(code **)(pcVar21 + 0x1e02a4))\n              (*(int *)(pcVar21 + 0x1df584) + -0x37b0,*(int *)(pcVar21 + 0x1df588) + -0x288c,0x474,\n               iVar15);" (call_expression "(**(code **)(pcVar21 + 0x1e02a4))\n              (*(int *)(pcVar21 + 0x1df584) + -0x37b0,*(int *)(pcVar21 + 0x1df588) + -0x288c,0x474,\n               iVar15)" (parenthesized_expression "(**(code **)(pcVar21 + 0x1e02a4))" (( "(") (pointer_expression "**(code **)(pcVar21 + 0x1e02a4)" (* "*") (pointer_expression "*(code **)(pcVar21 + 0x1e02a4)" (* "*") (cast_expression "(code **)(pcVar21 + 0x1e02a4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar21 + 0x1e02a4)" (( "(") (binary_expression "pcVar21 + 0x1e02a4" (identifier "pcVar21") (+ "+") (number_literal "0x1e02a4")) () ")"))))) () ")")) (argument_list "(*(int *)(pcVar21 + 0x1df584) + -0x37b0,*(int *)(pcVar21 + 0x1df588) + -0x288c,0x474,\n               iVar15)" (( "(") (binary_expression "*(int *)(pcVar21 + 0x1df584) + -0x37b0" (pointer_expression "*(int *)(pcVar21 + 0x1df584)" (* "*") (cast_expression "(int *)(pcVar21 + 0x1df584)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar21 + 0x1df584)" (( "(") (binary_expression "pcVar21 + 0x1df584" (identifier "pcVar21") (+ "+") (number_literal "0x1df584")) () ")")))) (+ "+") (number_literal "-0x37b0")) (, ",") (binary_expression "*(int *)(pcVar21 + 0x1df588) + -0x288c" (pointer_expression "*(int *)(pcVar21 + 0x1df588)" (* "*") (cast_expression "(int *)(pcVar21 + 0x1df588)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar21 + 0x1df588)" (( "(") (binary_expression "pcVar21 + 0x1df588" (identifier "pcVar21") (+ "+") (number_literal "0x1df588")) () ")")))) (+ "+") (number_literal "-0x288c")) (, ",") (number_literal "0x474") (, ",") (identifier "iVar15") () ")"))) (; ";")) (labeled_statement "LAB_001c94fc:\n    iVar15 = iVar15 + -0x26c8;" (statement_identifier "LAB_001c94fc") (: ":") (expression_statement "iVar15 = iVar15 + -0x26c8;" (assignment_expression "iVar15 = iVar15 + -0x26c8" (identifier "iVar15") (= "=") (binary_expression "iVar15 + -0x26c8" (identifier "iVar15") (+ "+") (number_literal "-0x26c8"))) (; ";"))) (expression_statement "(**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fc4) + -0x2850,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x478,\n               iVar15);" (call_expression "(**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fc4) + -0x2850,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x478,\n               iVar15)" (parenthesized_expression "(**(code **)(pcVar23 + -0x72a8))" (( "(") (pointer_expression "**(code **)(pcVar23 + -0x72a8)" (* "*") (pointer_expression "*(code **)(pcVar23 + -0x72a8)" (* "*") (cast_expression "(code **)(pcVar23 + -0x72a8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar23 + -0x72a8)" (( "(") (binary_expression "pcVar23 + -0x72a8" (identifier "pcVar23") (+ "+") (number_literal "-0x72a8")) () ")"))))) () ")")) (argument_list "(*(int *)(pcVar23 + -0x7fc4) + -0x2850,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x478,\n               iVar15)" (( "(") (binary_expression "*(int *)(pcVar23 + -0x7fc4) + -0x2850" (pointer_expression "*(int *)(pcVar23 + -0x7fc4)" (* "*") (cast_expression "(int *)(pcVar23 + -0x7fc4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar23 + -0x7fc4)" (( "(") (binary_expression "pcVar23 + -0x7fc4" (identifier "pcVar23") (+ "+") (number_literal "-0x7fc4")) () ")")))) (+ "+") (number_literal "-0x2850")) (, ",") (binary_expression "*(int *)(pcVar23 + -0x7fc4) + -0x288c" (pointer_expression "*(int *)(pcVar23 + -0x7fc4)" (* "*") (cast_expression "(int *)(pcVar23 + -0x7fc4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar23 + -0x7fc4)" (( "(") (binary_expression "pcVar23 + -0x7fc4" (identifier "pcVar23") (+ "+") (number_literal "-0x7fc4")) () ")")))) (+ "+") (number_literal "-0x288c")) (, ",") (number_literal "0x478") (, ",") (identifier "iVar15") () ")"))) (; ";")) (labeled_statement "LAB_001c951c:\n    iVar15 = iVar15 + -0x26c8;" (statement_identifier "LAB_001c951c") (: ":") (expression_statement "iVar15 = iVar15 + -0x26c8;" (assignment_expression "iVar15 = iVar15 + -0x26c8" (identifier "iVar15") (= "=") (binary_expression "iVar15 + -0x26c8" (identifier "iVar15") (+ "+") (number_literal "-0x26c8"))) (; ";"))) (expression_statement "(**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fd0) + 0x294c,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x47a,\n               iVar15);" (call_expression "(**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fd0) + 0x294c,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x47a,\n               iVar15)" (parenthesized_expression "(**(code **)(pcVar23 + -0x72a8))" (( "(") (pointer_expression "**(code **)(pcVar23 + -0x72a8)" (* "*") (pointer_expression "*(code **)(pcVar23 + -0x72a8)" (* "*") (cast_expression "(code **)(pcVar23 + -0x72a8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar23 + -0x72a8)" (( "(") (binary_expression "pcVar23 + -0x72a8" (identifier "pcVar23") (+ "+") (number_literal "-0x72a8")) () ")"))))) () ")")) (argument_list "(*(int *)(pcVar23 + -0x7fd0) + 0x294c,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x47a,\n               iVar15)" (( "(") (binary_expression "*(int *)(pcVar23 + -0x7fd0) + 0x294c" (pointer_expression "*(int *)(pcVar23 + -0x7fd0)" (* "*") (cast_expression "(int *)(pcVar23 + -0x7fd0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar23 + -0x7fd0)" (( "(") (binary_expression "pcVar23 + -0x7fd0" (identifier "pcVar23") (+ "+") (number_literal "-0x7fd0")) () ")")))) (+ "+") (number_literal "0x294c")) (, ",") (binary_expression "*(int *)(pcVar23 + -0x7fc4) + -0x288c" (pointer_expression "*(int *)(pcVar23 + -0x7fc4)" (* "*") (cast_expression "(int *)(pcVar23 + -0x7fc4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar23 + -0x7fc4)" (( "(") (binary_expression "pcVar23 + -0x7fc4" (identifier "pcVar23") (+ "+") (number_literal "-0x7fc4")) () ")")))) (+ "+") (number_literal "-0x288c")) (, ",") (number_literal "0x47a") (, ",") (identifier "iVar15") () ")"))) (; ";")) (expression_statement "pppppppuVar12 = pppppppuVar9;" (assignment_expression "pppppppuVar12 = pppppppuVar9" (identifier "pppppppuVar12") (= "=") (identifier "pppppppuVar9")) (; ";")) (labeled_statement "LAB_001c953c:\n    (**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fd0) + 0x1cac,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x479,\n               iVar15 + -0x26c8);" (statement_identifier "LAB_001c953c") (: ":") (expression_statement "(**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fd0) + 0x1cac,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x479,\n               iVar15 + -0x26c8);" (call_expression "(**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fd0) + 0x1cac,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x479,\n               iVar15 + -0x26c8)" (parenthesized_expression "(**(code **)(pcVar23 + -0x72a8))" (( "(") (pointer_expression "**(code **)(pcVar23 + -0x72a8)" (* "*") (pointer_expression "*(code **)(pcVar23 + -0x72a8)" (* "*") (cast_expression "(code **)(pcVar23 + -0x72a8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar23 + -0x72a8)" (( "(") (binary_expression "pcVar23 + -0x72a8" (identifier "pcVar23") (+ "+") (number_literal "-0x72a8")) () ")"))))) () ")")) (argument_list "(*(int *)(pcVar23 + -0x7fd0) + 0x1cac,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x479,\n               iVar15 + -0x26c8)" (( "(") (binary_expression "*(int *)(pcVar23 + -0x7fd0) + 0x1cac" (pointer_expression "*(int *)(pcVar23 + -0x7fd0)" (* "*") (cast_expression "(int *)(pcVar23 + -0x7fd0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar23 + -0x7fd0)" (( "(") (binary_expression "pcVar23 + -0x7fd0" (identifier "pcVar23") (+ "+") (number_literal "-0x7fd0")) () ")")))) (+ "+") (number_literal "0x1cac")) (, ",") (binary_expression "*(int *)(pcVar23 + -0x7fc4) + -0x288c" (pointer_expression "*(int *)(pcVar23 + -0x7fc4)" (* "*") (cast_expression "(int *)(pcVar23 + -0x7fc4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar23 + -0x7fc4)" (( "(") (binary_expression "pcVar23 + -0x7fc4" (identifier "pcVar23") (+ "+") (number_literal "-0x7fc4")) () ")")))) (+ "+") (number_literal "-0x288c")) (, ",") (number_literal "0x479") (, ",") (binary_expression "iVar15 + -0x26c8" (identifier "iVar15") (+ "+") (number_literal "-0x26c8")) () ")"))) (; ";"))) (} "}")) (else_clause "else if (pppppppuVar12[0xcdb] == (undefined4 ******)0xabacadab) {\n    if (pppppppuVar12[0xcd4] != (undefined4 ******)0x0) {\n      pppppppuStack_194 = pppppppuVar12 + 0xd0;\n      ppppppuStack_198 = (undefined4 ******)(*(int *)(pcVar21 + 0x1df580) + -0x62ac);\n      (**(code **)(pcVar21 + 0x1dfe7c))\n                (0x8000,*(int *)(pcVar21 + 0x1df588) + -0x288c,\n                 *(int *)(pcVar21 + 0x1df588) + -0x26d4,0x477);\n    }\n    iVar15 = *(int *)(pcStack_188 + -0x7fc4);\n    pppppppuVar9 = pppppppuVar12;\n    param_1 = pppppppuVar13;\n    unaff_s2 = ppppppuVar2;\n    pcVar23 = pcStack_188;\n    if (pppppppuVar13 == (undefined4 *******)0x0) goto LAB_001c94fc;\n    if (ppppppuVar2 != (undefined4 ******)0x0) {\n      if (ppppppuVar2[7] == (undefined4 *****)0xabacadab) {\n        ppppppuStack_198 = ppppppuVar2;\n        pppppppuVar9 = (undefined4 *******)\n                       (**(code **)(pcStack_188 + -0x7080))\n                                 (pppppppuVar12,*pppppppuVar13,pppppppuVar13[1],1);\n        if (pppppppuVar9 != (undefined4 *******)0x0) {\n          iVar15 = (**(code **)(pcStack_188 + -0x7a20))(pppppppuVar9,ppppppuVar2);\n          if (iVar15 == 0) {\n            (**(code **)(pcStack_188 + -0x7964))(pppppppuVar9);\n            pppppppuVar9 = (undefined4 *******)0x0;\n          }\n          else {\n            pppppppuStack_194 = (undefined4 *******)-(int)pppppppuVar13[3];\n            ppppppuStack_198 = (undefined4 ******)-(int)pppppppuVar13[2];\n            ppppppuStack_190 = ppppppuVar2;\n            iVar15 = (**(code **)(pcStack_188 + -0x7bec))\n                               (pppppppuVar9,pppppppuVar12,pppppppuVar12[0x99],1);\n            if (iVar15 != 0) {\n              (**(code **)(pcStack_188 + -0x7d18))\n                        (pppppppuVar9,pppppppuVar12[6],pppppppuVar12[7],pppppppuVar13);\n            }\n          }\n        }\n        return pppppppuVar9;\n      }\n      goto LAB_001c951c;\n    }\n    goto LAB_001c953c;\n  }" (else "else") (if_statement "if (pppppppuVar12[0xcdb] == (undefined4 ******)0xabacadab) {\n    if (pppppppuVar12[0xcd4] != (undefined4 ******)0x0) {\n      pppppppuStack_194 = pppppppuVar12 + 0xd0;\n      ppppppuStack_198 = (undefined4 ******)(*(int *)(pcVar21 + 0x1df580) + -0x62ac);\n      (**(code **)(pcVar21 + 0x1dfe7c))\n                (0x8000,*(int *)(pcVar21 + 0x1df588) + -0x288c,\n                 *(int *)(pcVar21 + 0x1df588) + -0x26d4,0x477);\n    }\n    iVar15 = *(int *)(pcStack_188 + -0x7fc4);\n    pppppppuVar9 = pppppppuVar12;\n    param_1 = pppppppuVar13;\n    unaff_s2 = ppppppuVar2;\n    pcVar23 = pcStack_188;\n    if (pppppppuVar13 == (undefined4 *******)0x0) goto LAB_001c94fc;\n    if (ppppppuVar2 != (undefined4 ******)0x0) {\n      if (ppppppuVar2[7] == (undefined4 *****)0xabacadab) {\n        ppppppuStack_198 = ppppppuVar2;\n        pppppppuVar9 = (undefined4 *******)\n                       (**(code **)(pcStack_188 + -0x7080))\n                                 (pppppppuVar12,*pppppppuVar13,pppppppuVar13[1],1);\n        if (pppppppuVar9 != (undefined4 *******)0x0) {\n          iVar15 = (**(code **)(pcStack_188 + -0x7a20))(pppppppuVar9,ppppppuVar2);\n          if (iVar15 == 0) {\n            (**(code **)(pcStack_188 + -0x7964))(pppppppuVar9);\n            pppppppuVar9 = (undefined4 *******)0x0;\n          }\n          else {\n            pppppppuStack_194 = (undefined4 *******)-(int)pppppppuVar13[3];\n            ppppppuStack_198 = (undefined4 ******)-(int)pppppppuVar13[2];\n            ppppppuStack_190 = ppppppuVar2;\n            iVar15 = (**(code **)(pcStack_188 + -0x7bec))\n                               (pppppppuVar9,pppppppuVar12,pppppppuVar12[0x99],1);\n            if (iVar15 != 0) {\n              (**(code **)(pcStack_188 + -0x7d18))\n                        (pppppppuVar9,pppppppuVar12[6],pppppppuVar12[7],pppppppuVar13);\n            }\n          }\n        }\n        return pppppppuVar9;\n      }\n      goto LAB_001c951c;\n    }\n    goto LAB_001c953c;\n  }" (if "if") (parenthesized_expression "(pppppppuVar12[0xcdb] == (undefined4 ******)0xabacadab)" (( "(") (binary_expression "pppppppuVar12[0xcdb] == (undefined4 ******)0xabacadab" (subscript_expression "pppppppuVar12[0xcdb]" (identifier "pppppppuVar12") ([ "[") (number_literal "0xcdb") (] "]")) (== "==") (cast_expression "(undefined4 ******)0xabacadab" (( "(") (type_descriptor "undefined4 ******" (type_identifier "undefined4") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (number_literal "0xabacadab"))) () ")")) (compound_statement "{\n    if (pppppppuVar12[0xcd4] != (undefined4 ******)0x0) {\n      pppppppuStack_194 = pppppppuVar12 + 0xd0;\n      ppppppuStack_198 = (undefined4 ******)(*(int *)(pcVar21 + 0x1df580) + -0x62ac);\n      (**(code **)(pcVar21 + 0x1dfe7c))\n                (0x8000,*(int *)(pcVar21 + 0x1df588) + -0x288c,\n                 *(int *)(pcVar21 + 0x1df588) + -0x26d4,0x477);\n    }\n    iVar15 = *(int *)(pcStack_188 + -0x7fc4);\n    pppppppuVar9 = pppppppuVar12;\n    param_1 = pppppppuVar13;\n    unaff_s2 = ppppppuVar2;\n    pcVar23 = pcStack_188;\n    if (pppppppuVar13 == (undefined4 *******)0x0) goto LAB_001c94fc;\n    if (ppppppuVar2 != (undefined4 ******)0x0) {\n      if (ppppppuVar2[7] == (undefined4 *****)0xabacadab) {\n        ppppppuStack_198 = ppppppuVar2;\n        pppppppuVar9 = (undefined4 *******)\n                       (**(code **)(pcStack_188 + -0x7080))\n                                 (pppppppuVar12,*pppppppuVar13,pppppppuVar13[1],1);\n        if (pppppppuVar9 != (undefined4 *******)0x0) {\n          iVar15 = (**(code **)(pcStack_188 + -0x7a20))(pppppppuVar9,ppppppuVar2);\n          if (iVar15 == 0) {\n            (**(code **)(pcStack_188 + -0x7964))(pppppppuVar9);\n            pppppppuVar9 = (undefined4 *******)0x0;\n          }\n          else {\n            pppppppuStack_194 = (undefined4 *******)-(int)pppppppuVar13[3];\n            ppppppuStack_198 = (undefined4 ******)-(int)pppppppuVar13[2];\n            ppppppuStack_190 = ppppppuVar2;\n            iVar15 = (**(code **)(pcStack_188 + -0x7bec))\n                               (pppppppuVar9,pppppppuVar12,pppppppuVar12[0x99],1);\n            if (iVar15 != 0) {\n              (**(code **)(pcStack_188 + -0x7d18))\n                        (pppppppuVar9,pppppppuVar12[6],pppppppuVar12[7],pppppppuVar13);\n            }\n          }\n        }\n        return pppppppuVar9;\n      }\n      goto LAB_001c951c;\n    }\n    goto LAB_001c953c;\n  }" ({ "{") (if_statement "if (pppppppuVar12[0xcd4] != (undefined4 ******)0x0) {\n      pppppppuStack_194 = pppppppuVar12 + 0xd0;\n      ppppppuStack_198 = (undefined4 ******)(*(int *)(pcVar21 + 0x1df580) + -0x62ac);\n      (**(code **)(pcVar21 + 0x1dfe7c))\n                (0x8000,*(int *)(pcVar21 + 0x1df588) + -0x288c,\n                 *(int *)(pcVar21 + 0x1df588) + -0x26d4,0x477);\n    }" (if "if") (parenthesized_expression "(pppppppuVar12[0xcd4] != (undefined4 ******)0x0)" (( "(") (binary_expression "pppppppuVar12[0xcd4] != (undefined4 ******)0x0" (subscript_expression "pppppppuVar12[0xcd4]" (identifier "pppppppuVar12") ([ "[") (number_literal "0xcd4") (] "]")) (!= "!=") (cast_expression "(undefined4 ******)0x0" (( "(") (type_descriptor "undefined4 ******" (type_identifier "undefined4") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n      pppppppuStack_194 = pppppppuVar12 + 0xd0;\n      ppppppuStack_198 = (undefined4 ******)(*(int *)(pcVar21 + 0x1df580) + -0x62ac);\n      (**(code **)(pcVar21 + 0x1dfe7c))\n                (0x8000,*(int *)(pcVar21 + 0x1df588) + -0x288c,\n                 *(int *)(pcVar21 + 0x1df588) + -0x26d4,0x477);\n    }" ({ "{") (expression_statement "pppppppuStack_194 = pppppppuVar12 + 0xd0;" (assignment_expression "pppppppuStack_194 = pppppppuVar12 + 0xd0" (identifier "pppppppuStack_194") (= "=") (binary_expression "pppppppuVar12 + 0xd0" (identifier "pppppppuVar12") (+ "+") (number_literal "0xd0"))) (; ";")) (expression_statement "ppppppuStack_198 = (undefined4 ******)(*(int *)(pcVar21 + 0x1df580) + -0x62ac);" (assignment_expression "ppppppuStack_198 = (undefined4 ******)(*(int *)(pcVar21 + 0x1df580) + -0x62ac)" (identifier "ppppppuStack_198") (= "=") (cast_expression "(undefined4 ******)(*(int *)(pcVar21 + 0x1df580) + -0x62ac)" (( "(") (type_descriptor "undefined4 ******" (type_identifier "undefined4") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (parenthesized_expression "(*(int *)(pcVar21 + 0x1df580) + -0x62ac)" (( "(") (binary_expression "*(int *)(pcVar21 + 0x1df580) + -0x62ac" (pointer_expression "*(int *)(pcVar21 + 0x1df580)" (* "*") (cast_expression "(int *)(pcVar21 + 0x1df580)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar21 + 0x1df580)" (( "(") (binary_expression "pcVar21 + 0x1df580" (identifier "pcVar21") (+ "+") (number_literal "0x1df580")) () ")")))) (+ "+") (number_literal "-0x62ac")) () ")")))) (; ";")) (expression_statement "(**(code **)(pcVar21 + 0x1dfe7c))\n                (0x8000,*(int *)(pcVar21 + 0x1df588) + -0x288c,\n                 *(int *)(pcVar21 + 0x1df588) + -0x26d4,0x477);" (call_expression "(**(code **)(pcVar21 + 0x1dfe7c))\n                (0x8000,*(int *)(pcVar21 + 0x1df588) + -0x288c,\n                 *(int *)(pcVar21 + 0x1df588) + -0x26d4,0x477)" (parenthesized_expression "(**(code **)(pcVar21 + 0x1dfe7c))" (( "(") (pointer_expression "**(code **)(pcVar21 + 0x1dfe7c)" (* "*") (pointer_expression "*(code **)(pcVar21 + 0x1dfe7c)" (* "*") (cast_expression "(code **)(pcVar21 + 0x1dfe7c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar21 + 0x1dfe7c)" (( "(") (binary_expression "pcVar21 + 0x1dfe7c" (identifier "pcVar21") (+ "+") (number_literal "0x1dfe7c")) () ")"))))) () ")")) (argument_list "(0x8000,*(int *)(pcVar21 + 0x1df588) + -0x288c,\n                 *(int *)(pcVar21 + 0x1df588) + -0x26d4,0x477)" (( "(") (number_literal "0x8000") (, ",") (binary_expression "*(int *)(pcVar21 + 0x1df588) + -0x288c" (pointer_expression "*(int *)(pcVar21 + 0x1df588)" (* "*") (cast_expression "(int *)(pcVar21 + 0x1df588)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar21 + 0x1df588)" (( "(") (binary_expression "pcVar21 + 0x1df588" (identifier "pcVar21") (+ "+") (number_literal "0x1df588")) () ")")))) (+ "+") (number_literal "-0x288c")) (, ",") (binary_expression "*(int *)(pcVar21 + 0x1df588) + -0x26d4" (pointer_expression "*(int *)(pcVar21 + 0x1df588)" (* "*") (cast_expression "(int *)(pcVar21 + 0x1df588)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar21 + 0x1df588)" (( "(") (binary_expression "pcVar21 + 0x1df588" (identifier "pcVar21") (+ "+") (number_literal "0x1df588")) () ")")))) (+ "+") (number_literal "-0x26d4")) (, ",") (number_literal "0x477") () ")"))) (; ";")) (} "}"))) (expression_statement "iVar15 = *(int *)(pcStack_188 + -0x7fc4);" (assignment_expression "iVar15 = *(int *)(pcStack_188 + -0x7fc4)" (identifier "iVar15") (= "=") (pointer_expression "*(int *)(pcStack_188 + -0x7fc4)" (* "*") (cast_expression "(int *)(pcStack_188 + -0x7fc4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_188 + -0x7fc4)" (( "(") (binary_expression "pcStack_188 + -0x7fc4" (identifier "pcStack_188") (+ "+") (number_literal "-0x7fc4")) () ")"))))) (; ";")) (expression_statement "pppppppuVar9 = pppppppuVar12;" (assignment_expression "pppppppuVar9 = pppppppuVar12" (identifier "pppppppuVar9") (= "=") (identifier "pppppppuVar12")) (; ";")) (expression_statement "param_1 = pppppppuVar13;" (assignment_expression "param_1 = pppppppuVar13" (identifier "param_1") (= "=") (identifier "pppppppuVar13")) (; ";")) (expression_statement "unaff_s2 = ppppppuVar2;" (assignment_expression "unaff_s2 = ppppppuVar2" (identifier "unaff_s2") (= "=") (identifier "ppppppuVar2")) (; ";")) (expression_statement "pcVar23 = pcStack_188;" (assignment_expression "pcVar23 = pcStack_188" (identifier "pcVar23") (= "=") (identifier "pcStack_188")) (; ";")) (if_statement "if (pppppppuVar13 == (undefined4 *******)0x0) goto LAB_001c94fc;" (if "if") (parenthesized_expression "(pppppppuVar13 == (undefined4 *******)0x0)" (( "(") (binary_expression "pppppppuVar13 == (undefined4 *******)0x0" (identifier "pppppppuVar13") (== "==") (cast_expression "(undefined4 *******)0x0" (( "(") (type_descriptor "undefined4 *******" (type_identifier "undefined4") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (goto_statement "goto LAB_001c94fc;" (goto "goto") (statement_identifier "LAB_001c94fc") (; ";"))) (if_statement "if (ppppppuVar2 != (undefined4 ******)0x0) {\n      if (ppppppuVar2[7] == (undefined4 *****)0xabacadab) {\n        ppppppuStack_198 = ppppppuVar2;\n        pppppppuVar9 = (undefined4 *******)\n                       (**(code **)(pcStack_188 + -0x7080))\n                                 (pppppppuVar12,*pppppppuVar13,pppppppuVar13[1],1);\n        if (pppppppuVar9 != (undefined4 *******)0x0) {\n          iVar15 = (**(code **)(pcStack_188 + -0x7a20))(pppppppuVar9,ppppppuVar2);\n          if (iVar15 == 0) {\n            (**(code **)(pcStack_188 + -0x7964))(pppppppuVar9);\n            pppppppuVar9 = (undefined4 *******)0x0;\n          }\n          else {\n            pppppppuStack_194 = (undefined4 *******)-(int)pppppppuVar13[3];\n            ppppppuStack_198 = (undefined4 ******)-(int)pppppppuVar13[2];\n            ppppppuStack_190 = ppppppuVar2;\n            iVar15 = (**(code **)(pcStack_188 + -0x7bec))\n                               (pppppppuVar9,pppppppuVar12,pppppppuVar12[0x99],1);\n            if (iVar15 != 0) {\n              (**(code **)(pcStack_188 + -0x7d18))\n                        (pppppppuVar9,pppppppuVar12[6],pppppppuVar12[7],pppppppuVar13);\n            }\n          }\n        }\n        return pppppppuVar9;\n      }\n      goto LAB_001c951c;\n    }" (if "if") (parenthesized_expression "(ppppppuVar2 != (undefined4 ******)0x0)" (( "(") (binary_expression "ppppppuVar2 != (undefined4 ******)0x0" (identifier "ppppppuVar2") (!= "!=") (cast_expression "(undefined4 ******)0x0" (( "(") (type_descriptor "undefined4 ******" (type_identifier "undefined4") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n      if (ppppppuVar2[7] == (undefined4 *****)0xabacadab) {\n        ppppppuStack_198 = ppppppuVar2;\n        pppppppuVar9 = (undefined4 *******)\n                       (**(code **)(pcStack_188 + -0x7080))\n                                 (pppppppuVar12,*pppppppuVar13,pppppppuVar13[1],1);\n        if (pppppppuVar9 != (undefined4 *******)0x0) {\n          iVar15 = (**(code **)(pcStack_188 + -0x7a20))(pppppppuVar9,ppppppuVar2);\n          if (iVar15 == 0) {\n            (**(code **)(pcStack_188 + -0x7964))(pppppppuVar9);\n            pppppppuVar9 = (undefined4 *******)0x0;\n          }\n          else {\n            pppppppuStack_194 = (undefined4 *******)-(int)pppppppuVar13[3];\n            ppppppuStack_198 = (undefined4 ******)-(int)pppppppuVar13[2];\n            ppppppuStack_190 = ppppppuVar2;\n            iVar15 = (**(code **)(pcStack_188 + -0x7bec))\n                               (pppppppuVar9,pppppppuVar12,pppppppuVar12[0x99],1);\n            if (iVar15 != 0) {\n              (**(code **)(pcStack_188 + -0x7d18))\n                        (pppppppuVar9,pppppppuVar12[6],pppppppuVar12[7],pppppppuVar13);\n            }\n          }\n        }\n        return pppppppuVar9;\n      }\n      goto LAB_001c951c;\n    }" ({ "{") (if_statement "if (ppppppuVar2[7] == (undefined4 *****)0xabacadab) {\n        ppppppuStack_198 = ppppppuVar2;\n        pppppppuVar9 = (undefined4 *******)\n                       (**(code **)(pcStack_188 + -0x7080))\n                                 (pppppppuVar12,*pppppppuVar13,pppppppuVar13[1],1);\n        if (pppppppuVar9 != (undefined4 *******)0x0) {\n          iVar15 = (**(code **)(pcStack_188 + -0x7a20))(pppppppuVar9,ppppppuVar2);\n          if (iVar15 == 0) {\n            (**(code **)(pcStack_188 + -0x7964))(pppppppuVar9);\n            pppppppuVar9 = (undefined4 *******)0x0;\n          }\n          else {\n            pppppppuStack_194 = (undefined4 *******)-(int)pppppppuVar13[3];\n            ppppppuStack_198 = (undefined4 ******)-(int)pppppppuVar13[2];\n            ppppppuStack_190 = ppppppuVar2;\n            iVar15 = (**(code **)(pcStack_188 + -0x7bec))\n                               (pppppppuVar9,pppppppuVar12,pppppppuVar12[0x99],1);\n            if (iVar15 != 0) {\n              (**(code **)(pcStack_188 + -0x7d18))\n                        (pppppppuVar9,pppppppuVar12[6],pppppppuVar12[7],pppppppuVar13);\n            }\n          }\n        }\n        return pppppppuVar9;\n      }" (if "if") (parenthesized_expression "(ppppppuVar2[7] == (undefined4 *****)0xabacadab)" (( "(") (binary_expression "ppppppuVar2[7] == (undefined4 *****)0xabacadab" (subscript_expression "ppppppuVar2[7]" (identifier "ppppppuVar2") ([ "[") (number_literal "7") (] "]")) (== "==") (cast_expression "(undefined4 *****)0xabacadab" (( "(") (type_descriptor "undefined4 *****" (type_identifier "undefined4") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))) () ")") (number_literal "0xabacadab"))) () ")")) (compound_statement "{\n        ppppppuStack_198 = ppppppuVar2;\n        pppppppuVar9 = (undefined4 *******)\n                       (**(code **)(pcStack_188 + -0x7080))\n                                 (pppppppuVar12,*pppppppuVar13,pppppppuVar13[1],1);\n        if (pppppppuVar9 != (undefined4 *******)0x0) {\n          iVar15 = (**(code **)(pcStack_188 + -0x7a20))(pppppppuVar9,ppppppuVar2);\n          if (iVar15 == 0) {\n            (**(code **)(pcStack_188 + -0x7964))(pppppppuVar9);\n            pppppppuVar9 = (undefined4 *******)0x0;\n          }\n          else {\n            pppppppuStack_194 = (undefined4 *******)-(int)pppppppuVar13[3];\n            ppppppuStack_198 = (undefined4 ******)-(int)pppppppuVar13[2];\n            ppppppuStack_190 = ppppppuVar2;\n            iVar15 = (**(code **)(pcStack_188 + -0x7bec))\n                               (pppppppuVar9,pppppppuVar12,pppppppuVar12[0x99],1);\n            if (iVar15 != 0) {\n              (**(code **)(pcStack_188 + -0x7d18))\n                        (pppppppuVar9,pppppppuVar12[6],pppppppuVar12[7],pppppppuVar13);\n            }\n          }\n        }\n        return pppppppuVar9;\n      }" ({ "{") (expression_statement "ppppppuStack_198 = ppppppuVar2;" (assignment_expression "ppppppuStack_198 = ppppppuVar2" (identifier "ppppppuStack_198") (= "=") (identifier "ppppppuVar2")) (; ";")) (expression_statement "pppppppuVar9 = (undefined4 *******)\n                       (**(code **)(pcStack_188 + -0x7080))\n                                 (pppppppuVar12,*pppppppuVar13,pppppppuVar13[1],1);" (assignment_expression "pppppppuVar9 = (undefined4 *******)\n                       (**(code **)(pcStack_188 + -0x7080))\n                                 (pppppppuVar12,*pppppppuVar13,pppppppuVar13[1],1)" (identifier "pppppppuVar9") (= "=") (cast_expression "(undefined4 *******)\n                       (**(code **)(pcStack_188 + -0x7080))\n                                 (pppppppuVar12,*pppppppuVar13,pppppppuVar13[1],1)" (( "(") (type_descriptor "undefined4 *******" (type_identifier "undefined4") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (call_expression "(**(code **)(pcStack_188 + -0x7080))\n                                 (pppppppuVar12,*pppppppuVar13,pppppppuVar13[1],1)" (parenthesized_expression "(**(code **)(pcStack_188 + -0x7080))" (( "(") (pointer_expression "**(code **)(pcStack_188 + -0x7080)" (* "*") (pointer_expression "*(code **)(pcStack_188 + -0x7080)" (* "*") (cast_expression "(code **)(pcStack_188 + -0x7080)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_188 + -0x7080)" (( "(") (binary_expression "pcStack_188 + -0x7080" (identifier "pcStack_188") (+ "+") (number_literal "-0x7080")) () ")"))))) () ")")) (argument_list "(pppppppuVar12,*pppppppuVar13,pppppppuVar13[1],1)" (( "(") (identifier "pppppppuVar12") (, ",") (pointer_expression "*pppppppuVar13" (* "*") (identifier "pppppppuVar13")) (, ",") (subscript_expression "pppppppuVar13[1]" (identifier "pppppppuVar13") ([ "[") (number_literal "1") (] "]")) (, ",") (number_literal "1") () ")"))))) (; ";")) (if_statement "if (pppppppuVar9 != (undefined4 *******)0x0) {\n          iVar15 = (**(code **)(pcStack_188 + -0x7a20))(pppppppuVar9,ppppppuVar2);\n          if (iVar15 == 0) {\n            (**(code **)(pcStack_188 + -0x7964))(pppppppuVar9);\n            pppppppuVar9 = (undefined4 *******)0x0;\n          }\n          else {\n            pppppppuStack_194 = (undefined4 *******)-(int)pppppppuVar13[3];\n            ppppppuStack_198 = (undefined4 ******)-(int)pppppppuVar13[2];\n            ppppppuStack_190 = ppppppuVar2;\n            iVar15 = (**(code **)(pcStack_188 + -0x7bec))\n                               (pppppppuVar9,pppppppuVar12,pppppppuVar12[0x99],1);\n            if (iVar15 != 0) {\n              (**(code **)(pcStack_188 + -0x7d18))\n                        (pppppppuVar9,pppppppuVar12[6],pppppppuVar12[7],pppppppuVar13);\n            }\n          }\n        }" (if "if") (parenthesized_expression "(pppppppuVar9 != (undefined4 *******)0x0)" (( "(") (binary_expression "pppppppuVar9 != (undefined4 *******)0x0" (identifier "pppppppuVar9") (!= "!=") (cast_expression "(undefined4 *******)0x0" (( "(") (type_descriptor "undefined4 *******" (type_identifier "undefined4") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n          iVar15 = (**(code **)(pcStack_188 + -0x7a20))(pppppppuVar9,ppppppuVar2);\n          if (iVar15 == 0) {\n            (**(code **)(pcStack_188 + -0x7964))(pppppppuVar9);\n            pppppppuVar9 = (undefined4 *******)0x0;\n          }\n          else {\n            pppppppuStack_194 = (undefined4 *******)-(int)pppppppuVar13[3];\n            ppppppuStack_198 = (undefined4 ******)-(int)pppppppuVar13[2];\n            ppppppuStack_190 = ppppppuVar2;\n            iVar15 = (**(code **)(pcStack_188 + -0x7bec))\n                               (pppppppuVar9,pppppppuVar12,pppppppuVar12[0x99],1);\n            if (iVar15 != 0) {\n              (**(code **)(pcStack_188 + -0x7d18))\n                        (pppppppuVar9,pppppppuVar12[6],pppppppuVar12[7],pppppppuVar13);\n            }\n          }\n        }" ({ "{") (expression_statement "iVar15 = (**(code **)(pcStack_188 + -0x7a20))(pppppppuVar9,ppppppuVar2);" (assignment_expression "iVar15 = (**(code **)(pcStack_188 + -0x7a20))(pppppppuVar9,ppppppuVar2)" (identifier "iVar15") (= "=") (call_expression "(**(code **)(pcStack_188 + -0x7a20))(pppppppuVar9,ppppppuVar2)" (parenthesized_expression "(**(code **)(pcStack_188 + -0x7a20))" (( "(") (pointer_expression "**(code **)(pcStack_188 + -0x7a20)" (* "*") (pointer_expression "*(code **)(pcStack_188 + -0x7a20)" (* "*") (cast_expression "(code **)(pcStack_188 + -0x7a20)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_188 + -0x7a20)" (( "(") (binary_expression "pcStack_188 + -0x7a20" (identifier "pcStack_188") (+ "+") (number_literal "-0x7a20")) () ")"))))) () ")")) (argument_list "(pppppppuVar9,ppppppuVar2)" (( "(") (identifier "pppppppuVar9") (, ",") (identifier "ppppppuVar2") () ")")))) (; ";")) (if_statement "if (iVar15 == 0) {\n            (**(code **)(pcStack_188 + -0x7964))(pppppppuVar9);\n            pppppppuVar9 = (undefined4 *******)0x0;\n          }\n          else {\n            pppppppuStack_194 = (undefined4 *******)-(int)pppppppuVar13[3];\n            ppppppuStack_198 = (undefined4 ******)-(int)pppppppuVar13[2];\n            ppppppuStack_190 = ppppppuVar2;\n            iVar15 = (**(code **)(pcStack_188 + -0x7bec))\n                               (pppppppuVar9,pppppppuVar12,pppppppuVar12[0x99],1);\n            if (iVar15 != 0) {\n              (**(code **)(pcStack_188 + -0x7d18))\n                        (pppppppuVar9,pppppppuVar12[6],pppppppuVar12[7],pppppppuVar13);\n            }\n          }" (if "if") (parenthesized_expression "(iVar15 == 0)" (( "(") (binary_expression "iVar15 == 0" (identifier "iVar15") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n            (**(code **)(pcStack_188 + -0x7964))(pppppppuVar9);\n            pppppppuVar9 = (undefined4 *******)0x0;\n          }" ({ "{") (expression_statement "(**(code **)(pcStack_188 + -0x7964))(pppppppuVar9);" (call_expression "(**(code **)(pcStack_188 + -0x7964))(pppppppuVar9)" (parenthesized_expression "(**(code **)(pcStack_188 + -0x7964))" (( "(") (pointer_expression "**(code **)(pcStack_188 + -0x7964)" (* "*") (pointer_expression "*(code **)(pcStack_188 + -0x7964)" (* "*") (cast_expression "(code **)(pcStack_188 + -0x7964)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_188 + -0x7964)" (( "(") (binary_expression "pcStack_188 + -0x7964" (identifier "pcStack_188") (+ "+") (number_literal "-0x7964")) () ")"))))) () ")")) (argument_list "(pppppppuVar9)" (( "(") (identifier "pppppppuVar9") () ")"))) (; ";")) (expression_statement "pppppppuVar9 = (undefined4 *******)0x0;" (assignment_expression "pppppppuVar9 = (undefined4 *******)0x0" (identifier "pppppppuVar9") (= "=") (cast_expression "(undefined4 *******)0x0" (( "(") (type_descriptor "undefined4 *******" (type_identifier "undefined4") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) (; ";")) (} "}")) (else_clause "else {\n            pppppppuStack_194 = (undefined4 *******)-(int)pppppppuVar13[3];\n            ppppppuStack_198 = (undefined4 ******)-(int)pppppppuVar13[2];\n            ppppppuStack_190 = ppppppuVar2;\n            iVar15 = (**(code **)(pcStack_188 + -0x7bec))\n                               (pppppppuVar9,pppppppuVar12,pppppppuVar12[0x99],1);\n            if (iVar15 != 0) {\n              (**(code **)(pcStack_188 + -0x7d18))\n                        (pppppppuVar9,pppppppuVar12[6],pppppppuVar12[7],pppppppuVar13);\n            }\n          }" (else "else") (compound_statement "{\n            pppppppuStack_194 = (undefined4 *******)-(int)pppppppuVar13[3];\n            ppppppuStack_198 = (undefined4 ******)-(int)pppppppuVar13[2];\n            ppppppuStack_190 = ppppppuVar2;\n            iVar15 = (**(code **)(pcStack_188 + -0x7bec))\n                               (pppppppuVar9,pppppppuVar12,pppppppuVar12[0x99],1);\n            if (iVar15 != 0) {\n              (**(code **)(pcStack_188 + -0x7d18))\n                        (pppppppuVar9,pppppppuVar12[6],pppppppuVar12[7],pppppppuVar13);\n            }\n          }" ({ "{") (expression_statement "pppppppuStack_194 = (undefined4 *******)-(int)pppppppuVar13[3];" (assignment_expression "pppppppuStack_194 = (undefined4 *******)-(int)pppppppuVar13[3]" (identifier "pppppppuStack_194") (= "=") (cast_expression "(undefined4 *******)-(int)pppppppuVar13[3]" (( "(") (type_descriptor "undefined4 *******" (type_identifier "undefined4") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (unary_expression "-(int)pppppppuVar13[3]" (- "-") (cast_expression "(int)pppppppuVar13[3]" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (subscript_expression "pppppppuVar13[3]" (identifier "pppppppuVar13") ([ "[") (number_literal "3") (] "]")))))) (; ";")) (expression_statement "ppppppuStack_198 = (undefined4 ******)-(int)pppppppuVar13[2];" (assignment_expression "ppppppuStack_198 = (undefined4 ******)-(int)pppppppuVar13[2]" (identifier "ppppppuStack_198") (= "=") (cast_expression "(undefined4 ******)-(int)pppppppuVar13[2]" (( "(") (type_descriptor "undefined4 ******" (type_identifier "undefined4") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (unary_expression "-(int)pppppppuVar13[2]" (- "-") (cast_expression "(int)pppppppuVar13[2]" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (subscript_expression "pppppppuVar13[2]" (identifier "pppppppuVar13") ([ "[") (number_literal "2") (] "]")))))) (; ";")) (expression_statement "ppppppuStack_190 = ppppppuVar2;" (assignment_expression "ppppppuStack_190 = ppppppuVar2" (identifier "ppppppuStack_190") (= "=") (identifier "ppppppuVar2")) (; ";")) (expression_statement "iVar15 = (**(code **)(pcStack_188 + -0x7bec))\n                               (pppppppuVar9,pppppppuVar12,pppppppuVar12[0x99],1);" (assignment_expression "iVar15 = (**(code **)(pcStack_188 + -0x7bec))\n                               (pppppppuVar9,pppppppuVar12,pppppppuVar12[0x99],1)" (identifier "iVar15") (= "=") (call_expression "(**(code **)(pcStack_188 + -0x7bec))\n                               (pppppppuVar9,pppppppuVar12,pppppppuVar12[0x99],1)" (parenthesized_expression "(**(code **)(pcStack_188 + -0x7bec))" (( "(") (pointer_expression "**(code **)(pcStack_188 + -0x7bec)" (* "*") (pointer_expression "*(code **)(pcStack_188 + -0x7bec)" (* "*") (cast_expression "(code **)(pcStack_188 + -0x7bec)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_188 + -0x7bec)" (( "(") (binary_expression "pcStack_188 + -0x7bec" (identifier "pcStack_188") (+ "+") (number_literal "-0x7bec")) () ")"))))) () ")")) (argument_list "(pppppppuVar9,pppppppuVar12,pppppppuVar12[0x99],1)" (( "(") (identifier "pppppppuVar9") (, ",") (identifier "pppppppuVar12") (, ",") (subscript_expression "pppppppuVar12[0x99]" (identifier "pppppppuVar12") ([ "[") (number_literal "0x99") (] "]")) (, ",") (number_literal "1") () ")")))) (; ";")) (if_statement "if (iVar15 != 0) {\n              (**(code **)(pcStack_188 + -0x7d18))\n                        (pppppppuVar9,pppppppuVar12[6],pppppppuVar12[7],pppppppuVar13);\n            }" (if "if") (parenthesized_expression "(iVar15 != 0)" (( "(") (binary_expression "iVar15 != 0" (identifier "iVar15") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n              (**(code **)(pcStack_188 + -0x7d18))\n                        (pppppppuVar9,pppppppuVar12[6],pppppppuVar12[7],pppppppuVar13);\n            }" ({ "{") (expression_statement "(**(code **)(pcStack_188 + -0x7d18))\n                        (pppppppuVar9,pppppppuVar12[6],pppppppuVar12[7],pppppppuVar13);" (call_expression "(**(code **)(pcStack_188 + -0x7d18))\n                        (pppppppuVar9,pppppppuVar12[6],pppppppuVar12[7],pppppppuVar13)" (parenthesized_expression "(**(code **)(pcStack_188 + -0x7d18))" (( "(") (pointer_expression "**(code **)(pcStack_188 + -0x7d18)" (* "*") (pointer_expression "*(code **)(pcStack_188 + -0x7d18)" (* "*") (cast_expression "(code **)(pcStack_188 + -0x7d18)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_188 + -0x7d18)" (( "(") (binary_expression "pcStack_188 + -0x7d18" (identifier "pcStack_188") (+ "+") (number_literal "-0x7d18")) () ")"))))) () ")")) (argument_list "(pppppppuVar9,pppppppuVar12[6],pppppppuVar12[7],pppppppuVar13)" (( "(") (identifier "pppppppuVar9") (, ",") (subscript_expression "pppppppuVar12[6]" (identifier "pppppppuVar12") ([ "[") (number_literal "6") (] "]")) (, ",") (subscript_expression "pppppppuVar12[7]" (identifier "pppppppuVar12") ([ "[") (number_literal "7") (] "]")) (, ",") (identifier "pppppppuVar13") () ")"))) (; ";")) (} "}"))) (} "}")))) (} "}"))) (return_statement "return pppppppuVar9;" (return "return") (identifier "pppppppuVar9") (; ";")) (} "}"))) (goto_statement "goto LAB_001c951c;" (goto "goto") (statement_identifier "LAB_001c951c") (; ";")) (} "}"))) (goto_statement "goto LAB_001c953c;" (goto "goto") (statement_identifier "LAB_001c953c") (; ";")) (} "}"))))) (expression_statement "pcVar21 = *(code **)(pcVar23 + -0x72a8);" (assignment_expression "pcVar21 = *(code **)(pcVar23 + -0x72a8)" (identifier "pcVar21") (= "=") (pointer_expression "*(code **)(pcVar23 + -0x72a8)" (* "*") (cast_expression "(code **)(pcVar23 + -0x72a8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar23 + -0x72a8)" (( "(") (binary_expression "pcVar23 + -0x72a8" (identifier "pcVar23") (+ "+") (number_literal "-0x72a8")) () ")"))))) (; ";")) (expression_statement "pppppppuVar9 = (undefined4 *******)(*(int *)(pcVar23 + -0x7fc4) + -0x288c);" (assignment_expression "pppppppuVar9 = (undefined4 *******)(*(int *)(pcVar23 + -0x7fc4) + -0x288c)" (identifier "pppppppuVar9") (= "=") (cast_expression "(undefined4 *******)(*(int *)(pcVar23 + -0x7fc4) + -0x288c)" (( "(") (type_descriptor "undefined4 *******" (type_identifier "undefined4") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "(*(int *)(pcVar23 + -0x7fc4) + -0x288c)" (( "(") (binary_expression "*(int *)(pcVar23 + -0x7fc4) + -0x288c" (pointer_expression "*(int *)(pcVar23 + -0x7fc4)" (* "*") (cast_expression "(int *)(pcVar23 + -0x7fc4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar23 + -0x7fc4)" (( "(") (binary_expression "pcVar23 + -0x7fc4" (identifier "pcVar23") (+ "+") (number_literal "-0x7fc4")) () ")")))) (+ "+") (number_literal "-0x288c")) () ")")))) (; ";")) (expression_statement "pcVar24 = FlipImage;" (assignment_expression "pcVar24 = FlipImage" (identifier "pcVar24") (= "=") (identifier "FlipImage")) (; ";")) (expression_statement "pppppppuVar13 = (undefined4 *******)(*(int *)(pcVar23 + -0x7fc8) + -0x3784);" (assignment_expression "pppppppuVar13 = (undefined4 *******)(*(int *)(pcVar23 + -0x7fc8) + -0x3784)" (identifier "pppppppuVar13") (= "=") (cast_expression "(undefined4 *******)(*(int *)(pcVar23 + -0x7fc8) + -0x3784)" (( "(") (type_descriptor "undefined4 *******" (type_identifier "undefined4") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "(*(int *)(pcVar23 + -0x7fc8) + -0x3784)" (( "(") (binary_expression "*(int *)(pcVar23 + -0x7fc8) + -0x3784" (pointer_expression "*(int *)(pcVar23 + -0x7fc8)" (* "*") (cast_expression "(int *)(pcVar23 + -0x7fc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar23 + -0x7fc8)" (( "(") (binary_expression "pcVar23 + -0x7fc8" (identifier "pcVar23") (+ "+") (number_literal "-0x7fc8")) () ")")))) (+ "+") (number_literal "-0x3784")) () ")")))) (; ";")) (expression_statement "(*pcVar21)(pppppppuVar13,pppppppuVar9,0x475,*(int *)(pcVar23 + -0x7fc4) + -0x26c8);" (call_expression "(*pcVar21)(pppppppuVar13,pppppppuVar9,0x475,*(int *)(pcVar23 + -0x7fc4) + -0x26c8)" (parenthesized_expression "(*pcVar21)" (( "(") (pointer_expression "*pcVar21" (* "*") (identifier "pcVar21")) () ")")) (argument_list "(pppppppuVar13,pppppppuVar9,0x475,*(int *)(pcVar23 + -0x7fc4) + -0x26c8)" (( "(") (identifier "pppppppuVar13") (, ",") (identifier "pppppppuVar9") (, ",") (number_literal "0x475") (, ",") (binary_expression "*(int *)(pcVar23 + -0x7fc4) + -0x26c8" (pointer_expression "*(int *)(pcVar23 + -0x7fc4)" (* "*") (cast_expression "(int *)(pcVar23 + -0x7fc4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar23 + -0x7fc4)" (( "(") (binary_expression "pcVar23 + -0x7fc4" (identifier "pcVar23") (+ "+") (number_literal "-0x7fc4")) () ")")))) (+ "+") (number_literal "-0x26c8")) () ")"))) (; ";")) (expression_statement "pcVar23 = pcVar21 + 0x1e7330;" (assignment_expression "pcVar23 = pcVar21 + 0x1e7330" (identifier "pcVar23") (= "=") (binary_expression "pcVar21 + 0x1e7330" (identifier "pcVar21") (+ "+") (number_literal "0x1e7330"))) (; ";")) (expression_statement "piVar16 = *(int **)(pcVar21 + 0x1dfcb0);" (assignment_expression "piVar16 = *(int **)(pcVar21 + 0x1dfcb0)" (identifier "piVar16") (= "=") (pointer_expression "*(int **)(pcVar21 + 0x1dfcb0)" (* "*") (cast_expression "(int **)(pcVar21 + 0x1dfcb0)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar21 + 0x1dfcb0)" (( "(") (binary_expression "pcVar21 + 0x1dfcb0" (identifier "pcVar21") (+ "+") (number_literal "0x1dfcb0")) () ")"))))) (; ";")) (expression_statement "iStack_1d4 = *piVar16;" (assignment_expression "iStack_1d4 = *piVar16" (identifier "iStack_1d4") (= "=") (pointer_expression "*piVar16" (* "*") (identifier "piVar16"))) (; ";")) (expression_statement "pcStack_208 = pcVar23;" (assignment_expression "pcStack_208 = pcVar23" (identifier "pcStack_208") (= "=") (identifier "pcVar23")) (; ";")) (expression_statement "pppppppuStack_1d0 = pppppppuVar12;" (assignment_expression "pppppppuStack_1d0 = pppppppuVar12" (identifier "pppppppuStack_1d0") (= "=") (identifier "pppppppuVar12")) (; ";")) (expression_statement "pppppppuStack_1cc = param_1;" (assignment_expression "pppppppuStack_1cc = param_1" (identifier "pppppppuStack_1cc") (= "=") (identifier "param_1")) (; ";")) (expression_statement "ppppppuStack_1c8 = unaff_s2;" (assignment_expression "ppppppuStack_1c8 = unaff_s2" (identifier "ppppppuStack_1c8") (= "=") (identifier "unaff_s2")) (; ";")) (expression_statement "pppppppuStack_1c4 = unaff_s3;" (assignment_expression "pppppppuStack_1c4 = unaff_s3" (identifier "pppppppuStack_1c4") (= "=") (identifier "unaff_s3")) (; ";")) (expression_statement "piStack_1c0 = piVar18;" (assignment_expression "piStack_1c0 = piVar18" (identifier "piStack_1c0") (= "=") (identifier "piVar18")) (; ";")) (expression_statement "pppppppuStack_1bc = unaff_s5;" (assignment_expression "pppppppuStack_1bc = unaff_s5" (identifier "pppppppuStack_1bc") (= "=") (identifier "unaff_s5")) (; ";")) (expression_statement "pppppppuStack_1b8 = unaff_s6;" (assignment_expression "pppppppuStack_1b8 = unaff_s6" (identifier "pppppppuStack_1b8") (= "=") (identifier "unaff_s6")) (; ";")) (expression_statement "pppppppuStack_1b4 = unaff_s7;" (assignment_expression "pppppppuStack_1b4 = unaff_s7" (identifier "pppppppuStack_1b4") (= "=") (identifier "unaff_s7")) (; ";")) (expression_statement "pppppppuStack_1b0 = unaff_s8;" (assignment_expression "pppppppuStack_1b0 = unaff_s8" (identifier "pppppppuStack_1b0") (= "=") (identifier "unaff_s8")) (; ";")) (expression_statement "pcStack_1ac = pcVar24;" (assignment_expression "pcStack_1ac = pcVar24" (identifier "pcStack_1ac") (= "=") (identifier "pcVar24")) (; ";")) (if_statement "if (pppppppuVar13 == (undefined4 *******)0x0) {\n    (**(code **)(pcVar21 + 0x1e0088))\n              (*(int *)(pcVar21 + 0x1df368) + -0x37b0,*(int *)(pcVar21 + 0x1df36c) + -0x288c,0x4bc,\n               *(int *)(pcVar21 + 0x1df36c) + -0x26e0);\n    pppppppuVar9 = param_1;\nLAB_001c9944:\n    (**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fd0) + 0x1cac,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x4c0,\n               *(int *)(pcVar23 + -0x7fc4) + -0x26e0);\nLAB_001c9968:\n    (**(code **)(pcVar23 + -0x784c))();\n    pppppppuVar13 = unaff_s7;\nLAB_001c9974:\n    (**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fd0) + 0x294c,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x4c1,\n               *(int *)(pcVar23 + -0x7fc4) + -0x26e0);\n    pppppppuStack_244 = pppppppuVar9;\n  }\n  else {\n    pppppppuStack_244 = param_1;\n    if (pppppppuVar13[0xcdb] == (undefined4 ******)0xabacadab) {\n      if (pppppppuVar13[0xcd4] != (undefined4 ******)0x0) {\n        pppppppuStack_20c = pppppppuVar13 + 0xd0;\n        pppppppuStack_210 = (undefined4 *******)(*(int *)(pcVar21 + 0x1df364) + -0x62ac);\n        (**(code **)(pcVar21 + 0x1dfc60))\n                  (0x8000,*(int *)(pcVar21 + 0x1df36c) + -0x288c,\n                   *(int *)(pcVar21 + 0x1df36c) + -0x26ec,0x4bf);\n      }\n      unaff_s7 = pppppppuVar13;\n      pcVar23 = pcStack_208;\n      if (pppppppuVar9 == (undefined4 *******)0x0) goto LAB_001c9944;\n      if (pppppppuVar9[7] == (undefined4 ******)0xabacadab) {\n        pppppppuStack_210 = pppppppuVar9;\n        pppppppuVar12 =\n             (undefined4 *******)(**(code **)(pcStack_208 + -0x7080))(pppppppuVar13,0,0,1);\n        if (pppppppuVar12 != (undefined4 *******)0x0) {\n          ppppppuStack_1fc = pppppppuVar13[0x8c];\n          unaff_s8 = (undefined4 *******)pppppppuVar13[0x8a];\n          unaff_s2 = pppppppuVar13[0x8b];\n          unaff_s6 = (undefined4 *******)pppppppuVar13[0x8d];\n          uStack_1f4 = 0;\n          uStack_1f8 = 0;\n          piVar18 = (int *)(**(code **)(pcStack_208 + -0x715c))(pppppppuVar13,pppppppuVar9);\n          unaff_s5 = (undefined4 *******)\n                     (**(code **)(pcStack_208 + -0x79dc))(pppppppuVar12,pppppppuVar9);\n          iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13);\n          if (((iVar15 == 4) ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13), iVar15 == 3)) &&\n             ((iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 4 ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 3)))) {\n            (**(code **)(pcStack_208 + -0x7774))(7);\n            ppppppuVar2 = pppppppuVar12[7];\n            if ((int)ppppppuVar2 < 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_03 < (int)ppppppuVar2 + 0x3f >> 6) goto LAB_001c98d4;\nLAB_001c981c:\n              bVar1 = (int)ppppppuVar2 < 0x80;\n            }\n            else {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if ((int)ppppppuVar2 >> 6 <= extraout_v1_03) goto LAB_001c981c;\nLAB_001c98d4:\n              (*pcVar23)(7);\n              bVar1 = extraout_v1_05 < 2;\n            }\n            iVar15 = 1;\n            if ((bool)(bVar1 ^ 1)) {\n              (**(code **)(pcStack_208 + -0x7774))(7);\n              ppppppuVar2 = pppppppuVar12[7];\n              if ((int)ppppppuVar2 < 0) {\n                ppppppuVar2 = (undefined4 ******)((int)ppppppuVar2 + 0x3f);\n              }\n              iVar15 = (int)ppppppuVar2 >> 6;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_06 < iVar15) {\nLAB_001c98ac:\n                (*pcVar23)(7);\n                iVar15 = extraout_v1_04;\n              }\n              goto LAB_001c96d8;\n            }\n            iVar14 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          else {\n            uVar36 = (**(code **)(pcStack_208 + -0x7774))(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              uVar36 = (*pcVar23)(7);\n              if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c96c0;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              iVar15 = 1;\n            }\n            else {\nLAB_001c96c0:\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\nLAB_001c96c4:\n              uVar36 = (*pcVar23)(7);\n              if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n                 (pcVar23 = *(code **)(pcStack_208 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c98ac;\n              iVar15 = 2;\n            }\nLAB_001c96d8:\n            iVar14 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          puStack_1dc = &uStack_1f8;\n          pppppppuStack_1d8 = (undefined4 *******)0x1;\n          pppppppuStack_1f0 = pppppppuVar13;\n          pppppppuStack_1ec = pppppppuVar9;\n          pppppppuStack_1e8 = unaff_s5;\n          piStack_1e4 = piVar18;\n          pppppppuStack_1e0 = pppppppuVar12;\n          (**(code **)(pcStack_208 + -0x7718))(iVar14 + 0x56bc,&pppppppuStack_1f0,iVar15,0);\n          pppppppuVar9 = pppppppuStack_1d8;\n          (**(code **)(pcStack_208 + -0x79bc))(unaff_s5);\n          (**(code **)(pcStack_208 + -0x79bc))(piVar18);\n          pppppppuVar12[0xa8] = pppppppuVar13[0xa8];\n          if (unaff_s2 != (undefined4 ******)0x0) {\n            unaff_s6 = (undefined4 *******)\n                       ((int)unaff_s2 + (-(int)unaff_s6 - (int)pppppppuVar12[7]));\n          }\n          pppppppuVar12[0x8a] = unaff_s8;\n          pppppppuVar12[0x8b] = unaff_s2;\n          pppppppuVar12[0x8c] = ppppppuStack_1fc;\n          pppppppuVar12[0x8d] = unaff_s6;\n          if (pppppppuVar9 == (undefined4 *******)0x0) {\n            pppppppuVar12 = (undefined4 *******)(**(code **)(pcStack_208 + -0x7964))(pppppppuVar12);\n          }\n        }\n        pcVar23 = pcStack_208;\n        if (iStack_1d4 == *piVar16) {\n          return pppppppuVar12;\n        }\n        goto LAB_001c9968;\n      }\n      goto LAB_001c9974;\n    }\n  }" (if "if") (parenthesized_expression "(pppppppuVar13 == (undefined4 *******)0x0)" (( "(") (binary_expression "pppppppuVar13 == (undefined4 *******)0x0" (identifier "pppppppuVar13") (== "==") (cast_expression "(undefined4 *******)0x0" (( "(") (type_descriptor "undefined4 *******" (type_identifier "undefined4") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n    (**(code **)(pcVar21 + 0x1e0088))\n              (*(int *)(pcVar21 + 0x1df368) + -0x37b0,*(int *)(pcVar21 + 0x1df36c) + -0x288c,0x4bc,\n               *(int *)(pcVar21 + 0x1df36c) + -0x26e0);\n    pppppppuVar9 = param_1;\nLAB_001c9944:\n    (**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fd0) + 0x1cac,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x4c0,\n               *(int *)(pcVar23 + -0x7fc4) + -0x26e0);\nLAB_001c9968:\n    (**(code **)(pcVar23 + -0x784c))();\n    pppppppuVar13 = unaff_s7;\nLAB_001c9974:\n    (**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fd0) + 0x294c,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x4c1,\n               *(int *)(pcVar23 + -0x7fc4) + -0x26e0);\n    pppppppuStack_244 = pppppppuVar9;\n  }" ({ "{") (expression_statement "(**(code **)(pcVar21 + 0x1e0088))\n              (*(int *)(pcVar21 + 0x1df368) + -0x37b0,*(int *)(pcVar21 + 0x1df36c) + -0x288c,0x4bc,\n               *(int *)(pcVar21 + 0x1df36c) + -0x26e0);" (call_expression "(**(code **)(pcVar21 + 0x1e0088))\n              (*(int *)(pcVar21 + 0x1df368) + -0x37b0,*(int *)(pcVar21 + 0x1df36c) + -0x288c,0x4bc,\n               *(int *)(pcVar21 + 0x1df36c) + -0x26e0)" (parenthesized_expression "(**(code **)(pcVar21 + 0x1e0088))" (( "(") (pointer_expression "**(code **)(pcVar21 + 0x1e0088)" (* "*") (pointer_expression "*(code **)(pcVar21 + 0x1e0088)" (* "*") (cast_expression "(code **)(pcVar21 + 0x1e0088)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar21 + 0x1e0088)" (( "(") (binary_expression "pcVar21 + 0x1e0088" (identifier "pcVar21") (+ "+") (number_literal "0x1e0088")) () ")"))))) () ")")) (argument_list "(*(int *)(pcVar21 + 0x1df368) + -0x37b0,*(int *)(pcVar21 + 0x1df36c) + -0x288c,0x4bc,\n               *(int *)(pcVar21 + 0x1df36c) + -0x26e0)" (( "(") (binary_expression "*(int *)(pcVar21 + 0x1df368) + -0x37b0" (pointer_expression "*(int *)(pcVar21 + 0x1df368)" (* "*") (cast_expression "(int *)(pcVar21 + 0x1df368)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar21 + 0x1df368)" (( "(") (binary_expression "pcVar21 + 0x1df368" (identifier "pcVar21") (+ "+") (number_literal "0x1df368")) () ")")))) (+ "+") (number_literal "-0x37b0")) (, ",") (binary_expression "*(int *)(pcVar21 + 0x1df36c) + -0x288c" (pointer_expression "*(int *)(pcVar21 + 0x1df36c)" (* "*") (cast_expression "(int *)(pcVar21 + 0x1df36c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar21 + 0x1df36c)" (( "(") (binary_expression "pcVar21 + 0x1df36c" (identifier "pcVar21") (+ "+") (number_literal "0x1df36c")) () ")")))) (+ "+") (number_literal "-0x288c")) (, ",") (number_literal "0x4bc") (, ",") (binary_expression "*(int *)(pcVar21 + 0x1df36c) + -0x26e0" (pointer_expression "*(int *)(pcVar21 + 0x1df36c)" (* "*") (cast_expression "(int *)(pcVar21 + 0x1df36c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar21 + 0x1df36c)" (( "(") (binary_expression "pcVar21 + 0x1df36c" (identifier "pcVar21") (+ "+") (number_literal "0x1df36c")) () ")")))) (+ "+") (number_literal "-0x26e0")) () ")"))) (; ";")) (expression_statement "pppppppuVar9 = param_1;" (assignment_expression "pppppppuVar9 = param_1" (identifier "pppppppuVar9") (= "=") (identifier "param_1")) (; ";")) (labeled_statement "LAB_001c9944:\n    (**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fd0) + 0x1cac,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x4c0,\n               *(int *)(pcVar23 + -0x7fc4) + -0x26e0);" (statement_identifier "LAB_001c9944") (: ":") (expression_statement "(**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fd0) + 0x1cac,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x4c0,\n               *(int *)(pcVar23 + -0x7fc4) + -0x26e0);" (call_expression "(**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fd0) + 0x1cac,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x4c0,\n               *(int *)(pcVar23 + -0x7fc4) + -0x26e0)" (parenthesized_expression "(**(code **)(pcVar23 + -0x72a8))" (( "(") (pointer_expression "**(code **)(pcVar23 + -0x72a8)" (* "*") (pointer_expression "*(code **)(pcVar23 + -0x72a8)" (* "*") (cast_expression "(code **)(pcVar23 + -0x72a8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar23 + -0x72a8)" (( "(") (binary_expression "pcVar23 + -0x72a8" (identifier "pcVar23") (+ "+") (number_literal "-0x72a8")) () ")"))))) () ")")) (argument_list "(*(int *)(pcVar23 + -0x7fd0) + 0x1cac,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x4c0,\n               *(int *)(pcVar23 + -0x7fc4) + -0x26e0)" (( "(") (binary_expression "*(int *)(pcVar23 + -0x7fd0) + 0x1cac" (pointer_expression "*(int *)(pcVar23 + -0x7fd0)" (* "*") (cast_expression "(int *)(pcVar23 + -0x7fd0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar23 + -0x7fd0)" (( "(") (binary_expression "pcVar23 + -0x7fd0" (identifier "pcVar23") (+ "+") (number_literal "-0x7fd0")) () ")")))) (+ "+") (number_literal "0x1cac")) (, ",") (binary_expression "*(int *)(pcVar23 + -0x7fc4) + -0x288c" (pointer_expression "*(int *)(pcVar23 + -0x7fc4)" (* "*") (cast_expression "(int *)(pcVar23 + -0x7fc4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar23 + -0x7fc4)" (( "(") (binary_expression "pcVar23 + -0x7fc4" (identifier "pcVar23") (+ "+") (number_literal "-0x7fc4")) () ")")))) (+ "+") (number_literal "-0x288c")) (, ",") (number_literal "0x4c0") (, ",") (binary_expression "*(int *)(pcVar23 + -0x7fc4) + -0x26e0" (pointer_expression "*(int *)(pcVar23 + -0x7fc4)" (* "*") (cast_expression "(int *)(pcVar23 + -0x7fc4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar23 + -0x7fc4)" (( "(") (binary_expression "pcVar23 + -0x7fc4" (identifier "pcVar23") (+ "+") (number_literal "-0x7fc4")) () ")")))) (+ "+") (number_literal "-0x26e0")) () ")"))) (; ";"))) (labeled_statement "LAB_001c9968:\n    (**(code **)(pcVar23 + -0x784c))();" (statement_identifier "LAB_001c9968") (: ":") (expression_statement "(**(code **)(pcVar23 + -0x784c))();" (call_expression "(**(code **)(pcVar23 + -0x784c))()" (parenthesized_expression "(**(code **)(pcVar23 + -0x784c))" (( "(") (pointer_expression "**(code **)(pcVar23 + -0x784c)" (* "*") (pointer_expression "*(code **)(pcVar23 + -0x784c)" (* "*") (cast_expression "(code **)(pcVar23 + -0x784c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar23 + -0x784c)" (( "(") (binary_expression "pcVar23 + -0x784c" (identifier "pcVar23") (+ "+") (number_literal "-0x784c")) () ")"))))) () ")")) (argument_list "()" (( "(") () ")"))) (; ";"))) (expression_statement "pppppppuVar13 = unaff_s7;" (assignment_expression "pppppppuVar13 = unaff_s7" (identifier "pppppppuVar13") (= "=") (identifier "unaff_s7")) (; ";")) (labeled_statement "LAB_001c9974:\n    (**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fd0) + 0x294c,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x4c1,\n               *(int *)(pcVar23 + -0x7fc4) + -0x26e0);" (statement_identifier "LAB_001c9974") (: ":") (expression_statement "(**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fd0) + 0x294c,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x4c1,\n               *(int *)(pcVar23 + -0x7fc4) + -0x26e0);" (call_expression "(**(code **)(pcVar23 + -0x72a8))\n              (*(int *)(pcVar23 + -0x7fd0) + 0x294c,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x4c1,\n               *(int *)(pcVar23 + -0x7fc4) + -0x26e0)" (parenthesized_expression "(**(code **)(pcVar23 + -0x72a8))" (( "(") (pointer_expression "**(code **)(pcVar23 + -0x72a8)" (* "*") (pointer_expression "*(code **)(pcVar23 + -0x72a8)" (* "*") (cast_expression "(code **)(pcVar23 + -0x72a8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar23 + -0x72a8)" (( "(") (binary_expression "pcVar23 + -0x72a8" (identifier "pcVar23") (+ "+") (number_literal "-0x72a8")) () ")"))))) () ")")) (argument_list "(*(int *)(pcVar23 + -0x7fd0) + 0x294c,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x4c1,\n               *(int *)(pcVar23 + -0x7fc4) + -0x26e0)" (( "(") (binary_expression "*(int *)(pcVar23 + -0x7fd0) + 0x294c" (pointer_expression "*(int *)(pcVar23 + -0x7fd0)" (* "*") (cast_expression "(int *)(pcVar23 + -0x7fd0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar23 + -0x7fd0)" (( "(") (binary_expression "pcVar23 + -0x7fd0" (identifier "pcVar23") (+ "+") (number_literal "-0x7fd0")) () ")")))) (+ "+") (number_literal "0x294c")) (, ",") (binary_expression "*(int *)(pcVar23 + -0x7fc4) + -0x288c" (pointer_expression "*(int *)(pcVar23 + -0x7fc4)" (* "*") (cast_expression "(int *)(pcVar23 + -0x7fc4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar23 + -0x7fc4)" (( "(") (binary_expression "pcVar23 + -0x7fc4" (identifier "pcVar23") (+ "+") (number_literal "-0x7fc4")) () ")")))) (+ "+") (number_literal "-0x288c")) (, ",") (number_literal "0x4c1") (, ",") (binary_expression "*(int *)(pcVar23 + -0x7fc4) + -0x26e0" (pointer_expression "*(int *)(pcVar23 + -0x7fc4)" (* "*") (cast_expression "(int *)(pcVar23 + -0x7fc4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar23 + -0x7fc4)" (( "(") (binary_expression "pcVar23 + -0x7fc4" (identifier "pcVar23") (+ "+") (number_literal "-0x7fc4")) () ")")))) (+ "+") (number_literal "-0x26e0")) () ")"))) (; ";"))) (expression_statement "pppppppuStack_244 = pppppppuVar9;" (assignment_expression "pppppppuStack_244 = pppppppuVar9" (identifier "pppppppuStack_244") (= "=") (identifier "pppppppuVar9")) (; ";")) (} "}")) (else_clause "else {\n    pppppppuStack_244 = param_1;\n    if (pppppppuVar13[0xcdb] == (undefined4 ******)0xabacadab) {\n      if (pppppppuVar13[0xcd4] != (undefined4 ******)0x0) {\n        pppppppuStack_20c = pppppppuVar13 + 0xd0;\n        pppppppuStack_210 = (undefined4 *******)(*(int *)(pcVar21 + 0x1df364) + -0x62ac);\n        (**(code **)(pcVar21 + 0x1dfc60))\n                  (0x8000,*(int *)(pcVar21 + 0x1df36c) + -0x288c,\n                   *(int *)(pcVar21 + 0x1df36c) + -0x26ec,0x4bf);\n      }\n      unaff_s7 = pppppppuVar13;\n      pcVar23 = pcStack_208;\n      if (pppppppuVar9 == (undefined4 *******)0x0) goto LAB_001c9944;\n      if (pppppppuVar9[7] == (undefined4 ******)0xabacadab) {\n        pppppppuStack_210 = pppppppuVar9;\n        pppppppuVar12 =\n             (undefined4 *******)(**(code **)(pcStack_208 + -0x7080))(pppppppuVar13,0,0,1);\n        if (pppppppuVar12 != (undefined4 *******)0x0) {\n          ppppppuStack_1fc = pppppppuVar13[0x8c];\n          unaff_s8 = (undefined4 *******)pppppppuVar13[0x8a];\n          unaff_s2 = pppppppuVar13[0x8b];\n          unaff_s6 = (undefined4 *******)pppppppuVar13[0x8d];\n          uStack_1f4 = 0;\n          uStack_1f8 = 0;\n          piVar18 = (int *)(**(code **)(pcStack_208 + -0x715c))(pppppppuVar13,pppppppuVar9);\n          unaff_s5 = (undefined4 *******)\n                     (**(code **)(pcStack_208 + -0x79dc))(pppppppuVar12,pppppppuVar9);\n          iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13);\n          if (((iVar15 == 4) ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13), iVar15 == 3)) &&\n             ((iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 4 ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 3)))) {\n            (**(code **)(pcStack_208 + -0x7774))(7);\n            ppppppuVar2 = pppppppuVar12[7];\n            if ((int)ppppppuVar2 < 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_03 < (int)ppppppuVar2 + 0x3f >> 6) goto LAB_001c98d4;\nLAB_001c981c:\n              bVar1 = (int)ppppppuVar2 < 0x80;\n            }\n            else {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if ((int)ppppppuVar2 >> 6 <= extraout_v1_03) goto LAB_001c981c;\nLAB_001c98d4:\n              (*pcVar23)(7);\n              bVar1 = extraout_v1_05 < 2;\n            }\n            iVar15 = 1;\n            if ((bool)(bVar1 ^ 1)) {\n              (**(code **)(pcStack_208 + -0x7774))(7);\n              ppppppuVar2 = pppppppuVar12[7];\n              if ((int)ppppppuVar2 < 0) {\n                ppppppuVar2 = (undefined4 ******)((int)ppppppuVar2 + 0x3f);\n              }\n              iVar15 = (int)ppppppuVar2 >> 6;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_06 < iVar15) {\nLAB_001c98ac:\n                (*pcVar23)(7);\n                iVar15 = extraout_v1_04;\n              }\n              goto LAB_001c96d8;\n            }\n            iVar14 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          else {\n            uVar36 = (**(code **)(pcStack_208 + -0x7774))(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              uVar36 = (*pcVar23)(7);\n              if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c96c0;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              iVar15 = 1;\n            }\n            else {\nLAB_001c96c0:\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\nLAB_001c96c4:\n              uVar36 = (*pcVar23)(7);\n              if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n                 (pcVar23 = *(code **)(pcStack_208 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c98ac;\n              iVar15 = 2;\n            }\nLAB_001c96d8:\n            iVar14 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          puStack_1dc = &uStack_1f8;\n          pppppppuStack_1d8 = (undefined4 *******)0x1;\n          pppppppuStack_1f0 = pppppppuVar13;\n          pppppppuStack_1ec = pppppppuVar9;\n          pppppppuStack_1e8 = unaff_s5;\n          piStack_1e4 = piVar18;\n          pppppppuStack_1e0 = pppppppuVar12;\n          (**(code **)(pcStack_208 + -0x7718))(iVar14 + 0x56bc,&pppppppuStack_1f0,iVar15,0);\n          pppppppuVar9 = pppppppuStack_1d8;\n          (**(code **)(pcStack_208 + -0x79bc))(unaff_s5);\n          (**(code **)(pcStack_208 + -0x79bc))(piVar18);\n          pppppppuVar12[0xa8] = pppppppuVar13[0xa8];\n          if (unaff_s2 != (undefined4 ******)0x0) {\n            unaff_s6 = (undefined4 *******)\n                       ((int)unaff_s2 + (-(int)unaff_s6 - (int)pppppppuVar12[7]));\n          }\n          pppppppuVar12[0x8a] = unaff_s8;\n          pppppppuVar12[0x8b] = unaff_s2;\n          pppppppuVar12[0x8c] = ppppppuStack_1fc;\n          pppppppuVar12[0x8d] = unaff_s6;\n          if (pppppppuVar9 == (undefined4 *******)0x0) {\n            pppppppuVar12 = (undefined4 *******)(**(code **)(pcStack_208 + -0x7964))(pppppppuVar12);\n          }\n        }\n        pcVar23 = pcStack_208;\n        if (iStack_1d4 == *piVar16) {\n          return pppppppuVar12;\n        }\n        goto LAB_001c9968;\n      }\n      goto LAB_001c9974;\n    }\n  }" (else "else") (compound_statement "{\n    pppppppuStack_244 = param_1;\n    if (pppppppuVar13[0xcdb] == (undefined4 ******)0xabacadab) {\n      if (pppppppuVar13[0xcd4] != (undefined4 ******)0x0) {\n        pppppppuStack_20c = pppppppuVar13 + 0xd0;\n        pppppppuStack_210 = (undefined4 *******)(*(int *)(pcVar21 + 0x1df364) + -0x62ac);\n        (**(code **)(pcVar21 + 0x1dfc60))\n                  (0x8000,*(int *)(pcVar21 + 0x1df36c) + -0x288c,\n                   *(int *)(pcVar21 + 0x1df36c) + -0x26ec,0x4bf);\n      }\n      unaff_s7 = pppppppuVar13;\n      pcVar23 = pcStack_208;\n      if (pppppppuVar9 == (undefined4 *******)0x0) goto LAB_001c9944;\n      if (pppppppuVar9[7] == (undefined4 ******)0xabacadab) {\n        pppppppuStack_210 = pppppppuVar9;\n        pppppppuVar12 =\n             (undefined4 *******)(**(code **)(pcStack_208 + -0x7080))(pppppppuVar13,0,0,1);\n        if (pppppppuVar12 != (undefined4 *******)0x0) {\n          ppppppuStack_1fc = pppppppuVar13[0x8c];\n          unaff_s8 = (undefined4 *******)pppppppuVar13[0x8a];\n          unaff_s2 = pppppppuVar13[0x8b];\n          unaff_s6 = (undefined4 *******)pppppppuVar13[0x8d];\n          uStack_1f4 = 0;\n          uStack_1f8 = 0;\n          piVar18 = (int *)(**(code **)(pcStack_208 + -0x715c))(pppppppuVar13,pppppppuVar9);\n          unaff_s5 = (undefined4 *******)\n                     (**(code **)(pcStack_208 + -0x79dc))(pppppppuVar12,pppppppuVar9);\n          iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13);\n          if (((iVar15 == 4) ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13), iVar15 == 3)) &&\n             ((iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 4 ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 3)))) {\n            (**(code **)(pcStack_208 + -0x7774))(7);\n            ppppppuVar2 = pppppppuVar12[7];\n            if ((int)ppppppuVar2 < 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_03 < (int)ppppppuVar2 + 0x3f >> 6) goto LAB_001c98d4;\nLAB_001c981c:\n              bVar1 = (int)ppppppuVar2 < 0x80;\n            }\n            else {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if ((int)ppppppuVar2 >> 6 <= extraout_v1_03) goto LAB_001c981c;\nLAB_001c98d4:\n              (*pcVar23)(7);\n              bVar1 = extraout_v1_05 < 2;\n            }\n            iVar15 = 1;\n            if ((bool)(bVar1 ^ 1)) {\n              (**(code **)(pcStack_208 + -0x7774))(7);\n              ppppppuVar2 = pppppppuVar12[7];\n              if ((int)ppppppuVar2 < 0) {\n                ppppppuVar2 = (undefined4 ******)((int)ppppppuVar2 + 0x3f);\n              }\n              iVar15 = (int)ppppppuVar2 >> 6;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_06 < iVar15) {\nLAB_001c98ac:\n                (*pcVar23)(7);\n                iVar15 = extraout_v1_04;\n              }\n              goto LAB_001c96d8;\n            }\n            iVar14 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          else {\n            uVar36 = (**(code **)(pcStack_208 + -0x7774))(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              uVar36 = (*pcVar23)(7);\n              if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c96c0;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              iVar15 = 1;\n            }\n            else {\nLAB_001c96c0:\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\nLAB_001c96c4:\n              uVar36 = (*pcVar23)(7);\n              if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n                 (pcVar23 = *(code **)(pcStack_208 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c98ac;\n              iVar15 = 2;\n            }\nLAB_001c96d8:\n            iVar14 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          puStack_1dc = &uStack_1f8;\n          pppppppuStack_1d8 = (undefined4 *******)0x1;\n          pppppppuStack_1f0 = pppppppuVar13;\n          pppppppuStack_1ec = pppppppuVar9;\n          pppppppuStack_1e8 = unaff_s5;\n          piStack_1e4 = piVar18;\n          pppppppuStack_1e0 = pppppppuVar12;\n          (**(code **)(pcStack_208 + -0x7718))(iVar14 + 0x56bc,&pppppppuStack_1f0,iVar15,0);\n          pppppppuVar9 = pppppppuStack_1d8;\n          (**(code **)(pcStack_208 + -0x79bc))(unaff_s5);\n          (**(code **)(pcStack_208 + -0x79bc))(piVar18);\n          pppppppuVar12[0xa8] = pppppppuVar13[0xa8];\n          if (unaff_s2 != (undefined4 ******)0x0) {\n            unaff_s6 = (undefined4 *******)\n                       ((int)unaff_s2 + (-(int)unaff_s6 - (int)pppppppuVar12[7]));\n          }\n          pppppppuVar12[0x8a] = unaff_s8;\n          pppppppuVar12[0x8b] = unaff_s2;\n          pppppppuVar12[0x8c] = ppppppuStack_1fc;\n          pppppppuVar12[0x8d] = unaff_s6;\n          if (pppppppuVar9 == (undefined4 *******)0x0) {\n            pppppppuVar12 = (undefined4 *******)(**(code **)(pcStack_208 + -0x7964))(pppppppuVar12);\n          }\n        }\n        pcVar23 = pcStack_208;\n        if (iStack_1d4 == *piVar16) {\n          return pppppppuVar12;\n        }\n        goto LAB_001c9968;\n      }\n      goto LAB_001c9974;\n    }\n  }" ({ "{") (expression_statement "pppppppuStack_244 = param_1;" (assignment_expression "pppppppuStack_244 = param_1" (identifier "pppppppuStack_244") (= "=") (identifier "param_1")) (; ";")) (if_statement "if (pppppppuVar13[0xcdb] == (undefined4 ******)0xabacadab) {\n      if (pppppppuVar13[0xcd4] != (undefined4 ******)0x0) {\n        pppppppuStack_20c = pppppppuVar13 + 0xd0;\n        pppppppuStack_210 = (undefined4 *******)(*(int *)(pcVar21 + 0x1df364) + -0x62ac);\n        (**(code **)(pcVar21 + 0x1dfc60))\n                  (0x8000,*(int *)(pcVar21 + 0x1df36c) + -0x288c,\n                   *(int *)(pcVar21 + 0x1df36c) + -0x26ec,0x4bf);\n      }\n      unaff_s7 = pppppppuVar13;\n      pcVar23 = pcStack_208;\n      if (pppppppuVar9 == (undefined4 *******)0x0) goto LAB_001c9944;\n      if (pppppppuVar9[7] == (undefined4 ******)0xabacadab) {\n        pppppppuStack_210 = pppppppuVar9;\n        pppppppuVar12 =\n             (undefined4 *******)(**(code **)(pcStack_208 + -0x7080))(pppppppuVar13,0,0,1);\n        if (pppppppuVar12 != (undefined4 *******)0x0) {\n          ppppppuStack_1fc = pppppppuVar13[0x8c];\n          unaff_s8 = (undefined4 *******)pppppppuVar13[0x8a];\n          unaff_s2 = pppppppuVar13[0x8b];\n          unaff_s6 = (undefined4 *******)pppppppuVar13[0x8d];\n          uStack_1f4 = 0;\n          uStack_1f8 = 0;\n          piVar18 = (int *)(**(code **)(pcStack_208 + -0x715c))(pppppppuVar13,pppppppuVar9);\n          unaff_s5 = (undefined4 *******)\n                     (**(code **)(pcStack_208 + -0x79dc))(pppppppuVar12,pppppppuVar9);\n          iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13);\n          if (((iVar15 == 4) ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13), iVar15 == 3)) &&\n             ((iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 4 ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 3)))) {\n            (**(code **)(pcStack_208 + -0x7774))(7);\n            ppppppuVar2 = pppppppuVar12[7];\n            if ((int)ppppppuVar2 < 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_03 < (int)ppppppuVar2 + 0x3f >> 6) goto LAB_001c98d4;\nLAB_001c981c:\n              bVar1 = (int)ppppppuVar2 < 0x80;\n            }\n            else {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if ((int)ppppppuVar2 >> 6 <= extraout_v1_03) goto LAB_001c981c;\nLAB_001c98d4:\n              (*pcVar23)(7);\n              bVar1 = extraout_v1_05 < 2;\n            }\n            iVar15 = 1;\n            if ((bool)(bVar1 ^ 1)) {\n              (**(code **)(pcStack_208 + -0x7774))(7);\n              ppppppuVar2 = pppppppuVar12[7];\n              if ((int)ppppppuVar2 < 0) {\n                ppppppuVar2 = (undefined4 ******)((int)ppppppuVar2 + 0x3f);\n              }\n              iVar15 = (int)ppppppuVar2 >> 6;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_06 < iVar15) {\nLAB_001c98ac:\n                (*pcVar23)(7);\n                iVar15 = extraout_v1_04;\n              }\n              goto LAB_001c96d8;\n            }\n            iVar14 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          else {\n            uVar36 = (**(code **)(pcStack_208 + -0x7774))(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              uVar36 = (*pcVar23)(7);\n              if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c96c0;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              iVar15 = 1;\n            }\n            else {\nLAB_001c96c0:\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\nLAB_001c96c4:\n              uVar36 = (*pcVar23)(7);\n              if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n                 (pcVar23 = *(code **)(pcStack_208 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c98ac;\n              iVar15 = 2;\n            }\nLAB_001c96d8:\n            iVar14 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          puStack_1dc = &uStack_1f8;\n          pppppppuStack_1d8 = (undefined4 *******)0x1;\n          pppppppuStack_1f0 = pppppppuVar13;\n          pppppppuStack_1ec = pppppppuVar9;\n          pppppppuStack_1e8 = unaff_s5;\n          piStack_1e4 = piVar18;\n          pppppppuStack_1e0 = pppppppuVar12;\n          (**(code **)(pcStack_208 + -0x7718))(iVar14 + 0x56bc,&pppppppuStack_1f0,iVar15,0);\n          pppppppuVar9 = pppppppuStack_1d8;\n          (**(code **)(pcStack_208 + -0x79bc))(unaff_s5);\n          (**(code **)(pcStack_208 + -0x79bc))(piVar18);\n          pppppppuVar12[0xa8] = pppppppuVar13[0xa8];\n          if (unaff_s2 != (undefined4 ******)0x0) {\n            unaff_s6 = (undefined4 *******)\n                       ((int)unaff_s2 + (-(int)unaff_s6 - (int)pppppppuVar12[7]));\n          }\n          pppppppuVar12[0x8a] = unaff_s8;\n          pppppppuVar12[0x8b] = unaff_s2;\n          pppppppuVar12[0x8c] = ppppppuStack_1fc;\n          pppppppuVar12[0x8d] = unaff_s6;\n          if (pppppppuVar9 == (undefined4 *******)0x0) {\n            pppppppuVar12 = (undefined4 *******)(**(code **)(pcStack_208 + -0x7964))(pppppppuVar12);\n          }\n        }\n        pcVar23 = pcStack_208;\n        if (iStack_1d4 == *piVar16) {\n          return pppppppuVar12;\n        }\n        goto LAB_001c9968;\n      }\n      goto LAB_001c9974;\n    }" (if "if") (parenthesized_expression "(pppppppuVar13[0xcdb] == (undefined4 ******)0xabacadab)" (( "(") (binary_expression "pppppppuVar13[0xcdb] == (undefined4 ******)0xabacadab" (subscript_expression "pppppppuVar13[0xcdb]" (identifier "pppppppuVar13") ([ "[") (number_literal "0xcdb") (] "]")) (== "==") (cast_expression "(undefined4 ******)0xabacadab" (( "(") (type_descriptor "undefined4 ******" (type_identifier "undefined4") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (number_literal "0xabacadab"))) () ")")) (compound_statement "{\n      if (pppppppuVar13[0xcd4] != (undefined4 ******)0x0) {\n        pppppppuStack_20c = pppppppuVar13 + 0xd0;\n        pppppppuStack_210 = (undefined4 *******)(*(int *)(pcVar21 + 0x1df364) + -0x62ac);\n        (**(code **)(pcVar21 + 0x1dfc60))\n                  (0x8000,*(int *)(pcVar21 + 0x1df36c) + -0x288c,\n                   *(int *)(pcVar21 + 0x1df36c) + -0x26ec,0x4bf);\n      }\n      unaff_s7 = pppppppuVar13;\n      pcVar23 = pcStack_208;\n      if (pppppppuVar9 == (undefined4 *******)0x0) goto LAB_001c9944;\n      if (pppppppuVar9[7] == (undefined4 ******)0xabacadab) {\n        pppppppuStack_210 = pppppppuVar9;\n        pppppppuVar12 =\n             (undefined4 *******)(**(code **)(pcStack_208 + -0x7080))(pppppppuVar13,0,0,1);\n        if (pppppppuVar12 != (undefined4 *******)0x0) {\n          ppppppuStack_1fc = pppppppuVar13[0x8c];\n          unaff_s8 = (undefined4 *******)pppppppuVar13[0x8a];\n          unaff_s2 = pppppppuVar13[0x8b];\n          unaff_s6 = (undefined4 *******)pppppppuVar13[0x8d];\n          uStack_1f4 = 0;\n          uStack_1f8 = 0;\n          piVar18 = (int *)(**(code **)(pcStack_208 + -0x715c))(pppppppuVar13,pppppppuVar9);\n          unaff_s5 = (undefined4 *******)\n                     (**(code **)(pcStack_208 + -0x79dc))(pppppppuVar12,pppppppuVar9);\n          iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13);\n          if (((iVar15 == 4) ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13), iVar15 == 3)) &&\n             ((iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 4 ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 3)))) {\n            (**(code **)(pcStack_208 + -0x7774))(7);\n            ppppppuVar2 = pppppppuVar12[7];\n            if ((int)ppppppuVar2 < 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_03 < (int)ppppppuVar2 + 0x3f >> 6) goto LAB_001c98d4;\nLAB_001c981c:\n              bVar1 = (int)ppppppuVar2 < 0x80;\n            }\n            else {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if ((int)ppppppuVar2 >> 6 <= extraout_v1_03) goto LAB_001c981c;\nLAB_001c98d4:\n              (*pcVar23)(7);\n              bVar1 = extraout_v1_05 < 2;\n            }\n            iVar15 = 1;\n            if ((bool)(bVar1 ^ 1)) {\n              (**(code **)(pcStack_208 + -0x7774))(7);\n              ppppppuVar2 = pppppppuVar12[7];\n              if ((int)ppppppuVar2 < 0) {\n                ppppppuVar2 = (undefined4 ******)((int)ppppppuVar2 + 0x3f);\n              }\n              iVar15 = (int)ppppppuVar2 >> 6;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_06 < iVar15) {\nLAB_001c98ac:\n                (*pcVar23)(7);\n                iVar15 = extraout_v1_04;\n              }\n              goto LAB_001c96d8;\n            }\n            iVar14 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          else {\n            uVar36 = (**(code **)(pcStack_208 + -0x7774))(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              uVar36 = (*pcVar23)(7);\n              if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c96c0;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              iVar15 = 1;\n            }\n            else {\nLAB_001c96c0:\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\nLAB_001c96c4:\n              uVar36 = (*pcVar23)(7);\n              if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n                 (pcVar23 = *(code **)(pcStack_208 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c98ac;\n              iVar15 = 2;\n            }\nLAB_001c96d8:\n            iVar14 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          puStack_1dc = &uStack_1f8;\n          pppppppuStack_1d8 = (undefined4 *******)0x1;\n          pppppppuStack_1f0 = pppppppuVar13;\n          pppppppuStack_1ec = pppppppuVar9;\n          pppppppuStack_1e8 = unaff_s5;\n          piStack_1e4 = piVar18;\n          pppppppuStack_1e0 = pppppppuVar12;\n          (**(code **)(pcStack_208 + -0x7718))(iVar14 + 0x56bc,&pppppppuStack_1f0,iVar15,0);\n          pppppppuVar9 = pppppppuStack_1d8;\n          (**(code **)(pcStack_208 + -0x79bc))(unaff_s5);\n          (**(code **)(pcStack_208 + -0x79bc))(piVar18);\n          pppppppuVar12[0xa8] = pppppppuVar13[0xa8];\n          if (unaff_s2 != (undefined4 ******)0x0) {\n            unaff_s6 = (undefined4 *******)\n                       ((int)unaff_s2 + (-(int)unaff_s6 - (int)pppppppuVar12[7]));\n          }\n          pppppppuVar12[0x8a] = unaff_s8;\n          pppppppuVar12[0x8b] = unaff_s2;\n          pppppppuVar12[0x8c] = ppppppuStack_1fc;\n          pppppppuVar12[0x8d] = unaff_s6;\n          if (pppppppuVar9 == (undefined4 *******)0x0) {\n            pppppppuVar12 = (undefined4 *******)(**(code **)(pcStack_208 + -0x7964))(pppppppuVar12);\n          }\n        }\n        pcVar23 = pcStack_208;\n        if (iStack_1d4 == *piVar16) {\n          return pppppppuVar12;\n        }\n        goto LAB_001c9968;\n      }\n      goto LAB_001c9974;\n    }" ({ "{") (if_statement "if (pppppppuVar13[0xcd4] != (undefined4 ******)0x0) {\n        pppppppuStack_20c = pppppppuVar13 + 0xd0;\n        pppppppuStack_210 = (undefined4 *******)(*(int *)(pcVar21 + 0x1df364) + -0x62ac);\n        (**(code **)(pcVar21 + 0x1dfc60))\n                  (0x8000,*(int *)(pcVar21 + 0x1df36c) + -0x288c,\n                   *(int *)(pcVar21 + 0x1df36c) + -0x26ec,0x4bf);\n      }" (if "if") (parenthesized_expression "(pppppppuVar13[0xcd4] != (undefined4 ******)0x0)" (( "(") (binary_expression "pppppppuVar13[0xcd4] != (undefined4 ******)0x0" (subscript_expression "pppppppuVar13[0xcd4]" (identifier "pppppppuVar13") ([ "[") (number_literal "0xcd4") (] "]")) (!= "!=") (cast_expression "(undefined4 ******)0x0" (( "(") (type_descriptor "undefined4 ******" (type_identifier "undefined4") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n        pppppppuStack_20c = pppppppuVar13 + 0xd0;\n        pppppppuStack_210 = (undefined4 *******)(*(int *)(pcVar21 + 0x1df364) + -0x62ac);\n        (**(code **)(pcVar21 + 0x1dfc60))\n                  (0x8000,*(int *)(pcVar21 + 0x1df36c) + -0x288c,\n                   *(int *)(pcVar21 + 0x1df36c) + -0x26ec,0x4bf);\n      }" ({ "{") (expression_statement "pppppppuStack_20c = pppppppuVar13 + 0xd0;" (assignment_expression "pppppppuStack_20c = pppppppuVar13 + 0xd0" (identifier "pppppppuStack_20c") (= "=") (binary_expression "pppppppuVar13 + 0xd0" (identifier "pppppppuVar13") (+ "+") (number_literal "0xd0"))) (; ";")) (expression_statement "pppppppuStack_210 = (undefined4 *******)(*(int *)(pcVar21 + 0x1df364) + -0x62ac);" (assignment_expression "pppppppuStack_210 = (undefined4 *******)(*(int *)(pcVar21 + 0x1df364) + -0x62ac)" (identifier "pppppppuStack_210") (= "=") (cast_expression "(undefined4 *******)(*(int *)(pcVar21 + 0x1df364) + -0x62ac)" (( "(") (type_descriptor "undefined4 *******" (type_identifier "undefined4") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "(*(int *)(pcVar21 + 0x1df364) + -0x62ac)" (( "(") (binary_expression "*(int *)(pcVar21 + 0x1df364) + -0x62ac" (pointer_expression "*(int *)(pcVar21 + 0x1df364)" (* "*") (cast_expression "(int *)(pcVar21 + 0x1df364)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar21 + 0x1df364)" (( "(") (binary_expression "pcVar21 + 0x1df364" (identifier "pcVar21") (+ "+") (number_literal "0x1df364")) () ")")))) (+ "+") (number_literal "-0x62ac")) () ")")))) (; ";")) (expression_statement "(**(code **)(pcVar21 + 0x1dfc60))\n                  (0x8000,*(int *)(pcVar21 + 0x1df36c) + -0x288c,\n                   *(int *)(pcVar21 + 0x1df36c) + -0x26ec,0x4bf);" (call_expression "(**(code **)(pcVar21 + 0x1dfc60))\n                  (0x8000,*(int *)(pcVar21 + 0x1df36c) + -0x288c,\n                   *(int *)(pcVar21 + 0x1df36c) + -0x26ec,0x4bf)" (parenthesized_expression "(**(code **)(pcVar21 + 0x1dfc60))" (( "(") (pointer_expression "**(code **)(pcVar21 + 0x1dfc60)" (* "*") (pointer_expression "*(code **)(pcVar21 + 0x1dfc60)" (* "*") (cast_expression "(code **)(pcVar21 + 0x1dfc60)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar21 + 0x1dfc60)" (( "(") (binary_expression "pcVar21 + 0x1dfc60" (identifier "pcVar21") (+ "+") (number_literal "0x1dfc60")) () ")"))))) () ")")) (argument_list "(0x8000,*(int *)(pcVar21 + 0x1df36c) + -0x288c,\n                   *(int *)(pcVar21 + 0x1df36c) + -0x26ec,0x4bf)" (( "(") (number_literal "0x8000") (, ",") (binary_expression "*(int *)(pcVar21 + 0x1df36c) + -0x288c" (pointer_expression "*(int *)(pcVar21 + 0x1df36c)" (* "*") (cast_expression "(int *)(pcVar21 + 0x1df36c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar21 + 0x1df36c)" (( "(") (binary_expression "pcVar21 + 0x1df36c" (identifier "pcVar21") (+ "+") (number_literal "0x1df36c")) () ")")))) (+ "+") (number_literal "-0x288c")) (, ",") (binary_expression "*(int *)(pcVar21 + 0x1df36c) + -0x26ec" (pointer_expression "*(int *)(pcVar21 + 0x1df36c)" (* "*") (cast_expression "(int *)(pcVar21 + 0x1df36c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar21 + 0x1df36c)" (( "(") (binary_expression "pcVar21 + 0x1df36c" (identifier "pcVar21") (+ "+") (number_literal "0x1df36c")) () ")")))) (+ "+") (number_literal "-0x26ec")) (, ",") (number_literal "0x4bf") () ")"))) (; ";")) (} "}"))) (expression_statement "unaff_s7 = pppppppuVar13;" (assignment_expression "unaff_s7 = pppppppuVar13" (identifier "unaff_s7") (= "=") (identifier "pppppppuVar13")) (; ";")) (expression_statement "pcVar23 = pcStack_208;" (assignment_expression "pcVar23 = pcStack_208" (identifier "pcVar23") (= "=") (identifier "pcStack_208")) (; ";")) (if_statement "if (pppppppuVar9 == (undefined4 *******)0x0) goto LAB_001c9944;" (if "if") (parenthesized_expression "(pppppppuVar9 == (undefined4 *******)0x0)" (( "(") (binary_expression "pppppppuVar9 == (undefined4 *******)0x0" (identifier "pppppppuVar9") (== "==") (cast_expression "(undefined4 *******)0x0" (( "(") (type_descriptor "undefined4 *******" (type_identifier "undefined4") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (goto_statement "goto LAB_001c9944;" (goto "goto") (statement_identifier "LAB_001c9944") (; ";"))) (if_statement "if (pppppppuVar9[7] == (undefined4 ******)0xabacadab) {\n        pppppppuStack_210 = pppppppuVar9;\n        pppppppuVar12 =\n             (undefined4 *******)(**(code **)(pcStack_208 + -0x7080))(pppppppuVar13,0,0,1);\n        if (pppppppuVar12 != (undefined4 *******)0x0) {\n          ppppppuStack_1fc = pppppppuVar13[0x8c];\n          unaff_s8 = (undefined4 *******)pppppppuVar13[0x8a];\n          unaff_s2 = pppppppuVar13[0x8b];\n          unaff_s6 = (undefined4 *******)pppppppuVar13[0x8d];\n          uStack_1f4 = 0;\n          uStack_1f8 = 0;\n          piVar18 = (int *)(**(code **)(pcStack_208 + -0x715c))(pppppppuVar13,pppppppuVar9);\n          unaff_s5 = (undefined4 *******)\n                     (**(code **)(pcStack_208 + -0x79dc))(pppppppuVar12,pppppppuVar9);\n          iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13);\n          if (((iVar15 == 4) ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13), iVar15 == 3)) &&\n             ((iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 4 ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 3)))) {\n            (**(code **)(pcStack_208 + -0x7774))(7);\n            ppppppuVar2 = pppppppuVar12[7];\n            if ((int)ppppppuVar2 < 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_03 < (int)ppppppuVar2 + 0x3f >> 6) goto LAB_001c98d4;\nLAB_001c981c:\n              bVar1 = (int)ppppppuVar2 < 0x80;\n            }\n            else {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if ((int)ppppppuVar2 >> 6 <= extraout_v1_03) goto LAB_001c981c;\nLAB_001c98d4:\n              (*pcVar23)(7);\n              bVar1 = extraout_v1_05 < 2;\n            }\n            iVar15 = 1;\n            if ((bool)(bVar1 ^ 1)) {\n              (**(code **)(pcStack_208 + -0x7774))(7);\n              ppppppuVar2 = pppppppuVar12[7];\n              if ((int)ppppppuVar2 < 0) {\n                ppppppuVar2 = (undefined4 ******)((int)ppppppuVar2 + 0x3f);\n              }\n              iVar15 = (int)ppppppuVar2 >> 6;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_06 < iVar15) {\nLAB_001c98ac:\n                (*pcVar23)(7);\n                iVar15 = extraout_v1_04;\n              }\n              goto LAB_001c96d8;\n            }\n            iVar14 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          else {\n            uVar36 = (**(code **)(pcStack_208 + -0x7774))(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              uVar36 = (*pcVar23)(7);\n              if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c96c0;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              iVar15 = 1;\n            }\n            else {\nLAB_001c96c0:\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\nLAB_001c96c4:\n              uVar36 = (*pcVar23)(7);\n              if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n                 (pcVar23 = *(code **)(pcStack_208 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c98ac;\n              iVar15 = 2;\n            }\nLAB_001c96d8:\n            iVar14 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          puStack_1dc = &uStack_1f8;\n          pppppppuStack_1d8 = (undefined4 *******)0x1;\n          pppppppuStack_1f0 = pppppppuVar13;\n          pppppppuStack_1ec = pppppppuVar9;\n          pppppppuStack_1e8 = unaff_s5;\n          piStack_1e4 = piVar18;\n          pppppppuStack_1e0 = pppppppuVar12;\n          (**(code **)(pcStack_208 + -0x7718))(iVar14 + 0x56bc,&pppppppuStack_1f0,iVar15,0);\n          pppppppuVar9 = pppppppuStack_1d8;\n          (**(code **)(pcStack_208 + -0x79bc))(unaff_s5);\n          (**(code **)(pcStack_208 + -0x79bc))(piVar18);\n          pppppppuVar12[0xa8] = pppppppuVar13[0xa8];\n          if (unaff_s2 != (undefined4 ******)0x0) {\n            unaff_s6 = (undefined4 *******)\n                       ((int)unaff_s2 + (-(int)unaff_s6 - (int)pppppppuVar12[7]));\n          }\n          pppppppuVar12[0x8a] = unaff_s8;\n          pppppppuVar12[0x8b] = unaff_s2;\n          pppppppuVar12[0x8c] = ppppppuStack_1fc;\n          pppppppuVar12[0x8d] = unaff_s6;\n          if (pppppppuVar9 == (undefined4 *******)0x0) {\n            pppppppuVar12 = (undefined4 *******)(**(code **)(pcStack_208 + -0x7964))(pppppppuVar12);\n          }\n        }\n        pcVar23 = pcStack_208;\n        if (iStack_1d4 == *piVar16) {\n          return pppppppuVar12;\n        }\n        goto LAB_001c9968;\n      }" (if "if") (parenthesized_expression "(pppppppuVar9[7] == (undefined4 ******)0xabacadab)" (( "(") (binary_expression "pppppppuVar9[7] == (undefined4 ******)0xabacadab" (subscript_expression "pppppppuVar9[7]" (identifier "pppppppuVar9") ([ "[") (number_literal "7") (] "]")) (== "==") (cast_expression "(undefined4 ******)0xabacadab" (( "(") (type_descriptor "undefined4 ******" (type_identifier "undefined4") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (number_literal "0xabacadab"))) () ")")) (compound_statement "{\n        pppppppuStack_210 = pppppppuVar9;\n        pppppppuVar12 =\n             (undefined4 *******)(**(code **)(pcStack_208 + -0x7080))(pppppppuVar13,0,0,1);\n        if (pppppppuVar12 != (undefined4 *******)0x0) {\n          ppppppuStack_1fc = pppppppuVar13[0x8c];\n          unaff_s8 = (undefined4 *******)pppppppuVar13[0x8a];\n          unaff_s2 = pppppppuVar13[0x8b];\n          unaff_s6 = (undefined4 *******)pppppppuVar13[0x8d];\n          uStack_1f4 = 0;\n          uStack_1f8 = 0;\n          piVar18 = (int *)(**(code **)(pcStack_208 + -0x715c))(pppppppuVar13,pppppppuVar9);\n          unaff_s5 = (undefined4 *******)\n                     (**(code **)(pcStack_208 + -0x79dc))(pppppppuVar12,pppppppuVar9);\n          iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13);\n          if (((iVar15 == 4) ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13), iVar15 == 3)) &&\n             ((iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 4 ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 3)))) {\n            (**(code **)(pcStack_208 + -0x7774))(7);\n            ppppppuVar2 = pppppppuVar12[7];\n            if ((int)ppppppuVar2 < 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_03 < (int)ppppppuVar2 + 0x3f >> 6) goto LAB_001c98d4;\nLAB_001c981c:\n              bVar1 = (int)ppppppuVar2 < 0x80;\n            }\n            else {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if ((int)ppppppuVar2 >> 6 <= extraout_v1_03) goto LAB_001c981c;\nLAB_001c98d4:\n              (*pcVar23)(7);\n              bVar1 = extraout_v1_05 < 2;\n            }\n            iVar15 = 1;\n            if ((bool)(bVar1 ^ 1)) {\n              (**(code **)(pcStack_208 + -0x7774))(7);\n              ppppppuVar2 = pppppppuVar12[7];\n              if ((int)ppppppuVar2 < 0) {\n                ppppppuVar2 = (undefined4 ******)((int)ppppppuVar2 + 0x3f);\n              }\n              iVar15 = (int)ppppppuVar2 >> 6;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_06 < iVar15) {\nLAB_001c98ac:\n                (*pcVar23)(7);\n                iVar15 = extraout_v1_04;\n              }\n              goto LAB_001c96d8;\n            }\n            iVar14 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          else {\n            uVar36 = (**(code **)(pcStack_208 + -0x7774))(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              uVar36 = (*pcVar23)(7);\n              if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c96c0;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              iVar15 = 1;\n            }\n            else {\nLAB_001c96c0:\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\nLAB_001c96c4:\n              uVar36 = (*pcVar23)(7);\n              if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n                 (pcVar23 = *(code **)(pcStack_208 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c98ac;\n              iVar15 = 2;\n            }\nLAB_001c96d8:\n            iVar14 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          puStack_1dc = &uStack_1f8;\n          pppppppuStack_1d8 = (undefined4 *******)0x1;\n          pppppppuStack_1f0 = pppppppuVar13;\n          pppppppuStack_1ec = pppppppuVar9;\n          pppppppuStack_1e8 = unaff_s5;\n          piStack_1e4 = piVar18;\n          pppppppuStack_1e0 = pppppppuVar12;\n          (**(code **)(pcStack_208 + -0x7718))(iVar14 + 0x56bc,&pppppppuStack_1f0,iVar15,0);\n          pppppppuVar9 = pppppppuStack_1d8;\n          (**(code **)(pcStack_208 + -0x79bc))(unaff_s5);\n          (**(code **)(pcStack_208 + -0x79bc))(piVar18);\n          pppppppuVar12[0xa8] = pppppppuVar13[0xa8];\n          if (unaff_s2 != (undefined4 ******)0x0) {\n            unaff_s6 = (undefined4 *******)\n                       ((int)unaff_s2 + (-(int)unaff_s6 - (int)pppppppuVar12[7]));\n          }\n          pppppppuVar12[0x8a] = unaff_s8;\n          pppppppuVar12[0x8b] = unaff_s2;\n          pppppppuVar12[0x8c] = ppppppuStack_1fc;\n          pppppppuVar12[0x8d] = unaff_s6;\n          if (pppppppuVar9 == (undefined4 *******)0x0) {\n            pppppppuVar12 = (undefined4 *******)(**(code **)(pcStack_208 + -0x7964))(pppppppuVar12);\n          }\n        }\n        pcVar23 = pcStack_208;\n        if (iStack_1d4 == *piVar16) {\n          return pppppppuVar12;\n        }\n        goto LAB_001c9968;\n      }" ({ "{") (expression_statement "pppppppuStack_210 = pppppppuVar9;" (assignment_expression "pppppppuStack_210 = pppppppuVar9" (identifier "pppppppuStack_210") (= "=") (identifier "pppppppuVar9")) (; ";")) (expression_statement "pppppppuVar12 =\n             (undefined4 *******)(**(code **)(pcStack_208 + -0x7080))(pppppppuVar13,0,0,1);" (assignment_expression "pppppppuVar12 =\n             (undefined4 *******)(**(code **)(pcStack_208 + -0x7080))(pppppppuVar13,0,0,1)" (identifier "pppppppuVar12") (= "=") (cast_expression "(undefined4 *******)(**(code **)(pcStack_208 + -0x7080))(pppppppuVar13,0,0,1)" (( "(") (type_descriptor "undefined4 *******" (type_identifier "undefined4") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (call_expression "(**(code **)(pcStack_208 + -0x7080))(pppppppuVar13,0,0,1)" (parenthesized_expression "(**(code **)(pcStack_208 + -0x7080))" (( "(") (pointer_expression "**(code **)(pcStack_208 + -0x7080)" (* "*") (pointer_expression "*(code **)(pcStack_208 + -0x7080)" (* "*") (cast_expression "(code **)(pcStack_208 + -0x7080)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_208 + -0x7080)" (( "(") (binary_expression "pcStack_208 + -0x7080" (identifier "pcStack_208") (+ "+") (number_literal "-0x7080")) () ")"))))) () ")")) (argument_list "(pppppppuVar13,0,0,1)" (( "(") (identifier "pppppppuVar13") (, ",") (number_literal "0") (, ",") (number_literal "0") (, ",") (number_literal "1") () ")"))))) (; ";")) (if_statement "if (pppppppuVar12 != (undefined4 *******)0x0) {\n          ppppppuStack_1fc = pppppppuVar13[0x8c];\n          unaff_s8 = (undefined4 *******)pppppppuVar13[0x8a];\n          unaff_s2 = pppppppuVar13[0x8b];\n          unaff_s6 = (undefined4 *******)pppppppuVar13[0x8d];\n          uStack_1f4 = 0;\n          uStack_1f8 = 0;\n          piVar18 = (int *)(**(code **)(pcStack_208 + -0x715c))(pppppppuVar13,pppppppuVar9);\n          unaff_s5 = (undefined4 *******)\n                     (**(code **)(pcStack_208 + -0x79dc))(pppppppuVar12,pppppppuVar9);\n          iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13);\n          if (((iVar15 == 4) ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13), iVar15 == 3)) &&\n             ((iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 4 ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 3)))) {\n            (**(code **)(pcStack_208 + -0x7774))(7);\n            ppppppuVar2 = pppppppuVar12[7];\n            if ((int)ppppppuVar2 < 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_03 < (int)ppppppuVar2 + 0x3f >> 6) goto LAB_001c98d4;\nLAB_001c981c:\n              bVar1 = (int)ppppppuVar2 < 0x80;\n            }\n            else {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if ((int)ppppppuVar2 >> 6 <= extraout_v1_03) goto LAB_001c981c;\nLAB_001c98d4:\n              (*pcVar23)(7);\n              bVar1 = extraout_v1_05 < 2;\n            }\n            iVar15 = 1;\n            if ((bool)(bVar1 ^ 1)) {\n              (**(code **)(pcStack_208 + -0x7774))(7);\n              ppppppuVar2 = pppppppuVar12[7];\n              if ((int)ppppppuVar2 < 0) {\n                ppppppuVar2 = (undefined4 ******)((int)ppppppuVar2 + 0x3f);\n              }\n              iVar15 = (int)ppppppuVar2 >> 6;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_06 < iVar15) {\nLAB_001c98ac:\n                (*pcVar23)(7);\n                iVar15 = extraout_v1_04;\n              }\n              goto LAB_001c96d8;\n            }\n            iVar14 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          else {\n            uVar36 = (**(code **)(pcStack_208 + -0x7774))(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              uVar36 = (*pcVar23)(7);\n              if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c96c0;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              iVar15 = 1;\n            }\n            else {\nLAB_001c96c0:\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\nLAB_001c96c4:\n              uVar36 = (*pcVar23)(7);\n              if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n                 (pcVar23 = *(code **)(pcStack_208 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c98ac;\n              iVar15 = 2;\n            }\nLAB_001c96d8:\n            iVar14 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          puStack_1dc = &uStack_1f8;\n          pppppppuStack_1d8 = (undefined4 *******)0x1;\n          pppppppuStack_1f0 = pppppppuVar13;\n          pppppppuStack_1ec = pppppppuVar9;\n          pppppppuStack_1e8 = unaff_s5;\n          piStack_1e4 = piVar18;\n          pppppppuStack_1e0 = pppppppuVar12;\n          (**(code **)(pcStack_208 + -0x7718))(iVar14 + 0x56bc,&pppppppuStack_1f0,iVar15,0);\n          pppppppuVar9 = pppppppuStack_1d8;\n          (**(code **)(pcStack_208 + -0x79bc))(unaff_s5);\n          (**(code **)(pcStack_208 + -0x79bc))(piVar18);\n          pppppppuVar12[0xa8] = pppppppuVar13[0xa8];\n          if (unaff_s2 != (undefined4 ******)0x0) {\n            unaff_s6 = (undefined4 *******)\n                       ((int)unaff_s2 + (-(int)unaff_s6 - (int)pppppppuVar12[7]));\n          }\n          pppppppuVar12[0x8a] = unaff_s8;\n          pppppppuVar12[0x8b] = unaff_s2;\n          pppppppuVar12[0x8c] = ppppppuStack_1fc;\n          pppppppuVar12[0x8d] = unaff_s6;\n          if (pppppppuVar9 == (undefined4 *******)0x0) {\n            pppppppuVar12 = (undefined4 *******)(**(code **)(pcStack_208 + -0x7964))(pppppppuVar12);\n          }\n        }" (if "if") (parenthesized_expression "(pppppppuVar12 != (undefined4 *******)0x0)" (( "(") (binary_expression "pppppppuVar12 != (undefined4 *******)0x0" (identifier "pppppppuVar12") (!= "!=") (cast_expression "(undefined4 *******)0x0" (( "(") (type_descriptor "undefined4 *******" (type_identifier "undefined4") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n          ppppppuStack_1fc = pppppppuVar13[0x8c];\n          unaff_s8 = (undefined4 *******)pppppppuVar13[0x8a];\n          unaff_s2 = pppppppuVar13[0x8b];\n          unaff_s6 = (undefined4 *******)pppppppuVar13[0x8d];\n          uStack_1f4 = 0;\n          uStack_1f8 = 0;\n          piVar18 = (int *)(**(code **)(pcStack_208 + -0x715c))(pppppppuVar13,pppppppuVar9);\n          unaff_s5 = (undefined4 *******)\n                     (**(code **)(pcStack_208 + -0x79dc))(pppppppuVar12,pppppppuVar9);\n          iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13);\n          if (((iVar15 == 4) ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13), iVar15 == 3)) &&\n             ((iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 4 ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 3)))) {\n            (**(code **)(pcStack_208 + -0x7774))(7);\n            ppppppuVar2 = pppppppuVar12[7];\n            if ((int)ppppppuVar2 < 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_03 < (int)ppppppuVar2 + 0x3f >> 6) goto LAB_001c98d4;\nLAB_001c981c:\n              bVar1 = (int)ppppppuVar2 < 0x80;\n            }\n            else {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if ((int)ppppppuVar2 >> 6 <= extraout_v1_03) goto LAB_001c981c;\nLAB_001c98d4:\n              (*pcVar23)(7);\n              bVar1 = extraout_v1_05 < 2;\n            }\n            iVar15 = 1;\n            if ((bool)(bVar1 ^ 1)) {\n              (**(code **)(pcStack_208 + -0x7774))(7);\n              ppppppuVar2 = pppppppuVar12[7];\n              if ((int)ppppppuVar2 < 0) {\n                ppppppuVar2 = (undefined4 ******)((int)ppppppuVar2 + 0x3f);\n              }\n              iVar15 = (int)ppppppuVar2 >> 6;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_06 < iVar15) {\nLAB_001c98ac:\n                (*pcVar23)(7);\n                iVar15 = extraout_v1_04;\n              }\n              goto LAB_001c96d8;\n            }\n            iVar14 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          else {\n            uVar36 = (**(code **)(pcStack_208 + -0x7774))(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              uVar36 = (*pcVar23)(7);\n              if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c96c0;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              iVar15 = 1;\n            }\n            else {\nLAB_001c96c0:\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\nLAB_001c96c4:\n              uVar36 = (*pcVar23)(7);\n              if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n                 (pcVar23 = *(code **)(pcStack_208 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c98ac;\n              iVar15 = 2;\n            }\nLAB_001c96d8:\n            iVar14 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          puStack_1dc = &uStack_1f8;\n          pppppppuStack_1d8 = (undefined4 *******)0x1;\n          pppppppuStack_1f0 = pppppppuVar13;\n          pppppppuStack_1ec = pppppppuVar9;\n          pppppppuStack_1e8 = unaff_s5;\n          piStack_1e4 = piVar18;\n          pppppppuStack_1e0 = pppppppuVar12;\n          (**(code **)(pcStack_208 + -0x7718))(iVar14 + 0x56bc,&pppppppuStack_1f0,iVar15,0);\n          pppppppuVar9 = pppppppuStack_1d8;\n          (**(code **)(pcStack_208 + -0x79bc))(unaff_s5);\n          (**(code **)(pcStack_208 + -0x79bc))(piVar18);\n          pppppppuVar12[0xa8] = pppppppuVar13[0xa8];\n          if (unaff_s2 != (undefined4 ******)0x0) {\n            unaff_s6 = (undefined4 *******)\n                       ((int)unaff_s2 + (-(int)unaff_s6 - (int)pppppppuVar12[7]));\n          }\n          pppppppuVar12[0x8a] = unaff_s8;\n          pppppppuVar12[0x8b] = unaff_s2;\n          pppppppuVar12[0x8c] = ppppppuStack_1fc;\n          pppppppuVar12[0x8d] = unaff_s6;\n          if (pppppppuVar9 == (undefined4 *******)0x0) {\n            pppppppuVar12 = (undefined4 *******)(**(code **)(pcStack_208 + -0x7964))(pppppppuVar12);\n          }\n        }" ({ "{") (expression_statement "ppppppuStack_1fc = pppppppuVar13[0x8c];" (assignment_expression "ppppppuStack_1fc = pppppppuVar13[0x8c]" (identifier "ppppppuStack_1fc") (= "=") (subscript_expression "pppppppuVar13[0x8c]" (identifier "pppppppuVar13") ([ "[") (number_literal "0x8c") (] "]"))) (; ";")) (expression_statement "unaff_s8 = (undefined4 *******)pppppppuVar13[0x8a];" (assignment_expression "unaff_s8 = (undefined4 *******)pppppppuVar13[0x8a]" (identifier "unaff_s8") (= "=") (cast_expression "(undefined4 *******)pppppppuVar13[0x8a]" (( "(") (type_descriptor "undefined4 *******" (type_identifier "undefined4") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (subscript_expression "pppppppuVar13[0x8a]" (identifier "pppppppuVar13") ([ "[") (number_literal "0x8a") (] "]")))) (; ";")) (expression_statement "unaff_s2 = pppppppuVar13[0x8b];" (assignment_expression "unaff_s2 = pppppppuVar13[0x8b]" (identifier "unaff_s2") (= "=") (subscript_expression "pppppppuVar13[0x8b]" (identifier "pppppppuVar13") ([ "[") (number_literal "0x8b") (] "]"))) (; ";")) (expression_statement "unaff_s6 = (undefined4 *******)pppppppuVar13[0x8d];" (assignment_expression "unaff_s6 = (undefined4 *******)pppppppuVar13[0x8d]" (identifier "unaff_s6") (= "=") (cast_expression "(undefined4 *******)pppppppuVar13[0x8d]" (( "(") (type_descriptor "undefined4 *******" (type_identifier "undefined4") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (subscript_expression "pppppppuVar13[0x8d]" (identifier "pppppppuVar13") ([ "[") (number_literal "0x8d") (] "]")))) (; ";")) (expression_statement "uStack_1f4 = 0;" (assignment_expression "uStack_1f4 = 0" (identifier "uStack_1f4") (= "=") (number_literal "0")) (; ";")) (expression_statement "uStack_1f8 = 0;" (assignment_expression "uStack_1f8 = 0" (identifier "uStack_1f8") (= "=") (number_literal "0")) (; ";")) (expression_statement "piVar18 = (int *)(**(code **)(pcStack_208 + -0x715c))(pppppppuVar13,pppppppuVar9);" (assignment_expression "piVar18 = (int *)(**(code **)(pcStack_208 + -0x715c))(pppppppuVar13,pppppppuVar9)" (identifier "piVar18") (= "=") (cast_expression "(int *)(**(code **)(pcStack_208 + -0x715c))(pppppppuVar13,pppppppuVar9)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(**(code **)(pcStack_208 + -0x715c))(pppppppuVar13,pppppppuVar9)" (parenthesized_expression "(**(code **)(pcStack_208 + -0x715c))" (( "(") (pointer_expression "**(code **)(pcStack_208 + -0x715c)" (* "*") (pointer_expression "*(code **)(pcStack_208 + -0x715c)" (* "*") (cast_expression "(code **)(pcStack_208 + -0x715c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_208 + -0x715c)" (( "(") (binary_expression "pcStack_208 + -0x715c" (identifier "pcStack_208") (+ "+") (number_literal "-0x715c")) () ")"))))) () ")")) (argument_list "(pppppppuVar13,pppppppuVar9)" (( "(") (identifier "pppppppuVar13") (, ",") (identifier "pppppppuVar9") () ")"))))) (; ";")) (expression_statement "unaff_s5 = (undefined4 *******)\n                     (**(code **)(pcStack_208 + -0x79dc))(pppppppuVar12,pppppppuVar9);" (assignment_expression "unaff_s5 = (undefined4 *******)\n                     (**(code **)(pcStack_208 + -0x79dc))(pppppppuVar12,pppppppuVar9)" (identifier "unaff_s5") (= "=") (cast_expression "(undefined4 *******)\n                     (**(code **)(pcStack_208 + -0x79dc))(pppppppuVar12,pppppppuVar9)" (( "(") (type_descriptor "undefined4 *******" (type_identifier "undefined4") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (call_expression "(**(code **)(pcStack_208 + -0x79dc))(pppppppuVar12,pppppppuVar9)" (parenthesized_expression "(**(code **)(pcStack_208 + -0x79dc))" (( "(") (pointer_expression "**(code **)(pcStack_208 + -0x79dc)" (* "*") (pointer_expression "*(code **)(pcStack_208 + -0x79dc)" (* "*") (cast_expression "(code **)(pcStack_208 + -0x79dc)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_208 + -0x79dc)" (( "(") (binary_expression "pcStack_208 + -0x79dc" (identifier "pcStack_208") (+ "+") (number_literal "-0x79dc")) () ")"))))) () ")")) (argument_list "(pppppppuVar12,pppppppuVar9)" (( "(") (identifier "pppppppuVar12") (, ",") (identifier "pppppppuVar9") () ")"))))) (; ";")) (expression_statement "iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13);" (assignment_expression "iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13)" (identifier "iVar15") (= "=") (call_expression "(**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13)" (parenthesized_expression "(**(code **)(pcStack_208 + -0x73fc))" (( "(") (pointer_expression "**(code **)(pcStack_208 + -0x73fc)" (* "*") (pointer_expression "*(code **)(pcStack_208 + -0x73fc)" (* "*") (cast_expression "(code **)(pcStack_208 + -0x73fc)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_208 + -0x73fc)" (( "(") (binary_expression "pcStack_208 + -0x73fc" (identifier "pcStack_208") (+ "+") (number_literal "-0x73fc")) () ")"))))) () ")")) (argument_list "(pppppppuVar13)" (( "(") (identifier "pppppppuVar13") () ")")))) (; ";")) (if_statement "if (((iVar15 == 4) ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13), iVar15 == 3)) &&\n             ((iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 4 ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 3)))) {\n            (**(code **)(pcStack_208 + -0x7774))(7);\n            ppppppuVar2 = pppppppuVar12[7];\n            if ((int)ppppppuVar2 < 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_03 < (int)ppppppuVar2 + 0x3f >> 6) goto LAB_001c98d4;\nLAB_001c981c:\n              bVar1 = (int)ppppppuVar2 < 0x80;\n            }\n            else {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if ((int)ppppppuVar2 >> 6 <= extraout_v1_03) goto LAB_001c981c;\nLAB_001c98d4:\n              (*pcVar23)(7);\n              bVar1 = extraout_v1_05 < 2;\n            }\n            iVar15 = 1;\n            if ((bool)(bVar1 ^ 1)) {\n              (**(code **)(pcStack_208 + -0x7774))(7);\n              ppppppuVar2 = pppppppuVar12[7];\n              if ((int)ppppppuVar2 < 0) {\n                ppppppuVar2 = (undefined4 ******)((int)ppppppuVar2 + 0x3f);\n              }\n              iVar15 = (int)ppppppuVar2 >> 6;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_06 < iVar15) {\nLAB_001c98ac:\n                (*pcVar23)(7);\n                iVar15 = extraout_v1_04;\n              }\n              goto LAB_001c96d8;\n            }\n            iVar14 = *(int *)(pcStack_208 + -0x7f10);\n          }\n          else {\n            uVar36 = (**(code **)(pcStack_208 + -0x7774))(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              uVar36 = (*pcVar23)(7);\n              if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c96c0;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              iVar15 = 1;\n            }\n            else {\nLAB_001c96c0:\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\nLAB_001c96c4:\n              uVar36 = (*pcVar23)(7);\n              if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n                 (pcVar23 = *(code **)(pcStack_208 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c98ac;\n              iVar15 = 2;\n            }\nLAB_001c96d8:\n            iVar14 = *(int *)(pcStack_208 + -0x7f10);\n          }" (if "if") (parenthesized_expression "(((iVar15 == 4) ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13), iVar15 == 3)) &&\n             ((iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 4 ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 3))))" (( "(") (binary_expression "((iVar15 == 4) ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13), iVar15 == 3)) &&\n             ((iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 4 ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 3)))" (parenthesized_expression "((iVar15 == 4) ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13), iVar15 == 3))" (( "(") (binary_expression "(iVar15 == 4) ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13), iVar15 == 3)" (parenthesized_expression "(iVar15 == 4)" (( "(") (binary_expression "iVar15 == 4" (identifier "iVar15") (== "==") (number_literal "4")) () ")")) (|| "||") (parenthesized_expression "(iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13), iVar15 == 3)" (( "(") (comma_expression "iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13), iVar15 == 3" (assignment_expression "iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13)" (identifier "iVar15") (= "=") (call_expression "(**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13)" (parenthesized_expression "(**(code **)(pcStack_208 + -0x73fc))" (( "(") (pointer_expression "**(code **)(pcStack_208 + -0x73fc)" (* "*") (pointer_expression "*(code **)(pcStack_208 + -0x73fc)" (* "*") (cast_expression "(code **)(pcStack_208 + -0x73fc)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_208 + -0x73fc)" (( "(") (binary_expression "pcStack_208 + -0x73fc" (identifier "pcStack_208") (+ "+") (number_literal "-0x73fc")) () ")"))))) () ")")) (argument_list "(pppppppuVar13)" (( "(") (identifier "pppppppuVar13") () ")")))) (, ",") (binary_expression "iVar15 == 3" (identifier "iVar15") (== "==") (number_literal "3"))) () ")"))) () ")")) (&& "&&") (parenthesized_expression "((iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 4 ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 3)))" (( "(") (parenthesized_expression "(iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 4 ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 3))" (( "(") (comma_expression "iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 4 ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 3)" (assignment_expression "iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12)" (identifier "iVar15") (= "=") (call_expression "(**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12)" (parenthesized_expression "(**(code **)(pcStack_208 + -0x73fc))" (( "(") (pointer_expression "**(code **)(pcStack_208 + -0x73fc)" (* "*") (pointer_expression "*(code **)(pcStack_208 + -0x73fc)" (* "*") (cast_expression "(code **)(pcStack_208 + -0x73fc)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_208 + -0x73fc)" (( "(") (binary_expression "pcStack_208 + -0x73fc" (identifier "pcStack_208") (+ "+") (number_literal "-0x73fc")) () ")"))))) () ")")) (argument_list "(pppppppuVar12)" (( "(") (identifier "pppppppuVar12") () ")")))) (, ",") (binary_expression "iVar15 == 4 ||\n              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 3)" (binary_expression "iVar15 == 4" (identifier "iVar15") (== "==") (number_literal "4")) (|| "||") (parenthesized_expression "(iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 3)" (( "(") (comma_expression "iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 3" (assignment_expression "iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12)" (identifier "iVar15") (= "=") (call_expression "(**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12)" (parenthesized_expression "(**(code **)(pcStack_208 + -0x73fc))" (( "(") (pointer_expression "**(code **)(pcStack_208 + -0x73fc)" (* "*") (pointer_expression "*(code **)(pcStack_208 + -0x73fc)" (* "*") (cast_expression "(code **)(pcStack_208 + -0x73fc)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_208 + -0x73fc)" (( "(") (binary_expression "pcStack_208 + -0x73fc" (identifier "pcStack_208") (+ "+") (number_literal "-0x73fc")) () ")"))))) () ")")) (argument_list "(pppppppuVar12)" (( "(") (identifier "pppppppuVar12") () ")")))) (, ",") (binary_expression "iVar15 == 3" (identifier "iVar15") (== "==") (number_literal "3"))) () ")")))) () ")")) () ")"))) () ")")) (compound_statement "{\n            (**(code **)(pcStack_208 + -0x7774))(7);\n            ppppppuVar2 = pppppppuVar12[7];\n            if ((int)ppppppuVar2 < 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_03 < (int)ppppppuVar2 + 0x3f >> 6) goto LAB_001c98d4;\nLAB_001c981c:\n              bVar1 = (int)ppppppuVar2 < 0x80;\n            }\n            else {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if ((int)ppppppuVar2 >> 6 <= extraout_v1_03) goto LAB_001c981c;\nLAB_001c98d4:\n              (*pcVar23)(7);\n              bVar1 = extraout_v1_05 < 2;\n            }\n            iVar15 = 1;\n            if ((bool)(bVar1 ^ 1)) {\n              (**(code **)(pcStack_208 + -0x7774))(7);\n              ppppppuVar2 = pppppppuVar12[7];\n              if ((int)ppppppuVar2 < 0) {\n                ppppppuVar2 = (undefined4 ******)((int)ppppppuVar2 + 0x3f);\n              }\n              iVar15 = (int)ppppppuVar2 >> 6;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_06 < iVar15) {\nLAB_001c98ac:\n                (*pcVar23)(7);\n                iVar15 = extraout_v1_04;\n              }\n              goto LAB_001c96d8;\n            }\n            iVar14 = *(int *)(pcStack_208 + -0x7f10);\n          }" ({ "{") (expression_statement "(**(code **)(pcStack_208 + -0x7774))(7);" (call_expression "(**(code **)(pcStack_208 + -0x7774))(7)" (parenthesized_expression "(**(code **)(pcStack_208 + -0x7774))" (( "(") (pointer_expression "**(code **)(pcStack_208 + -0x7774)" (* "*") (pointer_expression "*(code **)(pcStack_208 + -0x7774)" (* "*") (cast_expression "(code **)(pcStack_208 + -0x7774)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_208 + -0x7774)" (( "(") (binary_expression "pcStack_208 + -0x7774" (identifier "pcStack_208") (+ "+") (number_literal "-0x7774")) () ")"))))) () ")")) (argument_list "(7)" (( "(") (number_literal "7") () ")"))) (; ";")) (expression_statement "ppppppuVar2 = pppppppuVar12[7];" (assignment_expression "ppppppuVar2 = pppppppuVar12[7]" (identifier "ppppppuVar2") (= "=") (subscript_expression "pppppppuVar12[7]" (identifier "pppppppuVar12") ([ "[") (number_literal "7") (] "]"))) (; ";")) (if_statement "if ((int)ppppppuVar2 < 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_03 < (int)ppppppuVar2 + 0x3f >> 6) goto LAB_001c98d4;\nLAB_001c981c:\n              bVar1 = (int)ppppppuVar2 < 0x80;\n            }\n            else {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if ((int)ppppppuVar2 >> 6 <= extraout_v1_03) goto LAB_001c981c;\nLAB_001c98d4:\n              (*pcVar23)(7);\n              bVar1 = extraout_v1_05 < 2;\n            }" (if "if") (parenthesized_expression "((int)ppppppuVar2 < 0)" (( "(") (binary_expression "(int)ppppppuVar2 < 0" (cast_expression "(int)ppppppuVar2" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "ppppppuVar2")) (< "<") (number_literal "0")) () ")")) (compound_statement "{\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_03 < (int)ppppppuVar2 + 0x3f >> 6) goto LAB_001c98d4;\nLAB_001c981c:\n              bVar1 = (int)ppppppuVar2 < 0x80;\n            }" ({ "{") (expression_statement "pcVar23 = *(code **)(pcStack_208 + -0x7774);" (assignment_expression "pcVar23 = *(code **)(pcStack_208 + -0x7774)" (identifier "pcVar23") (= "=") (pointer_expression "*(code **)(pcStack_208 + -0x7774)" (* "*") (cast_expression "(code **)(pcStack_208 + -0x7774)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_208 + -0x7774)" (( "(") (binary_expression "pcStack_208 + -0x7774" (identifier "pcStack_208") (+ "+") (number_literal "-0x7774")) () ")"))))) (; ";")) (if_statement "if (extraout_v1_03 < (int)ppppppuVar2 + 0x3f >> 6) goto LAB_001c98d4;" (if "if") (parenthesized_expression "(extraout_v1_03 < (int)ppppppuVar2 + 0x3f >> 6)" (( "(") (binary_expression "extraout_v1_03 < (int)ppppppuVar2 + 0x3f >> 6" (identifier "extraout_v1_03") (< "<") (binary_expression "(int)ppppppuVar2 + 0x3f >> 6" (binary_expression "(int)ppppppuVar2 + 0x3f" (cast_expression "(int)ppppppuVar2" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "ppppppuVar2")) (+ "+") (number_literal "0x3f")) (>> ">>") (number_literal "6"))) () ")")) (goto_statement "goto LAB_001c98d4;" (goto "goto") (statement_identifier "LAB_001c98d4") (; ";"))) (labeled_statement "LAB_001c981c:\n              bVar1 = (int)ppppppuVar2 < 0x80;" (statement_identifier "LAB_001c981c") (: ":") (expression_statement "bVar1 = (int)ppppppuVar2 < 0x80;" (assignment_expression "bVar1 = (int)ppppppuVar2 < 0x80" (identifier "bVar1") (= "=") (binary_expression "(int)ppppppuVar2 < 0x80" (cast_expression "(int)ppppppuVar2" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "ppppppuVar2")) (< "<") (number_literal "0x80"))) (; ";"))) (} "}")) (else_clause "else {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if ((int)ppppppuVar2 >> 6 <= extraout_v1_03) goto LAB_001c981c;\nLAB_001c98d4:\n              (*pcVar23)(7);\n              bVar1 = extraout_v1_05 < 2;\n            }" (else "else") (compound_statement "{\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if ((int)ppppppuVar2 >> 6 <= extraout_v1_03) goto LAB_001c981c;\nLAB_001c98d4:\n              (*pcVar23)(7);\n              bVar1 = extraout_v1_05 < 2;\n            }" ({ "{") (expression_statement "pcVar23 = *(code **)(pcStack_208 + -0x7774);" (assignment_expression "pcVar23 = *(code **)(pcStack_208 + -0x7774)" (identifier "pcVar23") (= "=") (pointer_expression "*(code **)(pcStack_208 + -0x7774)" (* "*") (cast_expression "(code **)(pcStack_208 + -0x7774)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_208 + -0x7774)" (( "(") (binary_expression "pcStack_208 + -0x7774" (identifier "pcStack_208") (+ "+") (number_literal "-0x7774")) () ")"))))) (; ";")) (if_statement "if ((int)ppppppuVar2 >> 6 <= extraout_v1_03) goto LAB_001c981c;" (if "if") (parenthesized_expression "((int)ppppppuVar2 >> 6 <= extraout_v1_03)" (( "(") (binary_expression "(int)ppppppuVar2 >> 6 <= extraout_v1_03" (binary_expression "(int)ppppppuVar2 >> 6" (cast_expression "(int)ppppppuVar2" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "ppppppuVar2")) (>> ">>") (number_literal "6")) (<= "<=") (identifier "extraout_v1_03")) () ")")) (goto_statement "goto LAB_001c981c;" (goto "goto") (statement_identifier "LAB_001c981c") (; ";"))) (labeled_statement "LAB_001c98d4:\n              (*pcVar23)(7);" (statement_identifier "LAB_001c98d4") (: ":") (expression_statement "(*pcVar23)(7);" (call_expression "(*pcVar23)(7)" (parenthesized_expression "(*pcVar23)" (( "(") (pointer_expression "*pcVar23" (* "*") (identifier "pcVar23")) () ")")) (argument_list "(7)" (( "(") (number_literal "7") () ")"))) (; ";"))) (expression_statement "bVar1 = extraout_v1_05 < 2;" (assignment_expression "bVar1 = extraout_v1_05 < 2" (identifier "bVar1") (= "=") (binary_expression "extraout_v1_05 < 2" (identifier "extraout_v1_05") (< "<") (number_literal "2"))) (; ";")) (} "}")))) (expression_statement "iVar15 = 1;" (assignment_expression "iVar15 = 1" (identifier "iVar15") (= "=") (number_literal "1")) (; ";")) (if_statement "if ((bool)(bVar1 ^ 1)) {\n              (**(code **)(pcStack_208 + -0x7774))(7);\n              ppppppuVar2 = pppppppuVar12[7];\n              if ((int)ppppppuVar2 < 0) {\n                ppppppuVar2 = (undefined4 ******)((int)ppppppuVar2 + 0x3f);\n              }\n              iVar15 = (int)ppppppuVar2 >> 6;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_06 < iVar15) {\nLAB_001c98ac:\n                (*pcVar23)(7);\n                iVar15 = extraout_v1_04;\n              }\n              goto LAB_001c96d8;\n            }" (if "if") (parenthesized_expression "((bool)(bVar1 ^ 1))" (( "(") (cast_expression "(bool)(bVar1 ^ 1)" (( "(") (type_descriptor "bool" (primitive_type "bool")) () ")") (parenthesized_expression "(bVar1 ^ 1)" (( "(") (binary_expression "bVar1 ^ 1" (identifier "bVar1") (^ "^") (number_literal "1")) () ")"))) () ")")) (compound_statement "{\n              (**(code **)(pcStack_208 + -0x7774))(7);\n              ppppppuVar2 = pppppppuVar12[7];\n              if ((int)ppppppuVar2 < 0) {\n                ppppppuVar2 = (undefined4 ******)((int)ppppppuVar2 + 0x3f);\n              }\n              iVar15 = (int)ppppppuVar2 >> 6;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (extraout_v1_06 < iVar15) {\nLAB_001c98ac:\n                (*pcVar23)(7);\n                iVar15 = extraout_v1_04;\n              }\n              goto LAB_001c96d8;\n            }" ({ "{") (expression_statement "(**(code **)(pcStack_208 + -0x7774))(7);" (call_expression "(**(code **)(pcStack_208 + -0x7774))(7)" (parenthesized_expression "(**(code **)(pcStack_208 + -0x7774))" (( "(") (pointer_expression "**(code **)(pcStack_208 + -0x7774)" (* "*") (pointer_expression "*(code **)(pcStack_208 + -0x7774)" (* "*") (cast_expression "(code **)(pcStack_208 + -0x7774)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_208 + -0x7774)" (( "(") (binary_expression "pcStack_208 + -0x7774" (identifier "pcStack_208") (+ "+") (number_literal "-0x7774")) () ")"))))) () ")")) (argument_list "(7)" (( "(") (number_literal "7") () ")"))) (; ";")) (expression_statement "ppppppuVar2 = pppppppuVar12[7];" (assignment_expression "ppppppuVar2 = pppppppuVar12[7]" (identifier "ppppppuVar2") (= "=") (subscript_expression "pppppppuVar12[7]" (identifier "pppppppuVar12") ([ "[") (number_literal "7") (] "]"))) (; ";")) (if_statement "if ((int)ppppppuVar2 < 0) {\n                ppppppuVar2 = (undefined4 ******)((int)ppppppuVar2 + 0x3f);\n              }" (if "if") (parenthesized_expression "((int)ppppppuVar2 < 0)" (( "(") (binary_expression "(int)ppppppuVar2 < 0" (cast_expression "(int)ppppppuVar2" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "ppppppuVar2")) (< "<") (number_literal "0")) () ")")) (compound_statement "{\n                ppppppuVar2 = (undefined4 ******)((int)ppppppuVar2 + 0x3f);\n              }" ({ "{") (expression_statement "ppppppuVar2 = (undefined4 ******)((int)ppppppuVar2 + 0x3f);" (assignment_expression "ppppppuVar2 = (undefined4 ******)((int)ppppppuVar2 + 0x3f)" (identifier "ppppppuVar2") (= "=") (cast_expression "(undefined4 ******)((int)ppppppuVar2 + 0x3f)" (( "(") (type_descriptor "undefined4 ******" (type_identifier "undefined4") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (parenthesized_expression "((int)ppppppuVar2 + 0x3f)" (( "(") (binary_expression "(int)ppppppuVar2 + 0x3f" (cast_expression "(int)ppppppuVar2" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "ppppppuVar2")) (+ "+") (number_literal "0x3f")) () ")")))) (; ";")) (} "}"))) (expression_statement "iVar15 = (int)ppppppuVar2 >> 6;" (assignment_expression "iVar15 = (int)ppppppuVar2 >> 6" (identifier "iVar15") (= "=") (binary_expression "(int)ppppppuVar2 >> 6" (cast_expression "(int)ppppppuVar2" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "ppppppuVar2")) (>> ">>") (number_literal "6"))) (; ";")) (expression_statement "pcVar23 = *(code **)(pcStack_208 + -0x7774);" (assignment_expression "pcVar23 = *(code **)(pcStack_208 + -0x7774)" (identifier "pcVar23") (= "=") (pointer_expression "*(code **)(pcStack_208 + -0x7774)" (* "*") (cast_expression "(code **)(pcStack_208 + -0x7774)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_208 + -0x7774)" (( "(") (binary_expression "pcStack_208 + -0x7774" (identifier "pcStack_208") (+ "+") (number_literal "-0x7774")) () ")"))))) (; ";")) (if_statement "if (extraout_v1_06 < iVar15) {\nLAB_001c98ac:\n                (*pcVar23)(7);\n                iVar15 = extraout_v1_04;\n              }" (if "if") (parenthesized_expression "(extraout_v1_06 < iVar15)" (( "(") (binary_expression "extraout_v1_06 < iVar15" (identifier "extraout_v1_06") (< "<") (identifier "iVar15")) () ")")) (compound_statement "{\nLAB_001c98ac:\n                (*pcVar23)(7);\n                iVar15 = extraout_v1_04;\n              }" ({ "{") (labeled_statement "LAB_001c98ac:\n                (*pcVar23)(7);" (statement_identifier "LAB_001c98ac") (: ":") (expression_statement "(*pcVar23)(7);" (call_expression "(*pcVar23)(7)" (parenthesized_expression "(*pcVar23)" (( "(") (pointer_expression "*pcVar23" (* "*") (identifier "pcVar23")) () ")")) (argument_list "(7)" (( "(") (number_literal "7") () ")"))) (; ";"))) (expression_statement "iVar15 = extraout_v1_04;" (assignment_expression "iVar15 = extraout_v1_04" (identifier "iVar15") (= "=") (identifier "extraout_v1_04")) (; ";")) (} "}"))) (goto_statement "goto LAB_001c96d8;" (goto "goto") (statement_identifier "LAB_001c96d8") (; ";")) (} "}"))) (expression_statement "iVar14 = *(int *)(pcStack_208 + -0x7f10);" (assignment_expression "iVar14 = *(int *)(pcStack_208 + -0x7f10)" (identifier "iVar14") (= "=") (pointer_expression "*(int *)(pcStack_208 + -0x7f10)" (* "*") (cast_expression "(int *)(pcStack_208 + -0x7f10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_208 + -0x7f10)" (( "(") (binary_expression "pcStack_208 + -0x7f10" (identifier "pcStack_208") (+ "+") (number_literal "-0x7f10")) () ")"))))) (; ";")) (} "}")) (else_clause "else {\n            uVar36 = (**(code **)(pcStack_208 + -0x7774))(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              uVar36 = (*pcVar23)(7);\n              if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c96c0;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              iVar15 = 1;\n            }\n            else {\nLAB_001c96c0:\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\nLAB_001c96c4:\n              uVar36 = (*pcVar23)(7);\n              if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n                 (pcVar23 = *(code **)(pcStack_208 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c98ac;\n              iVar15 = 2;\n            }\nLAB_001c96d8:\n            iVar14 = *(int *)(pcStack_208 + -0x7f10);\n          }" (else "else") (compound_statement "{\n            uVar36 = (**(code **)(pcStack_208 + -0x7774))(7);\n            if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              uVar36 = (*pcVar23)(7);\n              if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c96c0;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              iVar15 = 1;\n            }\n            else {\nLAB_001c96c0:\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\nLAB_001c96c4:\n              uVar36 = (*pcVar23)(7);\n              if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n                 (pcVar23 = *(code **)(pcStack_208 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c98ac;\n              iVar15 = 2;\n            }\nLAB_001c96d8:\n            iVar14 = *(int *)(pcStack_208 + -0x7f10);\n          }" ({ "{") (expression_statement "uVar36 = (**(code **)(pcStack_208 + -0x7774))(7);" (assignment_expression "uVar36 = (**(code **)(pcStack_208 + -0x7774))(7)" (identifier "uVar36") (= "=") (call_expression "(**(code **)(pcStack_208 + -0x7774))(7)" (parenthesized_expression "(**(code **)(pcStack_208 + -0x7774))" (( "(") (pointer_expression "**(code **)(pcStack_208 + -0x7774)" (* "*") (pointer_expression "*(code **)(pcStack_208 + -0x7774)" (* "*") (cast_expression "(code **)(pcStack_208 + -0x7774)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_208 + -0x7774)" (( "(") (binary_expression "pcStack_208 + -0x7774" (identifier "pcStack_208") (+ "+") (number_literal "-0x7774")) () ")"))))) () ")")) (argument_list "(7)" (( "(") (number_literal "7") () ")")))) (; ";")) (if_statement "if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              uVar36 = (*pcVar23)(7);\n              if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c96c0;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              iVar15 = 1;\n            }\n            else {\nLAB_001c96c0:\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\nLAB_001c96c4:\n              uVar36 = (*pcVar23)(7);\n              if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n                 (pcVar23 = *(code **)(pcStack_208 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c98ac;\n              iVar15 = 2;\n            }" (if "if") (parenthesized_expression "((int)((ulonglong)uVar36 >> 0x20) == 0)" (( "(") (binary_expression "(int)((ulonglong)uVar36 >> 0x20) == 0" (cast_expression "(int)((ulonglong)uVar36 >> 0x20)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "((ulonglong)uVar36 >> 0x20)" (( "(") (binary_expression "(ulonglong)uVar36 >> 0x20" (cast_expression "(ulonglong)uVar36" (( "(") (type_descriptor "ulonglong" (type_identifier "ulonglong")) () ")") (identifier "uVar36")) (>> ">>") (number_literal "0x20")) () ")"))) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              uVar36 = (*pcVar23)(7);\n              if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c96c0;\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\n              if (1 < (uint)uVar36) goto LAB_001c96c4;\n              iVar15 = 1;\n            }" ({ "{") (expression_statement "pcVar23 = *(code **)(pcStack_208 + -0x7774);" (assignment_expression "pcVar23 = *(code **)(pcStack_208 + -0x7774)" (identifier "pcVar23") (= "=") (pointer_expression "*(code **)(pcStack_208 + -0x7774)" (* "*") (cast_expression "(code **)(pcStack_208 + -0x7774)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_208 + -0x7774)" (( "(") (binary_expression "pcStack_208 + -0x7774" (identifier "pcStack_208") (+ "+") (number_literal "-0x7774")) () ")"))))) (; ";")) (if_statement "if (1 < (uint)uVar36) goto LAB_001c96c4;" (if "if") (parenthesized_expression "(1 < (uint)uVar36)" (( "(") (binary_expression "1 < (uint)uVar36" (number_literal "1") (< "<") (cast_expression "(uint)uVar36" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "uVar36"))) () ")")) (goto_statement "goto LAB_001c96c4;" (goto "goto") (statement_identifier "LAB_001c96c4") (; ";"))) (expression_statement "uVar36 = (*pcVar23)(7);" (assignment_expression "uVar36 = (*pcVar23)(7)" (identifier "uVar36") (= "=") (call_expression "(*pcVar23)(7)" (parenthesized_expression "(*pcVar23)" (( "(") (pointer_expression "*pcVar23" (* "*") (identifier "pcVar23")) () ")")) (argument_list "(7)" (( "(") (number_literal "7") () ")")))) (; ";")) (if_statement "if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c96c0;" (if "if") (parenthesized_expression "((int)((ulonglong)uVar36 >> 0x20) != 0)" (( "(") (binary_expression "(int)((ulonglong)uVar36 >> 0x20) != 0" (cast_expression "(int)((ulonglong)uVar36 >> 0x20)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "((ulonglong)uVar36 >> 0x20)" (( "(") (binary_expression "(ulonglong)uVar36 >> 0x20" (cast_expression "(ulonglong)uVar36" (( "(") (type_descriptor "ulonglong" (type_identifier "ulonglong")) () ")") (identifier "uVar36")) (>> ">>") (number_literal "0x20")) () ")"))) (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto LAB_001c96c0;" (goto "goto") (statement_identifier "LAB_001c96c0") (; ";"))) (expression_statement "pcVar23 = *(code **)(pcStack_208 + -0x7774);" (assignment_expression "pcVar23 = *(code **)(pcStack_208 + -0x7774)" (identifier "pcVar23") (= "=") (pointer_expression "*(code **)(pcStack_208 + -0x7774)" (* "*") (cast_expression "(code **)(pcStack_208 + -0x7774)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_208 + -0x7774)" (( "(") (binary_expression "pcStack_208 + -0x7774" (identifier "pcStack_208") (+ "+") (number_literal "-0x7774")) () ")"))))) (; ";")) (if_statement "if (1 < (uint)uVar36) goto LAB_001c96c4;" (if "if") (parenthesized_expression "(1 < (uint)uVar36)" (( "(") (binary_expression "1 < (uint)uVar36" (number_literal "1") (< "<") (cast_expression "(uint)uVar36" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "uVar36"))) () ")")) (goto_statement "goto LAB_001c96c4;" (goto "goto") (statement_identifier "LAB_001c96c4") (; ";"))) (expression_statement "iVar15 = 1;" (assignment_expression "iVar15 = 1" (identifier "iVar15") (= "=") (number_literal "1")) (; ";")) (} "}")) (else_clause "else {\nLAB_001c96c0:\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\nLAB_001c96c4:\n              uVar36 = (*pcVar23)(7);\n              if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n                 (pcVar23 = *(code **)(pcStack_208 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c98ac;\n              iVar15 = 2;\n            }" (else "else") (compound_statement "{\nLAB_001c96c0:\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);\nLAB_001c96c4:\n              uVar36 = (*pcVar23)(7);\n              if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n                 (pcVar23 = *(code **)(pcStack_208 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c98ac;\n              iVar15 = 2;\n            }" ({ "{") (labeled_statement "LAB_001c96c0:\n              pcVar23 = *(code **)(pcStack_208 + -0x7774);" (statement_identifier "LAB_001c96c0") (: ":") (expression_statement "pcVar23 = *(code **)(pcStack_208 + -0x7774);" (assignment_expression "pcVar23 = *(code **)(pcStack_208 + -0x7774)" (identifier "pcVar23") (= "=") (pointer_expression "*(code **)(pcStack_208 + -0x7774)" (* "*") (cast_expression "(code **)(pcStack_208 + -0x7774)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_208 + -0x7774)" (( "(") (binary_expression "pcStack_208 + -0x7774" (identifier "pcStack_208") (+ "+") (number_literal "-0x7774")) () ")"))))) (; ";"))) (labeled_statement "LAB_001c96c4:\n              uVar36 = (*pcVar23)(7);" (statement_identifier "LAB_001c96c4") (: ":") (expression_statement "uVar36 = (*pcVar23)(7);" (assignment_expression "uVar36 = (*pcVar23)(7)" (identifier "uVar36") (= "=") (call_expression "(*pcVar23)(7)" (parenthesized_expression "(*pcVar23)" (( "(") (pointer_expression "*pcVar23" (* "*") (identifier "pcVar23")) () ")")) (argument_list "(7)" (( "(") (number_literal "7") () ")")))) (; ";"))) (if_statement "if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n                 (pcVar23 = *(code **)(pcStack_208 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c98ac;" (if "if") (parenthesized_expression "(((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n                 (pcVar23 = *(code **)(pcStack_208 + -0x7774), (uint)uVar36 < 2))" (( "(") (binary_expression "((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n                 (pcVar23 = *(code **)(pcStack_208 + -0x7774), (uint)uVar36 < 2)" (parenthesized_expression "((int)((ulonglong)uVar36 >> 0x20) == 0)" (( "(") (binary_expression "(int)((ulonglong)uVar36 >> 0x20) == 0" (cast_expression "(int)((ulonglong)uVar36 >> 0x20)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "((ulonglong)uVar36 >> 0x20)" (( "(") (binary_expression "(ulonglong)uVar36 >> 0x20" (cast_expression "(ulonglong)uVar36" (( "(") (type_descriptor "ulonglong" (type_identifier "ulonglong")) () ")") (identifier "uVar36")) (>> ">>") (number_literal "0x20")) () ")"))) (== "==") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(pcVar23 = *(code **)(pcStack_208 + -0x7774), (uint)uVar36 < 2)" (( "(") (comma_expression "pcVar23 = *(code **)(pcStack_208 + -0x7774), (uint)uVar36 < 2" (assignment_expression "pcVar23 = *(code **)(pcStack_208 + -0x7774)" (identifier "pcVar23") (= "=") (pointer_expression "*(code **)(pcStack_208 + -0x7774)" (* "*") (cast_expression "(code **)(pcStack_208 + -0x7774)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_208 + -0x7774)" (( "(") (binary_expression "pcStack_208 + -0x7774" (identifier "pcStack_208") (+ "+") (number_literal "-0x7774")) () ")"))))) (, ",") (binary_expression "(uint)uVar36 < 2" (cast_expression "(uint)uVar36" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "uVar36")) (< "<") (number_literal "2"))) () ")"))) () ")")) (goto_statement "goto LAB_001c98ac;" (goto "goto") (statement_identifier "LAB_001c98ac") (; ";"))) (expression_statement "iVar15 = 2;" (assignment_expression "iVar15 = 2" (identifier "iVar15") (= "=") (number_literal "2")) (; ";")) (} "}")))) (labeled_statement "LAB_001c96d8:\n            iVar14 = *(int *)(pcStack_208 + -0x7f10);" (statement_identifier "LAB_001c96d8") (: ":") (expression_statement "iVar14 = *(int *)(pcStack_208 + -0x7f10);" (assignment_expression "iVar14 = *(int *)(pcStack_208 + -0x7f10)" (identifier "iVar14") (= "=") (pointer_expression "*(int *)(pcStack_208 + -0x7f10)" (* "*") (cast_expression "(int *)(pcStack_208 + -0x7f10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_208 + -0x7f10)" (( "(") (binary_expression "pcStack_208 + -0x7f10" (identifier "pcStack_208") (+ "+") (number_literal "-0x7f10")) () ")"))))) (; ";"))) (} "}")))) (expression_statement "puStack_1dc = &uStack_1f8;" (assignment_expression "puStack_1dc = &uStack_1f8" (identifier "puStack_1dc") (= "=") (pointer_expression "&uStack_1f8" (& "&") (identifier "uStack_1f8"))) (; ";")) (expression_statement "pppppppuStack_1d8 = (undefined4 *******)0x1;" (assignment_expression "pppppppuStack_1d8 = (undefined4 *******)0x1" (identifier "pppppppuStack_1d8") (= "=") (cast_expression "(undefined4 *******)0x1" (( "(") (type_descriptor "undefined4 *******" (type_identifier "undefined4") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x1"))) (; ";")) (expression_statement "pppppppuStack_1f0 = pppppppuVar13;" (assignment_expression "pppppppuStack_1f0 = pppppppuVar13" (identifier "pppppppuStack_1f0") (= "=") (identifier "pppppppuVar13")) (; ";")) (expression_statement "pppppppuStack_1ec = pppppppuVar9;" (assignment_expression "pppppppuStack_1ec = pppppppuVar9" (identifier "pppppppuStack_1ec") (= "=") (identifier "pppppppuVar9")) (; ";")) (expression_statement "pppppppuStack_1e8 = unaff_s5;" (assignment_expression "pppppppuStack_1e8 = unaff_s5" (identifier "pppppppuStack_1e8") (= "=") (identifier "unaff_s5")) (; ";")) (expression_statement "piStack_1e4 = piVar18;" (assignment_expression "piStack_1e4 = piVar18" (identifier "piStack_1e4") (= "=") (identifier "piVar18")) (; ";")) (expression_statement "pppppppuStack_1e0 = pppppppuVar12;" (assignment_expression "pppppppuStack_1e0 = pppppppuVar12" (identifier "pppppppuStack_1e0") (= "=") (identifier "pppppppuVar12")) (; ";")) (expression_statement "(**(code **)(pcStack_208 + -0x7718))(iVar14 + 0x56bc,&pppppppuStack_1f0,iVar15,0);" (call_expression "(**(code **)(pcStack_208 + -0x7718))(iVar14 + 0x56bc,&pppppppuStack_1f0,iVar15,0)" (parenthesized_expression "(**(code **)(pcStack_208 + -0x7718))" (( "(") (pointer_expression "**(code **)(pcStack_208 + -0x7718)" (* "*") (pointer_expression "*(code **)(pcStack_208 + -0x7718)" (* "*") (cast_expression "(code **)(pcStack_208 + -0x7718)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_208 + -0x7718)" (( "(") (binary_expression "pcStack_208 + -0x7718" (identifier "pcStack_208") (+ "+") (number_literal "-0x7718")) () ")"))))) () ")")) (argument_list "(iVar14 + 0x56bc,&pppppppuStack_1f0,iVar15,0)" (( "(") (binary_expression "iVar14 + 0x56bc" (identifier "iVar14") (+ "+") (number_literal "0x56bc")) (, ",") (pointer_expression "&pppppppuStack_1f0" (& "&") (identifier "pppppppuStack_1f0")) (, ",") (identifier "iVar15") (, ",") (number_literal "0") () ")"))) (; ";")) (expression_statement "pppppppuVar9 = pppppppuStack_1d8;" (assignment_expression "pppppppuVar9 = pppppppuStack_1d8" (identifier "pppppppuVar9") (= "=") (identifier "pppppppuStack_1d8")) (; ";")) (expression_statement "(**(code **)(pcStack_208 + -0x79bc))(unaff_s5);" (call_expression "(**(code **)(pcStack_208 + -0x79bc))(unaff_s5)" (parenthesized_expression "(**(code **)(pcStack_208 + -0x79bc))" (( "(") (pointer_expression "**(code **)(pcStack_208 + -0x79bc)" (* "*") (pointer_expression "*(code **)(pcStack_208 + -0x79bc)" (* "*") (cast_expression "(code **)(pcStack_208 + -0x79bc)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_208 + -0x79bc)" (( "(") (binary_expression "pcStack_208 + -0x79bc" (identifier "pcStack_208") (+ "+") (number_literal "-0x79bc")) () ")"))))) () ")")) (argument_list "(unaff_s5)" (( "(") (identifier "unaff_s5") () ")"))) (; ";")) (expression_statement "(**(code **)(pcStack_208 + -0x79bc))(piVar18);" (call_expression "(**(code **)(pcStack_208 + -0x79bc))(piVar18)" (parenthesized_expression "(**(code **)(pcStack_208 + -0x79bc))" (( "(") (pointer_expression "**(code **)(pcStack_208 + -0x79bc)" (* "*") (pointer_expression "*(code **)(pcStack_208 + -0x79bc)" (* "*") (cast_expression "(code **)(pcStack_208 + -0x79bc)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_208 + -0x79bc)" (( "(") (binary_expression "pcStack_208 + -0x79bc" (identifier "pcStack_208") (+ "+") (number_literal "-0x79bc")) () ")"))))) () ")")) (argument_list "(piVar18)" (( "(") (identifier "piVar18") () ")"))) (; ";")) (expression_statement "pppppppuVar12[0xa8] = pppppppuVar13[0xa8];" (assignment_expression "pppppppuVar12[0xa8] = pppppppuVar13[0xa8]" (subscript_expression "pppppppuVar12[0xa8]" (identifier "pppppppuVar12") ([ "[") (number_literal "0xa8") (] "]")) (= "=") (subscript_expression "pppppppuVar13[0xa8]" (identifier "pppppppuVar13") ([ "[") (number_literal "0xa8") (] "]"))) (; ";")) (if_statement "if (unaff_s2 != (undefined4 ******)0x0) {\n            unaff_s6 = (undefined4 *******)\n                       ((int)unaff_s2 + (-(int)unaff_s6 - (int)pppppppuVar12[7]));\n          }" (if "if") (parenthesized_expression "(unaff_s2 != (undefined4 ******)0x0)" (( "(") (binary_expression "unaff_s2 != (undefined4 ******)0x0" (identifier "unaff_s2") (!= "!=") (cast_expression "(undefined4 ******)0x0" (( "(") (type_descriptor "undefined4 ******" (type_identifier "undefined4") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n            unaff_s6 = (undefined4 *******)\n                       ((int)unaff_s2 + (-(int)unaff_s6 - (int)pppppppuVar12[7]));\n          }" ({ "{") (expression_statement "unaff_s6 = (undefined4 *******)\n                       ((int)unaff_s2 + (-(int)unaff_s6 - (int)pppppppuVar12[7]));" (assignment_expression "unaff_s6 = (undefined4 *******)\n                       ((int)unaff_s2 + (-(int)unaff_s6 - (int)pppppppuVar12[7]))" (identifier "unaff_s6") (= "=") (cast_expression "(undefined4 *******)\n                       ((int)unaff_s2 + (-(int)unaff_s6 - (int)pppppppuVar12[7]))" (( "(") (type_descriptor "undefined4 *******" (type_identifier "undefined4") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "((int)unaff_s2 + (-(int)unaff_s6 - (int)pppppppuVar12[7]))" (( "(") (binary_expression "(int)unaff_s2 + (-(int)unaff_s6 - (int)pppppppuVar12[7])" (cast_expression "(int)unaff_s2" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "unaff_s2")) (+ "+") (parenthesized_expression "(-(int)unaff_s6 - (int)pppppppuVar12[7])" (( "(") (binary_expression "-(int)unaff_s6 - (int)pppppppuVar12[7]" (unary_expression "-(int)unaff_s6" (- "-") (cast_expression "(int)unaff_s6" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "unaff_s6"))) (- "-") (cast_expression "(int)pppppppuVar12[7]" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (subscript_expression "pppppppuVar12[7]" (identifier "pppppppuVar12") ([ "[") (number_literal "7") (] "]")))) () ")"))) () ")")))) (; ";")) (} "}"))) (expression_statement "pppppppuVar12[0x8a] = unaff_s8;" (assignment_expression "pppppppuVar12[0x8a] = unaff_s8" (subscript_expression "pppppppuVar12[0x8a]" (identifier "pppppppuVar12") ([ "[") (number_literal "0x8a") (] "]")) (= "=") (identifier "unaff_s8")) (; ";")) (expression_statement "pppppppuVar12[0x8b] = unaff_s2;" (assignment_expression "pppppppuVar12[0x8b] = unaff_s2" (subscript_expression "pppppppuVar12[0x8b]" (identifier "pppppppuVar12") ([ "[") (number_literal "0x8b") (] "]")) (= "=") (identifier "unaff_s2")) (; ";")) (expression_statement "pppppppuVar12[0x8c] = ppppppuStack_1fc;" (assignment_expression "pppppppuVar12[0x8c] = ppppppuStack_1fc" (subscript_expression "pppppppuVar12[0x8c]" (identifier "pppppppuVar12") ([ "[") (number_literal "0x8c") (] "]")) (= "=") (identifier "ppppppuStack_1fc")) (; ";")) (expression_statement "pppppppuVar12[0x8d] = unaff_s6;" (assignment_expression "pppppppuVar12[0x8d] = unaff_s6" (subscript_expression "pppppppuVar12[0x8d]" (identifier "pppppppuVar12") ([ "[") (number_literal "0x8d") (] "]")) (= "=") (identifier "unaff_s6")) (; ";")) (if_statement "if (pppppppuVar9 == (undefined4 *******)0x0) {\n            pppppppuVar12 = (undefined4 *******)(**(code **)(pcStack_208 + -0x7964))(pppppppuVar12);\n          }" (if "if") (parenthesized_expression "(pppppppuVar9 == (undefined4 *******)0x0)" (( "(") (binary_expression "pppppppuVar9 == (undefined4 *******)0x0" (identifier "pppppppuVar9") (== "==") (cast_expression "(undefined4 *******)0x0" (( "(") (type_descriptor "undefined4 *******" (type_identifier "undefined4") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n            pppppppuVar12 = (undefined4 *******)(**(code **)(pcStack_208 + -0x7964))(pppppppuVar12);\n          }" ({ "{") (expression_statement "pppppppuVar12 = (undefined4 *******)(**(code **)(pcStack_208 + -0x7964))(pppppppuVar12);" (assignment_expression "pppppppuVar12 = (undefined4 *******)(**(code **)(pcStack_208 + -0x7964))(pppppppuVar12)" (identifier "pppppppuVar12") (= "=") (cast_expression "(undefined4 *******)(**(code **)(pcStack_208 + -0x7964))(pppppppuVar12)" (( "(") (type_descriptor "undefined4 *******" (type_identifier "undefined4") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (call_expression "(**(code **)(pcStack_208 + -0x7964))(pppppppuVar12)" (parenthesized_expression "(**(code **)(pcStack_208 + -0x7964))" (( "(") (pointer_expression "**(code **)(pcStack_208 + -0x7964)" (* "*") (pointer_expression "*(code **)(pcStack_208 + -0x7964)" (* "*") (cast_expression "(code **)(pcStack_208 + -0x7964)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_208 + -0x7964)" (( "(") (binary_expression "pcStack_208 + -0x7964" (identifier "pcStack_208") (+ "+") (number_literal "-0x7964")) () ")"))))) () ")")) (argument_list "(pppppppuVar12)" (( "(") (identifier "pppppppuVar12") () ")"))))) (; ";")) (} "}"))) (} "}"))) (expression_statement "pcVar23 = pcStack_208;" (assignment_expression "pcVar23 = pcStack_208" (identifier "pcVar23") (= "=") (identifier "pcStack_208")) (; ";")) (if_statement "if (iStack_1d4 == *piVar16) {\n          return pppppppuVar12;\n        }" (if "if") (parenthesized_expression "(iStack_1d4 == *piVar16)" (( "(") (binary_expression "iStack_1d4 == *piVar16" (identifier "iStack_1d4") (== "==") (pointer_expression "*piVar16" (* "*") (identifier "piVar16"))) () ")")) (compound_statement "{\n          return pppppppuVar12;\n        }" ({ "{") (return_statement "return pppppppuVar12;" (return "return") (identifier "pppppppuVar12") (; ";")) (} "}"))) (goto_statement "goto LAB_001c9968;" (goto "goto") (statement_identifier "LAB_001c9968") (; ";")) (} "}"))) (goto_statement "goto LAB_001c9974;" (goto "goto") (statement_identifier "LAB_001c9974") (; ";")) (} "}"))) (} "}")))) (expression_statement "pcVar21 = *(code **)(pcVar23 + -0x72a8);" (assignment_expression "pcVar21 = *(code **)(pcVar23 + -0x72a8)" (identifier "pcVar21") (= "=") (pointer_expression "*(code **)(pcVar23 + -0x72a8)" (* "*") (cast_expression "(code **)(pcVar23 + -0x72a8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar23 + -0x72a8)" (( "(") (binary_expression "pcVar23 + -0x72a8" (identifier "pcVar23") (+ "+") (number_literal "-0x72a8")) () ")"))))) (; ";")) (expression_statement "iVar14 = *(int *)(pcVar23 + -0x7fc4) + -0x288c;" (assignment_expression "iVar14 = *(int *)(pcVar23 + -0x7fc4) + -0x288c" (identifier "iVar14") (= "=") (binary_expression "*(int *)(pcVar23 + -0x7fc4) + -0x288c" (pointer_expression "*(int *)(pcVar23 + -0x7fc4)" (* "*") (cast_expression "(int *)(pcVar23 + -0x7fc4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar23 + -0x7fc4)" (( "(") (binary_expression "pcVar23 + -0x7fc4" (identifier "pcVar23") (+ "+") (number_literal "-0x7fc4")) () ")")))) (+ "+") (number_literal "-0x288c"))) (; ";")) (expression_statement "pcVar24 = FlopImage;" (assignment_expression "pcVar24 = FlopImage" (identifier "pcVar24") (= "=") (identifier "FlopImage")) (; ";")) (expression_statement "iVar15 = *(int *)(pcVar23 + -0x7fc8) + -0x3784;" (assignment_expression "iVar15 = *(int *)(pcVar23 + -0x7fc8) + -0x3784" (identifier "iVar15") (= "=") (binary_expression "*(int *)(pcVar23 + -0x7fc8) + -0x3784" (pointer_expression "*(int *)(pcVar23 + -0x7fc8)" (* "*") (cast_expression "(int *)(pcVar23 + -0x7fc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar23 + -0x7fc8)" (( "(") (binary_expression "pcVar23 + -0x7fc8" (identifier "pcVar23") (+ "+") (number_literal "-0x7fc8")) () ")")))) (+ "+") (number_literal "-0x3784"))) (; ";")) (expression_statement "(*pcVar21)(iVar15,iVar14,0x4bd,*(int *)(pcVar23 + -0x7fc4) + -0x26e0);" (call_expression "(*pcVar21)(iVar15,iVar14,0x4bd,*(int *)(pcVar23 + -0x7fc4) + -0x26e0)" (parenthesized_expression "(*pcVar21)" (( "(") (pointer_expression "*pcVar21" (* "*") (identifier "pcVar21")) () ")")) (argument_list "(iVar15,iVar14,0x4bd,*(int *)(pcVar23 + -0x7fc4) + -0x26e0)" (( "(") (identifier "iVar15") (, ",") (identifier "iVar14") (, ",") (number_literal "0x4bd") (, ",") (binary_expression "*(int *)(pcVar23 + -0x7fc4) + -0x26e0" (pointer_expression "*(int *)(pcVar23 + -0x7fc4)" (* "*") (cast_expression "(int *)(pcVar23 + -0x7fc4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar23 + -0x7fc4)" (( "(") (binary_expression "pcVar23 + -0x7fc4" (identifier "pcVar23") (+ "+") (number_literal "-0x7fc4")) () ")")))) (+ "+") (number_literal "-0x26e0")) () ")"))) (; ";")) (expression_statement "piVar17 = *(int **)(pcVar21 + 0x1df874);" (assignment_expression "piVar17 = *(int **)(pcVar21 + 0x1df874)" (identifier "piVar17") (= "=") (pointer_expression "*(int **)(pcVar21 + 0x1df874)" (* "*") (cast_expression "(int **)(pcVar21 + 0x1df874)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar21 + 0x1df874)" (( "(") (binary_expression "pcVar21 + 0x1df874" (identifier "pcVar21") (+ "+") (number_literal "0x1df874")) () ")"))))) (; ";")) (expression_statement "iStack_24c = *piVar17;" (assignment_expression "iStack_24c = *piVar17" (identifier "iStack_24c") (= "=") (pointer_expression "*piVar17" (* "*") (identifier "piVar17"))) (; ";")) (expression_statement "pppppppuStack_248 = pppppppuVar12;" (assignment_expression "pppppppuStack_248 = pppppppuVar12" (identifier "pppppppuStack_248") (= "=") (identifier "pppppppuVar12")) (; ";")) (expression_statement "ppppppuStack_240 = unaff_s2;" (assignment_expression "ppppppuStack_240 = unaff_s2" (identifier "ppppppuStack_240") (= "=") (identifier "unaff_s2")) (; ";")) (expression_statement "piStack_23c = piVar16;" (assignment_expression "piStack_23c = piVar16" (identifier "piStack_23c") (= "=") (identifier "piVar16")) (; ";")) (expression_statement "piStack_238 = piVar18;" (assignment_expression "piStack_238 = piVar18" (identifier "piStack_238") (= "=") (identifier "piVar18")) (; ";")) (expression_statement "pppppppuStack_234 = unaff_s5;" (assignment_expression "pppppppuStack_234 = unaff_s5" (identifier "pppppppuStack_234") (= "=") (identifier "unaff_s5")) (; ";")) (expression_statement "pppppppuStack_230 = unaff_s6;" (assignment_expression "pppppppuStack_230 = unaff_s6" (identifier "pppppppuStack_230") (= "=") (identifier "unaff_s6")) (; ";")) (expression_statement "pppppppuStack_22c = pppppppuVar13;" (assignment_expression "pppppppuStack_22c = pppppppuVar13" (identifier "pppppppuStack_22c") (= "=") (identifier "pppppppuVar13")) (; ";")) (expression_statement "pppppppuStack_228 = unaff_s8;" (assignment_expression "pppppppuStack_228 = unaff_s8" (identifier "pppppppuStack_228") (= "=") (identifier "unaff_s8")) (; ";")) (expression_statement "pcStack_224 = pcVar24;" (assignment_expression "pcStack_224 = pcVar24" (identifier "pcStack_224") (= "=") (identifier "pcVar24")) (; ";")) (if_statement "if (iVar15 == 0) {\n    pppppppuVar9 = (undefined4 *******)\n                   (**(code **)(pcVar21 + 0x1dfc4c))\n                             (*(int *)(pcVar21 + 0x1def2c) + -0x37b0,\n                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x543,\n                              *(int *)(pcVar21 + 0x1def30) + -0x26f8);\n    return pppppppuVar9;\n  }" (if "if") (parenthesized_expression "(iVar15 == 0)" (( "(") (binary_expression "iVar15 == 0" (identifier "iVar15") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    pppppppuVar9 = (undefined4 *******)\n                   (**(code **)(pcVar21 + 0x1dfc4c))\n                             (*(int *)(pcVar21 + 0x1def2c) + -0x37b0,\n                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x543,\n                              *(int *)(pcVar21 + 0x1def30) + -0x26f8);\n    return pppppppuVar9;\n  }" ({ "{") (expression_statement "pppppppuVar9 = (undefined4 *******)\n                   (**(code **)(pcVar21 + 0x1dfc4c))\n                             (*(int *)(pcVar21 + 0x1def2c) + -0x37b0,\n                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x543,\n                              *(int *)(pcVar21 + 0x1def30) + -0x26f8);" (assignment_expression "pppppppuVar9 = (undefined4 *******)\n                   (**(code **)(pcVar21 + 0x1dfc4c))\n                             (*(int *)(pcVar21 + 0x1def2c) + -0x37b0,\n                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x543,\n                              *(int *)(pcVar21 + 0x1def30) + -0x26f8)" (identifier "pppppppuVar9") (= "=") (cast_expression "(undefined4 *******)\n                   (**(code **)(pcVar21 + 0x1dfc4c))\n                             (*(int *)(pcVar21 + 0x1def2c) + -0x37b0,\n                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x543,\n                              *(int *)(pcVar21 + 0x1def30) + -0x26f8)" (( "(") (type_descriptor "undefined4 *******" (type_identifier "undefined4") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (call_expression "(**(code **)(pcVar21 + 0x1dfc4c))\n                             (*(int *)(pcVar21 + 0x1def2c) + -0x37b0,\n                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x543,\n                              *(int *)(pcVar21 + 0x1def30) + -0x26f8)" (parenthesized_expression "(**(code **)(pcVar21 + 0x1dfc4c))" (( "(") (pointer_expression "**(code **)(pcVar21 + 0x1dfc4c)" (* "*") (pointer_expression "*(code **)(pcVar21 + 0x1dfc4c)" (* "*") (cast_expression "(code **)(pcVar21 + 0x1dfc4c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar21 + 0x1dfc4c)" (( "(") (binary_expression "pcVar21 + 0x1dfc4c" (identifier "pcVar21") (+ "+") (number_literal "0x1dfc4c")) () ")"))))) () ")")) (argument_list "(*(int *)(pcVar21 + 0x1def2c) + -0x37b0,\n                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x543,\n                              *(int *)(pcVar21 + 0x1def30) + -0x26f8)" (( "(") (binary_expression "*(int *)(pcVar21 + 0x1def2c) + -0x37b0" (pointer_expression "*(int *)(pcVar21 + 0x1def2c)" (* "*") (cast_expression "(int *)(pcVar21 + 0x1def2c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar21 + 0x1def2c)" (( "(") (binary_expression "pcVar21 + 0x1def2c" (identifier "pcVar21") (+ "+") (number_literal "0x1def2c")) () ")")))) (+ "+") (number_literal "-0x37b0")) (, ",") (binary_expression "*(int *)(pcVar21 + 0x1def30) + -0x288c" (pointer_expression "*(int *)(pcVar21 + 0x1def30)" (* "*") (cast_expression "(int *)(pcVar21 + 0x1def30)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar21 + 0x1def30)" (( "(") (binary_expression "pcVar21 + 0x1def30" (identifier "pcVar21") (+ "+") (number_literal "0x1def30")) () ")")))) (+ "+") (number_literal "-0x288c")) (, ",") (number_literal "0x543") (, ",") (binary_expression "*(int *)(pcVar21 + 0x1def30) + -0x26f8" (pointer_expression "*(int *)(pcVar21 + 0x1def30)" (* "*") (cast_expression "(int *)(pcVar21 + 0x1def30)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar21 + 0x1def30)" (( "(") (binary_expression "pcVar21 + 0x1def30" (identifier "pcVar21") (+ "+") (number_literal "0x1def30")) () ")")))) (+ "+") (number_literal "-0x26f8")) () ")"))))) (; ";")) (return_statement "return pppppppuVar9;" (return "return") (identifier "pppppppuVar9") (; ";")) (} "}"))) (if_statement "if (*(int *)(iVar15 + 0x336c) != -0x54535255) {\n    pppppppuVar9 = (undefined4 *******)\n                   (**(code **)(pcVar21 + 0x1dfc4c))\n                             (*(int *)(pcVar21 + 0x1def2c) + -0x3784,\n                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x544,\n                              *(int *)(pcVar21 + 0x1def30) + -0x26f8);\n    return pppppppuVar9;\n  }" (if "if") (parenthesized_expression "(*(int *)(iVar15 + 0x336c) != -0x54535255)" (( "(") (binary_expression "*(int *)(iVar15 + 0x336c) != -0x54535255" (pointer_expression "*(int *)(iVar15 + 0x336c)" (* "*") (cast_expression "(int *)(iVar15 + 0x336c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar15 + 0x336c)" (( "(") (binary_expression "iVar15 + 0x336c" (identifier "iVar15") (+ "+") (number_literal "0x336c")) () ")")))) (!= "!=") (number_literal "-0x54535255")) () ")")) (compound_statement "{\n    pppppppuVar9 = (undefined4 *******)\n                   (**(code **)(pcVar21 + 0x1dfc4c))\n                             (*(int *)(pcVar21 + 0x1def2c) + -0x3784,\n                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x544,\n                              *(int *)(pcVar21 + 0x1def30) + -0x26f8);\n    return pppppppuVar9;\n  }" ({ "{") (expression_statement "pppppppuVar9 = (undefined4 *******)\n                   (**(code **)(pcVar21 + 0x1dfc4c))\n                             (*(int *)(pcVar21 + 0x1def2c) + -0x3784,\n                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x544,\n                              *(int *)(pcVar21 + 0x1def30) + -0x26f8);" (assignment_expression "pppppppuVar9 = (undefined4 *******)\n                   (**(code **)(pcVar21 + 0x1dfc4c))\n                             (*(int *)(pcVar21 + 0x1def2c) + -0x3784,\n                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x544,\n                              *(int *)(pcVar21 + 0x1def30) + -0x26f8)" (identifier "pppppppuVar9") (= "=") (cast_expression "(undefined4 *******)\n                   (**(code **)(pcVar21 + 0x1dfc4c))\n                             (*(int *)(pcVar21 + 0x1def2c) + -0x3784,\n                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x544,\n                              *(int *)(pcVar21 + 0x1def30) + -0x26f8)" (( "(") (type_descriptor "undefined4 *******" (type_identifier "undefined4") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (call_expression "(**(code **)(pcVar21 + 0x1dfc4c))\n                             (*(int *)(pcVar21 + 0x1def2c) + -0x3784,\n                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x544,\n                              *(int *)(pcVar21 + 0x1def30) + -0x26f8)" (parenthesized_expression "(**(code **)(pcVar21 + 0x1dfc4c))" (( "(") (pointer_expression "**(code **)(pcVar21 + 0x1dfc4c)" (* "*") (pointer_expression "*(code **)(pcVar21 + 0x1dfc4c)" (* "*") (cast_expression "(code **)(pcVar21 + 0x1dfc4c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar21 + 0x1dfc4c)" (( "(") (binary_expression "pcVar21 + 0x1dfc4c" (identifier "pcVar21") (+ "+") (number_literal "0x1dfc4c")) () ")"))))) () ")")) (argument_list "(*(int *)(pcVar21 + 0x1def2c) + -0x3784,\n                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x544,\n                              *(int *)(pcVar21 + 0x1def30) + -0x26f8)" (( "(") (binary_expression "*(int *)(pcVar21 + 0x1def2c) + -0x3784" (pointer_expression "*(int *)(pcVar21 + 0x1def2c)" (* "*") (cast_expression "(int *)(pcVar21 + 0x1def2c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar21 + 0x1def2c)" (( "(") (binary_expression "pcVar21 + 0x1def2c" (identifier "pcVar21") (+ "+") (number_literal "0x1def2c")) () ")")))) (+ "+") (number_literal "-0x3784")) (, ",") (binary_expression "*(int *)(pcVar21 + 0x1def30) + -0x288c" (pointer_expression "*(int *)(pcVar21 + 0x1def30)" (* "*") (cast_expression "(int *)(pcVar21 + 0x1def30)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar21 + 0x1def30)" (( "(") (binary_expression "pcVar21 + 0x1def30" (identifier "pcVar21") (+ "+") (number_literal "0x1def30")) () ")")))) (+ "+") (number_literal "-0x288c")) (, ",") (number_literal "0x544") (, ",") (binary_expression "*(int *)(pcVar21 + 0x1def30) + -0x26f8" (pointer_expression "*(int *)(pcVar21 + 0x1def30)" (* "*") (cast_expression "(int *)(pcVar21 + 0x1def30)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar21 + 0x1def30)" (( "(") (binary_expression "pcVar21 + 0x1def30" (identifier "pcVar21") (+ "+") (number_literal "0x1def30")) () ")")))) (+ "+") (number_literal "-0x26f8")) () ")"))))) (; ";")) (return_statement "return pppppppuVar9;" (return "return") (identifier "pppppppuVar9") (; ";")) (} "}"))) (if_statement "if (*(int *)(iVar15 + 0x3350) != 0) {\n    (**(code **)(pcVar21 + 0x1df824))\n              (0x8000,*(int *)(pcVar21 + 0x1def30) + -0x288c,*(int *)(pcVar21 + 0x1def30) + -0x2704,\n               0x546,*(int *)(pcVar21 + 0x1def28) + -0x62ac,iVar15 + 0x340);\n  }" (if "if") (parenthesized_expression "(*(int *)(iVar15 + 0x3350) != 0)" (( "(") (binary_expression "*(int *)(iVar15 + 0x3350) != 0" (pointer_expression "*(int *)(iVar15 + 0x3350)" (* "*") (cast_expression "(int *)(iVar15 + 0x3350)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar15 + 0x3350)" (( "(") (binary_expression "iVar15 + 0x3350" (identifier "iVar15") (+ "+") (number_literal "0x3350")) () ")")))) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n    (**(code **)(pcVar21 + 0x1df824))\n              (0x8000,*(int *)(pcVar21 + 0x1def30) + -0x288c,*(int *)(pcVar21 + 0x1def30) + -0x2704,\n               0x546,*(int *)(pcVar21 + 0x1def28) + -0x62ac,iVar15 + 0x340);\n  }" ({ "{") (expression_statement "(**(code **)(pcVar21 + 0x1df824))\n              (0x8000,*(int *)(pcVar21 + 0x1def30) + -0x288c,*(int *)(pcVar21 + 0x1def30) + -0x2704,\n               0x546,*(int *)(pcVar21 + 0x1def28) + -0x62ac,iVar15 + 0x340);" (call_expression "(**(code **)(pcVar21 + 0x1df824))\n              (0x8000,*(int *)(pcVar21 + 0x1def30) + -0x288c,*(int *)(pcVar21 + 0x1def30) + -0x2704,\n               0x546,*(int *)(pcVar21 + 0x1def28) + -0x62ac,iVar15 + 0x340)" (parenthesized_expression "(**(code **)(pcVar21 + 0x1df824))" (( "(") (pointer_expression "**(code **)(pcVar21 + 0x1df824)" (* "*") (pointer_expression "*(code **)(pcVar21 + 0x1df824)" (* "*") (cast_expression "(code **)(pcVar21 + 0x1df824)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar21 + 0x1df824)" (( "(") (binary_expression "pcVar21 + 0x1df824" (identifier "pcVar21") (+ "+") (number_literal "0x1df824")) () ")"))))) () ")")) (argument_list "(0x8000,*(int *)(pcVar21 + 0x1def30) + -0x288c,*(int *)(pcVar21 + 0x1def30) + -0x2704,\n               0x546,*(int *)(pcVar21 + 0x1def28) + -0x62ac,iVar15 + 0x340)" (( "(") (number_literal "0x8000") (, ",") (binary_expression "*(int *)(pcVar21 + 0x1def30) + -0x288c" (pointer_expression "*(int *)(pcVar21 + 0x1def30)" (* "*") (cast_expression "(int *)(pcVar21 + 0x1def30)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar21 + 0x1def30)" (( "(") (binary_expression "pcVar21 + 0x1def30" (identifier "pcVar21") (+ "+") (number_literal "0x1def30")) () ")")))) (+ "+") (number_literal "-0x288c")) (, ",") (binary_expression "*(int *)(pcVar21 + 0x1def30) + -0x2704" (pointer_expression "*(int *)(pcVar21 + 0x1def30)" (* "*") (cast_expression "(int *)(pcVar21 + 0x1def30)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar21 + 0x1def30)" (( "(") (binary_expression "pcVar21 + 0x1def30" (identifier "pcVar21") (+ "+") (number_literal "0x1def30")) () ")")))) (+ "+") (number_literal "-0x2704")) (, ",") (number_literal "0x546") (, ",") (binary_expression "*(int *)(pcVar21 + 0x1def28) + -0x62ac" (pointer_expression "*(int *)(pcVar21 + 0x1def28)" (* "*") (cast_expression "(int *)(pcVar21 + 0x1def28)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar21 + 0x1def28)" (( "(") (binary_expression "pcVar21 + 0x1def28" (identifier "pcVar21") (+ "+") (number_literal "0x1def28")) () ")")))) (+ "+") (number_literal "-0x62ac")) (, ",") (binary_expression "iVar15 + 0x340" (identifier "iVar15") (+ "+") (number_literal "0x340")) () ")"))) (; ";")) (} "}"))) (if_statement "if (iVar14 == 0) {\n    pppppppuVar9 = (undefined4 *******)\n                   (**(code **)(pcVar21 + 0x1dfc4c))\n                             (*(int *)(pcVar21 + 0x1def24) + 0x1cac,\n                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x547,\n                              *(int *)(pcVar21 + 0x1def30) + -0x26f8);\n    return pppppppuVar9;\n  }" (if "if") (parenthesized_expression "(iVar14 == 0)" (( "(") (binary_expression "iVar14 == 0" (identifier "iVar14") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    pppppppuVar9 = (undefined4 *******)\n                   (**(code **)(pcVar21 + 0x1dfc4c))\n                             (*(int *)(pcVar21 + 0x1def24) + 0x1cac,\n                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x547,\n                              *(int *)(pcVar21 + 0x1def30) + -0x26f8);\n    return pppppppuVar9;\n  }" ({ "{") (expression_statement "pppppppuVar9 = (undefined4 *******)\n                   (**(code **)(pcVar21 + 0x1dfc4c))\n                             (*(int *)(pcVar21 + 0x1def24) + 0x1cac,\n                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x547,\n                              *(int *)(pcVar21 + 0x1def30) + -0x26f8);" (assignment_expression "pppppppuVar9 = (undefined4 *******)\n                   (**(code **)(pcVar21 + 0x1dfc4c))\n                             (*(int *)(pcVar21 + 0x1def24) + 0x1cac,\n                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x547,\n                              *(int *)(pcVar21 + 0x1def30) + -0x26f8)" (identifier "pppppppuVar9") (= "=") (cast_expression "(undefined4 *******)\n                   (**(code **)(pcVar21 + 0x1dfc4c))\n                             (*(int *)(pcVar21 + 0x1def24) + 0x1cac,\n                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x547,\n                              *(int *)(pcVar21 + 0x1def30) + -0x26f8)" (( "(") (type_descriptor "undefined4 *******" (type_identifier "undefined4") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (call_expression "(**(code **)(pcVar21 + 0x1dfc4c))\n                             (*(int *)(pcVar21 + 0x1def24) + 0x1cac,\n                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x547,\n                              *(int *)(pcVar21 + 0x1def30) + -0x26f8)" (parenthesized_expression "(**(code **)(pcVar21 + 0x1dfc4c))" (( "(") (pointer_expression "**(code **)(pcVar21 + 0x1dfc4c)" (* "*") (pointer_expression "*(code **)(pcVar21 + 0x1dfc4c)" (* "*") (cast_expression "(code **)(pcVar21 + 0x1dfc4c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar21 + 0x1dfc4c)" (( "(") (binary_expression "pcVar21 + 0x1dfc4c" (identifier "pcVar21") (+ "+") (number_literal "0x1dfc4c")) () ")"))))) () ")")) (argument_list "(*(int *)(pcVar21 + 0x1def24) + 0x1cac,\n                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x547,\n                              *(int *)(pcVar21 + 0x1def30) + -0x26f8)" (( "(") (binary_expression "*(int *)(pcVar21 + 0x1def24) + 0x1cac" (pointer_expression "*(int *)(pcVar21 + 0x1def24)" (* "*") (cast_expression "(int *)(pcVar21 + 0x1def24)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar21 + 0x1def24)" (( "(") (binary_expression "pcVar21 + 0x1def24" (identifier "pcVar21") (+ "+") (number_literal "0x1def24")) () ")")))) (+ "+") (number_literal "0x1cac")) (, ",") (binary_expression "*(int *)(pcVar21 + 0x1def30) + -0x288c" (pointer_expression "*(int *)(pcVar21 + 0x1def30)" (* "*") (cast_expression "(int *)(pcVar21 + 0x1def30)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar21 + 0x1def30)" (( "(") (binary_expression "pcVar21 + 0x1def30" (identifier "pcVar21") (+ "+") (number_literal "0x1def30")) () ")")))) (+ "+") (number_literal "-0x288c")) (, ",") (number_literal "0x547") (, ",") (binary_expression "*(int *)(pcVar21 + 0x1def30) + -0x26f8" (pointer_expression "*(int *)(pcVar21 + 0x1def30)" (* "*") (cast_expression "(int *)(pcVar21 + 0x1def30)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar21 + 0x1def30)" (( "(") (binary_expression "pcVar21 + 0x1def30" (identifier "pcVar21") (+ "+") (number_literal "0x1def30")) () ")")))) (+ "+") (number_literal "-0x26f8")) () ")"))))) (; ";")) (return_statement "return pppppppuVar9;" (return "return") (identifier "pppppppuVar9") (; ";")) (} "}"))) (if_statement "if (*(int *)(iVar14 + 0x1c) != -0x54535255) goto LAB_001c9db0;" (if "if") (parenthesized_expression "(*(int *)(iVar14 + 0x1c) != -0x54535255)" (( "(") (binary_expression "*(int *)(iVar14 + 0x1c) != -0x54535255" (pointer_expression "*(int *)(iVar14 + 0x1c)" (* "*") (cast_expression "(int *)(iVar14 + 0x1c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar14 + 0x1c)" (( "(") (binary_expression "iVar14 + 0x1c" (identifier "iVar14") (+ "+") (number_literal "0x1c")) () ")")))) (!= "!=") (number_literal "-0x54535255")) () ")")) (goto_statement "goto LAB_001c9db0;" (goto "goto") (statement_identifier "LAB_001c9db0") (; ";"))) (expression_statement "pppppppuVar9 = (undefined4 *******)(**(code **)(pcVar21 + 0x1dfe74))(iVar15,0,0,1,iVar14);" (assignment_expression "pppppppuVar9 = (undefined4 *******)(**(code **)(pcVar21 + 0x1dfe74))(iVar15,0,0,1,iVar14)" (identifier "pppppppuVar9") (= "=") (cast_expression "(undefined4 *******)(**(code **)(pcVar21 + 0x1dfe74))(iVar15,0,0,1,iVar14)" (( "(") (type_descriptor "undefined4 *******" (type_identifier "undefined4") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (call_expression "(**(code **)(pcVar21 + 0x1dfe74))(iVar15,0,0,1,iVar14)" (parenthesized_expression "(**(code **)(pcVar21 + 0x1dfe74))" (( "(") (pointer_expression "**(code **)(pcVar21 + 0x1dfe74)" (* "*") (pointer_expression "*(code **)(pcVar21 + 0x1dfe74)" (* "*") (cast_expression "(code **)(pcVar21 + 0x1dfe74)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar21 + 0x1dfe74)" (( "(") (binary_expression "pcVar21 + 0x1dfe74" (identifier "pcVar21") (+ "+") (number_literal "0x1dfe74")) () ")"))))) () ")")) (argument_list "(iVar15,0,0,1,iVar14)" (( "(") (identifier "iVar15") (, ",") (number_literal "0") (, ",") (number_literal "0") (, ",") (number_literal "1") (, ",") (identifier "iVar14") () ")"))))) (; ";")) (if_statement "if (pppppppuVar9 != (undefined4 *******)0x0) {\n    ppppppuVar2 = *(undefined4 *******)(iVar15 + 0x234);\n    ppppppuVar7 = *(undefined4 *******)(iVar15 + 0x228);\n    ppppppuVar22 = *(undefined4 *******)(iVar15 + 0x22c);\n    ppppppuVar19 = *(undefined4 *******)(iVar15 + 0x230);\n    uStack_26c = 0;\n    uStack_270 = 0;\n    uVar4 = (**(code **)(pcVar21 + 0x1dfd98))(iVar15,iVar14);\n    uVar5 = (**(code **)(pcVar21 + 0x1df518))(pppppppuVar9,iVar14);\n    iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(iVar15);\n    if (((iVar10 == 4) || (iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(iVar15), iVar10 == 3)) &&\n       ((iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(pppppppuVar9), iVar10 == 4 ||\n        (iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(pppppppuVar9), iVar10 == 3)))) {\n      (**(code **)(pcVar21 + 0x1df780))(7);\n      ppppppuVar6 = pppppppuVar9[7];\n      if ((int)ppppppuVar6 < 0) {\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (extraout_v1_07 < (int)ppppppuVar6 + 0x3f >> 6) goto LAB_001c9d10;\nLAB_001c9c58:\n        bVar1 = (int)ppppppuVar6 < 0x80;\n      }\n      else {\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if ((int)ppppppuVar6 >> 6 <= extraout_v1_07) goto LAB_001c9c58;\nLAB_001c9d10:\n        (*pcVar23)(7);\n        bVar1 = extraout_v1_09 < 2;\n      }\n      iVar10 = 1;\n      if ((bool)(bVar1 ^ 1)) {\n        (**(code **)(pcVar21 + 0x1df780))(7);\n        ppppppuVar6 = pppppppuVar9[7];\n        if ((int)ppppppuVar6 < 0) {\n          ppppppuVar6 = (undefined4 ******)((int)ppppppuVar6 + 0x3f);\n        }\n        iVar10 = (int)ppppppuVar6 >> 6;\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (extraout_v1_10 < iVar10) {\nLAB_001c9ce8:\n          (*pcVar23)(7);\n          iVar10 = extraout_v1_08;\n        }\n        goto LAB_001c9b14;\n      }\n      iVar11 = *(int *)(pcVar21 + 0x1defe4);\n    }\n    else {\n      uVar36 = (**(code **)(pcVar21 + 0x1df780))(7);\n      if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (1 < (uint)uVar36) goto LAB_001c9b00;\n        uVar36 = (*pcVar23)(7);\n        if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c9afc;\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (1 < (uint)uVar36) goto LAB_001c9b00;\n        iVar10 = 1;\n      }\n      else {\nLAB_001c9afc:\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\nLAB_001c9b00:\n        uVar36 = (*pcVar23)(7);\n        if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n           (pcVar23 = *(code **)(pcVar21 + 0x1df780), (uint)uVar36 < 2)) goto LAB_001c9ce8;\n        iVar10 = 2;\n      }\nLAB_001c9b14:\n      iVar11 = *(int *)(pcVar21 + 0x1defe4);\n    }\n    puStack_254 = &uStack_270;\n    iStack_250 = 1;\n    iStack_268 = iVar15;\n    iStack_264 = iVar14;\n    uStack_260 = uVar5;\n    uStack_25c = uVar4;\n    pppppppuStack_258 = pppppppuVar9;\n    (**(code **)(pcVar21 + 0x1df7dc))(iVar11 + 0x594c,&iStack_268,iVar10,0);\n    iVar14 = iStack_250;\n    (**(code **)(pcVar21 + 0x1df538))(uVar5);\n    (**(code **)(pcVar21 + 0x1df538))(uVar4);\n    pppppppuVar9[0xa8] = *(undefined4 *******)(iVar15 + 0x2a0);\n    if (ppppppuVar7 != (undefined4 ******)0x0) {\n      ppppppuVar19 = (undefined4 ******)\n                     ((int)ppppppuVar7 + (-(int)ppppppuVar19 - (int)pppppppuVar9[6]));\n    }\n    pppppppuVar9[0x8a] = ppppppuVar7;\n    pppppppuVar9[0x8b] = ppppppuVar22;\n    pppppppuVar9[0x8c] = ppppppuVar19;\n    pppppppuVar9[0x8d] = ppppppuVar2;\n    if (iVar14 == 0) {\n      pppppppuVar9 = (undefined4 *******)(**(code **)(pcVar21 + 0x1df590))(pppppppuVar9);\n    }\n  }" (if "if") (parenthesized_expression "(pppppppuVar9 != (undefined4 *******)0x0)" (( "(") (binary_expression "pppppppuVar9 != (undefined4 *******)0x0" (identifier "pppppppuVar9") (!= "!=") (cast_expression "(undefined4 *******)0x0" (( "(") (type_descriptor "undefined4 *******" (type_identifier "undefined4") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n    ppppppuVar2 = *(undefined4 *******)(iVar15 + 0x234);\n    ppppppuVar7 = *(undefined4 *******)(iVar15 + 0x228);\n    ppppppuVar22 = *(undefined4 *******)(iVar15 + 0x22c);\n    ppppppuVar19 = *(undefined4 *******)(iVar15 + 0x230);\n    uStack_26c = 0;\n    uStack_270 = 0;\n    uVar4 = (**(code **)(pcVar21 + 0x1dfd98))(iVar15,iVar14);\n    uVar5 = (**(code **)(pcVar21 + 0x1df518))(pppppppuVar9,iVar14);\n    iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(iVar15);\n    if (((iVar10 == 4) || (iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(iVar15), iVar10 == 3)) &&\n       ((iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(pppppppuVar9), iVar10 == 4 ||\n        (iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(pppppppuVar9), iVar10 == 3)))) {\n      (**(code **)(pcVar21 + 0x1df780))(7);\n      ppppppuVar6 = pppppppuVar9[7];\n      if ((int)ppppppuVar6 < 0) {\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (extraout_v1_07 < (int)ppppppuVar6 + 0x3f >> 6) goto LAB_001c9d10;\nLAB_001c9c58:\n        bVar1 = (int)ppppppuVar6 < 0x80;\n      }\n      else {\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if ((int)ppppppuVar6 >> 6 <= extraout_v1_07) goto LAB_001c9c58;\nLAB_001c9d10:\n        (*pcVar23)(7);\n        bVar1 = extraout_v1_09 < 2;\n      }\n      iVar10 = 1;\n      if ((bool)(bVar1 ^ 1)) {\n        (**(code **)(pcVar21 + 0x1df780))(7);\n        ppppppuVar6 = pppppppuVar9[7];\n        if ((int)ppppppuVar6 < 0) {\n          ppppppuVar6 = (undefined4 ******)((int)ppppppuVar6 + 0x3f);\n        }\n        iVar10 = (int)ppppppuVar6 >> 6;\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (extraout_v1_10 < iVar10) {\nLAB_001c9ce8:\n          (*pcVar23)(7);\n          iVar10 = extraout_v1_08;\n        }\n        goto LAB_001c9b14;\n      }\n      iVar11 = *(int *)(pcVar21 + 0x1defe4);\n    }\n    else {\n      uVar36 = (**(code **)(pcVar21 + 0x1df780))(7);\n      if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (1 < (uint)uVar36) goto LAB_001c9b00;\n        uVar36 = (*pcVar23)(7);\n        if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c9afc;\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (1 < (uint)uVar36) goto LAB_001c9b00;\n        iVar10 = 1;\n      }\n      else {\nLAB_001c9afc:\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\nLAB_001c9b00:\n        uVar36 = (*pcVar23)(7);\n        if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n           (pcVar23 = *(code **)(pcVar21 + 0x1df780), (uint)uVar36 < 2)) goto LAB_001c9ce8;\n        iVar10 = 2;\n      }\nLAB_001c9b14:\n      iVar11 = *(int *)(pcVar21 + 0x1defe4);\n    }\n    puStack_254 = &uStack_270;\n    iStack_250 = 1;\n    iStack_268 = iVar15;\n    iStack_264 = iVar14;\n    uStack_260 = uVar5;\n    uStack_25c = uVar4;\n    pppppppuStack_258 = pppppppuVar9;\n    (**(code **)(pcVar21 + 0x1df7dc))(iVar11 + 0x594c,&iStack_268,iVar10,0);\n    iVar14 = iStack_250;\n    (**(code **)(pcVar21 + 0x1df538))(uVar5);\n    (**(code **)(pcVar21 + 0x1df538))(uVar4);\n    pppppppuVar9[0xa8] = *(undefined4 *******)(iVar15 + 0x2a0);\n    if (ppppppuVar7 != (undefined4 ******)0x0) {\n      ppppppuVar19 = (undefined4 ******)\n                     ((int)ppppppuVar7 + (-(int)ppppppuVar19 - (int)pppppppuVar9[6]));\n    }\n    pppppppuVar9[0x8a] = ppppppuVar7;\n    pppppppuVar9[0x8b] = ppppppuVar22;\n    pppppppuVar9[0x8c] = ppppppuVar19;\n    pppppppuVar9[0x8d] = ppppppuVar2;\n    if (iVar14 == 0) {\n      pppppppuVar9 = (undefined4 *******)(**(code **)(pcVar21 + 0x1df590))(pppppppuVar9);\n    }\n  }" ({ "{") (expression_statement "ppppppuVar2 = *(undefined4 *******)(iVar15 + 0x234);" (assignment_expression "ppppppuVar2 = *(undefined4 *******)(iVar15 + 0x234)" (identifier "ppppppuVar2") (= "=") (pointer_expression "*(undefined4 *******)(iVar15 + 0x234)" (* "*") (cast_expression "(undefined4 *******)(iVar15 + 0x234)" (( "(") (type_descriptor "undefined4 *******" (type_identifier "undefined4") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "(iVar15 + 0x234)" (( "(") (binary_expression "iVar15 + 0x234" (identifier "iVar15") (+ "+") (number_literal "0x234")) () ")"))))) (; ";")) (expression_statement "ppppppuVar7 = *(undefined4 *******)(iVar15 + 0x228);" (assignment_expression "ppppppuVar7 = *(undefined4 *******)(iVar15 + 0x228)" (identifier "ppppppuVar7") (= "=") (pointer_expression "*(undefined4 *******)(iVar15 + 0x228)" (* "*") (cast_expression "(undefined4 *******)(iVar15 + 0x228)" (( "(") (type_descriptor "undefined4 *******" (type_identifier "undefined4") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "(iVar15 + 0x228)" (( "(") (binary_expression "iVar15 + 0x228" (identifier "iVar15") (+ "+") (number_literal "0x228")) () ")"))))) (; ";")) (expression_statement "ppppppuVar22 = *(undefined4 *******)(iVar15 + 0x22c);" (assignment_expression "ppppppuVar22 = *(undefined4 *******)(iVar15 + 0x22c)" (identifier "ppppppuVar22") (= "=") (pointer_expression "*(undefined4 *******)(iVar15 + 0x22c)" (* "*") (cast_expression "(undefined4 *******)(iVar15 + 0x22c)" (( "(") (type_descriptor "undefined4 *******" (type_identifier "undefined4") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "(iVar15 + 0x22c)" (( "(") (binary_expression "iVar15 + 0x22c" (identifier "iVar15") (+ "+") (number_literal "0x22c")) () ")"))))) (; ";")) (expression_statement "ppppppuVar19 = *(undefined4 *******)(iVar15 + 0x230);" (assignment_expression "ppppppuVar19 = *(undefined4 *******)(iVar15 + 0x230)" (identifier "ppppppuVar19") (= "=") (pointer_expression "*(undefined4 *******)(iVar15 + 0x230)" (* "*") (cast_expression "(undefined4 *******)(iVar15 + 0x230)" (( "(") (type_descriptor "undefined4 *******" (type_identifier "undefined4") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "(iVar15 + 0x230)" (( "(") (binary_expression "iVar15 + 0x230" (identifier "iVar15") (+ "+") (number_literal "0x230")) () ")"))))) (; ";")) (expression_statement "uStack_26c = 0;" (assignment_expression "uStack_26c = 0" (identifier "uStack_26c") (= "=") (number_literal "0")) (; ";")) (expression_statement "uStack_270 = 0;" (assignment_expression "uStack_270 = 0" (identifier "uStack_270") (= "=") (number_literal "0")) (; ";")) (expression_statement "uVar4 = (**(code **)(pcVar21 + 0x1dfd98))(iVar15,iVar14);" (assignment_expression "uVar4 = (**(code **)(pcVar21 + 0x1dfd98))(iVar15,iVar14)" (identifier "uVar4") (= "=") (call_expression "(**(code **)(pcVar21 + 0x1dfd98))(iVar15,iVar14)" (parenthesized_expression "(**(code **)(pcVar21 + 0x1dfd98))" (( "(") (pointer_expression "**(code **)(pcVar21 + 0x1dfd98)" (* "*") (pointer_expression "*(code **)(pcVar21 + 0x1dfd98)" (* "*") (cast_expression "(code **)(pcVar21 + 0x1dfd98)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar21 + 0x1dfd98)" (( "(") (binary_expression "pcVar21 + 0x1dfd98" (identifier "pcVar21") (+ "+") (number_literal "0x1dfd98")) () ")"))))) () ")")) (argument_list "(iVar15,iVar14)" (( "(") (identifier "iVar15") (, ",") (identifier "iVar14") () ")")))) (; ";")) (expression_statement "uVar5 = (**(code **)(pcVar21 + 0x1df518))(pppppppuVar9,iVar14);" (assignment_expression "uVar5 = (**(code **)(pcVar21 + 0x1df518))(pppppppuVar9,iVar14)" (identifier "uVar5") (= "=") (call_expression "(**(code **)(pcVar21 + 0x1df518))(pppppppuVar9,iVar14)" (parenthesized_expression "(**(code **)(pcVar21 + 0x1df518))" (( "(") (pointer_expression "**(code **)(pcVar21 + 0x1df518)" (* "*") (pointer_expression "*(code **)(pcVar21 + 0x1df518)" (* "*") (cast_expression "(code **)(pcVar21 + 0x1df518)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar21 + 0x1df518)" (( "(") (binary_expression "pcVar21 + 0x1df518" (identifier "pcVar21") (+ "+") (number_literal "0x1df518")) () ")"))))) () ")")) (argument_list "(pppppppuVar9,iVar14)" (( "(") (identifier "pppppppuVar9") (, ",") (identifier "iVar14") () ")")))) (; ";")) (expression_statement "iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(iVar15);" (assignment_expression "iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(iVar15)" (identifier "iVar10") (= "=") (call_expression "(**(code **)(pcVar21 + 0x1dfaf8))(iVar15)" (parenthesized_expression "(**(code **)(pcVar21 + 0x1dfaf8))" (( "(") (pointer_expression "**(code **)(pcVar21 + 0x1dfaf8)" (* "*") (pointer_expression "*(code **)(pcVar21 + 0x1dfaf8)" (* "*") (cast_expression "(code **)(pcVar21 + 0x1dfaf8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar21 + 0x1dfaf8)" (( "(") (binary_expression "pcVar21 + 0x1dfaf8" (identifier "pcVar21") (+ "+") (number_literal "0x1dfaf8")) () ")"))))) () ")")) (argument_list "(iVar15)" (( "(") (identifier "iVar15") () ")")))) (; ";")) (if_statement "if (((iVar10 == 4) || (iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(iVar15), iVar10 == 3)) &&\n       ((iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(pppppppuVar9), iVar10 == 4 ||\n        (iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(pppppppuVar9), iVar10 == 3)))) {\n      (**(code **)(pcVar21 + 0x1df780))(7);\n      ppppppuVar6 = pppppppuVar9[7];\n      if ((int)ppppppuVar6 < 0) {\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (extraout_v1_07 < (int)ppppppuVar6 + 0x3f >> 6) goto LAB_001c9d10;\nLAB_001c9c58:\n        bVar1 = (int)ppppppuVar6 < 0x80;\n      }\n      else {\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if ((int)ppppppuVar6 >> 6 <= extraout_v1_07) goto LAB_001c9c58;\nLAB_001c9d10:\n        (*pcVar23)(7);\n        bVar1 = extraout_v1_09 < 2;\n      }\n      iVar10 = 1;\n      if ((bool)(bVar1 ^ 1)) {\n        (**(code **)(pcVar21 + 0x1df780))(7);\n        ppppppuVar6 = pppppppuVar9[7];\n        if ((int)ppppppuVar6 < 0) {\n          ppppppuVar6 = (undefined4 ******)((int)ppppppuVar6 + 0x3f);\n        }\n        iVar10 = (int)ppppppuVar6 >> 6;\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (extraout_v1_10 < iVar10) {\nLAB_001c9ce8:\n          (*pcVar23)(7);\n          iVar10 = extraout_v1_08;\n        }\n        goto LAB_001c9b14;\n      }\n      iVar11 = *(int *)(pcVar21 + 0x1defe4);\n    }\n    else {\n      uVar36 = (**(code **)(pcVar21 + 0x1df780))(7);\n      if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (1 < (uint)uVar36) goto LAB_001c9b00;\n        uVar36 = (*pcVar23)(7);\n        if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c9afc;\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (1 < (uint)uVar36) goto LAB_001c9b00;\n        iVar10 = 1;\n      }\n      else {\nLAB_001c9afc:\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\nLAB_001c9b00:\n        uVar36 = (*pcVar23)(7);\n        if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n           (pcVar23 = *(code **)(pcVar21 + 0x1df780), (uint)uVar36 < 2)) goto LAB_001c9ce8;\n        iVar10 = 2;\n      }\nLAB_001c9b14:\n      iVar11 = *(int *)(pcVar21 + 0x1defe4);\n    }" (if "if") (parenthesized_expression "(((iVar10 == 4) || (iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(iVar15), iVar10 == 3)) &&\n       ((iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(pppppppuVar9), iVar10 == 4 ||\n        (iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(pppppppuVar9), iVar10 == 3))))" (( "(") (binary_expression "((iVar10 == 4) || (iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(iVar15), iVar10 == 3)) &&\n       ((iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(pppppppuVar9), iVar10 == 4 ||\n        (iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(pppppppuVar9), iVar10 == 3)))" (parenthesized_expression "((iVar10 == 4) || (iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(iVar15), iVar10 == 3))" (( "(") (binary_expression "(iVar10 == 4) || (iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(iVar15), iVar10 == 3)" (parenthesized_expression "(iVar10 == 4)" (( "(") (binary_expression "iVar10 == 4" (identifier "iVar10") (== "==") (number_literal "4")) () ")")) (|| "||") (parenthesized_expression "(iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(iVar15), iVar10 == 3)" (( "(") (comma_expression "iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(iVar15), iVar10 == 3" (assignment_expression "iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(iVar15)" (identifier "iVar10") (= "=") (call_expression "(**(code **)(pcVar21 + 0x1dfaf8))(iVar15)" (parenthesized_expression "(**(code **)(pcVar21 + 0x1dfaf8))" (( "(") (pointer_expression "**(code **)(pcVar21 + 0x1dfaf8)" (* "*") (pointer_expression "*(code **)(pcVar21 + 0x1dfaf8)" (* "*") (cast_expression "(code **)(pcVar21 + 0x1dfaf8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar21 + 0x1dfaf8)" (( "(") (binary_expression "pcVar21 + 0x1dfaf8" (identifier "pcVar21") (+ "+") (number_literal "0x1dfaf8")) () ")"))))) () ")")) (argument_list "(iVar15)" (( "(") (identifier "iVar15") () ")")))) (, ",") (binary_expression "iVar10 == 3" (identifier "iVar10") (== "==") (number_literal "3"))) () ")"))) () ")")) (&& "&&") (parenthesized_expression "((iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(pppppppuVar9), iVar10 == 4 ||\n        (iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(pppppppuVar9), iVar10 == 3)))" (( "(") (parenthesized_expression "(iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(pppppppuVar9), iVar10 == 4 ||\n        (iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(pppppppuVar9), iVar10 == 3))" (( "(") (comma_expression "iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(pppppppuVar9), iVar10 == 4 ||\n        (iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(pppppppuVar9), iVar10 == 3)" (assignment_expression "iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(pppppppuVar9)" (identifier "iVar10") (= "=") (call_expression "(**(code **)(pcVar21 + 0x1dfaf8))(pppppppuVar9)" (parenthesized_expression "(**(code **)(pcVar21 + 0x1dfaf8))" (( "(") (pointer_expression "**(code **)(pcVar21 + 0x1dfaf8)" (* "*") (pointer_expression "*(code **)(pcVar21 + 0x1dfaf8)" (* "*") (cast_expression "(code **)(pcVar21 + 0x1dfaf8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar21 + 0x1dfaf8)" (( "(") (binary_expression "pcVar21 + 0x1dfaf8" (identifier "pcVar21") (+ "+") (number_literal "0x1dfaf8")) () ")"))))) () ")")) (argument_list "(pppppppuVar9)" (( "(") (identifier "pppppppuVar9") () ")")))) (, ",") (binary_expression "iVar10 == 4 ||\n        (iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(pppppppuVar9), iVar10 == 3)" (binary_expression "iVar10 == 4" (identifier "iVar10") (== "==") (number_literal "4")) (|| "||") (parenthesized_expression "(iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(pppppppuVar9), iVar10 == 3)" (( "(") (comma_expression "iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(pppppppuVar9), iVar10 == 3" (assignment_expression "iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(pppppppuVar9)" (identifier "iVar10") (= "=") (call_expression "(**(code **)(pcVar21 + 0x1dfaf8))(pppppppuVar9)" (parenthesized_expression "(**(code **)(pcVar21 + 0x1dfaf8))" (( "(") (pointer_expression "**(code **)(pcVar21 + 0x1dfaf8)" (* "*") (pointer_expression "*(code **)(pcVar21 + 0x1dfaf8)" (* "*") (cast_expression "(code **)(pcVar21 + 0x1dfaf8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar21 + 0x1dfaf8)" (( "(") (binary_expression "pcVar21 + 0x1dfaf8" (identifier "pcVar21") (+ "+") (number_literal "0x1dfaf8")) () ")"))))) () ")")) (argument_list "(pppppppuVar9)" (( "(") (identifier "pppppppuVar9") () ")")))) (, ",") (binary_expression "iVar10 == 3" (identifier "iVar10") (== "==") (number_literal "3"))) () ")")))) () ")")) () ")"))) () ")")) (compound_statement "{\n      (**(code **)(pcVar21 + 0x1df780))(7);\n      ppppppuVar6 = pppppppuVar9[7];\n      if ((int)ppppppuVar6 < 0) {\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (extraout_v1_07 < (int)ppppppuVar6 + 0x3f >> 6) goto LAB_001c9d10;\nLAB_001c9c58:\n        bVar1 = (int)ppppppuVar6 < 0x80;\n      }\n      else {\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if ((int)ppppppuVar6 >> 6 <= extraout_v1_07) goto LAB_001c9c58;\nLAB_001c9d10:\n        (*pcVar23)(7);\n        bVar1 = extraout_v1_09 < 2;\n      }\n      iVar10 = 1;\n      if ((bool)(bVar1 ^ 1)) {\n        (**(code **)(pcVar21 + 0x1df780))(7);\n        ppppppuVar6 = pppppppuVar9[7];\n        if ((int)ppppppuVar6 < 0) {\n          ppppppuVar6 = (undefined4 ******)((int)ppppppuVar6 + 0x3f);\n        }\n        iVar10 = (int)ppppppuVar6 >> 6;\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (extraout_v1_10 < iVar10) {\nLAB_001c9ce8:\n          (*pcVar23)(7);\n          iVar10 = extraout_v1_08;\n        }\n        goto LAB_001c9b14;\n      }\n      iVar11 = *(int *)(pcVar21 + 0x1defe4);\n    }" ({ "{") (expression_statement "(**(code **)(pcVar21 + 0x1df780))(7);" (call_expression "(**(code **)(pcVar21 + 0x1df780))(7)" (parenthesized_expression "(**(code **)(pcVar21 + 0x1df780))" (( "(") (pointer_expression "**(code **)(pcVar21 + 0x1df780)" (* "*") (pointer_expression "*(code **)(pcVar21 + 0x1df780)" (* "*") (cast_expression "(code **)(pcVar21 + 0x1df780)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar21 + 0x1df780)" (( "(") (binary_expression "pcVar21 + 0x1df780" (identifier "pcVar21") (+ "+") (number_literal "0x1df780")) () ")"))))) () ")")) (argument_list "(7)" (( "(") (number_literal "7") () ")"))) (; ";")) (expression_statement "ppppppuVar6 = pppppppuVar9[7];" (assignment_expression "ppppppuVar6 = pppppppuVar9[7]" (identifier "ppppppuVar6") (= "=") (subscript_expression "pppppppuVar9[7]" (identifier "pppppppuVar9") ([ "[") (number_literal "7") (] "]"))) (; ";")) (if_statement "if ((int)ppppppuVar6 < 0) {\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (extraout_v1_07 < (int)ppppppuVar6 + 0x3f >> 6) goto LAB_001c9d10;\nLAB_001c9c58:\n        bVar1 = (int)ppppppuVar6 < 0x80;\n      }\n      else {\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if ((int)ppppppuVar6 >> 6 <= extraout_v1_07) goto LAB_001c9c58;\nLAB_001c9d10:\n        (*pcVar23)(7);\n        bVar1 = extraout_v1_09 < 2;\n      }" (if "if") (parenthesized_expression "((int)ppppppuVar6 < 0)" (( "(") (binary_expression "(int)ppppppuVar6 < 0" (cast_expression "(int)ppppppuVar6" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "ppppppuVar6")) (< "<") (number_literal "0")) () ")")) (compound_statement "{\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (extraout_v1_07 < (int)ppppppuVar6 + 0x3f >> 6) goto LAB_001c9d10;\nLAB_001c9c58:\n        bVar1 = (int)ppppppuVar6 < 0x80;\n      }" ({ "{") (expression_statement "pcVar23 = *(code **)(pcVar21 + 0x1df780);" (assignment_expression "pcVar23 = *(code **)(pcVar21 + 0x1df780)" (identifier "pcVar23") (= "=") (pointer_expression "*(code **)(pcVar21 + 0x1df780)" (* "*") (cast_expression "(code **)(pcVar21 + 0x1df780)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar21 + 0x1df780)" (( "(") (binary_expression "pcVar21 + 0x1df780" (identifier "pcVar21") (+ "+") (number_literal "0x1df780")) () ")"))))) (; ";")) (if_statement "if (extraout_v1_07 < (int)ppppppuVar6 + 0x3f >> 6) goto LAB_001c9d10;" (if "if") (parenthesized_expression "(extraout_v1_07 < (int)ppppppuVar6 + 0x3f >> 6)" (( "(") (binary_expression "extraout_v1_07 < (int)ppppppuVar6 + 0x3f >> 6" (identifier "extraout_v1_07") (< "<") (binary_expression "(int)ppppppuVar6 + 0x3f >> 6" (binary_expression "(int)ppppppuVar6 + 0x3f" (cast_expression "(int)ppppppuVar6" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "ppppppuVar6")) (+ "+") (number_literal "0x3f")) (>> ">>") (number_literal "6"))) () ")")) (goto_statement "goto LAB_001c9d10;" (goto "goto") (statement_identifier "LAB_001c9d10") (; ";"))) (labeled_statement "LAB_001c9c58:\n        bVar1 = (int)ppppppuVar6 < 0x80;" (statement_identifier "LAB_001c9c58") (: ":") (expression_statement "bVar1 = (int)ppppppuVar6 < 0x80;" (assignment_expression "bVar1 = (int)ppppppuVar6 < 0x80" (identifier "bVar1") (= "=") (binary_expression "(int)ppppppuVar6 < 0x80" (cast_expression "(int)ppppppuVar6" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "ppppppuVar6")) (< "<") (number_literal "0x80"))) (; ";"))) (} "}")) (else_clause "else {\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if ((int)ppppppuVar6 >> 6 <= extraout_v1_07) goto LAB_001c9c58;\nLAB_001c9d10:\n        (*pcVar23)(7);\n        bVar1 = extraout_v1_09 < 2;\n      }" (else "else") (compound_statement "{\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if ((int)ppppppuVar6 >> 6 <= extraout_v1_07) goto LAB_001c9c58;\nLAB_001c9d10:\n        (*pcVar23)(7);\n        bVar1 = extraout_v1_09 < 2;\n      }" ({ "{") (expression_statement "pcVar23 = *(code **)(pcVar21 + 0x1df780);" (assignment_expression "pcVar23 = *(code **)(pcVar21 + 0x1df780)" (identifier "pcVar23") (= "=") (pointer_expression "*(code **)(pcVar21 + 0x1df780)" (* "*") (cast_expression "(code **)(pcVar21 + 0x1df780)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar21 + 0x1df780)" (( "(") (binary_expression "pcVar21 + 0x1df780" (identifier "pcVar21") (+ "+") (number_literal "0x1df780")) () ")"))))) (; ";")) (if_statement "if ((int)ppppppuVar6 >> 6 <= extraout_v1_07) goto LAB_001c9c58;" (if "if") (parenthesized_expression "((int)ppppppuVar6 >> 6 <= extraout_v1_07)" (( "(") (binary_expression "(int)ppppppuVar6 >> 6 <= extraout_v1_07" (binary_expression "(int)ppppppuVar6 >> 6" (cast_expression "(int)ppppppuVar6" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "ppppppuVar6")) (>> ">>") (number_literal "6")) (<= "<=") (identifier "extraout_v1_07")) () ")")) (goto_statement "goto LAB_001c9c58;" (goto "goto") (statement_identifier "LAB_001c9c58") (; ";"))) (labeled_statement "LAB_001c9d10:\n        (*pcVar23)(7);" (statement_identifier "LAB_001c9d10") (: ":") (expression_statement "(*pcVar23)(7);" (call_expression "(*pcVar23)(7)" (parenthesized_expression "(*pcVar23)" (( "(") (pointer_expression "*pcVar23" (* "*") (identifier "pcVar23")) () ")")) (argument_list "(7)" (( "(") (number_literal "7") () ")"))) (; ";"))) (expression_statement "bVar1 = extraout_v1_09 < 2;" (assignment_expression "bVar1 = extraout_v1_09 < 2" (identifier "bVar1") (= "=") (binary_expression "extraout_v1_09 < 2" (identifier "extraout_v1_09") (< "<") (number_literal "2"))) (; ";")) (} "}")))) (expression_statement "iVar10 = 1;" (assignment_expression "iVar10 = 1" (identifier "iVar10") (= "=") (number_literal "1")) (; ";")) (if_statement "if ((bool)(bVar1 ^ 1)) {\n        (**(code **)(pcVar21 + 0x1df780))(7);\n        ppppppuVar6 = pppppppuVar9[7];\n        if ((int)ppppppuVar6 < 0) {\n          ppppppuVar6 = (undefined4 ******)((int)ppppppuVar6 + 0x3f);\n        }\n        iVar10 = (int)ppppppuVar6 >> 6;\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (extraout_v1_10 < iVar10) {\nLAB_001c9ce8:\n          (*pcVar23)(7);\n          iVar10 = extraout_v1_08;\n        }\n        goto LAB_001c9b14;\n      }" (if "if") (parenthesized_expression "((bool)(bVar1 ^ 1))" (( "(") (cast_expression "(bool)(bVar1 ^ 1)" (( "(") (type_descriptor "bool" (primitive_type "bool")) () ")") (parenthesized_expression "(bVar1 ^ 1)" (( "(") (binary_expression "bVar1 ^ 1" (identifier "bVar1") (^ "^") (number_literal "1")) () ")"))) () ")")) (compound_statement "{\n        (**(code **)(pcVar21 + 0x1df780))(7);\n        ppppppuVar6 = pppppppuVar9[7];\n        if ((int)ppppppuVar6 < 0) {\n          ppppppuVar6 = (undefined4 ******)((int)ppppppuVar6 + 0x3f);\n        }\n        iVar10 = (int)ppppppuVar6 >> 6;\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (extraout_v1_10 < iVar10) {\nLAB_001c9ce8:\n          (*pcVar23)(7);\n          iVar10 = extraout_v1_08;\n        }\n        goto LAB_001c9b14;\n      }" ({ "{") (expression_statement "(**(code **)(pcVar21 + 0x1df780))(7);" (call_expression "(**(code **)(pcVar21 + 0x1df780))(7)" (parenthesized_expression "(**(code **)(pcVar21 + 0x1df780))" (( "(") (pointer_expression "**(code **)(pcVar21 + 0x1df780)" (* "*") (pointer_expression "*(code **)(pcVar21 + 0x1df780)" (* "*") (cast_expression "(code **)(pcVar21 + 0x1df780)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar21 + 0x1df780)" (( "(") (binary_expression "pcVar21 + 0x1df780" (identifier "pcVar21") (+ "+") (number_literal "0x1df780")) () ")"))))) () ")")) (argument_list "(7)" (( "(") (number_literal "7") () ")"))) (; ";")) (expression_statement "ppppppuVar6 = pppppppuVar9[7];" (assignment_expression "ppppppuVar6 = pppppppuVar9[7]" (identifier "ppppppuVar6") (= "=") (subscript_expression "pppppppuVar9[7]" (identifier "pppppppuVar9") ([ "[") (number_literal "7") (] "]"))) (; ";")) (if_statement "if ((int)ppppppuVar6 < 0) {\n          ppppppuVar6 = (undefined4 ******)((int)ppppppuVar6 + 0x3f);\n        }" (if "if") (parenthesized_expression "((int)ppppppuVar6 < 0)" (( "(") (binary_expression "(int)ppppppuVar6 < 0" (cast_expression "(int)ppppppuVar6" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "ppppppuVar6")) (< "<") (number_literal "0")) () ")")) (compound_statement "{\n          ppppppuVar6 = (undefined4 ******)((int)ppppppuVar6 + 0x3f);\n        }" ({ "{") (expression_statement "ppppppuVar6 = (undefined4 ******)((int)ppppppuVar6 + 0x3f);" (assignment_expression "ppppppuVar6 = (undefined4 ******)((int)ppppppuVar6 + 0x3f)" (identifier "ppppppuVar6") (= "=") (cast_expression "(undefined4 ******)((int)ppppppuVar6 + 0x3f)" (( "(") (type_descriptor "undefined4 ******" (type_identifier "undefined4") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (parenthesized_expression "((int)ppppppuVar6 + 0x3f)" (( "(") (binary_expression "(int)ppppppuVar6 + 0x3f" (cast_expression "(int)ppppppuVar6" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "ppppppuVar6")) (+ "+") (number_literal "0x3f")) () ")")))) (; ";")) (} "}"))) (expression_statement "iVar10 = (int)ppppppuVar6 >> 6;" (assignment_expression "iVar10 = (int)ppppppuVar6 >> 6" (identifier "iVar10") (= "=") (binary_expression "(int)ppppppuVar6 >> 6" (cast_expression "(int)ppppppuVar6" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "ppppppuVar6")) (>> ">>") (number_literal "6"))) (; ";")) (expression_statement "pcVar23 = *(code **)(pcVar21 + 0x1df780);" (assignment_expression "pcVar23 = *(code **)(pcVar21 + 0x1df780)" (identifier "pcVar23") (= "=") (pointer_expression "*(code **)(pcVar21 + 0x1df780)" (* "*") (cast_expression "(code **)(pcVar21 + 0x1df780)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar21 + 0x1df780)" (( "(") (binary_expression "pcVar21 + 0x1df780" (identifier "pcVar21") (+ "+") (number_literal "0x1df780")) () ")"))))) (; ";")) (if_statement "if (extraout_v1_10 < iVar10) {\nLAB_001c9ce8:\n          (*pcVar23)(7);\n          iVar10 = extraout_v1_08;\n        }" (if "if") (parenthesized_expression "(extraout_v1_10 < iVar10)" (( "(") (binary_expression "extraout_v1_10 < iVar10" (identifier "extraout_v1_10") (< "<") (identifier "iVar10")) () ")")) (compound_statement "{\nLAB_001c9ce8:\n          (*pcVar23)(7);\n          iVar10 = extraout_v1_08;\n        }" ({ "{") (labeled_statement "LAB_001c9ce8:\n          (*pcVar23)(7);" (statement_identifier "LAB_001c9ce8") (: ":") (expression_statement "(*pcVar23)(7);" (call_expression "(*pcVar23)(7)" (parenthesized_expression "(*pcVar23)" (( "(") (pointer_expression "*pcVar23" (* "*") (identifier "pcVar23")) () ")")) (argument_list "(7)" (( "(") (number_literal "7") () ")"))) (; ";"))) (expression_statement "iVar10 = extraout_v1_08;" (assignment_expression "iVar10 = extraout_v1_08" (identifier "iVar10") (= "=") (identifier "extraout_v1_08")) (; ";")) (} "}"))) (goto_statement "goto LAB_001c9b14;" (goto "goto") (statement_identifier "LAB_001c9b14") (; ";")) (} "}"))) (expression_statement "iVar11 = *(int *)(pcVar21 + 0x1defe4);" (assignment_expression "iVar11 = *(int *)(pcVar21 + 0x1defe4)" (identifier "iVar11") (= "=") (pointer_expression "*(int *)(pcVar21 + 0x1defe4)" (* "*") (cast_expression "(int *)(pcVar21 + 0x1defe4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar21 + 0x1defe4)" (( "(") (binary_expression "pcVar21 + 0x1defe4" (identifier "pcVar21") (+ "+") (number_literal "0x1defe4")) () ")"))))) (; ";")) (} "}")) (else_clause "else {\n      uVar36 = (**(code **)(pcVar21 + 0x1df780))(7);\n      if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (1 < (uint)uVar36) goto LAB_001c9b00;\n        uVar36 = (*pcVar23)(7);\n        if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c9afc;\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (1 < (uint)uVar36) goto LAB_001c9b00;\n        iVar10 = 1;\n      }\n      else {\nLAB_001c9afc:\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\nLAB_001c9b00:\n        uVar36 = (*pcVar23)(7);\n        if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n           (pcVar23 = *(code **)(pcVar21 + 0x1df780), (uint)uVar36 < 2)) goto LAB_001c9ce8;\n        iVar10 = 2;\n      }\nLAB_001c9b14:\n      iVar11 = *(int *)(pcVar21 + 0x1defe4);\n    }" (else "else") (compound_statement "{\n      uVar36 = (**(code **)(pcVar21 + 0x1df780))(7);\n      if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (1 < (uint)uVar36) goto LAB_001c9b00;\n        uVar36 = (*pcVar23)(7);\n        if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c9afc;\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (1 < (uint)uVar36) goto LAB_001c9b00;\n        iVar10 = 1;\n      }\n      else {\nLAB_001c9afc:\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\nLAB_001c9b00:\n        uVar36 = (*pcVar23)(7);\n        if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n           (pcVar23 = *(code **)(pcVar21 + 0x1df780), (uint)uVar36 < 2)) goto LAB_001c9ce8;\n        iVar10 = 2;\n      }\nLAB_001c9b14:\n      iVar11 = *(int *)(pcVar21 + 0x1defe4);\n    }" ({ "{") (expression_statement "uVar36 = (**(code **)(pcVar21 + 0x1df780))(7);" (assignment_expression "uVar36 = (**(code **)(pcVar21 + 0x1df780))(7)" (identifier "uVar36") (= "=") (call_expression "(**(code **)(pcVar21 + 0x1df780))(7)" (parenthesized_expression "(**(code **)(pcVar21 + 0x1df780))" (( "(") (pointer_expression "**(code **)(pcVar21 + 0x1df780)" (* "*") (pointer_expression "*(code **)(pcVar21 + 0x1df780)" (* "*") (cast_expression "(code **)(pcVar21 + 0x1df780)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar21 + 0x1df780)" (( "(") (binary_expression "pcVar21 + 0x1df780" (identifier "pcVar21") (+ "+") (number_literal "0x1df780")) () ")"))))) () ")")) (argument_list "(7)" (( "(") (number_literal "7") () ")")))) (; ";")) (if_statement "if ((int)((ulonglong)uVar36 >> 0x20) == 0) {\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (1 < (uint)uVar36) goto LAB_001c9b00;\n        uVar36 = (*pcVar23)(7);\n        if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c9afc;\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (1 < (uint)uVar36) goto LAB_001c9b00;\n        iVar10 = 1;\n      }\n      else {\nLAB_001c9afc:\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\nLAB_001c9b00:\n        uVar36 = (*pcVar23)(7);\n        if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n           (pcVar23 = *(code **)(pcVar21 + 0x1df780), (uint)uVar36 < 2)) goto LAB_001c9ce8;\n        iVar10 = 2;\n      }" (if "if") (parenthesized_expression "((int)((ulonglong)uVar36 >> 0x20) == 0)" (( "(") (binary_expression "(int)((ulonglong)uVar36 >> 0x20) == 0" (cast_expression "(int)((ulonglong)uVar36 >> 0x20)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "((ulonglong)uVar36 >> 0x20)" (( "(") (binary_expression "(ulonglong)uVar36 >> 0x20" (cast_expression "(ulonglong)uVar36" (( "(") (type_descriptor "ulonglong" (type_identifier "ulonglong")) () ")") (identifier "uVar36")) (>> ">>") (number_literal "0x20")) () ")"))) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (1 < (uint)uVar36) goto LAB_001c9b00;\n        uVar36 = (*pcVar23)(7);\n        if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c9afc;\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\n        if (1 < (uint)uVar36) goto LAB_001c9b00;\n        iVar10 = 1;\n      }" ({ "{") (expression_statement "pcVar23 = *(code **)(pcVar21 + 0x1df780);" (assignment_expression "pcVar23 = *(code **)(pcVar21 + 0x1df780)" (identifier "pcVar23") (= "=") (pointer_expression "*(code **)(pcVar21 + 0x1df780)" (* "*") (cast_expression "(code **)(pcVar21 + 0x1df780)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar21 + 0x1df780)" (( "(") (binary_expression "pcVar21 + 0x1df780" (identifier "pcVar21") (+ "+") (number_literal "0x1df780")) () ")"))))) (; ";")) (if_statement "if (1 < (uint)uVar36) goto LAB_001c9b00;" (if "if") (parenthesized_expression "(1 < (uint)uVar36)" (( "(") (binary_expression "1 < (uint)uVar36" (number_literal "1") (< "<") (cast_expression "(uint)uVar36" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "uVar36"))) () ")")) (goto_statement "goto LAB_001c9b00;" (goto "goto") (statement_identifier "LAB_001c9b00") (; ";"))) (expression_statement "uVar36 = (*pcVar23)(7);" (assignment_expression "uVar36 = (*pcVar23)(7)" (identifier "uVar36") (= "=") (call_expression "(*pcVar23)(7)" (parenthesized_expression "(*pcVar23)" (( "(") (pointer_expression "*pcVar23" (* "*") (identifier "pcVar23")) () ")")) (argument_list "(7)" (( "(") (number_literal "7") () ")")))) (; ";")) (if_statement "if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c9afc;" (if "if") (parenthesized_expression "((int)((ulonglong)uVar36 >> 0x20) != 0)" (( "(") (binary_expression "(int)((ulonglong)uVar36 >> 0x20) != 0" (cast_expression "(int)((ulonglong)uVar36 >> 0x20)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "((ulonglong)uVar36 >> 0x20)" (( "(") (binary_expression "(ulonglong)uVar36 >> 0x20" (cast_expression "(ulonglong)uVar36" (( "(") (type_descriptor "ulonglong" (type_identifier "ulonglong")) () ")") (identifier "uVar36")) (>> ">>") (number_literal "0x20")) () ")"))) (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto LAB_001c9afc;" (goto "goto") (statement_identifier "LAB_001c9afc") (; ";"))) (expression_statement "pcVar23 = *(code **)(pcVar21 + 0x1df780);" (assignment_expression "pcVar23 = *(code **)(pcVar21 + 0x1df780)" (identifier "pcVar23") (= "=") (pointer_expression "*(code **)(pcVar21 + 0x1df780)" (* "*") (cast_expression "(code **)(pcVar21 + 0x1df780)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar21 + 0x1df780)" (( "(") (binary_expression "pcVar21 + 0x1df780" (identifier "pcVar21") (+ "+") (number_literal "0x1df780")) () ")"))))) (; ";")) (if_statement "if (1 < (uint)uVar36) goto LAB_001c9b00;" (if "if") (parenthesized_expression "(1 < (uint)uVar36)" (( "(") (binary_expression "1 < (uint)uVar36" (number_literal "1") (< "<") (cast_expression "(uint)uVar36" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "uVar36"))) () ")")) (goto_statement "goto LAB_001c9b00;" (goto "goto") (statement_identifier "LAB_001c9b00") (; ";"))) (expression_statement "iVar10 = 1;" (assignment_expression "iVar10 = 1" (identifier "iVar10") (= "=") (number_literal "1")) (; ";")) (} "}")) (else_clause "else {\nLAB_001c9afc:\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\nLAB_001c9b00:\n        uVar36 = (*pcVar23)(7);\n        if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n           (pcVar23 = *(code **)(pcVar21 + 0x1df780), (uint)uVar36 < 2)) goto LAB_001c9ce8;\n        iVar10 = 2;\n      }" (else "else") (compound_statement "{\nLAB_001c9afc:\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);\nLAB_001c9b00:\n        uVar36 = (*pcVar23)(7);\n        if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n           (pcVar23 = *(code **)(pcVar21 + 0x1df780), (uint)uVar36 < 2)) goto LAB_001c9ce8;\n        iVar10 = 2;\n      }" ({ "{") (labeled_statement "LAB_001c9afc:\n        pcVar23 = *(code **)(pcVar21 + 0x1df780);" (statement_identifier "LAB_001c9afc") (: ":") (expression_statement "pcVar23 = *(code **)(pcVar21 + 0x1df780);" (assignment_expression "pcVar23 = *(code **)(pcVar21 + 0x1df780)" (identifier "pcVar23") (= "=") (pointer_expression "*(code **)(pcVar21 + 0x1df780)" (* "*") (cast_expression "(code **)(pcVar21 + 0x1df780)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar21 + 0x1df780)" (( "(") (binary_expression "pcVar21 + 0x1df780" (identifier "pcVar21") (+ "+") (number_literal "0x1df780")) () ")"))))) (; ";"))) (labeled_statement "LAB_001c9b00:\n        uVar36 = (*pcVar23)(7);" (statement_identifier "LAB_001c9b00") (: ":") (expression_statement "uVar36 = (*pcVar23)(7);" (assignment_expression "uVar36 = (*pcVar23)(7)" (identifier "uVar36") (= "=") (call_expression "(*pcVar23)(7)" (parenthesized_expression "(*pcVar23)" (( "(") (pointer_expression "*pcVar23" (* "*") (identifier "pcVar23")) () ")")) (argument_list "(7)" (( "(") (number_literal "7") () ")")))) (; ";"))) (if_statement "if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n           (pcVar23 = *(code **)(pcVar21 + 0x1df780), (uint)uVar36 < 2)) goto LAB_001c9ce8;" (if "if") (parenthesized_expression "(((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n           (pcVar23 = *(code **)(pcVar21 + 0x1df780), (uint)uVar36 < 2))" (( "(") (binary_expression "((int)((ulonglong)uVar36 >> 0x20) == 0) &&\n           (pcVar23 = *(code **)(pcVar21 + 0x1df780), (uint)uVar36 < 2)" (parenthesized_expression "((int)((ulonglong)uVar36 >> 0x20) == 0)" (( "(") (binary_expression "(int)((ulonglong)uVar36 >> 0x20) == 0" (cast_expression "(int)((ulonglong)uVar36 >> 0x20)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "((ulonglong)uVar36 >> 0x20)" (( "(") (binary_expression "(ulonglong)uVar36 >> 0x20" (cast_expression "(ulonglong)uVar36" (( "(") (type_descriptor "ulonglong" (type_identifier "ulonglong")) () ")") (identifier "uVar36")) (>> ">>") (number_literal "0x20")) () ")"))) (== "==") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(pcVar23 = *(code **)(pcVar21 + 0x1df780), (uint)uVar36 < 2)" (( "(") (comma_expression "pcVar23 = *(code **)(pcVar21 + 0x1df780), (uint)uVar36 < 2" (assignment_expression "pcVar23 = *(code **)(pcVar21 + 0x1df780)" (identifier "pcVar23") (= "=") (pointer_expression "*(code **)(pcVar21 + 0x1df780)" (* "*") (cast_expression "(code **)(pcVar21 + 0x1df780)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar21 + 0x1df780)" (( "(") (binary_expression "pcVar21 + 0x1df780" (identifier "pcVar21") (+ "+") (number_literal "0x1df780")) () ")"))))) (, ",") (binary_expression "(uint)uVar36 < 2" (cast_expression "(uint)uVar36" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "uVar36")) (< "<") (number_literal "2"))) () ")"))) () ")")) (goto_statement "goto LAB_001c9ce8;" (goto "goto") (statement_identifier "LAB_001c9ce8") (; ";"))) (expression_statement "iVar10 = 2;" (assignment_expression "iVar10 = 2" (identifier "iVar10") (= "=") (number_literal "2")) (; ";")) (} "}")))) (labeled_statement "LAB_001c9b14:\n      iVar11 = *(int *)(pcVar21 + 0x1defe4);" (statement_identifier "LAB_001c9b14") (: ":") (expression_statement "iVar11 = *(int *)(pcVar21 + 0x1defe4);" (assignment_expression "iVar11 = *(int *)(pcVar21 + 0x1defe4)" (identifier "iVar11") (= "=") (pointer_expression "*(int *)(pcVar21 + 0x1defe4)" (* "*") (cast_expression "(int *)(pcVar21 + 0x1defe4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar21 + 0x1defe4)" (( "(") (binary_expression "pcVar21 + 0x1defe4" (identifier "pcVar21") (+ "+") (number_literal "0x1defe4")) () ")"))))) (; ";"))) (} "}")))) (expression_statement "puStack_254 = &uStack_270;" (assignment_expression "puStack_254 = &uStack_270" (identifier "puStack_254") (= "=") (pointer_expression "&uStack_270" (& "&") (identifier "uStack_270"))) (; ";")) (expression_statement "iStack_250 = 1;" (assignment_expression "iStack_250 = 1" (identifier "iStack_250") (= "=") (number_literal "1")) (; ";")) (expression_statement "iStack_268 = iVar15;" (assignment_expression "iStack_268 = iVar15" (identifier "iStack_268") (= "=") (identifier "iVar15")) (; ";")) (expression_statement "iStack_264 = iVar14;" (assignment_expression "iStack_264 = iVar14" (identifier "iStack_264") (= "=") (identifier "iVar14")) (; ";")) (expression_statement "uStack_260 = uVar5;" (assignment_expression "uStack_260 = uVar5" (identifier "uStack_260") (= "=") (identifier "uVar5")) (; ";")) (expression_statement "uStack_25c = uVar4;" (assignment_expression "uStack_25c = uVar4" (identifier "uStack_25c") (= "=") (identifier "uVar4")) (; ";")) (expression_statement "pppppppuStack_258 = pppppppuVar9;" (assignment_expression "pppppppuStack_258 = pppppppuVar9" (identifier "pppppppuStack_258") (= "=") (identifier "pppppppuVar9")) (; ";")) (expression_statement "(**(code **)(pcVar21 + 0x1df7dc))(iVar11 + 0x594c,&iStack_268,iVar10,0);" (call_expression "(**(code **)(pcVar21 + 0x1df7dc))(iVar11 + 0x594c,&iStack_268,iVar10,0)" (parenthesized_expression "(**(code **)(pcVar21 + 0x1df7dc))" (( "(") (pointer_expression "**(code **)(pcVar21 + 0x1df7dc)" (* "*") (pointer_expression "*(code **)(pcVar21 + 0x1df7dc)" (* "*") (cast_expression "(code **)(pcVar21 + 0x1df7dc)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar21 + 0x1df7dc)" (( "(") (binary_expression "pcVar21 + 0x1df7dc" (identifier "pcVar21") (+ "+") (number_literal "0x1df7dc")) () ")"))))) () ")")) (argument_list "(iVar11 + 0x594c,&iStack_268,iVar10,0)" (( "(") (binary_expression "iVar11 + 0x594c" (identifier "iVar11") (+ "+") (number_literal "0x594c")) (, ",") (pointer_expression "&iStack_268" (& "&") (identifier "iStack_268")) (, ",") (identifier "iVar10") (, ",") (number_literal "0") () ")"))) (; ";")) (expression_statement "iVar14 = iStack_250;" (assignment_expression "iVar14 = iStack_250" (identifier "iVar14") (= "=") (identifier "iStack_250")) (; ";")) (expression_statement "(**(code **)(pcVar21 + 0x1df538))(uVar5);" (call_expression "(**(code **)(pcVar21 + 0x1df538))(uVar5)" (parenthesized_expression "(**(code **)(pcVar21 + 0x1df538))" (( "(") (pointer_expression "**(code **)(pcVar21 + 0x1df538)" (* "*") (pointer_expression "*(code **)(pcVar21 + 0x1df538)" (* "*") (cast_expression "(code **)(pcVar21 + 0x1df538)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar21 + 0x1df538)" (( "(") (binary_expression "pcVar21 + 0x1df538" (identifier "pcVar21") (+ "+") (number_literal "0x1df538")) () ")"))))) () ")")) (argument_list "(uVar5)" (( "(") (identifier "uVar5") () ")"))) (; ";")) (expression_statement "(**(code **)(pcVar21 + 0x1df538))(uVar4);" (call_expression "(**(code **)(pcVar21 + 0x1df538))(uVar4)" (parenthesized_expression "(**(code **)(pcVar21 + 0x1df538))" (( "(") (pointer_expression "**(code **)(pcVar21 + 0x1df538)" (* "*") (pointer_expression "*(code **)(pcVar21 + 0x1df538)" (* "*") (cast_expression "(code **)(pcVar21 + 0x1df538)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar21 + 0x1df538)" (( "(") (binary_expression "pcVar21 + 0x1df538" (identifier "pcVar21") (+ "+") (number_literal "0x1df538")) () ")"))))) () ")")) (argument_list "(uVar4)" (( "(") (identifier "uVar4") () ")"))) (; ";")) (expression_statement "pppppppuVar9[0xa8] = *(undefined4 *******)(iVar15 + 0x2a0);" (assignment_expression "pppppppuVar9[0xa8] = *(undefined4 *******)(iVar15 + 0x2a0)" (subscript_expression "pppppppuVar9[0xa8]" (identifier "pppppppuVar9") ([ "[") (number_literal "0xa8") (] "]")) (= "=") (pointer_expression "*(undefined4 *******)(iVar15 + 0x2a0)" (* "*") (cast_expression "(undefined4 *******)(iVar15 + 0x2a0)" (( "(") (type_descriptor "undefined4 *******" (type_identifier "undefined4") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "(iVar15 + 0x2a0)" (( "(") (binary_expression "iVar15 + 0x2a0" (identifier "iVar15") (+ "+") (number_literal "0x2a0")) () ")"))))) (; ";")) (if_statement "if (ppppppuVar7 != (undefined4 ******)0x0) {\n      ppppppuVar19 = (undefined4 ******)\n                     ((int)ppppppuVar7 + (-(int)ppppppuVar19 - (int)pppppppuVar9[6]));\n    }" (if "if") (parenthesized_expression "(ppppppuVar7 != (undefined4 ******)0x0)" (( "(") (binary_expression "ppppppuVar7 != (undefined4 ******)0x0" (identifier "ppppppuVar7") (!= "!=") (cast_expression "(undefined4 ******)0x0" (( "(") (type_descriptor "undefined4 ******" (type_identifier "undefined4") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n      ppppppuVar19 = (undefined4 ******)\n                     ((int)ppppppuVar7 + (-(int)ppppppuVar19 - (int)pppppppuVar9[6]));\n    }" ({ "{") (expression_statement "ppppppuVar19 = (undefined4 ******)\n                     ((int)ppppppuVar7 + (-(int)ppppppuVar19 - (int)pppppppuVar9[6]));" (assignment_expression "ppppppuVar19 = (undefined4 ******)\n                     ((int)ppppppuVar7 + (-(int)ppppppuVar19 - (int)pppppppuVar9[6]))" (identifier "ppppppuVar19") (= "=") (cast_expression "(undefined4 ******)\n                     ((int)ppppppuVar7 + (-(int)ppppppuVar19 - (int)pppppppuVar9[6]))" (( "(") (type_descriptor "undefined4 ******" (type_identifier "undefined4") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (parenthesized_expression "((int)ppppppuVar7 + (-(int)ppppppuVar19 - (int)pppppppuVar9[6]))" (( "(") (binary_expression "(int)ppppppuVar7 + (-(int)ppppppuVar19 - (int)pppppppuVar9[6])" (cast_expression "(int)ppppppuVar7" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "ppppppuVar7")) (+ "+") (parenthesized_expression "(-(int)ppppppuVar19 - (int)pppppppuVar9[6])" (( "(") (binary_expression "-(int)ppppppuVar19 - (int)pppppppuVar9[6]" (unary_expression "-(int)ppppppuVar19" (- "-") (cast_expression "(int)ppppppuVar19" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "ppppppuVar19"))) (- "-") (cast_expression "(int)pppppppuVar9[6]" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (subscript_expression "pppppppuVar9[6]" (identifier "pppppppuVar9") ([ "[") (number_literal "6") (] "]")))) () ")"))) () ")")))) (; ";")) (} "}"))) (expression_statement "pppppppuVar9[0x8a] = ppppppuVar7;" (assignment_expression "pppppppuVar9[0x8a] = ppppppuVar7" (subscript_expression "pppppppuVar9[0x8a]" (identifier "pppppppuVar9") ([ "[") (number_literal "0x8a") (] "]")) (= "=") (identifier "ppppppuVar7")) (; ";")) (expression_statement "pppppppuVar9[0x8b] = ppppppuVar22;" (assignment_expression "pppppppuVar9[0x8b] = ppppppuVar22" (subscript_expression "pppppppuVar9[0x8b]" (identifier "pppppppuVar9") ([ "[") (number_literal "0x8b") (] "]")) (= "=") (identifier "ppppppuVar22")) (; ";")) (expression_statement "pppppppuVar9[0x8c] = ppppppuVar19;" (assignment_expression "pppppppuVar9[0x8c] = ppppppuVar19" (subscript_expression "pppppppuVar9[0x8c]" (identifier "pppppppuVar9") ([ "[") (number_literal "0x8c") (] "]")) (= "=") (identifier "ppppppuVar19")) (; ";")) (expression_statement "pppppppuVar9[0x8d] = ppppppuVar2;" (assignment_expression "pppppppuVar9[0x8d] = ppppppuVar2" (subscript_expression "pppppppuVar9[0x8d]" (identifier "pppppppuVar9") ([ "[") (number_literal "0x8d") (] "]")) (= "=") (identifier "ppppppuVar2")) (; ";")) (if_statement "if (iVar14 == 0) {\n      pppppppuVar9 = (undefined4 *******)(**(code **)(pcVar21 + 0x1df590))(pppppppuVar9);\n    }" (if "if") (parenthesized_expression "(iVar14 == 0)" (( "(") (binary_expression "iVar14 == 0" (identifier "iVar14") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n      pppppppuVar9 = (undefined4 *******)(**(code **)(pcVar21 + 0x1df590))(pppppppuVar9);\n    }" ({ "{") (expression_statement "pppppppuVar9 = (undefined4 *******)(**(code **)(pcVar21 + 0x1df590))(pppppppuVar9);" (assignment_expression "pppppppuVar9 = (undefined4 *******)(**(code **)(pcVar21 + 0x1df590))(pppppppuVar9)" (identifier "pppppppuVar9") (= "=") (cast_expression "(undefined4 *******)(**(code **)(pcVar21 + 0x1df590))(pppppppuVar9)" (( "(") (type_descriptor "undefined4 *******" (type_identifier "undefined4") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (call_expression "(**(code **)(pcVar21 + 0x1df590))(pppppppuVar9)" (parenthesized_expression "(**(code **)(pcVar21 + 0x1df590))" (( "(") (pointer_expression "**(code **)(pcVar21 + 0x1df590)" (* "*") (pointer_expression "*(code **)(pcVar21 + 0x1df590)" (* "*") (cast_expression "(code **)(pcVar21 + 0x1df590)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar21 + 0x1df590)" (( "(") (binary_expression "pcVar21 + 0x1df590" (identifier "pcVar21") (+ "+") (number_literal "0x1df590")) () ")"))))) () ")")) (argument_list "(pppppppuVar9)" (( "(") (identifier "pppppppuVar9") () ")"))))) (; ";")) (} "}"))) (} "}"))) (if_statement "if (iStack_24c == *piVar17) {\n    return pppppppuVar9;\n  }" (if "if") (parenthesized_expression "(iStack_24c == *piVar17)" (( "(") (binary_expression "iStack_24c == *piVar17" (identifier "iStack_24c") (== "==") (pointer_expression "*piVar17" (* "*") (identifier "piVar17"))) () ")")) (compound_statement "{\n    return pppppppuVar9;\n  }" ({ "{") (return_statement "return pppppppuVar9;" (return "return") (identifier "pppppppuVar9") (; ";")) (} "}"))) (expression_statement "(**(code **)(pcVar21 + 0x1df6a8))();" (call_expression "(**(code **)(pcVar21 + 0x1df6a8))()" (parenthesized_expression "(**(code **)(pcVar21 + 0x1df6a8))" (( "(") (pointer_expression "**(code **)(pcVar21 + 0x1df6a8)" (* "*") (pointer_expression "*(code **)(pcVar21 + 0x1df6a8)" (* "*") (cast_expression "(code **)(pcVar21 + 0x1df6a8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar21 + 0x1df6a8)" (( "(") (binary_expression "pcVar21 + 0x1df6a8" (identifier "pcVar21") (+ "+") (number_literal "0x1df6a8")) () ")"))))) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (labeled_statement "LAB_001c9db0:\n  pppppppuVar9 = (undefined4 *******)\n                 (**(code **)(pcVar21 + 0x1dfc4c))\n                           (*(int *)(pcVar21 + 0x1def24) + 0x294c,\n                            *(int *)(pcVar21 + 0x1def30) + -0x288c,0x548,\n                            *(int *)(pcVar21 + 0x1def30) + -0x26f8);" (statement_identifier "LAB_001c9db0") (: ":") (expression_statement "pppppppuVar9 = (undefined4 *******)\n                 (**(code **)(pcVar21 + 0x1dfc4c))\n                           (*(int *)(pcVar21 + 0x1def24) + 0x294c,\n                            *(int *)(pcVar21 + 0x1def30) + -0x288c,0x548,\n                            *(int *)(pcVar21 + 0x1def30) + -0x26f8);" (assignment_expression "pppppppuVar9 = (undefined4 *******)\n                 (**(code **)(pcVar21 + 0x1dfc4c))\n                           (*(int *)(pcVar21 + 0x1def24) + 0x294c,\n                            *(int *)(pcVar21 + 0x1def30) + -0x288c,0x548,\n                            *(int *)(pcVar21 + 0x1def30) + -0x26f8)" (identifier "pppppppuVar9") (= "=") (cast_expression "(undefined4 *******)\n                 (**(code **)(pcVar21 + 0x1dfc4c))\n                           (*(int *)(pcVar21 + 0x1def24) + 0x294c,\n                            *(int *)(pcVar21 + 0x1def30) + -0x288c,0x548,\n                            *(int *)(pcVar21 + 0x1def30) + -0x26f8)" (( "(") (type_descriptor "undefined4 *******" (type_identifier "undefined4") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (call_expression "(**(code **)(pcVar21 + 0x1dfc4c))\n                           (*(int *)(pcVar21 + 0x1def24) + 0x294c,\n                            *(int *)(pcVar21 + 0x1def30) + -0x288c,0x548,\n                            *(int *)(pcVar21 + 0x1def30) + -0x26f8)" (parenthesized_expression "(**(code **)(pcVar21 + 0x1dfc4c))" (( "(") (pointer_expression "**(code **)(pcVar21 + 0x1dfc4c)" (* "*") (pointer_expression "*(code **)(pcVar21 + 0x1dfc4c)" (* "*") (cast_expression "(code **)(pcVar21 + 0x1dfc4c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar21 + 0x1dfc4c)" (( "(") (binary_expression "pcVar21 + 0x1dfc4c" (identifier "pcVar21") (+ "+") (number_literal "0x1dfc4c")) () ")"))))) () ")")) (argument_list "(*(int *)(pcVar21 + 0x1def24) + 0x294c,\n                            *(int *)(pcVar21 + 0x1def30) + -0x288c,0x548,\n                            *(int *)(pcVar21 + 0x1def30) + -0x26f8)" (( "(") (binary_expression "*(int *)(pcVar21 + 0x1def24) + 0x294c" (pointer_expression "*(int *)(pcVar21 + 0x1def24)" (* "*") (cast_expression "(int *)(pcVar21 + 0x1def24)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar21 + 0x1def24)" (( "(") (binary_expression "pcVar21 + 0x1def24" (identifier "pcVar21") (+ "+") (number_literal "0x1def24")) () ")")))) (+ "+") (number_literal "0x294c")) (, ",") (binary_expression "*(int *)(pcVar21 + 0x1def30) + -0x288c" (pointer_expression "*(int *)(pcVar21 + 0x1def30)" (* "*") (cast_expression "(int *)(pcVar21 + 0x1def30)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar21 + 0x1def30)" (( "(") (binary_expression "pcVar21 + 0x1def30" (identifier "pcVar21") (+ "+") (number_literal "0x1def30")) () ")")))) (+ "+") (number_literal "-0x288c")) (, ",") (number_literal "0x548") (, ",") (binary_expression "*(int *)(pcVar21 + 0x1def30) + -0x26f8" (pointer_expression "*(int *)(pcVar21 + 0x1def30)" (* "*") (cast_expression "(int *)(pcVar21 + 0x1def30)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar21 + 0x1def30)" (( "(") (binary_expression "pcVar21 + 0x1def30" (identifier "pcVar21") (+ "+") (number_literal "0x1def30")) () ")")))) (+ "+") (number_literal "-0x26f8")) () ")"))))) (; ";"))) (return_statement "return pppppppuVar9;" (return "return") (identifier "pppppppuVar9") (; ";")) (} "}")))

/* 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 */

type_1 * function_1(type_1 *var_1,char *crop_geometry,type_2 *exception)

{
  bool var_38;
  int var_30;
  type_3 var_6;
  int var_10;
  ssize_t sVar5;
  type_4 uVar6;
  type_4 uVar7;
  size_t var_53;
  size_t var_9;
  int var_36;
  int extraout_v1_00;
  int var_39;
  int var_37;
  int var_47;
  int extraout_v1_04;
  int var_48;
  int var_49;
  int var_52;
  int extraout_v1_08;
  int var_54;
  int var_55;
  int var_8;
  type_1 *var_27;
  type_1 *var_42;
  int var_56;
  type_5 *var_34;
  type_1 *var_45;
  type_2 *var_35;
  type_1 *unaff_s0;
  type_1 *unaff_s1;
  type_2 *var_50;
  type_5 *unaff_s3;
  int *piVar17;
  int *piVar18;
  size_t var_17;
  int *piVar19;
  type_6 *var_29;
  type_1 *var_28;
  ssize_t var_57;
  type_1 *var_26;
  type_6 *var_31;
  type_7 *var_41;
  type_6 *var_32;
  type_1 **unaff_s8;
  size_t sVar24;
  type_7 *var_43;
  type_7 *pcVar26;
  double var_14;
  double var_19;
  double var_20;
  double var_22;
  double var_23;
  double var_11;
  double var_24;
  double var_18;
  double var_21;
  double var_12;
  double var_7;
  type_8 uVar38;
  type_4 uStack_270;
  type_4 uStack_26c;
  int iStack_268;
  int iStack_264;
  type_4 uStack_260;
  type_4 uStack_25c;
  type_1 *pIStack_258;
  type_4 *puStack_254;
  int iStack_250;
  int var_58;
  type_1 *pIStack_248;
  type_1 *pIStack_244;
  type_2 *pEStack_240;
  int *piStack_23c;
  int *piStack_238;
  type_6 *puStack_234;
  type_1 *pIStack_230;
  type_1 *pIStack_22c;
  type_1 **ppIStack_228;
  type_7 *pcStack_224;
  type_1 *pIStack_210;
  char *pcStack_20c;
  type_7 *var_46;
  ssize_t sStack_1fc;
  type_4 uStack_1f8;
  type_4 uStack_1f4;
  type_1 *pIStack_1f0;
  type_1 *pIStack_1ec;
  type_6 *puStack_1e8;
  int *piStack_1e4;
  type_1 *pIStack_1e0;
  type_4 *puStack_1dc;
  type_1 *pIStack_1d8;
  int var_51;
  type_1 *pIStack_1d0;
  type_1 *pIStack_1cc;
  type_2 *pEStack_1c8;
  type_5 *pRStack_1c4;
  int *piStack_1c0;
  type_6 *puStack_1bc;
  type_1 *pIStack_1b8;
  type_1 *pIStack_1b4;
  type_1 **ppIStack_1b0;
  type_7 *pcStack_1ac;
  type_2 *pEStack_198;
  char *pcStack_194;
  type_2 *pEStack_190;
  type_7 *var_44;
  type_1 *pIStack_17c;
  type_1 *pIStack_178;
  type_2 *pEStack_174;
  type_5 *pRStack_170;
  type_7 *pcStack_16c;
  type_2 *pEStack_158;
  char *pcStack_154;
  type_6 *var_33;
  type_4 uStack_148;
  type_4 uStack_144;
  type_1 *pIStack_13c;
  type_5 *pRStack_138;
  type_2 *pEStack_134;
  type_1 *pIStack_130;
  type_6 *puStack_12c;
  type_1 *pIStack_128;
  type_2 *pEStack_124;
  type_4 *puStack_120;
  int var_40;
  type_1 *pIStack_118;
  type_1 *pIStack_114;
  type_2 *pEStack_110;
  type_5 *pRStack_10c;
  type_3 uStack_108;
  type_6 *puStack_104;
  type_1 *pIStack_100;
  type_7 *pcStack_fc;
  type_2 *local_e8;
  char *local_e4;
  double var_13;
  double var_15;
  type_1 *var_25;
  type_5 geometry;
  type_5 crop;
  
  var_31 = PTR___stack_chk_guard_003a9230;
  var_30 = *(int *)PTR___stack_chk_guard_003a9230;
  if (var_1 == (type_1 *)0x0) {
LAB_001c8ef8:
    var_1 = unaff_s1;
    (*(type_7 *)PTR___assert_fail_003a9608)
              (var_2 + 0xdd0,var_3 + -0x288c,0x322,
               var_3 + -0x2688);
  }
  else if (var_1->signature == 0xabacadab) {
    if (var_1->debug != var_4) {
      local_e4 = var_1->filename;
      local_e8 = (type_2 *)(var_5 + -0x62ac);
      (*(type_7 *)PTR_LogMagickEvent_003a91e0)
                (0x8000,var_3 + -0x288c,var_3 + -0x269c,0x325);
    }
    var_28 = (type_1 *)(*(type_7 *)PTR_NewImageList_003a8e84)();
    var_25 = var_28;
    var_6 = (*(type_7 *)PTR_ParseGravityGeometry_003a97fc)(var_1,crop_geometry,&geometry,exception);
    var_17 = geometry.height;
    unaff_s0 = (type_1 *)geometry.width;
    unaff_s3 = (type_5 *)var_16;
    if ((int)(var_6 << 0xe) < 0) {
      var_9 = var_1->rows;
      if (geometry.width == 0) {
        geometry.width = 1;
        var_7 = *(double *)(var_2 + 0x1438);
      }
      else {
        var_7 = (double)(int)geometry.width;
        if ((int)geometry.width < 0) {
          var_7 = var_7 + *(double *)(var_2 + 0x1418);
        }
      }
      if (geometry.height == 0) {
        var_11 = *(double *)(var_2 + 0x1438);
        geometry.height = 1;
        if ((var_6 & 0x2000) != 0) goto LAB_001c8e14;
LAB_001c8484:
        var_8 = geometry.x;
        if (geometry.x < 0) {
          var_8 = -geometry.x;
        }
        var_8 = var_1->columns - var_8;
        var_10 = geometry.y;
        if (geometry.y < 0) {
          var_10 = -geometry.y;
        }
        var_10 = var_9 - var_10;
      }
      else {
        var_11 = (double)(int)geometry.height;
        if ((int)geometry.height < 0) {
          var_11 = var_11 + *(double *)(var_2 + 0x1418);
        }
        if ((var_6 & 0x2000) == 0) goto LAB_001c8484;
LAB_001c8e14:
        var_8 = geometry.x;
        if (geometry.x < 0) {
          var_8 = -geometry.x;
        }
        var_8 = var_8 + var_1->columns;
        if (geometry.y < 0) {
          var_10 = var_9 - geometry.y;
        }
        else {
          var_10 = geometry.y + var_9;
        }
      }
      var_17 = var_6 & 0x2000;
      var_12 = (double)var_8;
      if (var_8 < 0) {
        var_12 = var_12 + *(double *)(var_2 + 0x1418);
      }
      var_7 = var_12 / var_7;
      var_13 = (double)var_10;
      if (var_10 < 0) {
        var_13 = var_13 + *(double *)(var_2 + 0x1418);
      }
      var_14 = *(double *)(var_2 + 0x1438);
      var_15 = var_14;
      if (var_7 < var_14) {
        var_15 = *(double *)(var_2 + 0x1438);
        var_7 = var_14;
      }
      if (var_15 <= var_13 / var_11) {
        var_15 = var_13 / var_11;
      }
      var_11 = 0.0;
      var_26 = (type_1 *)geometry.y;
      if (0.0 < var_13) {
        var_14 = *(double *)(var_16 + 0x4780);
        var_24 = *(double *)(var_16 + 0x4788);
        if (var_17 != 0) goto LAB_001c8b70;
LAB_001c854c:
        var_26 = (type_1 *)geometry.y;
        var_18 = var_11;
        if (geometry.y < 1) {
          var_18 = var_11 - (double)geometry.y;
        }
        var_19 = (double)(*(type_7 *)PTR_floor_003a9670)(var_18);
        var_20 = (double)(*(type_7 *)PTR_ceil_003a8c20)(var_18);
        if (var_18 - var_19 < var_20 - var_18) {
          var_19 = *(double *)((int)unaff_s3 + 0x4788);
          var_43 = (type_7 *)PTR_floor_003a9670;
          if (var_18 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d7c;
        }
        else {
          if (var_18 < *(double *)((int)unaff_s3 + 0x4780)) {
LAB_001c8d7c:
            var_8 = -0x7ffffdff;
            goto joined_r0x001c8cbc;
          }
          var_19 = *(double *)((int)unaff_s3 + 0x4788);
          var_43 = (type_7 *)PTR_ceil_003a8c20;
        }
        if (var_19 < var_18) {
          var_8 = 0x7ffffdff;
        }
        else {
          var_18 = (double)(*var_43)(var_18);
          var_8 = (int)var_18;
        }
joined_r0x001c8cbc:
        var_11 = var_11 + var_15;
        if ((int)var_26 < 0) {
          var_18 = 0.0;
        }
        else {
          var_18 = (double)(int)var_26;
        }
        var_18 = var_11 + var_18;
        var_19 = (double)(*(type_7 *)PTR_floor_003a9670)(var_18);
        var_20 = (double)(*(type_7 *)PTR_ceil_003a8c20)(var_18);
        if (var_18 - var_19 < var_20 - var_18) {
          if (*(double *)((int)unaff_s3 + 0x4780) <= var_18) {
            if (var_18 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8630;
            goto LAB_001c8cec;
          }
        }
        else if (*(double *)((int)unaff_s3 + 0x4780) <= var_18) {
          if (*(double *)((int)unaff_s3 + 0x4788) < var_18) goto LAB_001c8cec;
          goto LAB_001c8d18;
        }
LAB_001c8c88:
        var_10 = -0x7ffffdff;
LAB_001c8644:
        do {
          unaff_s8 = (type_1 **)(var_10 - var_8);
          crop_geometry = (char *)((var_1->page).y + var_8);
          var_18 = 0.0;
          crop.height = (size_t)unaff_s8;
          crop.y = (ssize_t)crop_geometry;
          if (0.0 < var_12) {
            var_19 = *(double *)((int)unaff_s3 + 0x4788);
            var_28 = (type_1 *)&crop;
            var_20 = *(double *)((int)unaff_s3 + 0x4780);
            do {
              var_26 = (type_1 *)geometry.x;
              if (var_17 == 0) {
                var_21 = var_18;
                if (geometry.x < 1) {
                  var_21 = var_18 - (double)geometry.x;
                }
                var_22 = (double)(*(type_7 *)PTR_floor_003a9670)(var_21);
                var_23 = (double)(*(type_7 *)PTR_ceil_003a8c20)(var_21);
                if (var_21 - var_22 < var_23 - var_21) {
                  if (*(double *)((int)unaff_s3 + 0x4780) <= var_21) {
                    var_43 = (type_7 *)PTR_floor_003a9670;
                    if (var_21 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;
LAB_001c8c78:
                    var_8 = 0x7ffffdff;
                    goto LAB_001c8700;
                  }
LAB_001c8b04:
                  var_18 = var_18 + var_7;
                  var_8 = -0x7ffffdff;
                  if ((int)var_26 < 0) goto LAB_001c8b14;
LAB_001c8708:
                  var_21 = (double)(int)var_26;
                }
                else {
                  if (var_21 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;
                  var_43 = (type_7 *)PTR_ceil_003a8c20;
                  if (*(double *)((int)unaff_s3 + 0x4788) < var_21) goto LAB_001c8c78;
LAB_001c86e8:
                  var_21 = (double)(*var_43)(var_21);
                  var_8 = (int)var_21;
LAB_001c8700:
                  var_18 = var_18 + var_7;
                  if (-1 < (int)var_26) goto LAB_001c8708;
LAB_001c8b14:
                  var_21 = 0.0;
                }
                var_21 = var_18 + var_21;
                var_22 = (double)(*(type_7 *)PTR_floor_003a9670)(var_21);
                var_23 = (double)(*(type_7 *)PTR_ceil_003a8c20)(var_21);
                if (var_21 - var_22 < var_23 - var_21) {
                  if (var_21 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;
                  if (*(double *)((int)unaff_s3 + 0x4788) < var_21) goto LAB_001c88b8;
LAB_001c8768:
                  var_21 = (double)(*(type_7 *)PTR_floor_003a9670)(var_21);
                  var_10 = (int)var_21;
                }
                else {
                  if (var_21 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;
                  if (*(double *)((int)unaff_s3 + 0x4788) < var_21) goto LAB_001c88b8;
LAB_001c8abc:
                  var_21 = (double)(*(type_7 *)PTR_ceil_003a8c20)(var_21);
                  var_10 = (int)var_21;
                }
              }
              else {
                var_21 = var_18;
                if (0 < geometry.x) {
                  var_21 = var_18 - (double)geometry.x;
                }
                var_22 = (double)(*(type_7 *)PTR_floor_003a9670)(var_21);
                var_23 = (double)(*(type_7 *)PTR_ceil_003a8c20)(var_21);
                if (var_21 - var_22 < var_23 - var_21) {
                  if (var_20 <= var_21) {
                    var_43 = (type_7 *)PTR_floor_003a9670;
                    if (var_21 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;
LAB_001c8c68:
                    var_8 = 0x7ffffdff;
                    goto LAB_001c8850;
                  }
LAB_001c8b24:
                  var_18 = var_18 + var_7;
                  var_8 = -0x7ffffdff;
                  if ((int)var_26 < 0) goto LAB_001c8b34;
LAB_001c8858:
                  var_21 = 0.0;
                }
                else {
                  if (var_21 < var_20) goto LAB_001c8b24;
                  var_43 = (type_7 *)PTR_ceil_003a8c20;
                  if (var_19 < var_21) goto LAB_001c8c68;
LAB_001c8838:
                  var_21 = (double)(*var_43)(var_21);
                  var_8 = (int)var_21;
LAB_001c8850:
                  var_18 = var_18 + var_7;
                  if (-1 < (int)var_26) goto LAB_001c8858;
LAB_001c8b34:
                  var_21 = (double)(int)var_26;
                }
                var_21 = var_18 + var_21;
                var_22 = (double)(*(type_7 *)PTR_floor_003a9670)(var_21);
                var_23 = (double)(*(type_7 *)PTR_ceil_003a8c20)(var_21);
                if (var_21 - var_22 < var_23 - var_21) {
                  if (var_21 < var_14) goto LAB_001c8a44;
                  if (var_21 <= var_19) goto LAB_001c8768;
LAB_001c88b8:
                  var_10 = 0x7ffffdff;
                }
                else if (var_14 <= var_21) {
                  if (var_21 <= var_24) goto LAB_001c8abc;
                  var_10 = 0x7ffffdff;
                }
                else {
LAB_001c8a44:
                  var_10 = -0x7ffffdff;
                }
              }
              unaff_s8 = (type_1 **)(var_10 - var_8);
              crop_geometry = (char *)((var_1->page).x + var_8);
              crop.width = (size_t)unaff_s8;
              crop.x = (ssize_t)crop_geometry;
              var_8 = (*(type_7 *)PTR_CropImage_003a90b8)(var_1,var_28,exception);
              if (var_8 != 0) {
                (*(type_7 *)PTR_AppendImageToList_003a9880)(&var_25,var_8);
              }
            } while (var_18 < var_12);
          }
          var_29 = (type_6 *)unaff_s3;
          if (var_13 <= var_11) break;
          if (var_17 == 0) goto LAB_001c854c;
LAB_001c8b70:
          var_26 = (type_1 *)geometry.y;
          var_18 = var_11;
          if (0 < geometry.y) {
            var_18 = var_11 - (double)geometry.y;
          }
          var_19 = (double)(*(type_7 *)PTR_floor_003a9670)(var_18);
          var_20 = (double)(*(type_7 *)PTR_ceil_003a8c20)(var_18);
          if (var_18 - var_19 < var_20 - var_18) {
            if (var_18 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d8c;
            var_43 = (type_7 *)PTR_floor_003a9670;
            if (*(double *)((int)unaff_s3 + 0x4788) < var_18) goto LAB_001c8d50;
LAB_001c8bd8:
            var_18 = (double)(*var_43)(var_18);
            var_8 = (int)var_18;
LAB_001c8bf0:
            var_11 = var_11 + var_15;
            if (-2 < (int)var_26) goto LAB_001c8c00;
LAB_001c8d6c:
            var_18 = (double)(int)var_26;
          }
          else {
            if (var_18 < *(double *)((int)unaff_s3 + 0x4780)) {
LAB_001c8d8c:
              var_8 = -0x7ffffdff;
              goto LAB_001c8bf0;
            }
            var_43 = (type_7 *)PTR_ceil_003a8c20;
            if (var_18 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8bd8;
LAB_001c8d50:
            var_8 = 0x7ffffdff;
            var_11 = var_11 + var_15;
            if ((int)var_26 < -1) goto LAB_001c8d6c;
LAB_001c8c00:
            var_18 = 0.0;
          }
          var_18 = var_11 + var_18;
          var_19 = (double)(*(type_7 *)PTR_floor_003a9670)(var_18);
          var_20 = (double)(*(type_7 *)PTR_ceil_003a8c20)(var_18);
          if (var_18 - var_19 < var_20 - var_18) {
            if (*(double *)((int)unaff_s3 + 0x4780) <= var_18) {
              if (*(double *)((int)unaff_s3 + 0x4788) < var_18) {
LAB_001c8cec:
                var_10 = 0x7ffffdff;
              }
              else {
LAB_001c8630:
                var_18 = (double)(*(type_7 *)PTR_floor_003a9670)(var_18);
                var_10 = (int)var_18;
              }
              goto LAB_001c8644;
            }
            goto LAB_001c8c88;
          }
          if (var_18 < var_14) goto LAB_001c8c88;
          if (*(double *)((int)unaff_s3 + 0x4788) < var_18) goto LAB_001c8cec;
LAB_001c8d18:
          var_18 = (double)(*(type_7 *)PTR_ceil_003a8c20)(var_18);
          var_10 = (int)var_18;
        } while( true );
      }
      (*(type_7 *)PTR_ClearMagickException_003a90f8)(exception);
      var_27 = var_25;
      unaff_s0 = (type_1 *)crop_geometry;
    }
    else {
      unaff_s3 = &geometry;
      if (((geometry.width == 0) && (geometry.height == 0)) || ((var_6 & 3) != 0)) {
        var_25 = (type_1 *)(*(type_7 *)PTR_CropImage_003a90b8)(var_1,&geometry,exception);
        var_27 = var_25;
        var_17 = var_6;
        if ((var_25 != (type_1 *)0x0) && (var_17 = var_6 & 0x2000, var_17 != 0)) {
          (var_25->page).x = (var_25->page).x - geometry.x;
          (var_25->page).y = (var_25->page).y - geometry.y;
          (var_25->page).width = geometry.width;
          (var_25->page).height = geometry.height;
        }
      }
      else {
        var_26 = (type_1 *)var_1->columns;
        if ((geometry.width < var_26) || (geometry.height < var_1->rows)) {
          var_27 = (type_1 *)(var_1->page).width;
          var_6 = (var_1->page).height;
          if (var_27 != (type_1 *)0x0) {
            var_26 = var_27;
          }
          if (var_6 == 0) {
            var_6 = var_1->rows;
          }
          if (geometry.width == 0) {
            unaff_s0 = var_26;
          }
          if (geometry.height == 0) {
            var_17 = var_6;
          }
          var_27 = var_25;
          if (0 < (int)var_6) {
            unaff_s3 = (type_5 *)0x0;
            unaff_s8 = &var_25;
            do {
              var_29 = (type_6 *)0x0;
              if ((int)var_26 < 1) {
                var_27 = var_25;
                if (var_28 == (type_1 *)0x0) break;
              }
              else {
                do {
                  geometry.width = (size_t)unaff_s0;
                  geometry.height = var_17;
                  geometry.x = (ssize_t)var_29;
                  geometry.y = (ssize_t)unaff_s3;
                  var_28 = (type_1 *)(*(type_7 *)PTR_CropImage_003a90b8)(var_1,&geometry,exception);
                  var_27 = var_25;
                  if (var_28 == (type_1 *)0x0) goto LAB_001c8908;
                  var_29 = var_29 + (int)unaff_s0;
                  (*(type_7 *)PTR_AppendImageToList_003a9880)(unaff_s8,var_28);
                } while ((int)var_29 < (int)var_26);
              }
              unaff_s3 = (type_5 *)((int)&unaff_s3->width + var_17);
              var_27 = var_25;
            } while ((int)unaff_s3 < (int)var_6);
          }
        }
        else {
          local_e8 = exception;
          var_27 = (type_1 *)(*(type_7 *)PTR_CloneImage_003a9830)(var_1,0,0,1);
        }
      }
    }
LAB_001c8908:
    if (var_30 == *(int *)var_31) {
      return var_27;
    }
    (*(type_7 *)PTR___stack_chk_fail_003a9064)();
    unaff_s1 = var_1;
    var_50 = exception;
    goto LAB_001c8ef8;
  }
  var_35 = (type_2 *)0x323;
  var_34 = (type_5 *)(var_3 + -0x288c);
  var_43 = ExcerptImage;
  var_27 = (type_1 *)(var_16 + -0x3784);
  var_31 = PTR___assert_fail_003a9608;
  (*(type_7 *)PTR___assert_fail_003a9608)();
  var_32 = var_31 + 0x1e7970;
  piVar19 = *(int **)(var_31 + 0x1e02f0);
  var_40 = *piVar19;
  var_33 = var_32;
  pIStack_118 = unaff_s0;
  pIStack_114 = var_1;
  pEStack_110 = var_50;
  pRStack_10c = unaff_s3;
  uStack_108 = var_17;
  puStack_104 = var_29;
  pIStack_100 = var_28;
  pcStack_fc = var_43;
  if (var_27 == (type_1 *)0x0) {
    var_30 = *(int *)(var_31 + 0x1df9ac) + -0x26ac;
    (**(type_7 **)(var_31 + 0x1e06c8))
              (*(int *)(var_31 + 0x1df9a8) + -0x37b0,*(int *)(var_31 + 0x1df9ac) + -0x288c,0x3f4,
               var_30);
LAB_001c92d4:
    var_30 = var_30 + -0x26ac;
    (**(type_7 **)(var_32 + -0x72a8))
              (*(int *)(var_32 + -0x7fd0) + 0x294c,*(int *)(var_32 + -0x7fc4) + -0x288c,0x3fa,
               var_30);
    var_35 = var_50;
LAB_001c92f4:
    var_30 = var_30 + -0x26ac;
    (**(type_7 **)(var_32 + -0x72a8))
              (*(int *)(var_32 + -0x7fd0) + 0x1cac,*(int *)(var_32 + -0x7fc4) + -0x288c,0x3f9,
               var_30);
LAB_001c9314:
    (**(type_7 **)(var_32 + -0x784c))();
    var_27 = unaff_s0;
LAB_001c9320:
    (**(type_7 **)(var_32 + -0x72a8))
              (*(int *)(var_32 + -0x7fc4) + -0x2850,*(int *)(var_32 + -0x7fc4) + -0x288c,0x3f8,
               var_30 + -0x26ac);
    var_50 = var_35;
  }
  else if (var_27->signature == 0xabacadab) {
    if (var_27->debug != var_4) {
      pcStack_154 = var_27->filename;
      pEStack_158 = (type_2 *)(*(int *)(var_31 + 0x1df9a4) - 0x62ac);
      (**(type_7 **)(var_31 + 0x1e02a0))
                (0x8000,*(int *)(var_31 + 0x1df9ac) + -0x288c,
                 *(int *)(var_31 + 0x1df9ac) + -0x26bc,0x3f7);
    }
    var_30 = *(int *)(var_33 + -0x7fc4);
    unaff_s3 = var_34;
    var_32 = var_33;
    if (var_34 != (type_5 *)0x0) {
      unaff_s0 = var_27;
      if (var_35 == (type_2 *)0x0) goto LAB_001c92f4;
      var_50 = var_35;
      if (var_35->signature != 0xabacadab) goto LAB_001c92d4;
      var_30 = 1;
      pEStack_158 = var_35;
      var_1 = (type_1 *)(**(type_7 **)(var_33 + -0x7080))
                                 (var_27,var_34->width,var_34->height,1);
      if (var_1 != (type_1 *)0x0) {
        uStack_144 = 0;
        uStack_148 = 0;
        var_29 = (type_6 *)(**(type_7 **)(var_33 + -0x715c))(var_27,var_35);
        var_28 = (type_1 *)(**(type_7 **)(var_33 + -0x79dc))(var_1,var_35);
        var_30 = (**(type_7 **)(var_33 + -0x73fc))(var_27);
        if (((var_30 == 4) || (var_30 = (**(type_7 **)(var_33 + -0x73fc))(var_27), var_30 == 3)) &&
           ((var_30 = (**(type_7 **)(var_33 + -0x73fc))(var_1), var_30 == 4 ||
            (var_30 = (**(type_7 **)(var_33 + -0x73fc))(var_1), var_30 == 3)))) {
          (**(type_7 **)(var_33 + -0x7774))(7);
          var_9 = var_1->rows;
          if ((int)var_9 < 0) {
            var_43 = *(type_7 **)(var_33 + -0x7774);
            if (var_36 < (int)(var_9 + 0x3f) >> 6) goto LAB_001c9298;
LAB_001c91a4:
            var_38 = (int)var_9 < 0x80;
          }
          else {
            var_43 = *(type_7 **)(var_33 + -0x7774);
            if ((int)var_9 >> 6 <= var_36) goto LAB_001c91a4;
LAB_001c9298:
            (*var_43)(7);
            var_38 = var_37 < 2;
          }
          var_8 = 1;
          if ((bool)(var_38 ^ 1)) {
            (**(type_7 **)(var_33 + -0x7774))(7);
            var_9 = var_1->rows;
            if ((int)var_9 < 0) {
              var_9 = var_9 + 0x3f;
            }
            var_8 = (int)var_9 >> 6;
            var_43 = *(type_7 **)(var_33 + -0x7774);
            if (var_39 < var_8) {
LAB_001c9234:
              (*var_43)(7);
              var_8 = extraout_v1_00;
            }
            goto LAB_001c9088;
          }
          var_10 = *(int *)(var_33 + -0x7f10);
        }
        else {
          uVar38 = (**(type_7 **)(var_33 + -0x7774))(7);
          if ((int)((type_9)uVar38 >> 0x20) == 0) {
            var_43 = *(type_7 **)(var_33 + -0x7774);
            if (1 < (type_3)uVar38) goto LAB_001c9074;
            uVar38 = (*var_43)(7);
            if ((int)((type_9)uVar38 >> 0x20) != 0) goto LAB_001c9070;
            var_43 = *(type_7 **)(var_33 + -0x7774);
            if (1 < (type_3)uVar38) goto LAB_001c9074;
            var_8 = 1;
          }
          else {
LAB_001c9070:
            var_43 = *(type_7 **)(var_33 + -0x7774);
LAB_001c9074:
            uVar38 = (*var_43)(7);
            if (((int)((type_9)uVar38 >> 0x20) == 0) &&
               (var_43 = *(type_7 **)(var_33 + -0x7774), (type_3)uVar38 < 2)) goto LAB_001c9234;
            var_8 = 2;
          }
LAB_001c9088:
          var_10 = *(int *)(var_33 + -0x7f10);
        }
        var_30 = 0;
        pEStack_124 = (type_2 *)0x1;
        puStack_120 = &uStack_148;
        pIStack_13c = var_27;
        pRStack_138 = var_34;
        pEStack_134 = var_35;
        pIStack_130 = var_28;
        puStack_12c = var_29;
        pIStack_128 = var_1;
        (**(type_7 **)(var_33 + -0x7718))(var_10 + 0x5428,&pIStack_13c,var_8,0);
        var_35 = pEStack_124;
        (**(type_7 **)(var_33 + -0x79bc))(var_28);
        (**(type_7 **)(var_33 + -0x79bc))(var_29);
        var_1->type = var_27->type;
        if (var_35 == (type_2 *)0x0) {
          var_1 = (type_1 *)(**(type_7 **)(var_33 + -0x7964))(var_1);
        }
      }
      var_32 = var_33;
      if (var_40 == *piVar19) {
        return var_1;
      }
      goto LAB_001c9314;
    }
    goto LAB_001c9320;
  }
  var_35 = (type_2 *)0x3f5;
  var_41 = *(type_7 **)(var_32 + -0x72a8);
  var_45 = (type_1 *)(*(int *)(var_32 + -0x7fc4) + -0x288c);
  pcVar26 = ExtentImage;
  var_42 = (type_1 *)(*(int *)(var_32 + -0x7fc8) + -0x3784);
  (*var_41)();
  var_43 = var_41 + 0x1e754c;
  var_44 = var_43;
  pIStack_17c = var_27;
  pIStack_178 = var_1;
  pEStack_174 = var_50;
  pRStack_170 = unaff_s3;
  pcStack_16c = pcVar26;
  if (var_42 == (type_1 *)0x0) {
    var_30 = *(int *)(var_41 + 0x1df588) + -0x26c8;
    (**(type_7 **)(var_41 + 0x1e02a4))
              (*(int *)(var_41 + 0x1df584) + -0x37b0,*(int *)(var_41 + 0x1df588) + -0x288c,0x474,
               var_30);
LAB_001c94fc:
    var_30 = var_30 + -0x26c8;
    (**(type_7 **)(var_43 + -0x72a8))
              (*(int *)(var_43 + -0x7fc4) + -0x2850,*(int *)(var_43 + -0x7fc4) + -0x288c,0x478,
               var_30);
LAB_001c951c:
    var_30 = var_30 + -0x26c8;
    (**(type_7 **)(var_43 + -0x72a8))
              (*(int *)(var_43 + -0x7fd0) + 0x294c,*(int *)(var_43 + -0x7fc4) + -0x288c,0x47a,
               var_30);
    var_42 = var_27;
LAB_001c953c:
    (**(type_7 **)(var_43 + -0x72a8))
              (*(int *)(var_43 + -0x7fd0) + 0x1cac,*(int *)(var_43 + -0x7fc4) + -0x288c,0x479,
               var_30 + -0x26c8);
  }
  else if (var_42->signature == 0xabacadab) {
    if (var_42->debug != var_4) {
      pcStack_194 = var_42->filename;
      pEStack_198 = (type_2 *)(*(int *)(var_41 + 0x1df580) + -0x62ac);
      (**(type_7 **)(var_41 + 0x1dfe7c))
                (0x8000,*(int *)(var_41 + 0x1df588) + -0x288c,
                 *(int *)(var_41 + 0x1df588) + -0x26d4,0x477);
    }
    var_30 = *(int *)(var_44 + -0x7fc4);
    var_27 = var_42;
    var_1 = var_45;
    var_50 = var_35;
    var_43 = var_44;
    if (var_45 == (type_1 *)0x0) goto LAB_001c94fc;
    if (var_35 != (type_2 *)0x0) {
      if (var_35->signature == 0xabacadab) {
        pEStack_198 = var_35;
        var_27 = (type_1 *)(**(type_7 **)(var_44 + -0x7080))
                                     (var_42,var_45->storage_class,var_45->colorspace,1);
        if (var_27 != (type_1 *)0x0) {
          var_30 = (**(type_7 **)(var_44 + -0x7a20))(var_27,var_35);
          if (var_30 == 0) {
            (**(type_7 **)(var_44 + -0x7964))(var_27);
            var_27 = (type_1 *)0x0;
          }
          else {
            pcStack_194 = (char *)-var_45->quality;
            pEStack_198 = (type_2 *)-var_45->compression;
            pEStack_190 = var_35;
            var_30 = (**(type_7 **)(var_44 + -0x7bec))(var_27,var_42,var_42->compose,1);
            if (var_30 != 0) {
              (**(type_7 **)(var_44 + -0x7d18))(var_27,var_42->columns,var_42->rows,var_45);
            }
          }
        }
        return var_27;
      }
      goto LAB_001c951c;
    }
    goto LAB_001c953c;
  }
  var_41 = *(type_7 **)(var_43 + -0x72a8);
  var_27 = (type_1 *)(*(int *)(var_43 + -0x7fc4) + -0x288c);
  pcVar26 = FlipImage;
  var_45 = (type_1 *)(*(int *)(var_43 + -0x7fc8) + -0x3784);
  (*var_41)(var_45,var_27,0x475,*(int *)(var_43 + -0x7fc4) + -0x26c8);
  var_43 = var_41 + 0x1e7330;
  piVar17 = *(int **)(var_41 + 0x1dfcb0);
  var_51 = *piVar17;
  var_46 = var_43;
  pIStack_1d0 = var_42;
  pIStack_1cc = var_1;
  pEStack_1c8 = var_50;
  pRStack_1c4 = unaff_s3;
  piStack_1c0 = piVar19;
  puStack_1bc = var_29;
  pIStack_1b8 = var_28;
  pIStack_1b4 = var_26;
  ppIStack_1b0 = unaff_s8;
  pcStack_1ac = pcVar26;
  if (var_45 == (type_1 *)0x0) {
    (**(type_7 **)(var_41 + 0x1e0088))
              (*(int *)(var_41 + 0x1df368) + -0x37b0,*(int *)(var_41 + 0x1df36c) + -0x288c,0x4bc,
               *(int *)(var_41 + 0x1df36c) + -0x26e0);
    var_27 = var_1;
LAB_001c9944:
    (**(type_7 **)(var_43 + -0x72a8))
              (*(int *)(var_43 + -0x7fd0) + 0x1cac,*(int *)(var_43 + -0x7fc4) + -0x288c,0x4c0,
               *(int *)(var_43 + -0x7fc4) + -0x26e0);
LAB_001c9968:
    (**(type_7 **)(var_43 + -0x784c))();
    var_45 = var_26;
LAB_001c9974:
    (**(type_7 **)(var_43 + -0x72a8))
              (*(int *)(var_43 + -0x7fd0) + 0x294c,*(int *)(var_43 + -0x7fc4) + -0x288c,0x4c1,
               *(int *)(var_43 + -0x7fc4) + -0x26e0);
    pIStack_244 = var_27;
  }
  else {
    pIStack_244 = var_1;
    if (var_45->signature == 0xabacadab) {
      if (var_45->debug != var_4) {
        pcStack_20c = var_45->filename;
        pIStack_210 = (type_1 *)(*(int *)(var_41 + 0x1df364) + -0x62ac);
        (**(type_7 **)(var_41 + 0x1dfc60))
                  (0x8000,*(int *)(var_41 + 0x1df36c) + -0x288c,
                   *(int *)(var_41 + 0x1df36c) + -0x26ec,0x4bf);
      }
      var_26 = var_45;
      var_43 = var_46;
      if (var_27 == (type_1 *)0x0) goto LAB_001c9944;
      if (var_27->rows == 0xabacadab) {
        pIStack_210 = var_27;
        var_42 = (type_1 *)(**(type_7 **)(var_46 + -0x7080))(var_45,0,0,1);
        if (var_42 != (type_1 *)0x0) {
          sStack_1fc = (var_45->page).x;
          unaff_s8 = (type_1 **)(var_45->page).width;
          var_50 = (type_2 *)(var_45->page).height;
          var_28 = (type_1 *)(var_45->page).y;
          uStack_1f4 = 0;
          uStack_1f8 = 0;
          piVar19 = (int *)(**(type_7 **)(var_46 + -0x715c))(var_45,var_27);
          var_29 = (type_6 *)(**(type_7 **)(var_46 + -0x79dc))(var_42,var_27);
          var_30 = (**(type_7 **)(var_46 + -0x73fc))(var_45);
          if (((var_30 == 4) || (var_30 = (**(type_7 **)(var_46 + -0x73fc))(var_45), var_30 == 3))
             && ((var_30 = (**(type_7 **)(var_46 + -0x73fc))(var_42), var_30 == 4 ||
                 (var_30 = (**(type_7 **)(var_46 + -0x73fc))(var_42), var_30 == 3)))) {
            (**(type_7 **)(var_46 + -0x7774))(7);
            var_9 = var_42->rows;
            if ((int)var_9 < 0) {
              var_43 = *(type_7 **)(var_46 + -0x7774);
              if (var_47 < (int)(var_9 + 0x3f) >> 6) goto LAB_001c98d4;
LAB_001c981c:
              var_38 = (int)var_9 < 0x80;
            }
            else {
              var_43 = *(type_7 **)(var_46 + -0x7774);
              if ((int)var_9 >> 6 <= var_47) goto LAB_001c981c;
LAB_001c98d4:
              (*var_43)(7);
              var_38 = var_48 < 2;
            }
            var_30 = 1;
            if ((bool)(var_38 ^ 1)) {
              (**(type_7 **)(var_46 + -0x7774))(7);
              var_9 = var_42->rows;
              if ((int)var_9 < 0) {
                var_9 = var_9 + 0x3f;
              }
              var_30 = (int)var_9 >> 6;
              var_43 = *(type_7 **)(var_46 + -0x7774);
              if (var_49 < var_30) {
LAB_001c98ac:
                (*var_43)(7);
                var_30 = extraout_v1_04;
              }
              goto LAB_001c96d8;
            }
            var_8 = *(int *)(var_46 + -0x7f10);
          }
          else {
            uVar38 = (**(type_7 **)(var_46 + -0x7774))(7);
            if ((int)((type_9)uVar38 >> 0x20) == 0) {
              var_43 = *(type_7 **)(var_46 + -0x7774);
              if (1 < (type_3)uVar38) goto LAB_001c96c4;
              uVar38 = (*var_43)(7);
              if ((int)((type_9)uVar38 >> 0x20) != 0) goto LAB_001c96c0;
              var_43 = *(type_7 **)(var_46 + -0x7774);
              if (1 < (type_3)uVar38) goto LAB_001c96c4;
              var_30 = 1;
            }
            else {
LAB_001c96c0:
              var_43 = *(type_7 **)(var_46 + -0x7774);
LAB_001c96c4:
              uVar38 = (*var_43)(7);
              if (((int)((type_9)uVar38 >> 0x20) == 0) &&
                 (var_43 = *(type_7 **)(var_46 + -0x7774), (type_3)uVar38 < 2)) goto LAB_001c98ac;
              var_30 = 2;
            }
LAB_001c96d8:
            var_8 = *(int *)(var_46 + -0x7f10);
          }
          puStack_1dc = &uStack_1f8;
          pIStack_1d8 = (type_1 *)0x1;
          pIStack_1f0 = var_45;
          pIStack_1ec = var_27;
          puStack_1e8 = var_29;
          piStack_1e4 = piVar19;
          pIStack_1e0 = var_42;
          (**(type_7 **)(var_46 + -0x7718))(var_8 + 0x56bc,&pIStack_1f0,var_30,0);
          var_27 = pIStack_1d8;
          (**(type_7 **)(var_46 + -0x79bc))(var_29);
          (**(type_7 **)(var_46 + -0x79bc))(piVar19);
          var_42->type = var_45->type;
          if (var_50 != (type_2 *)0x0) {
            var_28 = (type_1 *)((int)var_50 + (-(int)var_28 - var_42->rows));
          }
          (var_42->page).width = (size_t)unaff_s8;
          (var_42->page).height = (size_t)var_50;
          (var_42->page).x = sStack_1fc;
          (var_42->page).y = (ssize_t)var_28;
          if (var_27 == (type_1 *)0x0) {
            var_42 = (type_1 *)(**(type_7 **)(var_46 + -0x7964))(var_42);
          }
        }
        var_43 = var_46;
        if (var_51 == *piVar17) {
          return var_42;
        }
        goto LAB_001c9968;
      }
      goto LAB_001c9974;
    }
  }
  var_41 = *(type_7 **)(var_43 + -0x72a8);
  var_8 = *(int *)(var_43 + -0x7fc4) + -0x288c;
  pcVar26 = FlopImage;
  var_30 = *(int *)(var_43 + -0x7fc8) + -0x3784;
  (*var_41)(var_30,var_8,0x4bd,*(int *)(var_43 + -0x7fc4) + -0x26e0);
  piVar18 = *(int **)(var_41 + 0x1df874);
  var_58 = *piVar18;
  pIStack_248 = var_42;
  pEStack_240 = var_50;
  piStack_23c = piVar17;
  piStack_238 = piVar19;
  puStack_234 = var_29;
  pIStack_230 = var_28;
  pIStack_22c = var_45;
  ppIStack_228 = unaff_s8;
  pcStack_224 = pcVar26;
  if (var_30 == 0) {
    var_27 = (type_1 *)(**(type_7 **)(var_41 + 0x1dfc4c))
                                 (*(int *)(var_41 + 0x1def2c) + -0x37b0,
                                  *(int *)(var_41 + 0x1def30) + -0x288c,0x543,
                                  *(int *)(var_41 + 0x1def30) + -0x26f8);
    return var_27;
  }
  if (*(int *)(var_30 + 0x336c) != -0x54535255) {
    var_27 = (type_1 *)(**(type_7 **)(var_41 + 0x1dfc4c))
                                 (*(int *)(var_41 + 0x1def2c) + -0x3784,
                                  *(int *)(var_41 + 0x1def30) + -0x288c,0x544,
                                  *(int *)(var_41 + 0x1def30) + -0x26f8);
    return var_27;
  }
  if (*(int *)(var_30 + 0x3350) != 0) {
    (**(type_7 **)(var_41 + 0x1df824))
              (0x8000,*(int *)(var_41 + 0x1def30) + -0x288c,*(int *)(var_41 + 0x1def30) + -0x2704,
               0x546,*(int *)(var_41 + 0x1def28) + -0x62ac,var_30 + 0x340);
  }
  if (var_8 == 0) {
    var_27 = (type_1 *)(**(type_7 **)(var_41 + 0x1dfc4c))
                                 (*(int *)(var_41 + 0x1def24) + 0x1cac,
                                  *(int *)(var_41 + 0x1def30) + -0x288c,0x547,
                                  *(int *)(var_41 + 0x1def30) + -0x26f8);
    return var_27;
  }
  if (*(int *)(var_8 + 0x1c) != -0x54535255) goto LAB_001c9db0;
  var_27 = (type_1 *)(**(type_7 **)(var_41 + 0x1dfe74))(var_30,0,0,1,var_8);
  if (var_27 != (type_1 *)0x0) {
    sVar5 = *(ssize_t *)(var_30 + 0x234);
    var_9 = *(size_t *)(var_30 + 0x228);
    sVar24 = *(size_t *)(var_30 + 0x22c);
    var_57 = *(int *)(var_30 + 0x230);
    uStack_26c = 0;
    uStack_270 = 0;
    uVar6 = (**(type_7 **)(var_41 + 0x1dfd98))(var_30,var_8);
    uVar7 = (**(type_7 **)(var_41 + 0x1df518))(var_27,var_8);
    var_10 = (**(type_7 **)(var_41 + 0x1dfaf8))(var_30);
    if (((var_10 == 4) || (var_10 = (**(type_7 **)(var_41 + 0x1dfaf8))(var_30), var_10 == 3)) &&
       ((var_10 = (**(type_7 **)(var_41 + 0x1dfaf8))(var_27), var_10 == 4 ||
        (var_10 = (**(type_7 **)(var_41 + 0x1dfaf8))(var_27), var_10 == 3)))) {
      (**(type_7 **)(var_41 + 0x1df780))(7);
      var_53 = var_27->rows;
      if ((int)var_53 < 0) {
        var_43 = *(type_7 **)(var_41 + 0x1df780);
        if (var_52 < (int)(var_53 + 0x3f) >> 6) goto LAB_001c9d10;
LAB_001c9c58:
        var_38 = (int)var_53 < 0x80;
      }
      else {
        var_43 = *(type_7 **)(var_41 + 0x1df780);
        if ((int)var_53 >> 6 <= var_52) goto LAB_001c9c58;
LAB_001c9d10:
        (*var_43)(7);
        var_38 = var_54 < 2;
      }
      var_10 = 1;
      if ((bool)(var_38 ^ 1)) {
        (**(type_7 **)(var_41 + 0x1df780))(7);
        var_53 = var_27->rows;
        if ((int)var_53 < 0) {
          var_53 = var_53 + 0x3f;
        }
        var_10 = (int)var_53 >> 6;
        var_43 = *(type_7 **)(var_41 + 0x1df780);
        if (var_55 < var_10) {
LAB_001c9ce8:
          (*var_43)(7);
          var_10 = extraout_v1_08;
        }
        goto LAB_001c9b14;
      }
      var_56 = *(int *)(var_41 + 0x1defe4);
    }
    else {
      uVar38 = (**(type_7 **)(var_41 + 0x1df780))(7);
      if ((int)((type_9)uVar38 >> 0x20) == 0) {
        var_43 = *(type_7 **)(var_41 + 0x1df780);
        if (1 < (type_3)uVar38) goto LAB_001c9b00;
        uVar38 = (*var_43)(7);
        if ((int)((type_9)uVar38 >> 0x20) != 0) goto LAB_001c9afc;
        var_43 = *(type_7 **)(var_41 + 0x1df780);
        if (1 < (type_3)uVar38) goto LAB_001c9b00;
        var_10 = 1;
      }
      else {
LAB_001c9afc:
        var_43 = *(type_7 **)(var_41 + 0x1df780);
LAB_001c9b00:
        uVar38 = (*var_43)(7);
        if (((int)((type_9)uVar38 >> 0x20) == 0) &&
           (var_43 = *(type_7 **)(var_41 + 0x1df780), (type_3)uVar38 < 2)) goto LAB_001c9ce8;
        var_10 = 2;
      }
LAB_001c9b14:
      var_56 = *(int *)(var_41 + 0x1defe4);
    }
    puStack_254 = &uStack_270;
    iStack_250 = 1;
    iStack_268 = var_30;
    iStack_264 = var_8;
    uStack_260 = uVar7;
    uStack_25c = uVar6;
    pIStack_258 = var_27;
    (**(type_7 **)(var_41 + 0x1df7dc))(var_56 + 0x594c,&iStack_268,var_10,0);
    var_8 = iStack_250;
    (**(type_7 **)(var_41 + 0x1df538))(uVar7);
    (**(type_7 **)(var_41 + 0x1df538))(uVar6);
    var_27->type = *(type_10 *)(var_30 + 0x2a0);
    if (var_9 != 0) {
      var_57 = (var_9 - var_27->columns) - var_57;
    }
    (var_27->page).width = var_9;
    (var_27->page).height = sVar24;
    (var_27->page).x = var_57;
    (var_27->page).y = sVar5;
    if (var_8 == 0) {
      var_27 = (type_1 *)(**(type_7 **)(var_41 + 0x1df590))(var_27);
    }
  }
  if (var_58 == *piVar18) {
    return var_27;
  }
  (**(type_7 **)(var_41 + 0x1df6a8))();
LAB_001c9db0:
  var_27 = (type_1 *)(**(type_7 **)(var_41 + 0x1dfc4c))
                               (*(int *)(var_41 + 0x1def24) + 0x294c,
                                *(int *)(var_41 + 0x1def30) + -0x288c,0x548,
                                *(int *)(var_41 + 0x1def30) + -0x26f8);
  return var_27;
}


(translation_unit (function_definition type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (function_declarator declarator: (identifier) parameters: (parameter_list (parameter_declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier))))))))) (parameter_declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier))))))))) (parameter_declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier))))))))))))))))) body: (compound_statement (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))))))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier))))))))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier))))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier))))))))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier))))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier))))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier))))))))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))))))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier))))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier))))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator 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: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier))))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator 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: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier))))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier))))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))))))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier))))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier))))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier))))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier))))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier))))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier))))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))))))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier))))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier))))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier))))))))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier))))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier))))))))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier))))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier))))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier))))))))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier))))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier))))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier))))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier))))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier))))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier))))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier))))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier))))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier))))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier))))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier))))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier))))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier))))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier))))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier))))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier))))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier))))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier))))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier))))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier))))))))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier))))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier))))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier))))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier))))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier))))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier))))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier))))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier))))))))) (declaration type: (primitive_type) declarator: (identifier)) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (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)))))) alternative: (else_clause (if_statement condition: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (number_literal)))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator 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: (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: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier) (identifier) (pointer_expression argument: (identifier)) (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) 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 declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (unary_expression argument: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (subscript_expression argument: (identifier) index: (number_literal))) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) 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 declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (unary_expression argument: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) 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 declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (unary_expression argument: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (subscript_expression argument: (identifier) index: (number_literal)))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) 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: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))))))))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (number_literal) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (number_literal)))) consequence: (goto_statement label: (statement_identifier))) (labeled_statement label: (statement_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: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (binary_expression left: (identifier) right: (identifier)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))))) consequence: (goto_statement label: (statement_identifier)))) alternative: (else_clause (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (number_literal)))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal)))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))))))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal)))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (binary_expression left: (identifier) right: (identifier)))) 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: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (identifier))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))))) consequence: (goto_statement label: (statement_identifier))) (goto_statement label: (statement_identifier))))) alternative: (else_clause (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: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (identifier))) 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: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (identifier))) consequence: (goto_statement label: (statement_identifier))) (goto_statement label: (statement_identifier)))))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (number_literal)))) (labeled_statement label: (statement_identifier) (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (parenthesized_expression (binary_expression left: (identifier) right: (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (subscript_expression argument: (identifier) index: (number_literal))) right: (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (number_literal) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (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: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))))) (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (binary_expression left: (identifier) right: (identifier)))) 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: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))))) consequence: (goto_statement label: (statement_identifier))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (number_literal)))) (goto_statement label: (statement_identifier)))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))))))) alternative: (else_clause (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (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: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (identifier))) consequence: (goto_statement label: (statement_identifier))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (identifier))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (number_literal) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))) consequence: (goto_statement label: (statement_identifier))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (binary_expression left: (identifier) right: (identifier)))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))))) consequence: (goto_statement label: (statement_identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (identifier))) consequence: (goto_statement label: (statement_identifier))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))))) alternative: (else_clause (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))))) consequence: (goto_statement label: (statement_identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (identifier))) consequence: (goto_statement label: (statement_identifier))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (number_literal) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (binary_expression left: (identifier) right: (identifier)))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))))) consequence: (goto_statement label: (statement_identifier))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (number_literal)))) (goto_statement label: (statement_identifier)))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (number_literal))))) alternative: (else_clause (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (goto_statement label: (statement_identifier))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (identifier))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (number_literal) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))) consequence: (goto_statement label: (statement_identifier))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (binary_expression left: (identifier) right: (identifier)))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (goto_statement label: (statement_identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (goto_statement label: (statement_identifier))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (number_literal))))) alternative: (else_clause (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (number_literal)))) alternative: (else_clause (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 declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (parenthesized_expression (binary_expression left: (identifier) right: (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (subscript_expression argument: (identifier) index: (number_literal))) right: (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier) (identifier) (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: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (pointer_expression argument: (identifier)) (identifier))))))) condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (break_statement)) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (number_literal)))) consequence: (goto_statement label: (statement_identifier))) (labeled_statement label: (statement_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: (number_literal) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (binary_expression left: (identifier) right: (identifier)))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (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: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (identifier))) consequence: (goto_statement label: (statement_identifier))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (identifier))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (number_literal) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))) consequence: (goto_statement label: (statement_identifier))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))))))) alternative: (else_clause (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (number_literal)))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))))) consequence: (goto_statement label: (statement_identifier))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (binary_expression left: (identifier) right: (identifier)))) 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: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (identifier))) 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: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (identifier))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (number_literal))))) alternative: (else_clause (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))))))) (goto_statement label: (statement_identifier)))) (goto_statement label: (statement_identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (goto_statement label: (statement_identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (identifier))) consequence: (goto_statement label: (statement_identifier))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))))) condition: (parenthesized_expression (true)))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier)))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) right: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (number_literal)))))) right: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (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 declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier) (pointer_expression argument: (identifier)) (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: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))))) right: (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (number_literal))))))) consequence: (compound_statement (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (subscript_expression argument: (identifier) index: (number_literal))) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))))))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (subscript_expression argument: (identifier) index: (number_literal))) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))))))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier)))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (subscript_expression argument: (identifier) index: (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) right: (parenthesized_expression (binary_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal)))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (subscript_expression argument: (identifier) index: (number_literal))) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (subscript_expression argument: (identifier) index: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (number_literal) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) consequence: (break_statement))) alternative: (else_clause (compound_statement (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier) (pointer_expression argument: (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 declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier) (identifier))))) condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))))))) (expression_statement (assignment_expression left: (identifier) right: (identifier)))) condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier) (number_literal) (number_literal) (number_literal))))))))))))))) (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (identifier))))) consequence: (compound_statement (return_statement (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))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (goto_statement label: (statement_identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (number_literal) (identifier)))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (number_literal) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (number_literal) (identifier)))) (labeled_statement label: (statement_identifier) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (labeled_statement label: (statement_identifier) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (number_literal) (binary_expression left: (identifier) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (identifier)))) alternative: (else_clause (if_statement condition: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (number_literal)))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator 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 (number_literal) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (number_literal)))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))) value: (number_literal)))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (pointer_expression argument: (identifier)) (subscript_expression argument: (identifier) index: (number_literal)) (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (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 declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (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 (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (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)))) right: (binary_expression left: (identifier) right: (number_literal)))))) right: (parenthesized_expression (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)))) right: (binary_expression left: (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)))) right: (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 (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)) right: (number_literal)))) consequence: (goto_statement label: (statement_identifier))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)) right: (identifier))) consequence: (goto_statement label: (statement_identifier))) (labeled_statement label: (statement_identifier) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (if_statement condition: (parenthesized_expression (cast_expression type: (type_descriptor type: (primitive_type)) value: (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 (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) 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 declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (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))))) (if_statement condition: (parenthesized_expression (binary_expression left: (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)))) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (number_literal) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (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)))) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (number_literal) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (number_literal)))) alternative: (else_clause (compound_statement (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)))))))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (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)))) right: (number_literal))) right: (parenthesized_expression (comma_expression left: (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)))))) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal)))))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (number_literal)))))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))))) (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 declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (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)) (pointer_expression argument: (identifier)) (identifier) (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (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)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (subscript_expression argument: (identifier) index: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))))))))) (expression_statement (assignment_expression left: (identifier) right: (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)))) (goto_statement label: (statement_identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (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 declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (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 declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (number_literal) (identifier)))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (number_literal) (identifier)))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (number_literal) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (labeled_statement label: (statement_identifier) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (number_literal) (binary_expression left: (identifier) right: (number_literal))))))) alternative: (else_clause (if_statement condition: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (number_literal)))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator 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 (number_literal) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (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 declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) consequence: (goto_statement label: (statement_identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (number_literal)))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (pointer_expression argument: (identifier)) (subscript_expression argument: (identifier) index: (number_literal)) (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (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 (identifier) (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 (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (unary_expression argument: (cast_expression type: (type_descriptor type: (primitive_type)) value: (subscript_expression argument: (identifier) index: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (unary_expression argument: (cast_expression type: (type_descriptor type: (primitive_type)) value: (subscript_expression argument: (identifier) index: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (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 (identifier) (identifier) (subscript_expression argument: (identifier) index: (number_literal)) (number_literal))))) (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 (identifier) (subscript_expression argument: (identifier) index: (number_literal)) (subscript_expression argument: (identifier) index: (number_literal)) (identifier))))))))))) (return_statement (identifier)))) (goto_statement label: (statement_identifier)))) (goto_statement label: (statement_identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (identifier) (identifier) (number_literal) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (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 declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (number_literal) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (labeled_statement label: (statement_identifier) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (number_literal) (binary_expression left: (pointer_expression argument: (cast_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 (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (labeled_statement label: (statement_identifier) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (number_literal) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (identifier)))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (number_literal)))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator 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 (number_literal) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (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 declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) consequence: (goto_statement label: (statement_identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (number_literal) (number_literal) (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (subscript_expression argument: (identifier) index: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (subscript_expression argument: (identifier) index: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_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: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (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 (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (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)))) right: (binary_expression left: (identifier) right: (number_literal)))))) right: (parenthesized_expression (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)))) right: (binary_expression left: (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)))) right: (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 (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)) right: (number_literal)))) consequence: (goto_statement label: (statement_identifier))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)) right: (identifier))) consequence: (goto_statement label: (statement_identifier))) (labeled_statement label: (statement_identifier) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (if_statement condition: (parenthesized_expression (cast_expression type: (type_descriptor type: (primitive_type)) value: (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 (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) 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 declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (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))))) (if_statement condition: (parenthesized_expression (binary_expression left: (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)))) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (number_literal) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (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)))) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (number_literal) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (number_literal)))) alternative: (else_clause (compound_statement (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)))))))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (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)))) right: (number_literal))) right: (parenthesized_expression (comma_expression left: (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)))))) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal)))))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (number_literal)))))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (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)) (pointer_expression argument: (identifier)) (identifier) (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (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)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (subscript_expression argument: (identifier) index: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (parenthesized_expression (binary_expression left: (unary_expression argument: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (subscript_expression argument: (identifier) index: (number_literal)))))))))))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))))))))) (expression_statement (assignment_expression left: (identifier) right: (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)))) (goto_statement label: (statement_identifier))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (identifier) (identifier) (number_literal) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (binary_expression left: (pointer_expression argument: (cast_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 (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (binary_expression left: (pointer_expression argument: (cast_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 (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: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (binary_expression left: (pointer_expression argument: (cast_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: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (number_literal) (number_literal) (number_literal) (identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator 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: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator 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: (number_literal))) (expression_statement (assignment_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 (identifier) (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 (identifier) (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 (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (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)))) right: (binary_expression left: (identifier) right: (number_literal)))))) right: (parenthesized_expression (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)))) right: (binary_expression left: (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)))) right: (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 (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)) right: (number_literal)))) consequence: (goto_statement label: (statement_identifier))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)) right: (identifier))) consequence: (goto_statement label: (statement_identifier))) (labeled_statement label: (statement_identifier) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (if_statement condition: (parenthesized_expression (cast_expression type: (type_descriptor type: (primitive_type)) value: (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 (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) 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 declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (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))))) (if_statement condition: (parenthesized_expression (binary_expression left: (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)))) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (number_literal) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (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)))) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (number_literal) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (number_literal)))) alternative: (else_clause (compound_statement (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)))))))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (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)))) right: (number_literal))) right: (parenthesized_expression (comma_expression left: (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)))))) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal)))))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (number_literal)))))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (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)) (pointer_expression argument: (identifier)) (identifier) (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (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)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (parenthesized_expression (binary_expression left: (unary_expression argument: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (subscript_expression argument: (identifier) index: (number_literal)))))))))))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (pointer_expression argument: (identifier)))) consequence: (compound_statement (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))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (binary_expression left: (pointer_expression argument: (cast_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)))))

/* WARNING: Type propagation algorithm not settling */

undefined4 *******
MASKED(undefined4 *******param_1,undefined4 *******param_2,undefined4 ******param_3)

{
  bool bVar1;
  undefined4 ******ppppppuVar2;
  undefined *puVar3;
  undefined4 uVar4;
  undefined4 uVar5;
  undefined4 ******ppppppuVar6;
  undefined4 ******ppppppuVar7;
  int extraout_v1;
  int extraout_v1_00;
  int extraout_v1_01;
  int extraout_v1_02;
  int extraout_v1_03;
  int extraout_v1_04;
  int extraout_v1_05;
  int extraout_v1_06;
  int extraout_v1_07;
  int extraout_v1_08;
  int extraout_v1_09;
  int extraout_v1_10;
  undefined *puVar8;
  undefined4 *******pppppppuVar9;
  int iVar10;
  int iVar11;
  undefined4 *******pppppppuVar12;
  undefined4 *******pppppppuVar13;
  int iVar14;
  int iVar15;
  undefined4 *******unaff_s0;
  undefined4 *******unaff_s1;
  undefined4 ******unaff_s2;
  undefined4 *******unaff_s3;
  int *piVar16;
  int *piVar17;
  undefined4 ******unaff_s4;
  int *piVar18;
  undefined4 *******unaff_s5;
  undefined4 *******unaff_s6;
  undefined4 ******ppppppuVar19;
  undefined4 *******unaff_s7;
  undefined *puVar20;
  code *pcVar21;
  undefined4 *******unaff_s8;
  undefined4 ******ppppppuVar22;
  code *pcVar23;
  code *pcVar24;
  double dVar25;
  double dVar26;
  double dVar27;
  double dVar28;
  double dVar29;
  double dVar30;
  double dVar31;
  double dVar32;
  double dVar33;
  double dVar34;
  double dVar35;
  undefined8 uVar36;
  undefined4 uStack_270;
  undefined4 uStack_26c;
  int iStack_268;
  int iStack_264;
  undefined4 uStack_260;
  undefined4 uStack_25c;
  undefined4 *******pppppppuStack_258;
  undefined4 *puStack_254;
  int iStack_250;
  int iStack_24c;
  undefined4 *******pppppppuStack_248;
  undefined4 *******pppppppuStack_244;
  undefined4 ******ppppppuStack_240;
  int *piStack_23c;
  int *piStack_238;
  undefined4 *******pppppppuStack_234;
  undefined4 *******pppppppuStack_230;
  undefined4 *******pppppppuStack_22c;
  undefined4 *******pppppppuStack_228;
  code *pcStack_224;
  undefined4 *******pppppppuStack_210;
  undefined4 *******pppppppuStack_20c;
  code *pcStack_208;
  undefined4 ******ppppppuStack_1fc;
  undefined4 uStack_1f8;
  undefined4 uStack_1f4;
  undefined4 *******pppppppuStack_1f0;
  undefined4 *******pppppppuStack_1ec;
  undefined4 *******pppppppuStack_1e8;
  int *piStack_1e4;
  undefined4 *******pppppppuStack_1e0;
  undefined4 *puStack_1dc;
  undefined4 *******pppppppuStack_1d8;
  int iStack_1d4;
  undefined4 *******pppppppuStack_1d0;
  undefined4 *******pppppppuStack_1cc;
  undefined4 ******ppppppuStack_1c8;
  undefined4 *******pppppppuStack_1c4;
  int *piStack_1c0;
  undefined4 *******pppppppuStack_1bc;
  undefined4 *******pppppppuStack_1b8;
  undefined4 *******pppppppuStack_1b4;
  undefined4 *******pppppppuStack_1b0;
  code *pcStack_1ac;
  undefined4 ******ppppppuStack_198;
  undefined4 *******pppppppuStack_194;
  undefined4 ******ppppppuStack_190;
  code *pcStack_188;
  undefined4 *******pppppppuStack_17c;
  undefined4 *******pppppppuStack_178;
  undefined4 ******ppppppuStack_174;
  undefined4 *******pppppppuStack_170;
  code *pcStack_16c;
  undefined4 ******ppppppuStack_158;
  undefined4 *******pppppppuStack_154;
  undefined *puStack_150;
  undefined4 uStack_148;
  undefined4 uStack_144;
  undefined4 *******pppppppuStack_13c;
  undefined4 *******pppppppuStack_138;
  undefined4 ******ppppppuStack_134;
  undefined4 *******pppppppuStack_130;
  undefined4 *******pppppppuStack_12c;
  undefined4 *******pppppppuStack_128;
  undefined4 ******ppppppuStack_124;
  undefined4 *puStack_120;
  int iStack_11c;
  undefined4 *******pppppppuStack_118;
  undefined4 *******pppppppuStack_114;
  undefined4 ******ppppppuStack_110;
  undefined4 *******pppppppuStack_10c;
  undefined4 ******ppppppuStack_108;
  undefined4 *******pppppppuStack_104;
  undefined4 *******pppppppuStack_100;
  code *pcStack_fc;
  undefined4 ******local_e8;
  undefined4 *******local_e4;
  double local_c8;
  double local_a0;
  undefined4 *******local_80;
  undefined4 *******local_7c;
  undefined4 ******local_78;
  undefined4 *******local_74;
  undefined4 *******local_70;
  undefined4 *******local_6c;
  undefined4 *******local_68;
  undefined4 *******local_64;
  undefined4 *******local_60;
  int local_5c;
  
  puVar20 = PTR___stack_chk_guard_003a9230;
  local_5c = *(int *)PTR___stack_chk_guard_003a9230;
  if (param_1 == (undefined4 *******)0x0) {
LAB_001c8ef8:
    param_1 = unaff_s1;
    (*(code *)PTR___assert_fail_003a9608)
              (PTR_LAB_003a88e0 + 0xdd0,PTR_s_courses_003a88ec + -0x288c,0x322,
               PTR_s_courses_003a88ec + -0x2688);
  }
  else if (param_1[0xcdb] == (undefined4 ******)0xabacadab) {
    if (param_1[0xcd4] != (undefined4 ******)0x0) {
      local_e4 = param_1 + 0xd0;
      local_e8 = (undefined4 ******)(PTR_s_t_to_left_003a88e4 + -0x62ac);
      (*(code *)PTR_LogMagickEvent_003a91e0)
                (0x8000,PTR_s_courses_003a88ec + -0x288c,PTR_s_courses_003a88ec + -0x269c,0x325);
    }
    unaff_s6 = (undefined4 *******)(*(code *)PTR_NewImageList_003a8e84)();
    local_80 = unaff_s6;
    ppppppuVar2 = (undefined4 ******)
                  (*(code *)PTR_ParseGravityGeometry_003a97fc)(param_1,param_2,&local_7c,param_3);
    unaff_s4 = local_78;
    unaff_s0 = local_7c;
    unaff_s3 = (undefined4 *******)PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;
    if ((int)ppppppuVar2 << 0xe < 0) {
      ppppppuVar7 = param_1[7];
      if (local_7c == (undefined4 *******)0x0) {
        local_7c = (undefined4 *******)0x1;
        dVar35 = *(double *)(PTR_LAB_003a88e0 + 0x1438);
      }
      else {
        dVar35 = (double)(int)local_7c;
        if ((int)local_7c < 0) {
          dVar35 = dVar35 + *(double *)(PTR_LAB_003a88e0 + 0x1418);
        }
      }
      if (local_78 == (undefined4 ******)0x0) {
        dVar30 = *(double *)(PTR_LAB_003a88e0 + 0x1438);
        local_78 = (undefined4 ******)0x1;
        if (((uint)ppppppuVar2 & 0x2000) != 0) goto LAB_001c8e14;
LAB_001c8484:
        pppppppuVar9 = local_74;
        if ((int)local_74 < 0) {
          pppppppuVar9 = (undefined4 *******)-(int)local_74;
        }
        puVar8 = (undefined *)((int)param_1[6] - (int)pppppppuVar9);
        pppppppuVar9 = local_70;
        if ((int)local_70 < 0) {
          pppppppuVar9 = (undefined4 *******)-(int)local_70;
        }
        puVar3 = (undefined *)((int)ppppppuVar7 - (int)pppppppuVar9);
      }
      else {
        dVar30 = (double)(int)local_78;
        if ((int)local_78 < 0) {
          dVar30 = dVar30 + *(double *)(PTR_LAB_003a88e0 + 0x1418);
        }
        if (((uint)ppppppuVar2 & 0x2000) == 0) goto LAB_001c8484;
LAB_001c8e14:
        pppppppuVar9 = local_74;
        if ((int)local_74 < 0) {
          pppppppuVar9 = (undefined4 *******)-(int)local_74;
        }
        puVar8 = (undefined *)((int)pppppppuVar9 + (int)param_1[6]);
        if ((int)local_70 < 0) {
          puVar3 = (undefined *)((int)ppppppuVar7 - (int)local_70);
        }
        else {
          puVar3 = (undefined *)((int)local_70 + (int)ppppppuVar7);
        }
      }
      unaff_s4 = (undefined4 ******)((uint)ppppppuVar2 & 0x2000);
      dVar34 = (double)(int)puVar8;
      if ((int)puVar8 < 0) {
        dVar34 = dVar34 + *(double *)(PTR_LAB_003a88e0 + 0x1418);
      }
      dVar35 = dVar34 / dVar35;
      local_c8 = (double)(int)puVar3;
      if ((int)puVar3 < 0) {
        local_c8 = local_c8 + *(double *)(PTR_LAB_003a88e0 + 0x1418);
      }
      dVar25 = *(double *)(PTR_LAB_003a88e0 + 0x1438);
      local_a0 = dVar25;
      if (dVar35 < dVar25) {
        local_a0 = *(double *)(PTR_LAB_003a88e0 + 0x1438);
        dVar35 = dVar25;
      }
      if (local_a0 <= local_c8 / dVar30) {
        local_a0 = local_c8 / dVar30;
      }
      dVar30 = 0.0;
      unaff_s7 = local_70;
      if (0.0 < local_c8) {
        dVar25 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4780);
        dVar31 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x4788);
        if (unaff_s4 != (undefined4 ******)0x0) goto LAB_001c8b70;
LAB_001c854c:
        unaff_s7 = local_70;
        dVar32 = dVar30;
        if ((int)local_70 < 1) {
          dVar32 = dVar30 - (double)(int)local_70;
        }
        dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);
        dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);
        if (dVar32 - dVar26 < dVar27 - dVar32) {
          dVar26 = *(double *)((int)unaff_s3 + 0x4788);
          pcVar23 = (code *)PTR_floor_003a9670;
          if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d7c;
        }
        else {
          if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {
LAB_001c8d7c:
            iVar15 = -0x7ffffdff;
            goto joined_r0x001c8cbc;
          }
          dVar26 = *(double *)((int)unaff_s3 + 0x4788);
          pcVar23 = (code *)PTR_ceil_003a8c20;
        }
        if (dVar26 < dVar32) {
          iVar15 = 0x7ffffdff;
        }
        else {
          dVar32 = (double)(*pcVar23)(dVar32);
          iVar15 = (int)dVar32;
        }
joined_r0x001c8cbc:
        dVar30 = dVar30 + local_a0;
        if ((int)unaff_s7 < 0) {
          dVar32 = 0.0;
        }
        else {
          dVar32 = (double)(int)unaff_s7;
        }
        dVar32 = dVar30 + dVar32;
        dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);
        dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);
        if (dVar32 - dVar26 < dVar27 - dVar32) {
          if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {
            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8630;
            goto LAB_001c8cec;
          }
        }
        else if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {
          if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;
          goto LAB_001c8d18;
        }
LAB_001c8c88:
        iVar14 = -0x7ffffdff;
LAB_001c8644:
        do {
          unaff_s8 = (undefined4 *******)(iVar14 - iVar15);
          param_2 = (undefined4 *******)((int)param_1[0x8d] + iVar15);
          dVar32 = 0.0;
          local_68 = unaff_s8;
          local_60 = param_2;
          if (0.0 < dVar34) {
            dVar26 = *(double *)((int)unaff_s3 + 0x4788);
            unaff_s6 = &local_6c;
            dVar27 = *(double *)((int)unaff_s3 + 0x4780);
            do {
              unaff_s7 = local_74;
              if (unaff_s4 == (undefined4 ******)0x0) {
                dVar33 = dVar32;
                if ((int)local_74 < 1) {
                  dVar33 = dVar32 - (double)(int)local_74;
                }
                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);
                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);
                if (dVar33 - dVar28 < dVar29 - dVar33) {
                  if (*(double *)((int)unaff_s3 + 0x4780) <= dVar33) {
                    pcVar23 = (code *)PTR_floor_003a9670;
                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c86e8;
LAB_001c8c78:
                    iVar15 = 0x7ffffdff;
                    goto LAB_001c8700;
                  }
LAB_001c8b04:
                  dVar32 = dVar32 + dVar35;
                  iVar15 = -0x7ffffdff;
                  if ((int)unaff_s7 < 0) goto LAB_001c8b14;
LAB_001c8708:
                  dVar33 = (double)(int)unaff_s7;
                }
                else {
                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8b04;
                  pcVar23 = (code *)PTR_ceil_003a8c20;
                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c8c78;
LAB_001c86e8:
                  dVar33 = (double)(*pcVar23)(dVar33);
                  iVar15 = (int)dVar33;
LAB_001c8700:
                  dVar32 = dVar32 + dVar35;
                  if (-1 < (int)unaff_s7) goto LAB_001c8708;
LAB_001c8b14:
                  dVar33 = 0.0;
                }
                dVar33 = dVar32 + dVar33;
                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);
                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);
                if (dVar33 - dVar28 < dVar29 - dVar33) {
                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;
                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;
LAB_001c8768:
                  dVar33 = (double)(*(code *)PTR_floor_003a9670)(dVar33);
                  iVar14 = (int)dVar33;
                }
                else {
                  if (dVar33 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8a44;
                  if (*(double *)((int)unaff_s3 + 0x4788) < dVar33) goto LAB_001c88b8;
LAB_001c8abc:
                  dVar33 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);
                  iVar14 = (int)dVar33;
                }
              }
              else {
                dVar33 = dVar32;
                if (0 < (int)local_74) {
                  dVar33 = dVar32 - (double)(int)local_74;
                }
                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);
                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);
                if (dVar33 - dVar28 < dVar29 - dVar33) {
                  if (dVar27 <= dVar33) {
                    pcVar23 = (code *)PTR_floor_003a9670;
                    if (dVar33 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8838;
LAB_001c8c68:
                    iVar15 = 0x7ffffdff;
                    goto LAB_001c8850;
                  }
LAB_001c8b24:
                  dVar32 = dVar32 + dVar35;
                  iVar15 = -0x7ffffdff;
                  if ((int)unaff_s7 < 0) goto LAB_001c8b34;
LAB_001c8858:
                  dVar33 = 0.0;
                }
                else {
                  if (dVar33 < dVar27) goto LAB_001c8b24;
                  pcVar23 = (code *)PTR_ceil_003a8c20;
                  if (dVar26 < dVar33) goto LAB_001c8c68;
LAB_001c8838:
                  dVar33 = (double)(*pcVar23)(dVar33);
                  iVar15 = (int)dVar33;
LAB_001c8850:
                  dVar32 = dVar32 + dVar35;
                  if (-1 < (int)unaff_s7) goto LAB_001c8858;
LAB_001c8b34:
                  dVar33 = (double)(int)unaff_s7;
                }
                dVar33 = dVar32 + dVar33;
                dVar28 = (double)(*(code *)PTR_floor_003a9670)(dVar33);
                dVar29 = (double)(*(code *)PTR_ceil_003a8c20)(dVar33);
                if (dVar33 - dVar28 < dVar29 - dVar33) {
                  if (dVar33 < dVar25) goto LAB_001c8a44;
                  if (dVar33 <= dVar26) goto LAB_001c8768;
LAB_001c88b8:
                  iVar14 = 0x7ffffdff;
                }
                else if (dVar25 <= dVar33) {
                  if (dVar33 <= dVar31) goto LAB_001c8abc;
                  iVar14 = 0x7ffffdff;
                }
                else {
LAB_001c8a44:
                  iVar14 = -0x7ffffdff;
                }
              }
              unaff_s8 = (undefined4 *******)(iVar14 - iVar15);
              param_2 = (undefined4 *******)((int)param_1[0x8c] + iVar15);
              local_6c = unaff_s8;
              local_64 = param_2;
              iVar15 = (*(code *)PTR_CropImage_003a90b8)(param_1,unaff_s6,param_3);
              if (iVar15 != 0) {
                (*(code *)PTR_AppendImageToList_003a9880)(&local_80,iVar15);
              }
            } while (dVar32 < dVar34);
          }
          unaff_s5 = unaff_s3;
          if (local_c8 <= dVar30) break;
          if (unaff_s4 == (undefined4 ******)0x0) goto LAB_001c854c;
LAB_001c8b70:
          unaff_s7 = local_70;
          dVar32 = dVar30;
          if (0 < (int)local_70) {
            dVar32 = dVar30 - (double)(int)local_70;
          }
          dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);
          dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);
          if (dVar32 - dVar26 < dVar27 - dVar32) {
            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) goto LAB_001c8d8c;
            pcVar23 = (code *)PTR_floor_003a9670;
            if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8d50;
LAB_001c8bd8:
            dVar32 = (double)(*pcVar23)(dVar32);
            iVar15 = (int)dVar32;
LAB_001c8bf0:
            dVar30 = dVar30 + local_a0;
            if (-2 < (int)unaff_s7) goto LAB_001c8c00;
LAB_001c8d6c:
            dVar32 = (double)(int)unaff_s7;
          }
          else {
            if (dVar32 < *(double *)((int)unaff_s3 + 0x4780)) {
LAB_001c8d8c:
              iVar15 = -0x7ffffdff;
              goto LAB_001c8bf0;
            }
            pcVar23 = (code *)PTR_ceil_003a8c20;
            if (dVar32 <= *(double *)((int)unaff_s3 + 0x4788)) goto LAB_001c8bd8;
LAB_001c8d50:
            iVar15 = 0x7ffffdff;
            dVar30 = dVar30 + local_a0;
            if ((int)unaff_s7 < -1) goto LAB_001c8d6c;
LAB_001c8c00:
            dVar32 = 0.0;
          }
          dVar32 = dVar30 + dVar32;
          dVar26 = (double)(*(code *)PTR_floor_003a9670)(dVar32);
          dVar27 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);
          if (dVar32 - dVar26 < dVar27 - dVar32) {
            if (*(double *)((int)unaff_s3 + 0x4780) <= dVar32) {
              if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) {
LAB_001c8cec:
                iVar14 = 0x7ffffdff;
              }
              else {
LAB_001c8630:
                dVar32 = (double)(*(code *)PTR_floor_003a9670)(dVar32);
                iVar14 = (int)dVar32;
              }
              goto LAB_001c8644;
            }
            goto LAB_001c8c88;
          }
          if (dVar32 < dVar25) goto LAB_001c8c88;
          if (*(double *)((int)unaff_s3 + 0x4788) < dVar32) goto LAB_001c8cec;
LAB_001c8d18:
          dVar32 = (double)(*(code *)PTR_ceil_003a8c20)(dVar32);
          iVar14 = (int)dVar32;
        } while( true );
      }
      (*(code *)PTR_ClearMagickException_003a90f8)(param_3);
      pppppppuVar9 = local_80;
      unaff_s0 = param_2;
    }
    else {
      unaff_s3 = &local_7c;
      if (((local_7c == (undefined4 *******)0x0) && (local_78 == (undefined4 ******)0x0)) ||
         (((uint)ppppppuVar2 & 3) != 0)) {
        local_80 = (undefined4 *******)(*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);
        pppppppuVar9 = local_80;
        unaff_s4 = ppppppuVar2;
        if ((local_80 != (undefined4 *******)0x0) &&
           (unaff_s4 = (undefined4 ******)((uint)ppppppuVar2 & 0x2000),
           unaff_s4 != (undefined4 ******)0x0)) {
          local_80[0x8c] = (undefined4 ******)((int)local_80[0x8c] - (int)local_74);
          local_80[0x8d] = (undefined4 ******)((int)local_80[0x8d] - (int)local_70);
          local_80[0x8a] = local_7c;
          local_80[0x8b] = local_78;
        }
      }
      else {
        unaff_s7 = (undefined4 *******)param_1[6];
        if ((local_7c < unaff_s7) || (local_78 < param_1[7])) {
          ppppppuVar2 = param_1[0x8b];
          if ((undefined4 *******)param_1[0x8a] != (undefined4 *******)0x0) {
            unaff_s7 = (undefined4 *******)param_1[0x8a];
          }
          if (ppppppuVar2 == (undefined4 ******)0x0) {
            ppppppuVar2 = param_1[7];
          }
          if (local_7c == (undefined4 *******)0x0) {
            unaff_s0 = unaff_s7;
          }
          if (local_78 == (undefined4 ******)0x0) {
            unaff_s4 = ppppppuVar2;
          }
          pppppppuVar9 = local_80;
          if (0 < (int)ppppppuVar2) {
            unaff_s3 = (undefined4 *******)0x0;
            unaff_s8 = &local_80;
            do {
              unaff_s5 = (undefined4 *******)0x0;
              if ((int)unaff_s7 < 1) {
                pppppppuVar9 = local_80;
                if (unaff_s6 == (undefined4 *******)0x0) break;
              }
              else {
                do {
                  local_7c = unaff_s0;
                  local_78 = unaff_s4;
                  local_74 = unaff_s5;
                  local_70 = unaff_s3;
                  unaff_s6 = (undefined4 *******)
                             (*(code *)PTR_CropImage_003a90b8)(param_1,&local_7c,param_3);
                  pppppppuVar9 = local_80;
                  if (unaff_s6 == (undefined4 *******)0x0) goto LAB_001c8908;
                  unaff_s5 = (undefined4 *******)((int)unaff_s5 + (int)unaff_s0);
                  (*(code *)PTR_AppendImageToList_003a9880)(unaff_s8,unaff_s6);
                } while ((int)unaff_s5 < (int)unaff_s7);
              }
              unaff_s3 = (undefined4 *******)((int)unaff_s3 + (int)unaff_s4);
              pppppppuVar9 = local_80;
            } while ((int)unaff_s3 < (int)ppppppuVar2);
          }
        }
        else {
          local_e8 = param_3;
          pppppppuVar9 = (undefined4 *******)(*(code *)PTR_CloneImage_003a9830)(param_1,0,0,1);
        }
      }
    }
LAB_001c8908:
    if (local_5c == *(int *)puVar20) {
      return pppppppuVar9;
    }
    (*(code *)PTR___stack_chk_fail_003a9064)();
    unaff_s1 = param_1;
    unaff_s2 = param_3;
    goto LAB_001c8ef8;
  }
  ppppppuVar2 = (undefined4 ******)0x323;
  pppppppuVar12 = (undefined4 *******)(PTR_s_courses_003a88ec + -0x288c);
  pcVar23 = ExcerptImage;
  pppppppuVar9 = (undefined4 *******)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3784);
  puVar20 = PTR___assert_fail_003a9608;
  (*(code *)PTR___assert_fail_003a9608)();
  puVar8 = puVar20 + 0x1e7970;
  piVar18 = *(int **)(puVar20 + 0x1e02f0);
  iStack_11c = *piVar18;
  puStack_150 = puVar8;
  pppppppuStack_118 = unaff_s0;
  pppppppuStack_114 = param_1;
  ppppppuStack_110 = unaff_s2;
  pppppppuStack_10c = unaff_s3;
  ppppppuStack_108 = unaff_s4;
  pppppppuStack_104 = unaff_s5;
  pppppppuStack_100 = unaff_s6;
  pcStack_fc = pcVar23;
  if (pppppppuVar9 == (undefined4 *******)0x0) {
    iVar15 = *(int *)(puVar20 + 0x1df9ac) + -0x26ac;
    (**(code **)(puVar20 + 0x1e06c8))
              (*(int *)(puVar20 + 0x1df9a8) + -0x37b0,*(int *)(puVar20 + 0x1df9ac) + -0x288c,0x3f4,
               iVar15);
LAB_001c92d4:
    iVar15 = iVar15 + -0x26ac;
    (**(code **)(puVar8 + -0x72a8))
              (*(int *)(puVar8 + -0x7fd0) + 0x294c,*(int *)(puVar8 + -0x7fc4) + -0x288c,0x3fa,iVar15
              );
    ppppppuVar2 = unaff_s2;
LAB_001c92f4:
    iVar15 = iVar15 + -0x26ac;
    (**(code **)(puVar8 + -0x72a8))
              (*(int *)(puVar8 + -0x7fd0) + 0x1cac,*(int *)(puVar8 + -0x7fc4) + -0x288c,0x3f9,iVar15
              );
LAB_001c9314:
    (**(code **)(puVar8 + -0x784c))();
    pppppppuVar9 = unaff_s0;
LAB_001c9320:
    (**(code **)(puVar8 + -0x72a8))
              (*(int *)(puVar8 + -0x7fc4) + -0x2850,*(int *)(puVar8 + -0x7fc4) + -0x288c,0x3f8,
               iVar15 + -0x26ac);
    unaff_s2 = ppppppuVar2;
  }
  else if (pppppppuVar9[0xcdb] == (undefined4 ******)0xabacadab) {
    if (pppppppuVar9[0xcd4] != (undefined4 ******)0x0) {
      pppppppuStack_154 = pppppppuVar9 + 0xd0;
      ppppppuStack_158 = (undefined4 ******)(*(int *)(puVar20 + 0x1df9a4) + -0x62ac);
      (**(code **)(puVar20 + 0x1e02a0))
                (0x8000,*(int *)(puVar20 + 0x1df9ac) + -0x288c,
                 *(int *)(puVar20 + 0x1df9ac) + -0x26bc,0x3f7);
    }
    iVar15 = *(int *)(puStack_150 + -0x7fc4);
    unaff_s3 = pppppppuVar12;
    puVar8 = puStack_150;
    if (pppppppuVar12 != (undefined4 *******)0x0) {
      unaff_s0 = pppppppuVar9;
      if (ppppppuVar2 == (undefined4 ******)0x0) goto LAB_001c92f4;
      unaff_s2 = ppppppuVar2;
      if (ppppppuVar2[7] != (undefined4 *****)0xabacadab) goto LAB_001c92d4;
      iVar15 = 1;
      ppppppuStack_158 = ppppppuVar2;
      param_1 = (undefined4 *******)
                (**(code **)(puStack_150 + -0x7080))(pppppppuVar9,*pppppppuVar12,pppppppuVar12[1],1)
      ;
      if (param_1 != (undefined4 *******)0x0) {
        uStack_144 = 0;
        uStack_148 = 0;
        unaff_s5 = (undefined4 *******)
                   (**(code **)(puStack_150 + -0x715c))(pppppppuVar9,ppppppuVar2);
        unaff_s6 = (undefined4 *******)(**(code **)(puStack_150 + -0x79dc))(param_1,ppppppuVar2);
        iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9);
        if (((iVar15 == 4) ||
            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(pppppppuVar9), iVar15 == 3)) &&
           ((iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 4 ||
            (iVar15 = (**(code **)(puStack_150 + -0x73fc))(param_1), iVar15 == 3)))) {
          (**(code **)(puStack_150 + -0x7774))(7);
          ppppppuVar7 = param_1[7];
          if ((int)ppppppuVar7 < 0) {
            pcVar23 = *(code **)(puStack_150 + -0x7774);
            if (extraout_v1 < (int)ppppppuVar7 + 0x3f >> 6) goto LAB_001c9298;
LAB_001c91a4:
            bVar1 = (int)ppppppuVar7 < 0x80;
          }
          else {
            pcVar23 = *(code **)(puStack_150 + -0x7774);
            if ((int)ppppppuVar7 >> 6 <= extraout_v1) goto LAB_001c91a4;
LAB_001c9298:
            (*pcVar23)(7);
            bVar1 = extraout_v1_02 < 2;
          }
          iVar14 = 1;
          if ((bool)(bVar1 ^ 1)) {
            (**(code **)(puStack_150 + -0x7774))(7);
            ppppppuVar7 = param_1[7];
            if ((int)ppppppuVar7 < 0) {
              ppppppuVar7 = (undefined4 ******)((int)ppppppuVar7 + 0x3f);
            }
            iVar14 = (int)ppppppuVar7 >> 6;
            pcVar23 = *(code **)(puStack_150 + -0x7774);
            if (extraout_v1_01 < iVar14) {
LAB_001c9234:
              (*pcVar23)(7);
              iVar14 = extraout_v1_00;
            }
            goto LAB_001c9088;
          }
          iVar10 = *(int *)(puStack_150 + -0x7f10);
        }
        else {
          uVar36 = (**(code **)(puStack_150 + -0x7774))(7);
          if ((int)((ulonglong)uVar36 >> 0x20) == 0) {
            pcVar23 = *(code **)(puStack_150 + -0x7774);
            if (1 < (uint)uVar36) goto LAB_001c9074;
            uVar36 = (*pcVar23)(7);
            if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c9070;
            pcVar23 = *(code **)(puStack_150 + -0x7774);
            if (1 < (uint)uVar36) goto LAB_001c9074;
            iVar14 = 1;
          }
          else {
LAB_001c9070:
            pcVar23 = *(code **)(puStack_150 + -0x7774);
LAB_001c9074:
            uVar36 = (*pcVar23)(7);
            if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&
               (pcVar23 = *(code **)(puStack_150 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c9234;
            iVar14 = 2;
          }
LAB_001c9088:
          iVar10 = *(int *)(puStack_150 + -0x7f10);
        }
        iVar15 = 0;
        ppppppuStack_124 = (undefined4 ******)0x1;
        puStack_120 = &uStack_148;
        pppppppuStack_13c = pppppppuVar9;
        pppppppuStack_138 = pppppppuVar12;
        ppppppuStack_134 = ppppppuVar2;
        pppppppuStack_130 = unaff_s6;
        pppppppuStack_12c = unaff_s5;
        pppppppuStack_128 = param_1;
        (**(code **)(puStack_150 + -0x7718))(iVar10 + 0x5428,&pppppppuStack_13c,iVar14,0);
        ppppppuVar2 = ppppppuStack_124;
        (**(code **)(puStack_150 + -0x79bc))(unaff_s6);
        (**(code **)(puStack_150 + -0x79bc))(unaff_s5);
        param_1[0xa8] = pppppppuVar9[0xa8];
        if (ppppppuVar2 == (undefined4 ******)0x0) {
          param_1 = (undefined4 *******)(**(code **)(puStack_150 + -0x7964))(param_1);
        }
      }
      puVar8 = puStack_150;
      if (iStack_11c == *piVar18) {
        return param_1;
      }
      goto LAB_001c9314;
    }
    goto LAB_001c9320;
  }
  ppppppuVar2 = (undefined4 ******)0x3f5;
  pcVar21 = *(code **)(puVar8 + -0x72a8);
  pppppppuVar13 = (undefined4 *******)(*(int *)(puVar8 + -0x7fc4) + -0x288c);
  pcVar24 = ExtentImage;
  pppppppuVar12 = (undefined4 *******)(*(int *)(puVar8 + -0x7fc8) + -0x3784);
  (*pcVar21)();
  pcVar23 = pcVar21 + 0x1e754c;
  pcStack_188 = pcVar23;
  pppppppuStack_17c = pppppppuVar9;
  pppppppuStack_178 = param_1;
  ppppppuStack_174 = unaff_s2;
  pppppppuStack_170 = unaff_s3;
  pcStack_16c = pcVar24;
  if (pppppppuVar12 == (undefined4 *******)0x0) {
    iVar15 = *(int *)(pcVar21 + 0x1df588) + -0x26c8;
    (**(code **)(pcVar21 + 0x1e02a4))
              (*(int *)(pcVar21 + 0x1df584) + -0x37b0,*(int *)(pcVar21 + 0x1df588) + -0x288c,0x474,
               iVar15);
LAB_001c94fc:
    iVar15 = iVar15 + -0x26c8;
    (**(code **)(pcVar23 + -0x72a8))
              (*(int *)(pcVar23 + -0x7fc4) + -0x2850,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x478,
               iVar15);
LAB_001c951c:
    iVar15 = iVar15 + -0x26c8;
    (**(code **)(pcVar23 + -0x72a8))
              (*(int *)(pcVar23 + -0x7fd0) + 0x294c,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x47a,
               iVar15);
    pppppppuVar12 = pppppppuVar9;
LAB_001c953c:
    (**(code **)(pcVar23 + -0x72a8))
              (*(int *)(pcVar23 + -0x7fd0) + 0x1cac,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x479,
               iVar15 + -0x26c8);
  }
  else if (pppppppuVar12[0xcdb] == (undefined4 ******)0xabacadab) {
    if (pppppppuVar12[0xcd4] != (undefined4 ******)0x0) {
      pppppppuStack_194 = pppppppuVar12 + 0xd0;
      ppppppuStack_198 = (undefined4 ******)(*(int *)(pcVar21 + 0x1df580) + -0x62ac);
      (**(code **)(pcVar21 + 0x1dfe7c))
                (0x8000,*(int *)(pcVar21 + 0x1df588) + -0x288c,
                 *(int *)(pcVar21 + 0x1df588) + -0x26d4,0x477);
    }
    iVar15 = *(int *)(pcStack_188 + -0x7fc4);
    pppppppuVar9 = pppppppuVar12;
    param_1 = pppppppuVar13;
    unaff_s2 = ppppppuVar2;
    pcVar23 = pcStack_188;
    if (pppppppuVar13 == (undefined4 *******)0x0) goto LAB_001c94fc;
    if (ppppppuVar2 != (undefined4 ******)0x0) {
      if (ppppppuVar2[7] == (undefined4 *****)0xabacadab) {
        ppppppuStack_198 = ppppppuVar2;
        pppppppuVar9 = (undefined4 *******)
                       (**(code **)(pcStack_188 + -0x7080))
                                 (pppppppuVar12,*pppppppuVar13,pppppppuVar13[1],1);
        if (pppppppuVar9 != (undefined4 *******)0x0) {
          iVar15 = (**(code **)(pcStack_188 + -0x7a20))(pppppppuVar9,ppppppuVar2);
          if (iVar15 == 0) {
            (**(code **)(pcStack_188 + -0x7964))(pppppppuVar9);
            pppppppuVar9 = (undefined4 *******)0x0;
          }
          else {
            pppppppuStack_194 = (undefined4 *******)-(int)pppppppuVar13[3];
            ppppppuStack_198 = (undefined4 ******)-(int)pppppppuVar13[2];
            ppppppuStack_190 = ppppppuVar2;
            iVar15 = (**(code **)(pcStack_188 + -0x7bec))
                               (pppppppuVar9,pppppppuVar12,pppppppuVar12[0x99],1);
            if (iVar15 != 0) {
              (**(code **)(pcStack_188 + -0x7d18))
                        (pppppppuVar9,pppppppuVar12[6],pppppppuVar12[7],pppppppuVar13);
            }
          }
        }
        return pppppppuVar9;
      }
      goto LAB_001c951c;
    }
    goto LAB_001c953c;
  }
  pcVar21 = *(code **)(pcVar23 + -0x72a8);
  pppppppuVar9 = (undefined4 *******)(*(int *)(pcVar23 + -0x7fc4) + -0x288c);
  pcVar24 = FlipImage;
  pppppppuVar13 = (undefined4 *******)(*(int *)(pcVar23 + -0x7fc8) + -0x3784);
  (*pcVar21)(pppppppuVar13,pppppppuVar9,0x475,*(int *)(pcVar23 + -0x7fc4) + -0x26c8);
  pcVar23 = pcVar21 + 0x1e7330;
  piVar16 = *(int **)(pcVar21 + 0x1dfcb0);
  iStack_1d4 = *piVar16;
  pcStack_208 = pcVar23;
  pppppppuStack_1d0 = pppppppuVar12;
  pppppppuStack_1cc = param_1;
  ppppppuStack_1c8 = unaff_s2;
  pppppppuStack_1c4 = unaff_s3;
  piStack_1c0 = piVar18;
  pppppppuStack_1bc = unaff_s5;
  pppppppuStack_1b8 = unaff_s6;
  pppppppuStack_1b4 = unaff_s7;
  pppppppuStack_1b0 = unaff_s8;
  pcStack_1ac = pcVar24;
  if (pppppppuVar13 == (undefined4 *******)0x0) {
    (**(code **)(pcVar21 + 0x1e0088))
              (*(int *)(pcVar21 + 0x1df368) + -0x37b0,*(int *)(pcVar21 + 0x1df36c) + -0x288c,0x4bc,
               *(int *)(pcVar21 + 0x1df36c) + -0x26e0);
    pppppppuVar9 = param_1;
LAB_001c9944:
    (**(code **)(pcVar23 + -0x72a8))
              (*(int *)(pcVar23 + -0x7fd0) + 0x1cac,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x4c0,
               *(int *)(pcVar23 + -0x7fc4) + -0x26e0);
LAB_001c9968:
    (**(code **)(pcVar23 + -0x784c))();
    pppppppuVar13 = unaff_s7;
LAB_001c9974:
    (**(code **)(pcVar23 + -0x72a8))
              (*(int *)(pcVar23 + -0x7fd0) + 0x294c,*(int *)(pcVar23 + -0x7fc4) + -0x288c,0x4c1,
               *(int *)(pcVar23 + -0x7fc4) + -0x26e0);
    pppppppuStack_244 = pppppppuVar9;
  }
  else {
    pppppppuStack_244 = param_1;
    if (pppppppuVar13[0xcdb] == (undefined4 ******)0xabacadab) {
      if (pppppppuVar13[0xcd4] != (undefined4 ******)0x0) {
        pppppppuStack_20c = pppppppuVar13 + 0xd0;
        pppppppuStack_210 = (undefined4 *******)(*(int *)(pcVar21 + 0x1df364) + -0x62ac);
        (**(code **)(pcVar21 + 0x1dfc60))
                  (0x8000,*(int *)(pcVar21 + 0x1df36c) + -0x288c,
                   *(int *)(pcVar21 + 0x1df36c) + -0x26ec,0x4bf);
      }
      unaff_s7 = pppppppuVar13;
      pcVar23 = pcStack_208;
      if (pppppppuVar9 == (undefined4 *******)0x0) goto LAB_001c9944;
      if (pppppppuVar9[7] == (undefined4 ******)0xabacadab) {
        pppppppuStack_210 = pppppppuVar9;
        pppppppuVar12 =
             (undefined4 *******)(**(code **)(pcStack_208 + -0x7080))(pppppppuVar13,0,0,1);
        if (pppppppuVar12 != (undefined4 *******)0x0) {
          ppppppuStack_1fc = pppppppuVar13[0x8c];
          unaff_s8 = (undefined4 *******)pppppppuVar13[0x8a];
          unaff_s2 = pppppppuVar13[0x8b];
          unaff_s6 = (undefined4 *******)pppppppuVar13[0x8d];
          uStack_1f4 = 0;
          uStack_1f8 = 0;
          piVar18 = (int *)(**(code **)(pcStack_208 + -0x715c))(pppppppuVar13,pppppppuVar9);
          unaff_s5 = (undefined4 *******)
                     (**(code **)(pcStack_208 + -0x79dc))(pppppppuVar12,pppppppuVar9);
          iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13);
          if (((iVar15 == 4) ||
              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar13), iVar15 == 3)) &&
             ((iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 4 ||
              (iVar15 = (**(code **)(pcStack_208 + -0x73fc))(pppppppuVar12), iVar15 == 3)))) {
            (**(code **)(pcStack_208 + -0x7774))(7);
            ppppppuVar2 = pppppppuVar12[7];
            if ((int)ppppppuVar2 < 0) {
              pcVar23 = *(code **)(pcStack_208 + -0x7774);
              if (extraout_v1_03 < (int)ppppppuVar2 + 0x3f >> 6) goto LAB_001c98d4;
LAB_001c981c:
              bVar1 = (int)ppppppuVar2 < 0x80;
            }
            else {
              pcVar23 = *(code **)(pcStack_208 + -0x7774);
              if ((int)ppppppuVar2 >> 6 <= extraout_v1_03) goto LAB_001c981c;
LAB_001c98d4:
              (*pcVar23)(7);
              bVar1 = extraout_v1_05 < 2;
            }
            iVar15 = 1;
            if ((bool)(bVar1 ^ 1)) {
              (**(code **)(pcStack_208 + -0x7774))(7);
              ppppppuVar2 = pppppppuVar12[7];
              if ((int)ppppppuVar2 < 0) {
                ppppppuVar2 = (undefined4 ******)((int)ppppppuVar2 + 0x3f);
              }
              iVar15 = (int)ppppppuVar2 >> 6;
              pcVar23 = *(code **)(pcStack_208 + -0x7774);
              if (extraout_v1_06 < iVar15) {
LAB_001c98ac:
                (*pcVar23)(7);
                iVar15 = extraout_v1_04;
              }
              goto LAB_001c96d8;
            }
            iVar14 = *(int *)(pcStack_208 + -0x7f10);
          }
          else {
            uVar36 = (**(code **)(pcStack_208 + -0x7774))(7);
            if ((int)((ulonglong)uVar36 >> 0x20) == 0) {
              pcVar23 = *(code **)(pcStack_208 + -0x7774);
              if (1 < (uint)uVar36) goto LAB_001c96c4;
              uVar36 = (*pcVar23)(7);
              if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c96c0;
              pcVar23 = *(code **)(pcStack_208 + -0x7774);
              if (1 < (uint)uVar36) goto LAB_001c96c4;
              iVar15 = 1;
            }
            else {
LAB_001c96c0:
              pcVar23 = *(code **)(pcStack_208 + -0x7774);
LAB_001c96c4:
              uVar36 = (*pcVar23)(7);
              if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&
                 (pcVar23 = *(code **)(pcStack_208 + -0x7774), (uint)uVar36 < 2)) goto LAB_001c98ac;
              iVar15 = 2;
            }
LAB_001c96d8:
            iVar14 = *(int *)(pcStack_208 + -0x7f10);
          }
          puStack_1dc = &uStack_1f8;
          pppppppuStack_1d8 = (undefined4 *******)0x1;
          pppppppuStack_1f0 = pppppppuVar13;
          pppppppuStack_1ec = pppppppuVar9;
          pppppppuStack_1e8 = unaff_s5;
          piStack_1e4 = piVar18;
          pppppppuStack_1e0 = pppppppuVar12;
          (**(code **)(pcStack_208 + -0x7718))(iVar14 + 0x56bc,&pppppppuStack_1f0,iVar15,0);
          pppppppuVar9 = pppppppuStack_1d8;
          (**(code **)(pcStack_208 + -0x79bc))(unaff_s5);
          (**(code **)(pcStack_208 + -0x79bc))(piVar18);
          pppppppuVar12[0xa8] = pppppppuVar13[0xa8];
          if (unaff_s2 != (undefined4 ******)0x0) {
            unaff_s6 = (undefined4 *******)
                       ((int)unaff_s2 + (-(int)unaff_s6 - (int)pppppppuVar12[7]));
          }
          pppppppuVar12[0x8a] = unaff_s8;
          pppppppuVar12[0x8b] = unaff_s2;
          pppppppuVar12[0x8c] = ppppppuStack_1fc;
          pppppppuVar12[0x8d] = unaff_s6;
          if (pppppppuVar9 == (undefined4 *******)0x0) {
            pppppppuVar12 = (undefined4 *******)(**(code **)(pcStack_208 + -0x7964))(pppppppuVar12);
          }
        }
        pcVar23 = pcStack_208;
        if (iStack_1d4 == *piVar16) {
          return pppppppuVar12;
        }
        goto LAB_001c9968;
      }
      goto LAB_001c9974;
    }
  }
  pcVar21 = *(code **)(pcVar23 + -0x72a8);
  iVar14 = *(int *)(pcVar23 + -0x7fc4) + -0x288c;
  pcVar24 = FlopImage;
  iVar15 = *(int *)(pcVar23 + -0x7fc8) + -0x3784;
  (*pcVar21)(iVar15,iVar14,0x4bd,*(int *)(pcVar23 + -0x7fc4) + -0x26e0);
  piVar17 = *(int **)(pcVar21 + 0x1df874);
  iStack_24c = *piVar17;
  pppppppuStack_248 = pppppppuVar12;
  ppppppuStack_240 = unaff_s2;
  piStack_23c = piVar16;
  piStack_238 = piVar18;
  pppppppuStack_234 = unaff_s5;
  pppppppuStack_230 = unaff_s6;
  pppppppuStack_22c = pppppppuVar13;
  pppppppuStack_228 = unaff_s8;
  pcStack_224 = pcVar24;
  if (iVar15 == 0) {
    pppppppuVar9 = (undefined4 *******)
                   (**(code **)(pcVar21 + 0x1dfc4c))
                             (*(int *)(pcVar21 + 0x1def2c) + -0x37b0,
                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x543,
                              *(int *)(pcVar21 + 0x1def30) + -0x26f8);
    return pppppppuVar9;
  }
  if (*(int *)(iVar15 + 0x336c) != -0x54535255) {
    pppppppuVar9 = (undefined4 *******)
                   (**(code **)(pcVar21 + 0x1dfc4c))
                             (*(int *)(pcVar21 + 0x1def2c) + -0x3784,
                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x544,
                              *(int *)(pcVar21 + 0x1def30) + -0x26f8);
    return pppppppuVar9;
  }
  if (*(int *)(iVar15 + 0x3350) != 0) {
    (**(code **)(pcVar21 + 0x1df824))
              (0x8000,*(int *)(pcVar21 + 0x1def30) + -0x288c,*(int *)(pcVar21 + 0x1def30) + -0x2704,
               0x546,*(int *)(pcVar21 + 0x1def28) + -0x62ac,iVar15 + 0x340);
  }
  if (iVar14 == 0) {
    pppppppuVar9 = (undefined4 *******)
                   (**(code **)(pcVar21 + 0x1dfc4c))
                             (*(int *)(pcVar21 + 0x1def24) + 0x1cac,
                              *(int *)(pcVar21 + 0x1def30) + -0x288c,0x547,
                              *(int *)(pcVar21 + 0x1def30) + -0x26f8);
    return pppppppuVar9;
  }
  if (*(int *)(iVar14 + 0x1c) != -0x54535255) goto LAB_001c9db0;
  pppppppuVar9 = (undefined4 *******)(**(code **)(pcVar21 + 0x1dfe74))(iVar15,0,0,1,iVar14);
  if (pppppppuVar9 != (undefined4 *******)0x0) {
    ppppppuVar2 = *(undefined4 *******)(iVar15 + 0x234);
    ppppppuVar7 = *(undefined4 *******)(iVar15 + 0x228);
    ppppppuVar22 = *(undefined4 *******)(iVar15 + 0x22c);
    ppppppuVar19 = *(undefined4 *******)(iVar15 + 0x230);
    uStack_26c = 0;
    uStack_270 = 0;
    uVar4 = (**(code **)(pcVar21 + 0x1dfd98))(iVar15,iVar14);
    uVar5 = (**(code **)(pcVar21 + 0x1df518))(pppppppuVar9,iVar14);
    iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(iVar15);
    if (((iVar10 == 4) || (iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(iVar15), iVar10 == 3)) &&
       ((iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(pppppppuVar9), iVar10 == 4 ||
        (iVar10 = (**(code **)(pcVar21 + 0x1dfaf8))(pppppppuVar9), iVar10 == 3)))) {
      (**(code **)(pcVar21 + 0x1df780))(7);
      ppppppuVar6 = pppppppuVar9[7];
      if ((int)ppppppuVar6 < 0) {
        pcVar23 = *(code **)(pcVar21 + 0x1df780);
        if (extraout_v1_07 < (int)ppppppuVar6 + 0x3f >> 6) goto LAB_001c9d10;
LAB_001c9c58:
        bVar1 = (int)ppppppuVar6 < 0x80;
      }
      else {
        pcVar23 = *(code **)(pcVar21 + 0x1df780);
        if ((int)ppppppuVar6 >> 6 <= extraout_v1_07) goto LAB_001c9c58;
LAB_001c9d10:
        (*pcVar23)(7);
        bVar1 = extraout_v1_09 < 2;
      }
      iVar10 = 1;
      if ((bool)(bVar1 ^ 1)) {
        (**(code **)(pcVar21 + 0x1df780))(7);
        ppppppuVar6 = pppppppuVar9[7];
        if ((int)ppppppuVar6 < 0) {
          ppppppuVar6 = (undefined4 ******)((int)ppppppuVar6 + 0x3f);
        }
        iVar10 = (int)ppppppuVar6 >> 6;
        pcVar23 = *(code **)(pcVar21 + 0x1df780);
        if (extraout_v1_10 < iVar10) {
LAB_001c9ce8:
          (*pcVar23)(7);
          iVar10 = extraout_v1_08;
        }
        goto LAB_001c9b14;
      }
      iVar11 = *(int *)(pcVar21 + 0x1defe4);
    }
    else {
      uVar36 = (**(code **)(pcVar21 + 0x1df780))(7);
      if ((int)((ulonglong)uVar36 >> 0x20) == 0) {
        pcVar23 = *(code **)(pcVar21 + 0x1df780);
        if (1 < (uint)uVar36) goto LAB_001c9b00;
        uVar36 = (*pcVar23)(7);
        if ((int)((ulonglong)uVar36 >> 0x20) != 0) goto LAB_001c9afc;
        pcVar23 = *(code **)(pcVar21 + 0x1df780);
        if (1 < (uint)uVar36) goto LAB_001c9b00;
        iVar10 = 1;
      }
      else {
LAB_001c9afc:
        pcVar23 = *(code **)(pcVar21 + 0x1df780);
LAB_001c9b00:
        uVar36 = (*pcVar23)(7);
        if (((int)((ulonglong)uVar36 >> 0x20) == 0) &&
           (pcVar23 = *(code **)(pcVar21 + 0x1df780), (uint)uVar36 < 2)) goto LAB_001c9ce8;
        iVar10 = 2;
      }
LAB_001c9b14:
      iVar11 = *(int *)(pcVar21 + 0x1defe4);
    }
    puStack_254 = &uStack_270;
    iStack_250 = 1;
    iStack_268 = iVar15;
    iStack_264 = iVar14;
    uStack_260 = uVar5;
    uStack_25c = uVar4;
    pppppppuStack_258 = pppppppuVar9;
    (**(code **)(pcVar21 + 0x1df7dc))(iVar11 + 0x594c,&iStack_268,iVar10,0);
    iVar14 = iStack_250;
    (**(code **)(pcVar21 + 0x1df538))(uVar5);
    (**(code **)(pcVar21 + 0x1df538))(uVar4);
    pppppppuVar9[0xa8] = *(undefined4 *******)(iVar15 + 0x2a0);
    if (ppppppuVar7 != (undefined4 ******)0x0) {
      ppppppuVar19 = (undefined4 ******)
                     ((int)ppppppuVar7 + (-(int)ppppppuVar19 - (int)pppppppuVar9[6]));
    }
    pppppppuVar9[0x8a] = ppppppuVar7;
    pppppppuVar9[0x8b] = ppppppuVar22;
    pppppppuVar9[0x8c] = ppppppuVar19;
    pppppppuVar9[0x8d] = ppppppuVar2;
    if (iVar14 == 0) {
      pppppppuVar9 = (undefined4 *******)(**(code **)(pcVar21 + 0x1df590))(pppppppuVar9);
    }
  }
  if (iStack_24c == *piVar17) {
    return pppppppuVar9;
  }
  (**(code **)(pcVar21 + 0x1df6a8))();
LAB_001c9db0:
  pppppppuVar9 = (undefined4 *******)
                 (**(code **)(pcVar21 + 0x1dfc4c))
                           (*(int *)(pcVar21 + 0x1def24) + 0x294c,
                            *(int *)(pcVar21 + 0x1def30) + -0x288c,0x548,
                            *(int *)(pcVar21 + 0x1def30) + -0x26f8);
  return pppppppuVar9;
}

