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

MagickBooleanType SortColormapByIntensity(Image *image,ExceptionInfo *exception)

{
  ushort *puVar1;
  size_t sVar2;
  undefined4 uVar3;
  int iVar4;
  MagickBooleanType MVar5;
  MagickRealType *pMVar6;
  size_t sVar7;
  uint uVar8;
  double *pdVar9;
  PixelInfo *pPVar10;
  int *piVar11;
  double *pdVar12;
  size_t sVar13;
  float *pfVar14;
  float *pfVar15;
  double *pdVar16;
  float *pfVar17;
  MagickBooleanType MVar18;
  PixelChannelMap *pPVar19;
  PixelTrait PVar20;
  PixelTrait PVar21;
  PixelTrait PVar22;
  float *pfVar23;
  MagickBooleanType MVar24;
  int iVar25;
  undefined *puVar26;
  double dVar27;
  float fVar29;
  double dVar28;
  double dVar30;
  double dVar31;
  double dVar32;
  double dVar33;
  double dVar34;
  double dVar35;
  ulonglong uVar36;
  int iVar37;
  
  if (image == (Image *)0x0) {
    (*(code *)PTR___assert_fail_003a9608)
              (PTR_LAB_003a88e0 + 0xdd0,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,
               0x13a,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a58);
  }
  else {
    if (image->debug != MagickFalse) {
      (*(code *)PTR_LogMagickEvent_003a91e0)
                (0x8000,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,
                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x13c,
                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x1fec);
    }
    if (image->signature == 0xabacadab) {
      MVar24 = MagickTrue;
      if (image->storage_class == PseudoClass) {
        puVar1 = (ushort *)(*(code *)PTR_AcquireQuantumMemory_003a950c)(image->colors,2);
        if (puVar1 != (ushort *)0x0) {
          sVar13 = image->colors;
          pPVar10 = image->colormap;
          if (0 < (int)sVar13) {
            sVar7 = 0;
            pMVar6 = &pPVar10->alpha;
            do {
              sVar2 = sVar7 + 1;
              *pMVar6 = (double)(int)sVar7;
              sVar7 = sVar2;
              pMVar6 = pMVar6 + 0xb;
            } while (sVar2 != sVar13);
          }
          (*(code *)PTR_qsort_003a98d4)(pPVar10,sVar13,0x58,PTR_LAB_003a893c + 0x4ca0);
          sVar13 = image->colors;
          if (0 < (int)sVar13) {
            sVar7 = 0;
            pMVar6 = &image->colormap->alpha;
            do {
              puVar1[(int)*pMVar6] = (ushort)sVar7;
              sVar7 = sVar7 + 1;
              pMVar6 = pMVar6 + 0xb;
            } while (sVar13 != sVar7);
          }
          uVar3 = (*(code *)PTR_AcquireAuthenticCacheView_003a8ed4)(image,exception);
          if (0 < (int)image->rows) {
            iVar25 = 0;
            uVar36 = (ulonglong)*(uint *)(PTR_LAB_003a88e0 + 0x1a50);
            do {
              iVar4 = (*(code *)PTR_GetCacheViewAuthenticPixels_003a964c)
                                (uVar3,0,iVar25,image->columns,1,exception);
              if (iVar4 == 0) {
LAB_00065918:
                MVar24 = MagickFalse;
                goto LAB_000658cc;
              }
              sVar7 = image->columns;
              sVar13 = 0;
              if (0 < (int)sVar7) {
                pPVar19 = image->channel_map;
                sVar2 = image->number_channels;
                pPVar10 = image->colormap;
                PVar22 = pPVar19[5].traits;
                PVar21 = pPVar19[3].traits;
                PVar20 = pPVar19[4].traits;
                pfVar17 = (float *)(iVar4 + pPVar19->offset * 4);
                pfVar15 = (float *)(iVar4 + pPVar19[1].offset * 4);
                pfVar14 = (float *)(iVar4 + pPVar19[2].offset * 4);
                do {
                  if (PVar22 == UndefinedPixelTrait) {
                    uVar8 = (uint)*puVar1;
                  }
                  else {
                    pfVar23 = (float *)(iVar4 + pPVar19[5].offset * 4);
                    uVar8 = (uint)puVar1[(int)*pfVar23];
                    *pfVar23 = (float)uVar8;
                  }
                  dVar30 = pPVar10[uVar8].green;
                  dVar27 = pPVar10[uVar8].blue;
                  *pfVar17 = (float)pPVar10[uVar8].red;
                  *pfVar15 = (float)dVar30;
                  *pfVar14 = (float)dVar27;
                  if (PVar21 != UndefinedPixelTrait) {
                    *(float *)(iVar4 + pPVar19[3].offset * 4) = (float)pPVar10[uVar8].black;
                  }
                  if (PVar20 != UndefinedPixelTrait) {
                    fVar29 = (float)uVar36;
                    if (pPVar10[uVar8].alpha_trait != UndefinedPixelTrait) {
                      fVar29 = (float)pPVar10[uVar8].alpha;
                    }
                    *(float *)(iVar4 + pPVar19[4].offset * 4) = fVar29;
                  }
                  sVar13 = sVar13 + 1;
                  iVar4 = iVar4 + sVar2 * 4;
                  pfVar17 = pfVar17 + sVar2;
                  pfVar15 = pfVar15 + sVar2;
                  pfVar14 = pfVar14 + sVar2;
                } while (sVar7 != sVar13);
              }
              iVar4 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8)(uVar3,exception);
              if (iVar4 == 0) goto LAB_00065918;
              iVar25 = iVar25 + 1;
            } while (iVar25 < (int)image->rows);
          }
          MVar24 = MagickTrue;
LAB_000658cc:
          (*(code *)PTR_DestroyCacheView_003a8ef4)(uVar3);
          (*(code *)PTR_RelinquishMagickMemory_003a8fc0)(puVar1);
          return MVar24;
        }
        MVar24 = MagickFalse;
        (*(code *)PTR_ThrowMagickException_003a8f20)
                  (exception,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,
                   PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x147,400,
                   PTR_LAB_003a88e0 + 0x16f8,PTR_LAB_003a88e0 + 0x3e28,image->filename);
      }
      return MVar24;
    }
  }
  piVar11 = (int *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3784);
  puVar26 = PTR___assert_fail_003a9608;
  (*(code *)PTR___assert_fail_003a9608)
            (piVar11,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,0x13d,
             PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a58);
  iVar25 = (**(code **)(puVar26 + 0x343f4c))();
  iVar4 = (**(code **)(puVar26 + 0x343b48))();
  if (iVar25 == 0) {
    trap(7);
  }
  iVar37 = 0x10000 / iVar25;
  iVar25 = 0x10000 % iVar25;
  if (iVar4 < iVar25) {
    iVar37 = iVar37 + 1;
    iVar25 = 0;
  }
  MVar24 = iVar37 * iVar4 + iVar25;
  MVar18 = iVar37 + MVar24;
  if ((int)MVar24 < (int)MVar18) {
    iVar25 = MVar24 * 0x18;
    dVar27 = *(double *)(*(int *)(puVar26 + 0x342f28) + -0x3f48);
    dVar34 = *(double *)(*(int *)(puVar26 + 0x342f20) + 0x1a58);
    dVar35 = *(double *)(*(int *)(puVar26 + 0x342f28) + -0x3f40);
    dVar33 = *(double *)(*(int *)(puVar26 + 0x342f20) + 0x1400);
    dVar30 = *(double *)(*(int *)(puVar26 + 0x342f28) + -0x3f50);
    MVar5 = MVar24;
    pdVar9 = (double *)(piVar11[2] + iVar25);
    pdVar12 = (double *)(*piVar11 + iVar25);
    pdVar16 = (double *)(piVar11[1] + iVar25);
    do {
      MVar24 = MVar5 + MagickTrue;
      dVar31 = (double)(int)MVar5;
      *pdVar16 = dVar31;
      dVar28 = (dVar31 + dVar31) - dVar34;
      dVar32 = dVar28 * dVar30;
      *pdVar12 = dVar28 * dVar33;
      *pdVar9 = dVar32;
      pdVar16[1] = dVar31;
      pdVar12[1] = dVar28 * 0.0;
      pdVar9[1] = dVar28 * dVar27;
      pdVar16[2] = dVar31;
      pdVar12[2] = dVar28 * dVar35;
      pdVar9[2] = dVar32;
      MVar5 = MVar24;
      pdVar9 = pdVar9 + 3;
      pdVar12 = pdVar12 + 3;
      pdVar16 = pdVar16 + 3;
    } while (MVar18 != MVar24);
  }
  return MVar24;
}



int SortColormapByIntensity(int *param_1,undefined4 param_2)

{
  ushort *puVar1;
  int iVar2;
  undefined4 uVar3;
  int iVar4;
  uint uVar5;
  double *pdVar6;
  int iVar7;
  int *piVar8;
  double *pdVar9;
  int iVar10;
  float *pfVar11;
  float *pfVar12;
  double *pdVar13;
  float *pfVar14;
  int iVar15;
  int iVar16;
  int iVar17;
  int iVar18;
  int iVar19;
  int iVar20;
  float *pfVar21;
  int iVar22;
  undefined *puVar23;
  double dVar24;
  float fVar26;
  double dVar25;
  double dVar27;
  double dVar28;
  double dVar29;
  double dVar30;
  double dVar31;
  double dVar32;
  ulonglong uVar33;
  
  if (param_1 == (int *)0x0) {
    (*(code *)PTR___assert_fail_003a9608)
              (PTR_LAB_003a88e0 + 0xdd0,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,
               0x13a,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a58);
  }
  else {
    if (param_1[0xcd4] != 0) {
      (*(code *)PTR_LogMagickEvent_003a91e0)
                (0x8000,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,
                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x13c,
                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x1fec);
    }
    if (param_1[0xcdb] == -0x54535255) {
      iVar22 = 1;
      if (*param_1 == 2) {
        puVar1 = (ushort *)(*(code *)PTR_AcquireQuantumMemory_003a950c)(param_1[9],2);
        if (puVar1 != (ushort *)0x0) {
          iVar10 = param_1[9];
          iVar22 = param_1[10];
          if (0 < iVar10) {
            iVar15 = 0;
            pdVar6 = (double *)(iVar22 + 0x48);
            do {
              iVar2 = iVar15 + 1;
              *pdVar6 = (double)iVar15;
              iVar15 = iVar2;
              pdVar6 = pdVar6 + 0xb;
            } while (iVar2 != iVar10);
          }
          (*(code *)PTR_qsort_003a98d4)(iVar22,iVar10,0x58,PTR_LAB_003a893c + 0x4ca0);
          iVar22 = param_1[9];
          if (0 < iVar22) {
            iVar10 = 0;
            pdVar6 = (double *)(param_1[10] + 0x48);
            do {
              puVar1[(int)*pdVar6] = (ushort)iVar10;
              iVar10 = iVar10 + 1;
              pdVar6 = pdVar6 + 0xb;
            } while (iVar22 != iVar10);
          }
          uVar3 = (*(code *)PTR_AcquireAuthenticCacheView_003a8ed4)(param_1,param_2);
          if (0 < param_1[7]) {
            iVar22 = 0;
            uVar33 = (ulonglong)*(uint *)(PTR_LAB_003a88e0 + 0x1a50);
            do {
              iVar10 = (*(code *)PTR_GetCacheViewAuthenticPixels_003a964c)
                                 (uVar3,0,iVar22,param_1[6],1,param_2);
              if (iVar10 == 0) {
LAB_00065918:
                iVar22 = 0;
                goto LAB_000658cc;
              }
              iVar2 = param_1[6];
              iVar15 = 0;
              if (0 < iVar2) {
                iVar16 = param_1[0xb4];
                iVar7 = param_1[0xb0];
                iVar20 = param_1[10];
                iVar19 = *(int *)(iVar16 + 0x40);
                iVar18 = *(int *)(iVar16 + 0x28);
                iVar17 = *(int *)(iVar16 + 0x34);
                pfVar14 = (float *)(iVar10 + *(int *)(iVar16 + 8) * 4);
                pfVar12 = (float *)(iVar10 + *(int *)(iVar16 + 0x14) * 4);
                pfVar11 = (float *)(iVar10 + *(int *)(iVar16 + 0x20) * 4);
                do {
                  if (iVar19 == 0) {
                    uVar5 = (uint)*puVar1;
                  }
                  else {
                    pfVar21 = (float *)(iVar10 + *(int *)(iVar16 + 0x44) * 4);
                    uVar5 = (uint)puVar1[(int)*pfVar21];
                    *pfVar21 = (float)uVar5;
                  }
                  iVar4 = uVar5 * 0x58 + iVar20;
                  dVar27 = *(double *)(iVar4 + 0x30);
                  dVar24 = *(double *)(iVar4 + 0x38);
                  *pfVar14 = (float)*(double *)(iVar4 + 0x28);
                  *pfVar12 = (float)dVar27;
                  *pfVar11 = (float)dVar24;
                  if (iVar18 != 0) {
                    *(float *)(iVar10 + *(int *)(iVar16 + 0x2c) * 4) =
                         (float)*(double *)(iVar4 + 0x40);
                  }
                  if (iVar17 != 0) {
                    fVar26 = (float)uVar33;
                    if (*(int *)(iVar4 + 8) != 0) {
                      fVar26 = (float)*(double *)(iVar4 + 0x48);
                    }
                    *(float *)(iVar10 + *(int *)(iVar16 + 0x38) * 4) = fVar26;
                  }
                  iVar15 = iVar15 + 1;
                  iVar10 = iVar10 + iVar7 * 4;
                  pfVar14 = pfVar14 + iVar7;
                  pfVar12 = pfVar12 + iVar7;
                  pfVar11 = pfVar11 + iVar7;
                } while (iVar2 != iVar15);
              }
              iVar10 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8)(uVar3,param_2);
              if (iVar10 == 0) goto LAB_00065918;
              iVar22 = iVar22 + 1;
            } while (iVar22 < param_1[7]);
          }
          iVar22 = 1;
LAB_000658cc:
          (*(code *)PTR_DestroyCacheView_003a8ef4)(uVar3);
          (*(code *)PTR_RelinquishMagickMemory_003a8fc0)(puVar1);
          return iVar22;
        }
        iVar22 = 0;
        (*(code *)PTR_ThrowMagickException_003a8f20)
                  (param_2,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,
                   PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x147,400,
                   PTR_LAB_003a88e0 + 0x16f8,PTR_LAB_003a88e0 + 0x3e28,param_1 + 0xd0);
      }
      return iVar22;
    }
  }
  piVar8 = (int *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3784);
  puVar23 = PTR___assert_fail_003a9608;
  (*(code *)PTR___assert_fail_003a9608)
            (piVar8,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,0x13d,
             PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a58);
  iVar10 = (**(code **)(puVar23 + 0x343f4c))();
  iVar22 = (**(code **)(puVar23 + 0x343b48))();
  if (iVar10 == 0) {
    trap(7);
  }
  iVar15 = 0x10000 / iVar10;
  iVar10 = 0x10000 % iVar10;
  if (iVar22 < iVar10) {
    iVar15 = iVar15 + 1;
    iVar10 = 0;
  }
  iVar10 = iVar15 * iVar22 + iVar10;
  iVar15 = iVar15 + iVar10;
  if (iVar10 < iVar15) {
    iVar2 = iVar10 * 0x18;
    dVar24 = *(double *)(*(int *)(puVar23 + 0x342f28) + -0x3f48);
    dVar31 = *(double *)(*(int *)(puVar23 + 0x342f20) + 0x1a58);
    dVar32 = *(double *)(*(int *)(puVar23 + 0x342f28) + -0x3f40);
    dVar30 = *(double *)(*(int *)(puVar23 + 0x342f20) + 0x1400);
    dVar27 = *(double *)(*(int *)(puVar23 + 0x342f28) + -0x3f50);
    iVar22 = iVar10;
    pdVar6 = (double *)(piVar8[2] + iVar2);
    pdVar9 = (double *)(*piVar8 + iVar2);
    pdVar13 = (double *)(piVar8[1] + iVar2);
    do {
      iVar10 = iVar22 + 1;
      dVar28 = (double)iVar22;
      *pdVar13 = dVar28;
      dVar25 = (dVar28 + dVar28) - dVar31;
      dVar29 = dVar25 * dVar27;
      *pdVar9 = dVar25 * dVar30;
      *pdVar6 = dVar29;
      pdVar13[1] = dVar28;
      pdVar9[1] = dVar25 * 0.0;
      pdVar6[1] = dVar25 * dVar24;
      pdVar13[2] = dVar28;
      pdVar9[2] = dVar25 * dVar32;
      pdVar6[2] = dVar29;
      iVar22 = iVar10;
      pdVar6 = pdVar6 + 3;
      pdVar9 = pdVar9 + 3;
      pdVar13 = pdVar13 + 3;
    } while (iVar15 != iVar10);
  }
  return iVar10;
}


lui gp,0x35
addiu gp,gp,-0x4d0c
addu gp,gp,t9
addiu sp,sp,-0x50
sdc1 f20,0x48(sp)
sw gp,0x20(sp)
sw ra,0x44(sp)
sw s6,0x40(sp)
sw s5,0x3c(sp)
sw s4,0x38(sp)
sw s3,0x34(sp)
sw s2,0x30(sp)
sw s1,0x2c(sp)
beq a0,zero,0x00065974
_sw s0,0x28(sp)
lw v0,0x3350(a0)
or s4,a0,zero
bne v0,zero,0x00065658
_or s1,a1,zero
lui v0,0xabac
lw v1,0x336c(s4)
ori v0,v0,0xadab
bne v1,v0,0x00065998
_li v0,0x2
lw v1,0x0(s4)
beq v1,v0,0x0006568c
_li s0,0x1
lw ra,0x44(sp)
or v0,s0,zero
lw s6,0x40(sp)
lw s5,0x3c(sp)
lw s4,0x38(sp)
lw s3,0x34(sp)
lw s2,0x30(sp)
lw s1,0x2c(sp)
lw s0,0x28(sp)
ldc1 f20,0x48(sp)
jr ra
_addiu sp,sp,0x50
lw v0,-0x7fc8(gp)
li a3,0x13c
lw a2,-0x7fc8(gp)
ori a0,zero,0x8000
lw a1,-0x7fc8(gp)
lw t9,-0x76d0(gp)
addiu v0,v0,-0x1fec
addiu a2,a2,-0x5a70
addiu a1,a1,-0x5a88
jalr t9
_sw v0,0x10(sp)
b 0x00065608
_lw gp,0x20(sp)
lw t9,-0x73a4(gp)
li a1,0x2
jalr t9
_lw a0,0x24(s4)
lw gp,0x20(sp)
beq v0,zero,0x00065920
_or s5,v0,zero
lw a1,0x24(s4)
blez a1,0x000656d4
_lw a0,0x28(s4)
addiu v1,a0,0x48
or v0,zero,zero
mtc1 v0,f0
addiu v1,v1,0x58
addiu v0,v0,0x1
cvt.d.W f0,f0
bne v0,a1,0x000656bc
_sdc1 f0,-0x58(v1)
lw a3,-0x7f74(gp)
li a2,0x58
lw t9,-0x6fdc(gp)
jalr t9
_addiu a3,a3,0x4ca0
lw a1,0x24(s4)
blez a1,0x00065724
_lw gp,0x20(sp)
lw a0,0x28(s4)
or v1,zero,zero
addiu a0,a0,0x48
ldc1 f0,0x0(a0)
trunc.w.D f0,f0
mfc1 v0,f0
sll v0,v0,0x1
addu v0,s5,v0
sh v1,0x0(v0)
addiu v1,v1,0x1
bne a1,v1,0x00065700
_addiu a0,a0,0x58
lw t9,-0x79dc(gp)
or a1,s1,zero
jalr t9
_or a0,s4,zero
lw v1,0x1c(s4)
or s2,v0,zero
blez v1,0x000658c8
_lw gp,0x20(sp)
lw v0,-0x7fd0(gp)
or s0,zero,zero
li s3,0x1
li s6,0x58
lwc1 f20,0x1a50(v0)
lw a3,0x18(s4)
or a1,zero,zero
lw t9,-0x7264(gp)
or a2,s0,zero
sw s1,0x14(sp)
or a0,s2,zero
jalr t9
_sw s3,0x10(sp)
beq v0,zero,0x00065918
_lw gp,0x20(sp)
lw t2,0x18(s4)
blez t2,0x0006589c
_or t0,zero,zero
lw t1,0x2d0(s4)
lw a0,0x2c0(s4)
lw t6,0x28(s4)
lw a3,0x8(t1)
sll a0,a0,0x2
lw a2,0x14(t1)
lw a1,0x20(t1)
sll a3,a3,0x2
lw t5,0x40(t1)
sll a2,a2,0x2
lw t4,0x28(t1)
sll a1,a1,0x2
lw t3,0x34(t1)
addu a3,v0,a3
addu a2,v0,a2
b 0x0006588c
_addu a1,v0,a1
lw t7,0x44(t1)
sll t7,t7,0x2
addu t7,v0,t7
lwc1 f0,0x0(t7)
trunc.w.S f0,f0
mfc1 v1,f0
sll v1,v1,0x1
addu v1,s5,v1
lhu v1,0x0(v1)
mtc1 v1,f0
cvt.s.W f0,f0
swc1 f0,0x0(t7)
mul t7,v1,s6
addu v1,t7,t6
ldc1 f4,0x28(v1)
ldc1 f2,0x30(v1)
ldc1 f0,0x38(v1)
cvt.s.D f4,f4
cvt.s.D f2,f2
cvt.s.D f0,f0
swc1 f4,0x0(a3)
swc1 f2,0x0(a2)
beq t4,zero,0x00065848
_swc1 f0,0x0(a1)
ldc1 f0,0x40(v1)
lw t7,0x2c(t1)
sll t7,t7,0x2
addu t7,v0,t7
cvt.s.D f0,f0
swc1 f0,0x0(t7)
beq t3,zero,0x00065874
_nop
lw t7,0x8(v1)
beq t7,zero,0x00065864
_mov.S f0,f20
ldc1 f0,0x48(v1)
cvt.s.D f0,f0
lw v1,0x38(t1)
sll v1,v1,0x2
addu v1,v0,v1
swc1 f0,0x0(v1)
addiu t0,t0,0x1
addu v0,v0,a0
addu a3,a3,a0
addu a2,a2,a0
beq t2,t0,0x0006589c
_addu a1,a1,a0
bne t5,zero,0x000657d0
_nop
b 0x00065800
_lhu v1,0x0(s5)
lw t9,-0x73b8(gp)
or a1,s1,zero
jalr t9
_or a0,s2,zero
beq v0,zero,0x00065918
_lw gp,0x20(sp)
lw v0,0x1c(s4)
addiu s0,s0,0x1
slt v0,s0,v0
bne v0,zero,0x00065758
_nop
li s0,0x1
lw t9,-0x79bc(gp)
jalr t9
_or a0,s2,zero
lw gp,0x20(sp)
lw t9,-0x78f0(gp)
jalr t9
_or a0,s5,zero
or v0,s0,zero
lw ra,0x44(sp)
lw s6,0x40(sp)
lw s5,0x3c(sp)
lw s4,0x38(sp)
lw s3,0x34(sp)
lw s2,0x30(sp)
lw s1,0x2c(sp)
lw s0,0x28(sp)
ldc1 f20,0x48(sp)
jr ra
_addiu sp,sp,0x50
b 0x000658cc
_or s0,zero,zero
lw v0,-0x7fd0(gp)
addiu s4,s4,0x340
lw a2,-0x7fc8(gp)
li a3,0x147
lw a1,-0x7fc8(gp)
or a0,s1,zero
addiu v0,v0,0x3e28
lw t9,-0x7990(gp)
addiu a2,a2,-0x5a70
sw s4,0x1c(sp)
sw v0,0x18(sp)
addiu a1,a1,-0x5a88
lw v0,-0x7fd0(gp)
or s0,zero,zero
addiu v0,v0,0x16f8
sw v0,0x14(sp)
li v0,0x190
jalr t9
_sw v0,0x10(sp)
b 0x0006562c
_lw ra,0x44(sp)
lw a3,-0x7fc8(gp)
li a2,0x13a
lw a1,-0x7fc8(gp)
lw a0,-0x7fd0(gp)
lw t9,-0x72a8(gp)
addiu a3,a3,-0x5a58
addiu a1,a1,-0x5a88
jalr t9
_addiu a0,a0,0xdd0
lw a3,-0x7fc8(gp)
li a2,0x13d
lw a1,-0x7fc8(gp)
lw a0,-0x7fc8(gp)
lw t9,-0x72a8(gp)
addiu a3,a3,-0x5a58
addiu a1,a1,-0x5a88
jalr t9
_addiu a0,a0,-0x3784
nop
(translation_unit "int SortColormapByIntensity(int *param_1,undefined4 param_2)\n\n{\n  ushort *puVar1;\n  int iVar2;\n  undefined4 uVar3;\n  int iVar4;\n  uint uVar5;\n  double *pdVar6;\n  int iVar7;\n  int *piVar8;\n  double *pdVar9;\n  int iVar10;\n  float *pfVar11;\n  float *pfVar12;\n  double *pdVar13;\n  float *pfVar14;\n  int iVar15;\n  int iVar16;\n  int iVar17;\n  int iVar18;\n  int iVar19;\n  int iVar20;\n  float *pfVar21;\n  int iVar22;\n  undefined *puVar23;\n  double dVar24;\n  float fVar26;\n  double dVar25;\n  double dVar27;\n  double dVar28;\n  double dVar29;\n  double dVar30;\n  double dVar31;\n  double dVar32;\n  ulonglong uVar33;\n  \n  if (param_1 == (int *)0x0) {\n    (*(code *)PTR___assert_fail_003a9608)\n              (PTR_LAB_003a88e0 + 0xdd0,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n               0x13a,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a58);\n  }\n  else {\n    if (param_1[0xcd4] != 0) {\n      (*(code *)PTR_LogMagickEvent_003a91e0)\n                (0x8000,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x13c,\n                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x1fec);\n    }\n    if (param_1[0xcdb] == -0x54535255) {\n      iVar22 = 1;\n      if (*param_1 == 2) {\n        puVar1 = (ushort *)(*(code *)PTR_AcquireQuantumMemory_003a950c)(param_1[9],2);\n        if (puVar1 != (ushort *)0x0) {\n          iVar10 = param_1[9];\n          iVar22 = param_1[10];\n          if (0 < iVar10) {\n            iVar15 = 0;\n            pdVar6 = (double *)(iVar22 + 0x48);\n            do {\n              iVar2 = iVar15 + 1;\n              *pdVar6 = (double)iVar15;\n              iVar15 = iVar2;\n              pdVar6 = pdVar6 + 0xb;\n            } while (iVar2 != iVar10);\n          }\n          (*(code *)PTR_qsort_003a98d4)(iVar22,iVar10,0x58,PTR_LAB_003a893c + 0x4ca0);\n          iVar22 = param_1[9];\n          if (0 < iVar22) {\n            iVar10 = 0;\n            pdVar6 = (double *)(param_1[10] + 0x48);\n            do {\n              puVar1[(int)*pdVar6] = (ushort)iVar10;\n              iVar10 = iVar10 + 1;\n              pdVar6 = pdVar6 + 0xb;\n            } while (iVar22 != iVar10);\n          }\n          uVar3 = (*(code *)PTR_AcquireAuthenticCacheView_003a8ed4)(param_1,param_2);\n          if (0 < param_1[7]) {\n            iVar22 = 0;\n            uVar33 = (ulonglong)*(uint *)(PTR_LAB_003a88e0 + 0x1a50);\n            do {\n              iVar10 = (*(code *)PTR_GetCacheViewAuthenticPixels_003a964c)\n                                 (uVar3,0,iVar22,param_1[6],1,param_2);\n              if (iVar10 == 0) {\nLAB_00065918:\n                iVar22 = 0;\n                goto LAB_000658cc;\n              }\n              iVar2 = param_1[6];\n              iVar15 = 0;\n              if (0 < iVar2) {\n                iVar16 = param_1[0xb4];\n                iVar7 = param_1[0xb0];\n                iVar20 = param_1[10];\n                iVar19 = *(int *)(iVar16 + 0x40);\n                iVar18 = *(int *)(iVar16 + 0x28);\n                iVar17 = *(int *)(iVar16 + 0x34);\n                pfVar14 = (float *)(iVar10 + *(int *)(iVar16 + 8) * 4);\n                pfVar12 = (float *)(iVar10 + *(int *)(iVar16 + 0x14) * 4);\n                pfVar11 = (float *)(iVar10 + *(int *)(iVar16 + 0x20) * 4);\n                do {\n                  if (iVar19 == 0) {\n                    uVar5 = (uint)*puVar1;\n                  }\n                  else {\n                    pfVar21 = (float *)(iVar10 + *(int *)(iVar16 + 0x44) * 4);\n                    uVar5 = (uint)puVar1[(int)*pfVar21];\n                    *pfVar21 = (float)uVar5;\n                  }\n                  iVar4 = uVar5 * 0x58 + iVar20;\n                  dVar27 = *(double *)(iVar4 + 0x30);\n                  dVar24 = *(double *)(iVar4 + 0x38);\n                  *pfVar14 = (float)*(double *)(iVar4 + 0x28);\n                  *pfVar12 = (float)dVar27;\n                  *pfVar11 = (float)dVar24;\n                  if (iVar18 != 0) {\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x2c) * 4) =\n                         (float)*(double *)(iVar4 + 0x40);\n                  }\n                  if (iVar17 != 0) {\n                    fVar26 = (float)uVar33;\n                    if (*(int *)(iVar4 + 8) != 0) {\n                      fVar26 = (float)*(double *)(iVar4 + 0x48);\n                    }\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x38) * 4) = fVar26;\n                  }\n                  iVar15 = iVar15 + 1;\n                  iVar10 = iVar10 + iVar7 * 4;\n                  pfVar14 = pfVar14 + iVar7;\n                  pfVar12 = pfVar12 + iVar7;\n                  pfVar11 = pfVar11 + iVar7;\n                } while (iVar2 != iVar15);\n              }\n              iVar10 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8)(uVar3,param_2);\n              if (iVar10 == 0) goto LAB_00065918;\n              iVar22 = iVar22 + 1;\n            } while (iVar22 < param_1[7]);\n          }\n          iVar22 = 1;\nLAB_000658cc:\n          (*(code *)PTR_DestroyCacheView_003a8ef4)(uVar3);\n          (*(code *)PTR_RelinquishMagickMemory_003a8fc0)(puVar1);\n          return iVar22;\n        }\n        iVar22 = 0;\n        (*(code *)PTR_ThrowMagickException_003a8f20)\n                  (param_2,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                   PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x147,400,\n                   PTR_LAB_003a88e0 + 0x16f8,PTR_LAB_003a88e0 + 0x3e28,param_1 + 0xd0);\n      }\n      return iVar22;\n    }\n  }\n  piVar8 = (int *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3784);\n  puVar23 = PTR___assert_fail_003a9608;\n  (*(code *)PTR___assert_fail_003a9608)\n            (piVar8,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,0x13d,\n             PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a58);\n  iVar10 = (**(code **)(puVar23 + 0x343f4c))();\n  iVar22 = (**(code **)(puVar23 + 0x343b48))();\n  if (iVar10 == 0) {\n    trap(7);\n  }\n  iVar15 = 0x10000 / iVar10;\n  iVar10 = 0x10000 % iVar10;\n  if (iVar22 < iVar10) {\n    iVar15 = iVar15 + 1;\n    iVar10 = 0;\n  }\n  iVar10 = iVar15 * iVar22 + iVar10;\n  iVar15 = iVar15 + iVar10;\n  if (iVar10 < iVar15) {\n    iVar2 = iVar10 * 0x18;\n    dVar24 = *(double *)(*(int *)(puVar23 + 0x342f28) + -0x3f48);\n    dVar31 = *(double *)(*(int *)(puVar23 + 0x342f20) + 0x1a58);\n    dVar32 = *(double *)(*(int *)(puVar23 + 0x342f28) + -0x3f40);\n    dVar30 = *(double *)(*(int *)(puVar23 + 0x342f20) + 0x1400);\n    dVar27 = *(double *)(*(int *)(puVar23 + 0x342f28) + -0x3f50);\n    iVar22 = iVar10;\n    pdVar6 = (double *)(piVar8[2] + iVar2);\n    pdVar9 = (double *)(*piVar8 + iVar2);\n    pdVar13 = (double *)(piVar8[1] + iVar2);\n    do {\n      iVar10 = iVar22 + 1;\n      dVar28 = (double)iVar22;\n      *pdVar13 = dVar28;\n      dVar25 = (dVar28 + dVar28) - dVar31;\n      dVar29 = dVar25 * dVar27;\n      *pdVar9 = dVar25 * dVar30;\n      *pdVar6 = dVar29;\n      pdVar13[1] = dVar28;\n      pdVar9[1] = dVar25 * 0.0;\n      pdVar6[1] = dVar25 * dVar24;\n      pdVar13[2] = dVar28;\n      pdVar9[2] = dVar25 * dVar32;\n      pdVar6[2] = dVar29;\n      iVar22 = iVar10;\n      pdVar6 = pdVar6 + 3;\n      pdVar9 = pdVar9 + 3;\n      pdVar13 = pdVar13 + 3;\n    } while (iVar15 != iVar10);\n  }\n  return iVar10;\n}\n\n" (function_definition "int SortColormapByIntensity(int *param_1,undefined4 param_2)\n\n{\n  ushort *puVar1;\n  int iVar2;\n  undefined4 uVar3;\n  int iVar4;\n  uint uVar5;\n  double *pdVar6;\n  int iVar7;\n  int *piVar8;\n  double *pdVar9;\n  int iVar10;\n  float *pfVar11;\n  float *pfVar12;\n  double *pdVar13;\n  float *pfVar14;\n  int iVar15;\n  int iVar16;\n  int iVar17;\n  int iVar18;\n  int iVar19;\n  int iVar20;\n  float *pfVar21;\n  int iVar22;\n  undefined *puVar23;\n  double dVar24;\n  float fVar26;\n  double dVar25;\n  double dVar27;\n  double dVar28;\n  double dVar29;\n  double dVar30;\n  double dVar31;\n  double dVar32;\n  ulonglong uVar33;\n  \n  if (param_1 == (int *)0x0) {\n    (*(code *)PTR___assert_fail_003a9608)\n              (PTR_LAB_003a88e0 + 0xdd0,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n               0x13a,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a58);\n  }\n  else {\n    if (param_1[0xcd4] != 0) {\n      (*(code *)PTR_LogMagickEvent_003a91e0)\n                (0x8000,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x13c,\n                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x1fec);\n    }\n    if (param_1[0xcdb] == -0x54535255) {\n      iVar22 = 1;\n      if (*param_1 == 2) {\n        puVar1 = (ushort *)(*(code *)PTR_AcquireQuantumMemory_003a950c)(param_1[9],2);\n        if (puVar1 != (ushort *)0x0) {\n          iVar10 = param_1[9];\n          iVar22 = param_1[10];\n          if (0 < iVar10) {\n            iVar15 = 0;\n            pdVar6 = (double *)(iVar22 + 0x48);\n            do {\n              iVar2 = iVar15 + 1;\n              *pdVar6 = (double)iVar15;\n              iVar15 = iVar2;\n              pdVar6 = pdVar6 + 0xb;\n            } while (iVar2 != iVar10);\n          }\n          (*(code *)PTR_qsort_003a98d4)(iVar22,iVar10,0x58,PTR_LAB_003a893c + 0x4ca0);\n          iVar22 = param_1[9];\n          if (0 < iVar22) {\n            iVar10 = 0;\n            pdVar6 = (double *)(param_1[10] + 0x48);\n            do {\n              puVar1[(int)*pdVar6] = (ushort)iVar10;\n              iVar10 = iVar10 + 1;\n              pdVar6 = pdVar6 + 0xb;\n            } while (iVar22 != iVar10);\n          }\n          uVar3 = (*(code *)PTR_AcquireAuthenticCacheView_003a8ed4)(param_1,param_2);\n          if (0 < param_1[7]) {\n            iVar22 = 0;\n            uVar33 = (ulonglong)*(uint *)(PTR_LAB_003a88e0 + 0x1a50);\n            do {\n              iVar10 = (*(code *)PTR_GetCacheViewAuthenticPixels_003a964c)\n                                 (uVar3,0,iVar22,param_1[6],1,param_2);\n              if (iVar10 == 0) {\nLAB_00065918:\n                iVar22 = 0;\n                goto LAB_000658cc;\n              }\n              iVar2 = param_1[6];\n              iVar15 = 0;\n              if (0 < iVar2) {\n                iVar16 = param_1[0xb4];\n                iVar7 = param_1[0xb0];\n                iVar20 = param_1[10];\n                iVar19 = *(int *)(iVar16 + 0x40);\n                iVar18 = *(int *)(iVar16 + 0x28);\n                iVar17 = *(int *)(iVar16 + 0x34);\n                pfVar14 = (float *)(iVar10 + *(int *)(iVar16 + 8) * 4);\n                pfVar12 = (float *)(iVar10 + *(int *)(iVar16 + 0x14) * 4);\n                pfVar11 = (float *)(iVar10 + *(int *)(iVar16 + 0x20) * 4);\n                do {\n                  if (iVar19 == 0) {\n                    uVar5 = (uint)*puVar1;\n                  }\n                  else {\n                    pfVar21 = (float *)(iVar10 + *(int *)(iVar16 + 0x44) * 4);\n                    uVar5 = (uint)puVar1[(int)*pfVar21];\n                    *pfVar21 = (float)uVar5;\n                  }\n                  iVar4 = uVar5 * 0x58 + iVar20;\n                  dVar27 = *(double *)(iVar4 + 0x30);\n                  dVar24 = *(double *)(iVar4 + 0x38);\n                  *pfVar14 = (float)*(double *)(iVar4 + 0x28);\n                  *pfVar12 = (float)dVar27;\n                  *pfVar11 = (float)dVar24;\n                  if (iVar18 != 0) {\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x2c) * 4) =\n                         (float)*(double *)(iVar4 + 0x40);\n                  }\n                  if (iVar17 != 0) {\n                    fVar26 = (float)uVar33;\n                    if (*(int *)(iVar4 + 8) != 0) {\n                      fVar26 = (float)*(double *)(iVar4 + 0x48);\n                    }\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x38) * 4) = fVar26;\n                  }\n                  iVar15 = iVar15 + 1;\n                  iVar10 = iVar10 + iVar7 * 4;\n                  pfVar14 = pfVar14 + iVar7;\n                  pfVar12 = pfVar12 + iVar7;\n                  pfVar11 = pfVar11 + iVar7;\n                } while (iVar2 != iVar15);\n              }\n              iVar10 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8)(uVar3,param_2);\n              if (iVar10 == 0) goto LAB_00065918;\n              iVar22 = iVar22 + 1;\n            } while (iVar22 < param_1[7]);\n          }\n          iVar22 = 1;\nLAB_000658cc:\n          (*(code *)PTR_DestroyCacheView_003a8ef4)(uVar3);\n          (*(code *)PTR_RelinquishMagickMemory_003a8fc0)(puVar1);\n          return iVar22;\n        }\n        iVar22 = 0;\n        (*(code *)PTR_ThrowMagickException_003a8f20)\n                  (param_2,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                   PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x147,400,\n                   PTR_LAB_003a88e0 + 0x16f8,PTR_LAB_003a88e0 + 0x3e28,param_1 + 0xd0);\n      }\n      return iVar22;\n    }\n  }\n  piVar8 = (int *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3784);\n  puVar23 = PTR___assert_fail_003a9608;\n  (*(code *)PTR___assert_fail_003a9608)\n            (piVar8,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,0x13d,\n             PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a58);\n  iVar10 = (**(code **)(puVar23 + 0x343f4c))();\n  iVar22 = (**(code **)(puVar23 + 0x343b48))();\n  if (iVar10 == 0) {\n    trap(7);\n  }\n  iVar15 = 0x10000 / iVar10;\n  iVar10 = 0x10000 % iVar10;\n  if (iVar22 < iVar10) {\n    iVar15 = iVar15 + 1;\n    iVar10 = 0;\n  }\n  iVar10 = iVar15 * iVar22 + iVar10;\n  iVar15 = iVar15 + iVar10;\n  if (iVar10 < iVar15) {\n    iVar2 = iVar10 * 0x18;\n    dVar24 = *(double *)(*(int *)(puVar23 + 0x342f28) + -0x3f48);\n    dVar31 = *(double *)(*(int *)(puVar23 + 0x342f20) + 0x1a58);\n    dVar32 = *(double *)(*(int *)(puVar23 + 0x342f28) + -0x3f40);\n    dVar30 = *(double *)(*(int *)(puVar23 + 0x342f20) + 0x1400);\n    dVar27 = *(double *)(*(int *)(puVar23 + 0x342f28) + -0x3f50);\n    iVar22 = iVar10;\n    pdVar6 = (double *)(piVar8[2] + iVar2);\n    pdVar9 = (double *)(*piVar8 + iVar2);\n    pdVar13 = (double *)(piVar8[1] + iVar2);\n    do {\n      iVar10 = iVar22 + 1;\n      dVar28 = (double)iVar22;\n      *pdVar13 = dVar28;\n      dVar25 = (dVar28 + dVar28) - dVar31;\n      dVar29 = dVar25 * dVar27;\n      *pdVar9 = dVar25 * dVar30;\n      *pdVar6 = dVar29;\n      pdVar13[1] = dVar28;\n      pdVar9[1] = dVar25 * 0.0;\n      pdVar6[1] = dVar25 * dVar24;\n      pdVar13[2] = dVar28;\n      pdVar9[2] = dVar25 * dVar32;\n      pdVar6[2] = dVar29;\n      iVar22 = iVar10;\n      pdVar6 = pdVar6 + 3;\n      pdVar9 = pdVar9 + 3;\n      pdVar13 = pdVar13 + 3;\n    } while (iVar15 != iVar10);\n  }\n  return iVar10;\n}" primitive_type (function_declarator "SortColormapByIntensity(int *param_1,undefined4 param_2)" identifier (parameter_list "(int *param_1,undefined4 param_2)" ( (parameter_declaration "int *param_1" primitive_type (pointer_declarator "*param_1" * identifier)) , (parameter_declaration "undefined4 param_2" type_identifier identifier) ))) (compound_statement "{\n  ushort *puVar1;\n  int iVar2;\n  undefined4 uVar3;\n  int iVar4;\n  uint uVar5;\n  double *pdVar6;\n  int iVar7;\n  int *piVar8;\n  double *pdVar9;\n  int iVar10;\n  float *pfVar11;\n  float *pfVar12;\n  double *pdVar13;\n  float *pfVar14;\n  int iVar15;\n  int iVar16;\n  int iVar17;\n  int iVar18;\n  int iVar19;\n  int iVar20;\n  float *pfVar21;\n  int iVar22;\n  undefined *puVar23;\n  double dVar24;\n  float fVar26;\n  double dVar25;\n  double dVar27;\n  double dVar28;\n  double dVar29;\n  double dVar30;\n  double dVar31;\n  double dVar32;\n  ulonglong uVar33;\n  \n  if (param_1 == (int *)0x0) {\n    (*(code *)PTR___assert_fail_003a9608)\n              (PTR_LAB_003a88e0 + 0xdd0,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n               0x13a,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a58);\n  }\n  else {\n    if (param_1[0xcd4] != 0) {\n      (*(code *)PTR_LogMagickEvent_003a91e0)\n                (0x8000,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x13c,\n                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x1fec);\n    }\n    if (param_1[0xcdb] == -0x54535255) {\n      iVar22 = 1;\n      if (*param_1 == 2) {\n        puVar1 = (ushort *)(*(code *)PTR_AcquireQuantumMemory_003a950c)(param_1[9],2);\n        if (puVar1 != (ushort *)0x0) {\n          iVar10 = param_1[9];\n          iVar22 = param_1[10];\n          if (0 < iVar10) {\n            iVar15 = 0;\n            pdVar6 = (double *)(iVar22 + 0x48);\n            do {\n              iVar2 = iVar15 + 1;\n              *pdVar6 = (double)iVar15;\n              iVar15 = iVar2;\n              pdVar6 = pdVar6 + 0xb;\n            } while (iVar2 != iVar10);\n          }\n          (*(code *)PTR_qsort_003a98d4)(iVar22,iVar10,0x58,PTR_LAB_003a893c + 0x4ca0);\n          iVar22 = param_1[9];\n          if (0 < iVar22) {\n            iVar10 = 0;\n            pdVar6 = (double *)(param_1[10] + 0x48);\n            do {\n              puVar1[(int)*pdVar6] = (ushort)iVar10;\n              iVar10 = iVar10 + 1;\n              pdVar6 = pdVar6 + 0xb;\n            } while (iVar22 != iVar10);\n          }\n          uVar3 = (*(code *)PTR_AcquireAuthenticCacheView_003a8ed4)(param_1,param_2);\n          if (0 < param_1[7]) {\n            iVar22 = 0;\n            uVar33 = (ulonglong)*(uint *)(PTR_LAB_003a88e0 + 0x1a50);\n            do {\n              iVar10 = (*(code *)PTR_GetCacheViewAuthenticPixels_003a964c)\n                                 (uVar3,0,iVar22,param_1[6],1,param_2);\n              if (iVar10 == 0) {\nLAB_00065918:\n                iVar22 = 0;\n                goto LAB_000658cc;\n              }\n              iVar2 = param_1[6];\n              iVar15 = 0;\n              if (0 < iVar2) {\n                iVar16 = param_1[0xb4];\n                iVar7 = param_1[0xb0];\n                iVar20 = param_1[10];\n                iVar19 = *(int *)(iVar16 + 0x40);\n                iVar18 = *(int *)(iVar16 + 0x28);\n                iVar17 = *(int *)(iVar16 + 0x34);\n                pfVar14 = (float *)(iVar10 + *(int *)(iVar16 + 8) * 4);\n                pfVar12 = (float *)(iVar10 + *(int *)(iVar16 + 0x14) * 4);\n                pfVar11 = (float *)(iVar10 + *(int *)(iVar16 + 0x20) * 4);\n                do {\n                  if (iVar19 == 0) {\n                    uVar5 = (uint)*puVar1;\n                  }\n                  else {\n                    pfVar21 = (float *)(iVar10 + *(int *)(iVar16 + 0x44) * 4);\n                    uVar5 = (uint)puVar1[(int)*pfVar21];\n                    *pfVar21 = (float)uVar5;\n                  }\n                  iVar4 = uVar5 * 0x58 + iVar20;\n                  dVar27 = *(double *)(iVar4 + 0x30);\n                  dVar24 = *(double *)(iVar4 + 0x38);\n                  *pfVar14 = (float)*(double *)(iVar4 + 0x28);\n                  *pfVar12 = (float)dVar27;\n                  *pfVar11 = (float)dVar24;\n                  if (iVar18 != 0) {\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x2c) * 4) =\n                         (float)*(double *)(iVar4 + 0x40);\n                  }\n                  if (iVar17 != 0) {\n                    fVar26 = (float)uVar33;\n                    if (*(int *)(iVar4 + 8) != 0) {\n                      fVar26 = (float)*(double *)(iVar4 + 0x48);\n                    }\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x38) * 4) = fVar26;\n                  }\n                  iVar15 = iVar15 + 1;\n                  iVar10 = iVar10 + iVar7 * 4;\n                  pfVar14 = pfVar14 + iVar7;\n                  pfVar12 = pfVar12 + iVar7;\n                  pfVar11 = pfVar11 + iVar7;\n                } while (iVar2 != iVar15);\n              }\n              iVar10 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8)(uVar3,param_2);\n              if (iVar10 == 0) goto LAB_00065918;\n              iVar22 = iVar22 + 1;\n            } while (iVar22 < param_1[7]);\n          }\n          iVar22 = 1;\nLAB_000658cc:\n          (*(code *)PTR_DestroyCacheView_003a8ef4)(uVar3);\n          (*(code *)PTR_RelinquishMagickMemory_003a8fc0)(puVar1);\n          return iVar22;\n        }\n        iVar22 = 0;\n        (*(code *)PTR_ThrowMagickException_003a8f20)\n                  (param_2,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                   PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x147,400,\n                   PTR_LAB_003a88e0 + 0x16f8,PTR_LAB_003a88e0 + 0x3e28,param_1 + 0xd0);\n      }\n      return iVar22;\n    }\n  }\n  piVar8 = (int *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3784);\n  puVar23 = PTR___assert_fail_003a9608;\n  (*(code *)PTR___assert_fail_003a9608)\n            (piVar8,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,0x13d,\n             PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a58);\n  iVar10 = (**(code **)(puVar23 + 0x343f4c))();\n  iVar22 = (**(code **)(puVar23 + 0x343b48))();\n  if (iVar10 == 0) {\n    trap(7);\n  }\n  iVar15 = 0x10000 / iVar10;\n  iVar10 = 0x10000 % iVar10;\n  if (iVar22 < iVar10) {\n    iVar15 = iVar15 + 1;\n    iVar10 = 0;\n  }\n  iVar10 = iVar15 * iVar22 + iVar10;\n  iVar15 = iVar15 + iVar10;\n  if (iVar10 < iVar15) {\n    iVar2 = iVar10 * 0x18;\n    dVar24 = *(double *)(*(int *)(puVar23 + 0x342f28) + -0x3f48);\n    dVar31 = *(double *)(*(int *)(puVar23 + 0x342f20) + 0x1a58);\n    dVar32 = *(double *)(*(int *)(puVar23 + 0x342f28) + -0x3f40);\n    dVar30 = *(double *)(*(int *)(puVar23 + 0x342f20) + 0x1400);\n    dVar27 = *(double *)(*(int *)(puVar23 + 0x342f28) + -0x3f50);\n    iVar22 = iVar10;\n    pdVar6 = (double *)(piVar8[2] + iVar2);\n    pdVar9 = (double *)(*piVar8 + iVar2);\n    pdVar13 = (double *)(piVar8[1] + iVar2);\n    do {\n      iVar10 = iVar22 + 1;\n      dVar28 = (double)iVar22;\n      *pdVar13 = dVar28;\n      dVar25 = (dVar28 + dVar28) - dVar31;\n      dVar29 = dVar25 * dVar27;\n      *pdVar9 = dVar25 * dVar30;\n      *pdVar6 = dVar29;\n      pdVar13[1] = dVar28;\n      pdVar9[1] = dVar25 * 0.0;\n      pdVar6[1] = dVar25 * dVar24;\n      pdVar13[2] = dVar28;\n      pdVar9[2] = dVar25 * dVar32;\n      pdVar6[2] = dVar29;\n      iVar22 = iVar10;\n      pdVar6 = pdVar6 + 3;\n      pdVar9 = pdVar9 + 3;\n      pdVar13 = pdVar13 + 3;\n    } while (iVar15 != iVar10);\n  }\n  return iVar10;\n}" { (declaration "ushort *puVar1;" type_identifier (pointer_declarator "*puVar1" * identifier) ;) (declaration "int iVar2;" primitive_type identifier ;) (declaration "undefined4 uVar3;" type_identifier identifier ;) (declaration "int iVar4;" primitive_type identifier ;) (declaration "uint uVar5;" type_identifier identifier ;) (declaration "double *pdVar6;" primitive_type (pointer_declarator "*pdVar6" * identifier) ;) (declaration "int iVar7;" primitive_type identifier ;) (declaration "int *piVar8;" primitive_type (pointer_declarator "*piVar8" * identifier) ;) (declaration "double *pdVar9;" primitive_type (pointer_declarator "*pdVar9" * identifier) ;) (declaration "int iVar10;" primitive_type identifier ;) (declaration "float *pfVar11;" primitive_type (pointer_declarator "*pfVar11" * identifier) ;) (declaration "float *pfVar12;" primitive_type (pointer_declarator "*pfVar12" * identifier) ;) (declaration "double *pdVar13;" primitive_type (pointer_declarator "*pdVar13" * identifier) ;) (declaration "float *pfVar14;" primitive_type (pointer_declarator "*pfVar14" * identifier) ;) (declaration "int iVar15;" primitive_type identifier ;) (declaration "int iVar16;" primitive_type identifier ;) (declaration "int iVar17;" primitive_type identifier ;) (declaration "int iVar18;" primitive_type identifier ;) (declaration "int iVar19;" primitive_type identifier ;) (declaration "int iVar20;" primitive_type identifier ;) (declaration "float *pfVar21;" primitive_type (pointer_declarator "*pfVar21" * identifier) ;) (declaration "int iVar22;" primitive_type identifier ;) (declaration "undefined *puVar23;" type_identifier (pointer_declarator "*puVar23" * identifier) ;) (declaration "double dVar24;" primitive_type identifier ;) (declaration "float fVar26;" primitive_type identifier ;) (declaration "double dVar25;" 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 "ulonglong uVar33;" type_identifier identifier ;) (if_statement "if (param_1 == (int *)0x0) {\n    (*(code *)PTR___assert_fail_003a9608)\n              (PTR_LAB_003a88e0 + 0xdd0,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n               0x13a,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a58);\n  }\n  else {\n    if (param_1[0xcd4] != 0) {\n      (*(code *)PTR_LogMagickEvent_003a91e0)\n                (0x8000,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x13c,\n                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x1fec);\n    }\n    if (param_1[0xcdb] == -0x54535255) {\n      iVar22 = 1;\n      if (*param_1 == 2) {\n        puVar1 = (ushort *)(*(code *)PTR_AcquireQuantumMemory_003a950c)(param_1[9],2);\n        if (puVar1 != (ushort *)0x0) {\n          iVar10 = param_1[9];\n          iVar22 = param_1[10];\n          if (0 < iVar10) {\n            iVar15 = 0;\n            pdVar6 = (double *)(iVar22 + 0x48);\n            do {\n              iVar2 = iVar15 + 1;\n              *pdVar6 = (double)iVar15;\n              iVar15 = iVar2;\n              pdVar6 = pdVar6 + 0xb;\n            } while (iVar2 != iVar10);\n          }\n          (*(code *)PTR_qsort_003a98d4)(iVar22,iVar10,0x58,PTR_LAB_003a893c + 0x4ca0);\n          iVar22 = param_1[9];\n          if (0 < iVar22) {\n            iVar10 = 0;\n            pdVar6 = (double *)(param_1[10] + 0x48);\n            do {\n              puVar1[(int)*pdVar6] = (ushort)iVar10;\n              iVar10 = iVar10 + 1;\n              pdVar6 = pdVar6 + 0xb;\n            } while (iVar22 != iVar10);\n          }\n          uVar3 = (*(code *)PTR_AcquireAuthenticCacheView_003a8ed4)(param_1,param_2);\n          if (0 < param_1[7]) {\n            iVar22 = 0;\n            uVar33 = (ulonglong)*(uint *)(PTR_LAB_003a88e0 + 0x1a50);\n            do {\n              iVar10 = (*(code *)PTR_GetCacheViewAuthenticPixels_003a964c)\n                                 (uVar3,0,iVar22,param_1[6],1,param_2);\n              if (iVar10 == 0) {\nLAB_00065918:\n                iVar22 = 0;\n                goto LAB_000658cc;\n              }\n              iVar2 = param_1[6];\n              iVar15 = 0;\n              if (0 < iVar2) {\n                iVar16 = param_1[0xb4];\n                iVar7 = param_1[0xb0];\n                iVar20 = param_1[10];\n                iVar19 = *(int *)(iVar16 + 0x40);\n                iVar18 = *(int *)(iVar16 + 0x28);\n                iVar17 = *(int *)(iVar16 + 0x34);\n                pfVar14 = (float *)(iVar10 + *(int *)(iVar16 + 8) * 4);\n                pfVar12 = (float *)(iVar10 + *(int *)(iVar16 + 0x14) * 4);\n                pfVar11 = (float *)(iVar10 + *(int *)(iVar16 + 0x20) * 4);\n                do {\n                  if (iVar19 == 0) {\n                    uVar5 = (uint)*puVar1;\n                  }\n                  else {\n                    pfVar21 = (float *)(iVar10 + *(int *)(iVar16 + 0x44) * 4);\n                    uVar5 = (uint)puVar1[(int)*pfVar21];\n                    *pfVar21 = (float)uVar5;\n                  }\n                  iVar4 = uVar5 * 0x58 + iVar20;\n                  dVar27 = *(double *)(iVar4 + 0x30);\n                  dVar24 = *(double *)(iVar4 + 0x38);\n                  *pfVar14 = (float)*(double *)(iVar4 + 0x28);\n                  *pfVar12 = (float)dVar27;\n                  *pfVar11 = (float)dVar24;\n                  if (iVar18 != 0) {\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x2c) * 4) =\n                         (float)*(double *)(iVar4 + 0x40);\n                  }\n                  if (iVar17 != 0) {\n                    fVar26 = (float)uVar33;\n                    if (*(int *)(iVar4 + 8) != 0) {\n                      fVar26 = (float)*(double *)(iVar4 + 0x48);\n                    }\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x38) * 4) = fVar26;\n                  }\n                  iVar15 = iVar15 + 1;\n                  iVar10 = iVar10 + iVar7 * 4;\n                  pfVar14 = pfVar14 + iVar7;\n                  pfVar12 = pfVar12 + iVar7;\n                  pfVar11 = pfVar11 + iVar7;\n                } while (iVar2 != iVar15);\n              }\n              iVar10 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8)(uVar3,param_2);\n              if (iVar10 == 0) goto LAB_00065918;\n              iVar22 = iVar22 + 1;\n            } while (iVar22 < param_1[7]);\n          }\n          iVar22 = 1;\nLAB_000658cc:\n          (*(code *)PTR_DestroyCacheView_003a8ef4)(uVar3);\n          (*(code *)PTR_RelinquishMagickMemory_003a8fc0)(puVar1);\n          return iVar22;\n        }\n        iVar22 = 0;\n        (*(code *)PTR_ThrowMagickException_003a8f20)\n                  (param_2,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                   PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x147,400,\n                   PTR_LAB_003a88e0 + 0x16f8,PTR_LAB_003a88e0 + 0x3e28,param_1 + 0xd0);\n      }\n      return iVar22;\n    }\n  }" if (parenthesized_expression "(param_1 == (int *)0x0)" ( (binary_expression "param_1 == (int *)0x0" identifier == (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    (*(code *)PTR___assert_fail_003a9608)\n              (PTR_LAB_003a88e0 + 0xdd0,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n               0x13a,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a58);\n  }" { (expression_statement "(*(code *)PTR___assert_fail_003a9608)\n              (PTR_LAB_003a88e0 + 0xdd0,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n               0x13a,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a58);" (call_expression "(*(code *)PTR___assert_fail_003a9608)\n              (PTR_LAB_003a88e0 + 0xdd0,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n               0x13a,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a58)" (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_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n               0x13a,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a58)" ( (binary_expression "PTR_LAB_003a88e0 + 0xdd0" identifier + number_literal) , (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88" identifier + number_literal) , number_literal , (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a58" identifier + number_literal) ))) ;) }) (else_clause "else {\n    if (param_1[0xcd4] != 0) {\n      (*(code *)PTR_LogMagickEvent_003a91e0)\n                (0x8000,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x13c,\n                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x1fec);\n    }\n    if (param_1[0xcdb] == -0x54535255) {\n      iVar22 = 1;\n      if (*param_1 == 2) {\n        puVar1 = (ushort *)(*(code *)PTR_AcquireQuantumMemory_003a950c)(param_1[9],2);\n        if (puVar1 != (ushort *)0x0) {\n          iVar10 = param_1[9];\n          iVar22 = param_1[10];\n          if (0 < iVar10) {\n            iVar15 = 0;\n            pdVar6 = (double *)(iVar22 + 0x48);\n            do {\n              iVar2 = iVar15 + 1;\n              *pdVar6 = (double)iVar15;\n              iVar15 = iVar2;\n              pdVar6 = pdVar6 + 0xb;\n            } while (iVar2 != iVar10);\n          }\n          (*(code *)PTR_qsort_003a98d4)(iVar22,iVar10,0x58,PTR_LAB_003a893c + 0x4ca0);\n          iVar22 = param_1[9];\n          if (0 < iVar22) {\n            iVar10 = 0;\n            pdVar6 = (double *)(param_1[10] + 0x48);\n            do {\n              puVar1[(int)*pdVar6] = (ushort)iVar10;\n              iVar10 = iVar10 + 1;\n              pdVar6 = pdVar6 + 0xb;\n            } while (iVar22 != iVar10);\n          }\n          uVar3 = (*(code *)PTR_AcquireAuthenticCacheView_003a8ed4)(param_1,param_2);\n          if (0 < param_1[7]) {\n            iVar22 = 0;\n            uVar33 = (ulonglong)*(uint *)(PTR_LAB_003a88e0 + 0x1a50);\n            do {\n              iVar10 = (*(code *)PTR_GetCacheViewAuthenticPixels_003a964c)\n                                 (uVar3,0,iVar22,param_1[6],1,param_2);\n              if (iVar10 == 0) {\nLAB_00065918:\n                iVar22 = 0;\n                goto LAB_000658cc;\n              }\n              iVar2 = param_1[6];\n              iVar15 = 0;\n              if (0 < iVar2) {\n                iVar16 = param_1[0xb4];\n                iVar7 = param_1[0xb0];\n                iVar20 = param_1[10];\n                iVar19 = *(int *)(iVar16 + 0x40);\n                iVar18 = *(int *)(iVar16 + 0x28);\n                iVar17 = *(int *)(iVar16 + 0x34);\n                pfVar14 = (float *)(iVar10 + *(int *)(iVar16 + 8) * 4);\n                pfVar12 = (float *)(iVar10 + *(int *)(iVar16 + 0x14) * 4);\n                pfVar11 = (float *)(iVar10 + *(int *)(iVar16 + 0x20) * 4);\n                do {\n                  if (iVar19 == 0) {\n                    uVar5 = (uint)*puVar1;\n                  }\n                  else {\n                    pfVar21 = (float *)(iVar10 + *(int *)(iVar16 + 0x44) * 4);\n                    uVar5 = (uint)puVar1[(int)*pfVar21];\n                    *pfVar21 = (float)uVar5;\n                  }\n                  iVar4 = uVar5 * 0x58 + iVar20;\n                  dVar27 = *(double *)(iVar4 + 0x30);\n                  dVar24 = *(double *)(iVar4 + 0x38);\n                  *pfVar14 = (float)*(double *)(iVar4 + 0x28);\n                  *pfVar12 = (float)dVar27;\n                  *pfVar11 = (float)dVar24;\n                  if (iVar18 != 0) {\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x2c) * 4) =\n                         (float)*(double *)(iVar4 + 0x40);\n                  }\n                  if (iVar17 != 0) {\n                    fVar26 = (float)uVar33;\n                    if (*(int *)(iVar4 + 8) != 0) {\n                      fVar26 = (float)*(double *)(iVar4 + 0x48);\n                    }\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x38) * 4) = fVar26;\n                  }\n                  iVar15 = iVar15 + 1;\n                  iVar10 = iVar10 + iVar7 * 4;\n                  pfVar14 = pfVar14 + iVar7;\n                  pfVar12 = pfVar12 + iVar7;\n                  pfVar11 = pfVar11 + iVar7;\n                } while (iVar2 != iVar15);\n              }\n              iVar10 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8)(uVar3,param_2);\n              if (iVar10 == 0) goto LAB_00065918;\n              iVar22 = iVar22 + 1;\n            } while (iVar22 < param_1[7]);\n          }\n          iVar22 = 1;\nLAB_000658cc:\n          (*(code *)PTR_DestroyCacheView_003a8ef4)(uVar3);\n          (*(code *)PTR_RelinquishMagickMemory_003a8fc0)(puVar1);\n          return iVar22;\n        }\n        iVar22 = 0;\n        (*(code *)PTR_ThrowMagickException_003a8f20)\n                  (param_2,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                   PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x147,400,\n                   PTR_LAB_003a88e0 + 0x16f8,PTR_LAB_003a88e0 + 0x3e28,param_1 + 0xd0);\n      }\n      return iVar22;\n    }\n  }" else (compound_statement "{\n    if (param_1[0xcd4] != 0) {\n      (*(code *)PTR_LogMagickEvent_003a91e0)\n                (0x8000,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x13c,\n                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x1fec);\n    }\n    if (param_1[0xcdb] == -0x54535255) {\n      iVar22 = 1;\n      if (*param_1 == 2) {\n        puVar1 = (ushort *)(*(code *)PTR_AcquireQuantumMemory_003a950c)(param_1[9],2);\n        if (puVar1 != (ushort *)0x0) {\n          iVar10 = param_1[9];\n          iVar22 = param_1[10];\n          if (0 < iVar10) {\n            iVar15 = 0;\n            pdVar6 = (double *)(iVar22 + 0x48);\n            do {\n              iVar2 = iVar15 + 1;\n              *pdVar6 = (double)iVar15;\n              iVar15 = iVar2;\n              pdVar6 = pdVar6 + 0xb;\n            } while (iVar2 != iVar10);\n          }\n          (*(code *)PTR_qsort_003a98d4)(iVar22,iVar10,0x58,PTR_LAB_003a893c + 0x4ca0);\n          iVar22 = param_1[9];\n          if (0 < iVar22) {\n            iVar10 = 0;\n            pdVar6 = (double *)(param_1[10] + 0x48);\n            do {\n              puVar1[(int)*pdVar6] = (ushort)iVar10;\n              iVar10 = iVar10 + 1;\n              pdVar6 = pdVar6 + 0xb;\n            } while (iVar22 != iVar10);\n          }\n          uVar3 = (*(code *)PTR_AcquireAuthenticCacheView_003a8ed4)(param_1,param_2);\n          if (0 < param_1[7]) {\n            iVar22 = 0;\n            uVar33 = (ulonglong)*(uint *)(PTR_LAB_003a88e0 + 0x1a50);\n            do {\n              iVar10 = (*(code *)PTR_GetCacheViewAuthenticPixels_003a964c)\n                                 (uVar3,0,iVar22,param_1[6],1,param_2);\n              if (iVar10 == 0) {\nLAB_00065918:\n                iVar22 = 0;\n                goto LAB_000658cc;\n              }\n              iVar2 = param_1[6];\n              iVar15 = 0;\n              if (0 < iVar2) {\n                iVar16 = param_1[0xb4];\n                iVar7 = param_1[0xb0];\n                iVar20 = param_1[10];\n                iVar19 = *(int *)(iVar16 + 0x40);\n                iVar18 = *(int *)(iVar16 + 0x28);\n                iVar17 = *(int *)(iVar16 + 0x34);\n                pfVar14 = (float *)(iVar10 + *(int *)(iVar16 + 8) * 4);\n                pfVar12 = (float *)(iVar10 + *(int *)(iVar16 + 0x14) * 4);\n                pfVar11 = (float *)(iVar10 + *(int *)(iVar16 + 0x20) * 4);\n                do {\n                  if (iVar19 == 0) {\n                    uVar5 = (uint)*puVar1;\n                  }\n                  else {\n                    pfVar21 = (float *)(iVar10 + *(int *)(iVar16 + 0x44) * 4);\n                    uVar5 = (uint)puVar1[(int)*pfVar21];\n                    *pfVar21 = (float)uVar5;\n                  }\n                  iVar4 = uVar5 * 0x58 + iVar20;\n                  dVar27 = *(double *)(iVar4 + 0x30);\n                  dVar24 = *(double *)(iVar4 + 0x38);\n                  *pfVar14 = (float)*(double *)(iVar4 + 0x28);\n                  *pfVar12 = (float)dVar27;\n                  *pfVar11 = (float)dVar24;\n                  if (iVar18 != 0) {\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x2c) * 4) =\n                         (float)*(double *)(iVar4 + 0x40);\n                  }\n                  if (iVar17 != 0) {\n                    fVar26 = (float)uVar33;\n                    if (*(int *)(iVar4 + 8) != 0) {\n                      fVar26 = (float)*(double *)(iVar4 + 0x48);\n                    }\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x38) * 4) = fVar26;\n                  }\n                  iVar15 = iVar15 + 1;\n                  iVar10 = iVar10 + iVar7 * 4;\n                  pfVar14 = pfVar14 + iVar7;\n                  pfVar12 = pfVar12 + iVar7;\n                  pfVar11 = pfVar11 + iVar7;\n                } while (iVar2 != iVar15);\n              }\n              iVar10 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8)(uVar3,param_2);\n              if (iVar10 == 0) goto LAB_00065918;\n              iVar22 = iVar22 + 1;\n            } while (iVar22 < param_1[7]);\n          }\n          iVar22 = 1;\nLAB_000658cc:\n          (*(code *)PTR_DestroyCacheView_003a8ef4)(uVar3);\n          (*(code *)PTR_RelinquishMagickMemory_003a8fc0)(puVar1);\n          return iVar22;\n        }\n        iVar22 = 0;\n        (*(code *)PTR_ThrowMagickException_003a8f20)\n                  (param_2,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                   PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x147,400,\n                   PTR_LAB_003a88e0 + 0x16f8,PTR_LAB_003a88e0 + 0x3e28,param_1 + 0xd0);\n      }\n      return iVar22;\n    }\n  }" { (if_statement "if (param_1[0xcd4] != 0) {\n      (*(code *)PTR_LogMagickEvent_003a91e0)\n                (0x8000,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x13c,\n                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x1fec);\n    }" if (parenthesized_expression "(param_1[0xcd4] != 0)" ( (binary_expression "param_1[0xcd4] != 0" (subscript_expression "param_1[0xcd4]" identifier [ number_literal ]) != number_literal) )) (compound_statement "{\n      (*(code *)PTR_LogMagickEvent_003a91e0)\n                (0x8000,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x13c,\n                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x1fec);\n    }" { (expression_statement "(*(code *)PTR_LogMagickEvent_003a91e0)\n                (0x8000,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x13c,\n                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x1fec);" (call_expression "(*(code *)PTR_LogMagickEvent_003a91e0)\n                (0x8000,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x13c,\n                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x1fec)" (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_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x13c,\n                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x1fec)" ( number_literal , (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88" identifier + number_literal) , (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70" identifier + number_literal) , number_literal , (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x1fec" identifier + number_literal) ))) ;) })) (if_statement "if (param_1[0xcdb] == -0x54535255) {\n      iVar22 = 1;\n      if (*param_1 == 2) {\n        puVar1 = (ushort *)(*(code *)PTR_AcquireQuantumMemory_003a950c)(param_1[9],2);\n        if (puVar1 != (ushort *)0x0) {\n          iVar10 = param_1[9];\n          iVar22 = param_1[10];\n          if (0 < iVar10) {\n            iVar15 = 0;\n            pdVar6 = (double *)(iVar22 + 0x48);\n            do {\n              iVar2 = iVar15 + 1;\n              *pdVar6 = (double)iVar15;\n              iVar15 = iVar2;\n              pdVar6 = pdVar6 + 0xb;\n            } while (iVar2 != iVar10);\n          }\n          (*(code *)PTR_qsort_003a98d4)(iVar22,iVar10,0x58,PTR_LAB_003a893c + 0x4ca0);\n          iVar22 = param_1[9];\n          if (0 < iVar22) {\n            iVar10 = 0;\n            pdVar6 = (double *)(param_1[10] + 0x48);\n            do {\n              puVar1[(int)*pdVar6] = (ushort)iVar10;\n              iVar10 = iVar10 + 1;\n              pdVar6 = pdVar6 + 0xb;\n            } while (iVar22 != iVar10);\n          }\n          uVar3 = (*(code *)PTR_AcquireAuthenticCacheView_003a8ed4)(param_1,param_2);\n          if (0 < param_1[7]) {\n            iVar22 = 0;\n            uVar33 = (ulonglong)*(uint *)(PTR_LAB_003a88e0 + 0x1a50);\n            do {\n              iVar10 = (*(code *)PTR_GetCacheViewAuthenticPixels_003a964c)\n                                 (uVar3,0,iVar22,param_1[6],1,param_2);\n              if (iVar10 == 0) {\nLAB_00065918:\n                iVar22 = 0;\n                goto LAB_000658cc;\n              }\n              iVar2 = param_1[6];\n              iVar15 = 0;\n              if (0 < iVar2) {\n                iVar16 = param_1[0xb4];\n                iVar7 = param_1[0xb0];\n                iVar20 = param_1[10];\n                iVar19 = *(int *)(iVar16 + 0x40);\n                iVar18 = *(int *)(iVar16 + 0x28);\n                iVar17 = *(int *)(iVar16 + 0x34);\n                pfVar14 = (float *)(iVar10 + *(int *)(iVar16 + 8) * 4);\n                pfVar12 = (float *)(iVar10 + *(int *)(iVar16 + 0x14) * 4);\n                pfVar11 = (float *)(iVar10 + *(int *)(iVar16 + 0x20) * 4);\n                do {\n                  if (iVar19 == 0) {\n                    uVar5 = (uint)*puVar1;\n                  }\n                  else {\n                    pfVar21 = (float *)(iVar10 + *(int *)(iVar16 + 0x44) * 4);\n                    uVar5 = (uint)puVar1[(int)*pfVar21];\n                    *pfVar21 = (float)uVar5;\n                  }\n                  iVar4 = uVar5 * 0x58 + iVar20;\n                  dVar27 = *(double *)(iVar4 + 0x30);\n                  dVar24 = *(double *)(iVar4 + 0x38);\n                  *pfVar14 = (float)*(double *)(iVar4 + 0x28);\n                  *pfVar12 = (float)dVar27;\n                  *pfVar11 = (float)dVar24;\n                  if (iVar18 != 0) {\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x2c) * 4) =\n                         (float)*(double *)(iVar4 + 0x40);\n                  }\n                  if (iVar17 != 0) {\n                    fVar26 = (float)uVar33;\n                    if (*(int *)(iVar4 + 8) != 0) {\n                      fVar26 = (float)*(double *)(iVar4 + 0x48);\n                    }\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x38) * 4) = fVar26;\n                  }\n                  iVar15 = iVar15 + 1;\n                  iVar10 = iVar10 + iVar7 * 4;\n                  pfVar14 = pfVar14 + iVar7;\n                  pfVar12 = pfVar12 + iVar7;\n                  pfVar11 = pfVar11 + iVar7;\n                } while (iVar2 != iVar15);\n              }\n              iVar10 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8)(uVar3,param_2);\n              if (iVar10 == 0) goto LAB_00065918;\n              iVar22 = iVar22 + 1;\n            } while (iVar22 < param_1[7]);\n          }\n          iVar22 = 1;\nLAB_000658cc:\n          (*(code *)PTR_DestroyCacheView_003a8ef4)(uVar3);\n          (*(code *)PTR_RelinquishMagickMemory_003a8fc0)(puVar1);\n          return iVar22;\n        }\n        iVar22 = 0;\n        (*(code *)PTR_ThrowMagickException_003a8f20)\n                  (param_2,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                   PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x147,400,\n                   PTR_LAB_003a88e0 + 0x16f8,PTR_LAB_003a88e0 + 0x3e28,param_1 + 0xd0);\n      }\n      return iVar22;\n    }" if (parenthesized_expression "(param_1[0xcdb] == -0x54535255)" ( (binary_expression "param_1[0xcdb] == -0x54535255" (subscript_expression "param_1[0xcdb]" identifier [ number_literal ]) == number_literal) )) (compound_statement "{\n      iVar22 = 1;\n      if (*param_1 == 2) {\n        puVar1 = (ushort *)(*(code *)PTR_AcquireQuantumMemory_003a950c)(param_1[9],2);\n        if (puVar1 != (ushort *)0x0) {\n          iVar10 = param_1[9];\n          iVar22 = param_1[10];\n          if (0 < iVar10) {\n            iVar15 = 0;\n            pdVar6 = (double *)(iVar22 + 0x48);\n            do {\n              iVar2 = iVar15 + 1;\n              *pdVar6 = (double)iVar15;\n              iVar15 = iVar2;\n              pdVar6 = pdVar6 + 0xb;\n            } while (iVar2 != iVar10);\n          }\n          (*(code *)PTR_qsort_003a98d4)(iVar22,iVar10,0x58,PTR_LAB_003a893c + 0x4ca0);\n          iVar22 = param_1[9];\n          if (0 < iVar22) {\n            iVar10 = 0;\n            pdVar6 = (double *)(param_1[10] + 0x48);\n            do {\n              puVar1[(int)*pdVar6] = (ushort)iVar10;\n              iVar10 = iVar10 + 1;\n              pdVar6 = pdVar6 + 0xb;\n            } while (iVar22 != iVar10);\n          }\n          uVar3 = (*(code *)PTR_AcquireAuthenticCacheView_003a8ed4)(param_1,param_2);\n          if (0 < param_1[7]) {\n            iVar22 = 0;\n            uVar33 = (ulonglong)*(uint *)(PTR_LAB_003a88e0 + 0x1a50);\n            do {\n              iVar10 = (*(code *)PTR_GetCacheViewAuthenticPixels_003a964c)\n                                 (uVar3,0,iVar22,param_1[6],1,param_2);\n              if (iVar10 == 0) {\nLAB_00065918:\n                iVar22 = 0;\n                goto LAB_000658cc;\n              }\n              iVar2 = param_1[6];\n              iVar15 = 0;\n              if (0 < iVar2) {\n                iVar16 = param_1[0xb4];\n                iVar7 = param_1[0xb0];\n                iVar20 = param_1[10];\n                iVar19 = *(int *)(iVar16 + 0x40);\n                iVar18 = *(int *)(iVar16 + 0x28);\n                iVar17 = *(int *)(iVar16 + 0x34);\n                pfVar14 = (float *)(iVar10 + *(int *)(iVar16 + 8) * 4);\n                pfVar12 = (float *)(iVar10 + *(int *)(iVar16 + 0x14) * 4);\n                pfVar11 = (float *)(iVar10 + *(int *)(iVar16 + 0x20) * 4);\n                do {\n                  if (iVar19 == 0) {\n                    uVar5 = (uint)*puVar1;\n                  }\n                  else {\n                    pfVar21 = (float *)(iVar10 + *(int *)(iVar16 + 0x44) * 4);\n                    uVar5 = (uint)puVar1[(int)*pfVar21];\n                    *pfVar21 = (float)uVar5;\n                  }\n                  iVar4 = uVar5 * 0x58 + iVar20;\n                  dVar27 = *(double *)(iVar4 + 0x30);\n                  dVar24 = *(double *)(iVar4 + 0x38);\n                  *pfVar14 = (float)*(double *)(iVar4 + 0x28);\n                  *pfVar12 = (float)dVar27;\n                  *pfVar11 = (float)dVar24;\n                  if (iVar18 != 0) {\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x2c) * 4) =\n                         (float)*(double *)(iVar4 + 0x40);\n                  }\n                  if (iVar17 != 0) {\n                    fVar26 = (float)uVar33;\n                    if (*(int *)(iVar4 + 8) != 0) {\n                      fVar26 = (float)*(double *)(iVar4 + 0x48);\n                    }\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x38) * 4) = fVar26;\n                  }\n                  iVar15 = iVar15 + 1;\n                  iVar10 = iVar10 + iVar7 * 4;\n                  pfVar14 = pfVar14 + iVar7;\n                  pfVar12 = pfVar12 + iVar7;\n                  pfVar11 = pfVar11 + iVar7;\n                } while (iVar2 != iVar15);\n              }\n              iVar10 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8)(uVar3,param_2);\n              if (iVar10 == 0) goto LAB_00065918;\n              iVar22 = iVar22 + 1;\n            } while (iVar22 < param_1[7]);\n          }\n          iVar22 = 1;\nLAB_000658cc:\n          (*(code *)PTR_DestroyCacheView_003a8ef4)(uVar3);\n          (*(code *)PTR_RelinquishMagickMemory_003a8fc0)(puVar1);\n          return iVar22;\n        }\n        iVar22 = 0;\n        (*(code *)PTR_ThrowMagickException_003a8f20)\n                  (param_2,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                   PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x147,400,\n                   PTR_LAB_003a88e0 + 0x16f8,PTR_LAB_003a88e0 + 0x3e28,param_1 + 0xd0);\n      }\n      return iVar22;\n    }" { (expression_statement "iVar22 = 1;" (assignment_expression "iVar22 = 1" identifier = number_literal) ;) (if_statement "if (*param_1 == 2) {\n        puVar1 = (ushort *)(*(code *)PTR_AcquireQuantumMemory_003a950c)(param_1[9],2);\n        if (puVar1 != (ushort *)0x0) {\n          iVar10 = param_1[9];\n          iVar22 = param_1[10];\n          if (0 < iVar10) {\n            iVar15 = 0;\n            pdVar6 = (double *)(iVar22 + 0x48);\n            do {\n              iVar2 = iVar15 + 1;\n              *pdVar6 = (double)iVar15;\n              iVar15 = iVar2;\n              pdVar6 = pdVar6 + 0xb;\n            } while (iVar2 != iVar10);\n          }\n          (*(code *)PTR_qsort_003a98d4)(iVar22,iVar10,0x58,PTR_LAB_003a893c + 0x4ca0);\n          iVar22 = param_1[9];\n          if (0 < iVar22) {\n            iVar10 = 0;\n            pdVar6 = (double *)(param_1[10] + 0x48);\n            do {\n              puVar1[(int)*pdVar6] = (ushort)iVar10;\n              iVar10 = iVar10 + 1;\n              pdVar6 = pdVar6 + 0xb;\n            } while (iVar22 != iVar10);\n          }\n          uVar3 = (*(code *)PTR_AcquireAuthenticCacheView_003a8ed4)(param_1,param_2);\n          if (0 < param_1[7]) {\n            iVar22 = 0;\n            uVar33 = (ulonglong)*(uint *)(PTR_LAB_003a88e0 + 0x1a50);\n            do {\n              iVar10 = (*(code *)PTR_GetCacheViewAuthenticPixels_003a964c)\n                                 (uVar3,0,iVar22,param_1[6],1,param_2);\n              if (iVar10 == 0) {\nLAB_00065918:\n                iVar22 = 0;\n                goto LAB_000658cc;\n              }\n              iVar2 = param_1[6];\n              iVar15 = 0;\n              if (0 < iVar2) {\n                iVar16 = param_1[0xb4];\n                iVar7 = param_1[0xb0];\n                iVar20 = param_1[10];\n                iVar19 = *(int *)(iVar16 + 0x40);\n                iVar18 = *(int *)(iVar16 + 0x28);\n                iVar17 = *(int *)(iVar16 + 0x34);\n                pfVar14 = (float *)(iVar10 + *(int *)(iVar16 + 8) * 4);\n                pfVar12 = (float *)(iVar10 + *(int *)(iVar16 + 0x14) * 4);\n                pfVar11 = (float *)(iVar10 + *(int *)(iVar16 + 0x20) * 4);\n                do {\n                  if (iVar19 == 0) {\n                    uVar5 = (uint)*puVar1;\n                  }\n                  else {\n                    pfVar21 = (float *)(iVar10 + *(int *)(iVar16 + 0x44) * 4);\n                    uVar5 = (uint)puVar1[(int)*pfVar21];\n                    *pfVar21 = (float)uVar5;\n                  }\n                  iVar4 = uVar5 * 0x58 + iVar20;\n                  dVar27 = *(double *)(iVar4 + 0x30);\n                  dVar24 = *(double *)(iVar4 + 0x38);\n                  *pfVar14 = (float)*(double *)(iVar4 + 0x28);\n                  *pfVar12 = (float)dVar27;\n                  *pfVar11 = (float)dVar24;\n                  if (iVar18 != 0) {\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x2c) * 4) =\n                         (float)*(double *)(iVar4 + 0x40);\n                  }\n                  if (iVar17 != 0) {\n                    fVar26 = (float)uVar33;\n                    if (*(int *)(iVar4 + 8) != 0) {\n                      fVar26 = (float)*(double *)(iVar4 + 0x48);\n                    }\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x38) * 4) = fVar26;\n                  }\n                  iVar15 = iVar15 + 1;\n                  iVar10 = iVar10 + iVar7 * 4;\n                  pfVar14 = pfVar14 + iVar7;\n                  pfVar12 = pfVar12 + iVar7;\n                  pfVar11 = pfVar11 + iVar7;\n                } while (iVar2 != iVar15);\n              }\n              iVar10 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8)(uVar3,param_2);\n              if (iVar10 == 0) goto LAB_00065918;\n              iVar22 = iVar22 + 1;\n            } while (iVar22 < param_1[7]);\n          }\n          iVar22 = 1;\nLAB_000658cc:\n          (*(code *)PTR_DestroyCacheView_003a8ef4)(uVar3);\n          (*(code *)PTR_RelinquishMagickMemory_003a8fc0)(puVar1);\n          return iVar22;\n        }\n        iVar22 = 0;\n        (*(code *)PTR_ThrowMagickException_003a8f20)\n                  (param_2,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                   PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x147,400,\n                   PTR_LAB_003a88e0 + 0x16f8,PTR_LAB_003a88e0 + 0x3e28,param_1 + 0xd0);\n      }" if (parenthesized_expression "(*param_1 == 2)" ( (binary_expression "*param_1 == 2" (pointer_expression "*param_1" * identifier) == number_literal) )) (compound_statement "{\n        puVar1 = (ushort *)(*(code *)PTR_AcquireQuantumMemory_003a950c)(param_1[9],2);\n        if (puVar1 != (ushort *)0x0) {\n          iVar10 = param_1[9];\n          iVar22 = param_1[10];\n          if (0 < iVar10) {\n            iVar15 = 0;\n            pdVar6 = (double *)(iVar22 + 0x48);\n            do {\n              iVar2 = iVar15 + 1;\n              *pdVar6 = (double)iVar15;\n              iVar15 = iVar2;\n              pdVar6 = pdVar6 + 0xb;\n            } while (iVar2 != iVar10);\n          }\n          (*(code *)PTR_qsort_003a98d4)(iVar22,iVar10,0x58,PTR_LAB_003a893c + 0x4ca0);\n          iVar22 = param_1[9];\n          if (0 < iVar22) {\n            iVar10 = 0;\n            pdVar6 = (double *)(param_1[10] + 0x48);\n            do {\n              puVar1[(int)*pdVar6] = (ushort)iVar10;\n              iVar10 = iVar10 + 1;\n              pdVar6 = pdVar6 + 0xb;\n            } while (iVar22 != iVar10);\n          }\n          uVar3 = (*(code *)PTR_AcquireAuthenticCacheView_003a8ed4)(param_1,param_2);\n          if (0 < param_1[7]) {\n            iVar22 = 0;\n            uVar33 = (ulonglong)*(uint *)(PTR_LAB_003a88e0 + 0x1a50);\n            do {\n              iVar10 = (*(code *)PTR_GetCacheViewAuthenticPixels_003a964c)\n                                 (uVar3,0,iVar22,param_1[6],1,param_2);\n              if (iVar10 == 0) {\nLAB_00065918:\n                iVar22 = 0;\n                goto LAB_000658cc;\n              }\n              iVar2 = param_1[6];\n              iVar15 = 0;\n              if (0 < iVar2) {\n                iVar16 = param_1[0xb4];\n                iVar7 = param_1[0xb0];\n                iVar20 = param_1[10];\n                iVar19 = *(int *)(iVar16 + 0x40);\n                iVar18 = *(int *)(iVar16 + 0x28);\n                iVar17 = *(int *)(iVar16 + 0x34);\n                pfVar14 = (float *)(iVar10 + *(int *)(iVar16 + 8) * 4);\n                pfVar12 = (float *)(iVar10 + *(int *)(iVar16 + 0x14) * 4);\n                pfVar11 = (float *)(iVar10 + *(int *)(iVar16 + 0x20) * 4);\n                do {\n                  if (iVar19 == 0) {\n                    uVar5 = (uint)*puVar1;\n                  }\n                  else {\n                    pfVar21 = (float *)(iVar10 + *(int *)(iVar16 + 0x44) * 4);\n                    uVar5 = (uint)puVar1[(int)*pfVar21];\n                    *pfVar21 = (float)uVar5;\n                  }\n                  iVar4 = uVar5 * 0x58 + iVar20;\n                  dVar27 = *(double *)(iVar4 + 0x30);\n                  dVar24 = *(double *)(iVar4 + 0x38);\n                  *pfVar14 = (float)*(double *)(iVar4 + 0x28);\n                  *pfVar12 = (float)dVar27;\n                  *pfVar11 = (float)dVar24;\n                  if (iVar18 != 0) {\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x2c) * 4) =\n                         (float)*(double *)(iVar4 + 0x40);\n                  }\n                  if (iVar17 != 0) {\n                    fVar26 = (float)uVar33;\n                    if (*(int *)(iVar4 + 8) != 0) {\n                      fVar26 = (float)*(double *)(iVar4 + 0x48);\n                    }\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x38) * 4) = fVar26;\n                  }\n                  iVar15 = iVar15 + 1;\n                  iVar10 = iVar10 + iVar7 * 4;\n                  pfVar14 = pfVar14 + iVar7;\n                  pfVar12 = pfVar12 + iVar7;\n                  pfVar11 = pfVar11 + iVar7;\n                } while (iVar2 != iVar15);\n              }\n              iVar10 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8)(uVar3,param_2);\n              if (iVar10 == 0) goto LAB_00065918;\n              iVar22 = iVar22 + 1;\n            } while (iVar22 < param_1[7]);\n          }\n          iVar22 = 1;\nLAB_000658cc:\n          (*(code *)PTR_DestroyCacheView_003a8ef4)(uVar3);\n          (*(code *)PTR_RelinquishMagickMemory_003a8fc0)(puVar1);\n          return iVar22;\n        }\n        iVar22 = 0;\n        (*(code *)PTR_ThrowMagickException_003a8f20)\n                  (param_2,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                   PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x147,400,\n                   PTR_LAB_003a88e0 + 0x16f8,PTR_LAB_003a88e0 + 0x3e28,param_1 + 0xd0);\n      }" { (expression_statement "puVar1 = (ushort *)(*(code *)PTR_AcquireQuantumMemory_003a950c)(param_1[9],2);" (assignment_expression "puVar1 = (ushort *)(*(code *)PTR_AcquireQuantumMemory_003a950c)(param_1[9],2)" identifier = (cast_expression "(ushort *)(*(code *)PTR_AcquireQuantumMemory_003a950c)(param_1[9],2)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR_AcquireQuantumMemory_003a950c)(param_1[9],2)" (parenthesized_expression "(*(code *)PTR_AcquireQuantumMemory_003a950c)" ( (pointer_expression "*(code *)PTR_AcquireQuantumMemory_003a950c" * (cast_expression "(code *)PTR_AcquireQuantumMemory_003a950c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_1[9],2)" ( (subscript_expression "param_1[9]" identifier [ number_literal ]) , number_literal ))))) ;) (if_statement "if (puVar1 != (ushort *)0x0) {\n          iVar10 = param_1[9];\n          iVar22 = param_1[10];\n          if (0 < iVar10) {\n            iVar15 = 0;\n            pdVar6 = (double *)(iVar22 + 0x48);\n            do {\n              iVar2 = iVar15 + 1;\n              *pdVar6 = (double)iVar15;\n              iVar15 = iVar2;\n              pdVar6 = pdVar6 + 0xb;\n            } while (iVar2 != iVar10);\n          }\n          (*(code *)PTR_qsort_003a98d4)(iVar22,iVar10,0x58,PTR_LAB_003a893c + 0x4ca0);\n          iVar22 = param_1[9];\n          if (0 < iVar22) {\n            iVar10 = 0;\n            pdVar6 = (double *)(param_1[10] + 0x48);\n            do {\n              puVar1[(int)*pdVar6] = (ushort)iVar10;\n              iVar10 = iVar10 + 1;\n              pdVar6 = pdVar6 + 0xb;\n            } while (iVar22 != iVar10);\n          }\n          uVar3 = (*(code *)PTR_AcquireAuthenticCacheView_003a8ed4)(param_1,param_2);\n          if (0 < param_1[7]) {\n            iVar22 = 0;\n            uVar33 = (ulonglong)*(uint *)(PTR_LAB_003a88e0 + 0x1a50);\n            do {\n              iVar10 = (*(code *)PTR_GetCacheViewAuthenticPixels_003a964c)\n                                 (uVar3,0,iVar22,param_1[6],1,param_2);\n              if (iVar10 == 0) {\nLAB_00065918:\n                iVar22 = 0;\n                goto LAB_000658cc;\n              }\n              iVar2 = param_1[6];\n              iVar15 = 0;\n              if (0 < iVar2) {\n                iVar16 = param_1[0xb4];\n                iVar7 = param_1[0xb0];\n                iVar20 = param_1[10];\n                iVar19 = *(int *)(iVar16 + 0x40);\n                iVar18 = *(int *)(iVar16 + 0x28);\n                iVar17 = *(int *)(iVar16 + 0x34);\n                pfVar14 = (float *)(iVar10 + *(int *)(iVar16 + 8) * 4);\n                pfVar12 = (float *)(iVar10 + *(int *)(iVar16 + 0x14) * 4);\n                pfVar11 = (float *)(iVar10 + *(int *)(iVar16 + 0x20) * 4);\n                do {\n                  if (iVar19 == 0) {\n                    uVar5 = (uint)*puVar1;\n                  }\n                  else {\n                    pfVar21 = (float *)(iVar10 + *(int *)(iVar16 + 0x44) * 4);\n                    uVar5 = (uint)puVar1[(int)*pfVar21];\n                    *pfVar21 = (float)uVar5;\n                  }\n                  iVar4 = uVar5 * 0x58 + iVar20;\n                  dVar27 = *(double *)(iVar4 + 0x30);\n                  dVar24 = *(double *)(iVar4 + 0x38);\n                  *pfVar14 = (float)*(double *)(iVar4 + 0x28);\n                  *pfVar12 = (float)dVar27;\n                  *pfVar11 = (float)dVar24;\n                  if (iVar18 != 0) {\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x2c) * 4) =\n                         (float)*(double *)(iVar4 + 0x40);\n                  }\n                  if (iVar17 != 0) {\n                    fVar26 = (float)uVar33;\n                    if (*(int *)(iVar4 + 8) != 0) {\n                      fVar26 = (float)*(double *)(iVar4 + 0x48);\n                    }\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x38) * 4) = fVar26;\n                  }\n                  iVar15 = iVar15 + 1;\n                  iVar10 = iVar10 + iVar7 * 4;\n                  pfVar14 = pfVar14 + iVar7;\n                  pfVar12 = pfVar12 + iVar7;\n                  pfVar11 = pfVar11 + iVar7;\n                } while (iVar2 != iVar15);\n              }\n              iVar10 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8)(uVar3,param_2);\n              if (iVar10 == 0) goto LAB_00065918;\n              iVar22 = iVar22 + 1;\n            } while (iVar22 < param_1[7]);\n          }\n          iVar22 = 1;\nLAB_000658cc:\n          (*(code *)PTR_DestroyCacheView_003a8ef4)(uVar3);\n          (*(code *)PTR_RelinquishMagickMemory_003a8fc0)(puVar1);\n          return iVar22;\n        }" if (parenthesized_expression "(puVar1 != (ushort *)0x0)" ( (binary_expression "puVar1 != (ushort *)0x0" identifier != (cast_expression "(ushort *)0x0" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          iVar10 = param_1[9];\n          iVar22 = param_1[10];\n          if (0 < iVar10) {\n            iVar15 = 0;\n            pdVar6 = (double *)(iVar22 + 0x48);\n            do {\n              iVar2 = iVar15 + 1;\n              *pdVar6 = (double)iVar15;\n              iVar15 = iVar2;\n              pdVar6 = pdVar6 + 0xb;\n            } while (iVar2 != iVar10);\n          }\n          (*(code *)PTR_qsort_003a98d4)(iVar22,iVar10,0x58,PTR_LAB_003a893c + 0x4ca0);\n          iVar22 = param_1[9];\n          if (0 < iVar22) {\n            iVar10 = 0;\n            pdVar6 = (double *)(param_1[10] + 0x48);\n            do {\n              puVar1[(int)*pdVar6] = (ushort)iVar10;\n              iVar10 = iVar10 + 1;\n              pdVar6 = pdVar6 + 0xb;\n            } while (iVar22 != iVar10);\n          }\n          uVar3 = (*(code *)PTR_AcquireAuthenticCacheView_003a8ed4)(param_1,param_2);\n          if (0 < param_1[7]) {\n            iVar22 = 0;\n            uVar33 = (ulonglong)*(uint *)(PTR_LAB_003a88e0 + 0x1a50);\n            do {\n              iVar10 = (*(code *)PTR_GetCacheViewAuthenticPixels_003a964c)\n                                 (uVar3,0,iVar22,param_1[6],1,param_2);\n              if (iVar10 == 0) {\nLAB_00065918:\n                iVar22 = 0;\n                goto LAB_000658cc;\n              }\n              iVar2 = param_1[6];\n              iVar15 = 0;\n              if (0 < iVar2) {\n                iVar16 = param_1[0xb4];\n                iVar7 = param_1[0xb0];\n                iVar20 = param_1[10];\n                iVar19 = *(int *)(iVar16 + 0x40);\n                iVar18 = *(int *)(iVar16 + 0x28);\n                iVar17 = *(int *)(iVar16 + 0x34);\n                pfVar14 = (float *)(iVar10 + *(int *)(iVar16 + 8) * 4);\n                pfVar12 = (float *)(iVar10 + *(int *)(iVar16 + 0x14) * 4);\n                pfVar11 = (float *)(iVar10 + *(int *)(iVar16 + 0x20) * 4);\n                do {\n                  if (iVar19 == 0) {\n                    uVar5 = (uint)*puVar1;\n                  }\n                  else {\n                    pfVar21 = (float *)(iVar10 + *(int *)(iVar16 + 0x44) * 4);\n                    uVar5 = (uint)puVar1[(int)*pfVar21];\n                    *pfVar21 = (float)uVar5;\n                  }\n                  iVar4 = uVar5 * 0x58 + iVar20;\n                  dVar27 = *(double *)(iVar4 + 0x30);\n                  dVar24 = *(double *)(iVar4 + 0x38);\n                  *pfVar14 = (float)*(double *)(iVar4 + 0x28);\n                  *pfVar12 = (float)dVar27;\n                  *pfVar11 = (float)dVar24;\n                  if (iVar18 != 0) {\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x2c) * 4) =\n                         (float)*(double *)(iVar4 + 0x40);\n                  }\n                  if (iVar17 != 0) {\n                    fVar26 = (float)uVar33;\n                    if (*(int *)(iVar4 + 8) != 0) {\n                      fVar26 = (float)*(double *)(iVar4 + 0x48);\n                    }\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x38) * 4) = fVar26;\n                  }\n                  iVar15 = iVar15 + 1;\n                  iVar10 = iVar10 + iVar7 * 4;\n                  pfVar14 = pfVar14 + iVar7;\n                  pfVar12 = pfVar12 + iVar7;\n                  pfVar11 = pfVar11 + iVar7;\n                } while (iVar2 != iVar15);\n              }\n              iVar10 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8)(uVar3,param_2);\n              if (iVar10 == 0) goto LAB_00065918;\n              iVar22 = iVar22 + 1;\n            } while (iVar22 < param_1[7]);\n          }\n          iVar22 = 1;\nLAB_000658cc:\n          (*(code *)PTR_DestroyCacheView_003a8ef4)(uVar3);\n          (*(code *)PTR_RelinquishMagickMemory_003a8fc0)(puVar1);\n          return iVar22;\n        }" { (expression_statement "iVar10 = param_1[9];" (assignment_expression "iVar10 = param_1[9]" identifier = (subscript_expression "param_1[9]" identifier [ number_literal ])) ;) (expression_statement "iVar22 = param_1[10];" (assignment_expression "iVar22 = param_1[10]" identifier = (subscript_expression "param_1[10]" identifier [ number_literal ])) ;) (if_statement "if (0 < iVar10) {\n            iVar15 = 0;\n            pdVar6 = (double *)(iVar22 + 0x48);\n            do {\n              iVar2 = iVar15 + 1;\n              *pdVar6 = (double)iVar15;\n              iVar15 = iVar2;\n              pdVar6 = pdVar6 + 0xb;\n            } while (iVar2 != iVar10);\n          }" if (parenthesized_expression "(0 < iVar10)" ( (binary_expression "0 < iVar10" number_literal < identifier) )) (compound_statement "{\n            iVar15 = 0;\n            pdVar6 = (double *)(iVar22 + 0x48);\n            do {\n              iVar2 = iVar15 + 1;\n              *pdVar6 = (double)iVar15;\n              iVar15 = iVar2;\n              pdVar6 = pdVar6 + 0xb;\n            } while (iVar2 != iVar10);\n          }" { (expression_statement "iVar15 = 0;" (assignment_expression "iVar15 = 0" identifier = number_literal) ;) (expression_statement "pdVar6 = (double *)(iVar22 + 0x48);" (assignment_expression "pdVar6 = (double *)(iVar22 + 0x48)" identifier = (cast_expression "(double *)(iVar22 + 0x48)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar22 + 0x48)" ( (binary_expression "iVar22 + 0x48" identifier + number_literal) )))) ;) (do_statement "do {\n              iVar2 = iVar15 + 1;\n              *pdVar6 = (double)iVar15;\n              iVar15 = iVar2;\n              pdVar6 = pdVar6 + 0xb;\n            } while (iVar2 != iVar10);" do (compound_statement "{\n              iVar2 = iVar15 + 1;\n              *pdVar6 = (double)iVar15;\n              iVar15 = iVar2;\n              pdVar6 = pdVar6 + 0xb;\n            }" { (expression_statement "iVar2 = iVar15 + 1;" (assignment_expression "iVar2 = iVar15 + 1" identifier = (binary_expression "iVar15 + 1" identifier + number_literal)) ;) (expression_statement "*pdVar6 = (double)iVar15;" (assignment_expression "*pdVar6 = (double)iVar15" (pointer_expression "*pdVar6" * identifier) = (cast_expression "(double)iVar15" ( (type_descriptor "double" primitive_type) ) identifier)) ;) (expression_statement "iVar15 = iVar2;" (assignment_expression "iVar15 = iVar2" identifier = identifier) ;) (expression_statement "pdVar6 = pdVar6 + 0xb;" (assignment_expression "pdVar6 = pdVar6 + 0xb" identifier = (binary_expression "pdVar6 + 0xb" identifier + number_literal)) ;) }) while (parenthesized_expression "(iVar2 != iVar10)" ( (binary_expression "iVar2 != iVar10" identifier != identifier) )) ;) })) (expression_statement "(*(code *)PTR_qsort_003a98d4)(iVar22,iVar10,0x58,PTR_LAB_003a893c + 0x4ca0);" (call_expression "(*(code *)PTR_qsort_003a98d4)(iVar22,iVar10,0x58,PTR_LAB_003a893c + 0x4ca0)" (parenthesized_expression "(*(code *)PTR_qsort_003a98d4)" ( (pointer_expression "*(code *)PTR_qsort_003a98d4" * (cast_expression "(code *)PTR_qsort_003a98d4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar22,iVar10,0x58,PTR_LAB_003a893c + 0x4ca0)" ( identifier , identifier , number_literal , (binary_expression "PTR_LAB_003a893c + 0x4ca0" identifier + number_literal) ))) ;) (expression_statement "iVar22 = param_1[9];" (assignment_expression "iVar22 = param_1[9]" identifier = (subscript_expression "param_1[9]" identifier [ number_literal ])) ;) (if_statement "if (0 < iVar22) {\n            iVar10 = 0;\n            pdVar6 = (double *)(param_1[10] + 0x48);\n            do {\n              puVar1[(int)*pdVar6] = (ushort)iVar10;\n              iVar10 = iVar10 + 1;\n              pdVar6 = pdVar6 + 0xb;\n            } while (iVar22 != iVar10);\n          }" if (parenthesized_expression "(0 < iVar22)" ( (binary_expression "0 < iVar22" number_literal < identifier) )) (compound_statement "{\n            iVar10 = 0;\n            pdVar6 = (double *)(param_1[10] + 0x48);\n            do {\n              puVar1[(int)*pdVar6] = (ushort)iVar10;\n              iVar10 = iVar10 + 1;\n              pdVar6 = pdVar6 + 0xb;\n            } while (iVar22 != iVar10);\n          }" { (expression_statement "iVar10 = 0;" (assignment_expression "iVar10 = 0" identifier = number_literal) ;) (expression_statement "pdVar6 = (double *)(param_1[10] + 0x48);" (assignment_expression "pdVar6 = (double *)(param_1[10] + 0x48)" identifier = (cast_expression "(double *)(param_1[10] + 0x48)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1[10] + 0x48)" ( (binary_expression "param_1[10] + 0x48" (subscript_expression "param_1[10]" identifier [ number_literal ]) + number_literal) )))) ;) (do_statement "do {\n              puVar1[(int)*pdVar6] = (ushort)iVar10;\n              iVar10 = iVar10 + 1;\n              pdVar6 = pdVar6 + 0xb;\n            } while (iVar22 != iVar10);" do (compound_statement "{\n              puVar1[(int)*pdVar6] = (ushort)iVar10;\n              iVar10 = iVar10 + 1;\n              pdVar6 = pdVar6 + 0xb;\n            }" { (expression_statement "puVar1[(int)*pdVar6] = (ushort)iVar10;" (assignment_expression "puVar1[(int)*pdVar6] = (ushort)iVar10" (subscript_expression "puVar1[(int)*pdVar6]" identifier [ (cast_expression "(int)*pdVar6" ( (type_descriptor "int" primitive_type) ) (pointer_expression "*pdVar6" * identifier)) ]) = (cast_expression "(ushort)iVar10" ( (type_descriptor "ushort" type_identifier) ) identifier)) ;) (expression_statement "iVar10 = iVar10 + 1;" (assignment_expression "iVar10 = iVar10 + 1" identifier = (binary_expression "iVar10 + 1" identifier + number_literal)) ;) (expression_statement "pdVar6 = pdVar6 + 0xb;" (assignment_expression "pdVar6 = pdVar6 + 0xb" identifier = (binary_expression "pdVar6 + 0xb" identifier + number_literal)) ;) }) while (parenthesized_expression "(iVar22 != iVar10)" ( (binary_expression "iVar22 != iVar10" identifier != identifier) )) ;) })) (expression_statement "uVar3 = (*(code *)PTR_AcquireAuthenticCacheView_003a8ed4)(param_1,param_2);" (assignment_expression "uVar3 = (*(code *)PTR_AcquireAuthenticCacheView_003a8ed4)(param_1,param_2)" identifier = (call_expression "(*(code *)PTR_AcquireAuthenticCacheView_003a8ed4)(param_1,param_2)" (parenthesized_expression "(*(code *)PTR_AcquireAuthenticCacheView_003a8ed4)" ( (pointer_expression "*(code *)PTR_AcquireAuthenticCacheView_003a8ed4" * (cast_expression "(code *)PTR_AcquireAuthenticCacheView_003a8ed4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_1,param_2)" ( identifier , identifier )))) ;) (if_statement "if (0 < param_1[7]) {\n            iVar22 = 0;\n            uVar33 = (ulonglong)*(uint *)(PTR_LAB_003a88e0 + 0x1a50);\n            do {\n              iVar10 = (*(code *)PTR_GetCacheViewAuthenticPixels_003a964c)\n                                 (uVar3,0,iVar22,param_1[6],1,param_2);\n              if (iVar10 == 0) {\nLAB_00065918:\n                iVar22 = 0;\n                goto LAB_000658cc;\n              }\n              iVar2 = param_1[6];\n              iVar15 = 0;\n              if (0 < iVar2) {\n                iVar16 = param_1[0xb4];\n                iVar7 = param_1[0xb0];\n                iVar20 = param_1[10];\n                iVar19 = *(int *)(iVar16 + 0x40);\n                iVar18 = *(int *)(iVar16 + 0x28);\n                iVar17 = *(int *)(iVar16 + 0x34);\n                pfVar14 = (float *)(iVar10 + *(int *)(iVar16 + 8) * 4);\n                pfVar12 = (float *)(iVar10 + *(int *)(iVar16 + 0x14) * 4);\n                pfVar11 = (float *)(iVar10 + *(int *)(iVar16 + 0x20) * 4);\n                do {\n                  if (iVar19 == 0) {\n                    uVar5 = (uint)*puVar1;\n                  }\n                  else {\n                    pfVar21 = (float *)(iVar10 + *(int *)(iVar16 + 0x44) * 4);\n                    uVar5 = (uint)puVar1[(int)*pfVar21];\n                    *pfVar21 = (float)uVar5;\n                  }\n                  iVar4 = uVar5 * 0x58 + iVar20;\n                  dVar27 = *(double *)(iVar4 + 0x30);\n                  dVar24 = *(double *)(iVar4 + 0x38);\n                  *pfVar14 = (float)*(double *)(iVar4 + 0x28);\n                  *pfVar12 = (float)dVar27;\n                  *pfVar11 = (float)dVar24;\n                  if (iVar18 != 0) {\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x2c) * 4) =\n                         (float)*(double *)(iVar4 + 0x40);\n                  }\n                  if (iVar17 != 0) {\n                    fVar26 = (float)uVar33;\n                    if (*(int *)(iVar4 + 8) != 0) {\n                      fVar26 = (float)*(double *)(iVar4 + 0x48);\n                    }\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x38) * 4) = fVar26;\n                  }\n                  iVar15 = iVar15 + 1;\n                  iVar10 = iVar10 + iVar7 * 4;\n                  pfVar14 = pfVar14 + iVar7;\n                  pfVar12 = pfVar12 + iVar7;\n                  pfVar11 = pfVar11 + iVar7;\n                } while (iVar2 != iVar15);\n              }\n              iVar10 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8)(uVar3,param_2);\n              if (iVar10 == 0) goto LAB_00065918;\n              iVar22 = iVar22 + 1;\n            } while (iVar22 < param_1[7]);\n          }" if (parenthesized_expression "(0 < param_1[7])" ( (binary_expression "0 < param_1[7]" number_literal < (subscript_expression "param_1[7]" identifier [ number_literal ])) )) (compound_statement "{\n            iVar22 = 0;\n            uVar33 = (ulonglong)*(uint *)(PTR_LAB_003a88e0 + 0x1a50);\n            do {\n              iVar10 = (*(code *)PTR_GetCacheViewAuthenticPixels_003a964c)\n                                 (uVar3,0,iVar22,param_1[6],1,param_2);\n              if (iVar10 == 0) {\nLAB_00065918:\n                iVar22 = 0;\n                goto LAB_000658cc;\n              }\n              iVar2 = param_1[6];\n              iVar15 = 0;\n              if (0 < iVar2) {\n                iVar16 = param_1[0xb4];\n                iVar7 = param_1[0xb0];\n                iVar20 = param_1[10];\n                iVar19 = *(int *)(iVar16 + 0x40);\n                iVar18 = *(int *)(iVar16 + 0x28);\n                iVar17 = *(int *)(iVar16 + 0x34);\n                pfVar14 = (float *)(iVar10 + *(int *)(iVar16 + 8) * 4);\n                pfVar12 = (float *)(iVar10 + *(int *)(iVar16 + 0x14) * 4);\n                pfVar11 = (float *)(iVar10 + *(int *)(iVar16 + 0x20) * 4);\n                do {\n                  if (iVar19 == 0) {\n                    uVar5 = (uint)*puVar1;\n                  }\n                  else {\n                    pfVar21 = (float *)(iVar10 + *(int *)(iVar16 + 0x44) * 4);\n                    uVar5 = (uint)puVar1[(int)*pfVar21];\n                    *pfVar21 = (float)uVar5;\n                  }\n                  iVar4 = uVar5 * 0x58 + iVar20;\n                  dVar27 = *(double *)(iVar4 + 0x30);\n                  dVar24 = *(double *)(iVar4 + 0x38);\n                  *pfVar14 = (float)*(double *)(iVar4 + 0x28);\n                  *pfVar12 = (float)dVar27;\n                  *pfVar11 = (float)dVar24;\n                  if (iVar18 != 0) {\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x2c) * 4) =\n                         (float)*(double *)(iVar4 + 0x40);\n                  }\n                  if (iVar17 != 0) {\n                    fVar26 = (float)uVar33;\n                    if (*(int *)(iVar4 + 8) != 0) {\n                      fVar26 = (float)*(double *)(iVar4 + 0x48);\n                    }\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x38) * 4) = fVar26;\n                  }\n                  iVar15 = iVar15 + 1;\n                  iVar10 = iVar10 + iVar7 * 4;\n                  pfVar14 = pfVar14 + iVar7;\n                  pfVar12 = pfVar12 + iVar7;\n                  pfVar11 = pfVar11 + iVar7;\n                } while (iVar2 != iVar15);\n              }\n              iVar10 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8)(uVar3,param_2);\n              if (iVar10 == 0) goto LAB_00065918;\n              iVar22 = iVar22 + 1;\n            } while (iVar22 < param_1[7]);\n          }" { (expression_statement "iVar22 = 0;" (assignment_expression "iVar22 = 0" identifier = number_literal) ;) (expression_statement "uVar33 = (ulonglong)*(uint *)(PTR_LAB_003a88e0 + 0x1a50);" (assignment_expression "uVar33 = (ulonglong)*(uint *)(PTR_LAB_003a88e0 + 0x1a50)" identifier = (binary_expression "(ulonglong)*(uint *)(PTR_LAB_003a88e0 + 0x1a50)" (parenthesized_expression "(ulonglong)" ( identifier )) * (cast_expression "(uint *)(PTR_LAB_003a88e0 + 0x1a50)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_003a88e0 + 0x1a50)" ( (binary_expression "PTR_LAB_003a88e0 + 0x1a50" identifier + number_literal) ))))) ;) (do_statement "do {\n              iVar10 = (*(code *)PTR_GetCacheViewAuthenticPixels_003a964c)\n                                 (uVar3,0,iVar22,param_1[6],1,param_2);\n              if (iVar10 == 0) {\nLAB_00065918:\n                iVar22 = 0;\n                goto LAB_000658cc;\n              }\n              iVar2 = param_1[6];\n              iVar15 = 0;\n              if (0 < iVar2) {\n                iVar16 = param_1[0xb4];\n                iVar7 = param_1[0xb0];\n                iVar20 = param_1[10];\n                iVar19 = *(int *)(iVar16 + 0x40);\n                iVar18 = *(int *)(iVar16 + 0x28);\n                iVar17 = *(int *)(iVar16 + 0x34);\n                pfVar14 = (float *)(iVar10 + *(int *)(iVar16 + 8) * 4);\n                pfVar12 = (float *)(iVar10 + *(int *)(iVar16 + 0x14) * 4);\n                pfVar11 = (float *)(iVar10 + *(int *)(iVar16 + 0x20) * 4);\n                do {\n                  if (iVar19 == 0) {\n                    uVar5 = (uint)*puVar1;\n                  }\n                  else {\n                    pfVar21 = (float *)(iVar10 + *(int *)(iVar16 + 0x44) * 4);\n                    uVar5 = (uint)puVar1[(int)*pfVar21];\n                    *pfVar21 = (float)uVar5;\n                  }\n                  iVar4 = uVar5 * 0x58 + iVar20;\n                  dVar27 = *(double *)(iVar4 + 0x30);\n                  dVar24 = *(double *)(iVar4 + 0x38);\n                  *pfVar14 = (float)*(double *)(iVar4 + 0x28);\n                  *pfVar12 = (float)dVar27;\n                  *pfVar11 = (float)dVar24;\n                  if (iVar18 != 0) {\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x2c) * 4) =\n                         (float)*(double *)(iVar4 + 0x40);\n                  }\n                  if (iVar17 != 0) {\n                    fVar26 = (float)uVar33;\n                    if (*(int *)(iVar4 + 8) != 0) {\n                      fVar26 = (float)*(double *)(iVar4 + 0x48);\n                    }\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x38) * 4) = fVar26;\n                  }\n                  iVar15 = iVar15 + 1;\n                  iVar10 = iVar10 + iVar7 * 4;\n                  pfVar14 = pfVar14 + iVar7;\n                  pfVar12 = pfVar12 + iVar7;\n                  pfVar11 = pfVar11 + iVar7;\n                } while (iVar2 != iVar15);\n              }\n              iVar10 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8)(uVar3,param_2);\n              if (iVar10 == 0) goto LAB_00065918;\n              iVar22 = iVar22 + 1;\n            } while (iVar22 < param_1[7]);" do (compound_statement "{\n              iVar10 = (*(code *)PTR_GetCacheViewAuthenticPixels_003a964c)\n                                 (uVar3,0,iVar22,param_1[6],1,param_2);\n              if (iVar10 == 0) {\nLAB_00065918:\n                iVar22 = 0;\n                goto LAB_000658cc;\n              }\n              iVar2 = param_1[6];\n              iVar15 = 0;\n              if (0 < iVar2) {\n                iVar16 = param_1[0xb4];\n                iVar7 = param_1[0xb0];\n                iVar20 = param_1[10];\n                iVar19 = *(int *)(iVar16 + 0x40);\n                iVar18 = *(int *)(iVar16 + 0x28);\n                iVar17 = *(int *)(iVar16 + 0x34);\n                pfVar14 = (float *)(iVar10 + *(int *)(iVar16 + 8) * 4);\n                pfVar12 = (float *)(iVar10 + *(int *)(iVar16 + 0x14) * 4);\n                pfVar11 = (float *)(iVar10 + *(int *)(iVar16 + 0x20) * 4);\n                do {\n                  if (iVar19 == 0) {\n                    uVar5 = (uint)*puVar1;\n                  }\n                  else {\n                    pfVar21 = (float *)(iVar10 + *(int *)(iVar16 + 0x44) * 4);\n                    uVar5 = (uint)puVar1[(int)*pfVar21];\n                    *pfVar21 = (float)uVar5;\n                  }\n                  iVar4 = uVar5 * 0x58 + iVar20;\n                  dVar27 = *(double *)(iVar4 + 0x30);\n                  dVar24 = *(double *)(iVar4 + 0x38);\n                  *pfVar14 = (float)*(double *)(iVar4 + 0x28);\n                  *pfVar12 = (float)dVar27;\n                  *pfVar11 = (float)dVar24;\n                  if (iVar18 != 0) {\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x2c) * 4) =\n                         (float)*(double *)(iVar4 + 0x40);\n                  }\n                  if (iVar17 != 0) {\n                    fVar26 = (float)uVar33;\n                    if (*(int *)(iVar4 + 8) != 0) {\n                      fVar26 = (float)*(double *)(iVar4 + 0x48);\n                    }\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x38) * 4) = fVar26;\n                  }\n                  iVar15 = iVar15 + 1;\n                  iVar10 = iVar10 + iVar7 * 4;\n                  pfVar14 = pfVar14 + iVar7;\n                  pfVar12 = pfVar12 + iVar7;\n                  pfVar11 = pfVar11 + iVar7;\n                } while (iVar2 != iVar15);\n              }\n              iVar10 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8)(uVar3,param_2);\n              if (iVar10 == 0) goto LAB_00065918;\n              iVar22 = iVar22 + 1;\n            }" { (expression_statement "iVar10 = (*(code *)PTR_GetCacheViewAuthenticPixels_003a964c)\n                                 (uVar3,0,iVar22,param_1[6],1,param_2);" (assignment_expression "iVar10 = (*(code *)PTR_GetCacheViewAuthenticPixels_003a964c)\n                                 (uVar3,0,iVar22,param_1[6],1,param_2)" identifier = (call_expression "(*(code *)PTR_GetCacheViewAuthenticPixels_003a964c)\n                                 (uVar3,0,iVar22,param_1[6],1,param_2)" (parenthesized_expression "(*(code *)PTR_GetCacheViewAuthenticPixels_003a964c)" ( (pointer_expression "*(code *)PTR_GetCacheViewAuthenticPixels_003a964c" * (cast_expression "(code *)PTR_GetCacheViewAuthenticPixels_003a964c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(uVar3,0,iVar22,param_1[6],1,param_2)" ( identifier , number_literal , identifier , (subscript_expression "param_1[6]" identifier [ number_literal ]) , number_literal , identifier )))) ;) (if_statement "if (iVar10 == 0) {\nLAB_00065918:\n                iVar22 = 0;\n                goto LAB_000658cc;\n              }" if (parenthesized_expression "(iVar10 == 0)" ( (binary_expression "iVar10 == 0" identifier == number_literal) )) (compound_statement "{\nLAB_00065918:\n                iVar22 = 0;\n                goto LAB_000658cc;\n              }" { (labeled_statement "LAB_00065918:\n                iVar22 = 0;" statement_identifier : (expression_statement "iVar22 = 0;" (assignment_expression "iVar22 = 0" identifier = number_literal) ;)) (goto_statement "goto LAB_000658cc;" goto statement_identifier ;) })) (expression_statement "iVar2 = param_1[6];" (assignment_expression "iVar2 = param_1[6]" identifier = (subscript_expression "param_1[6]" identifier [ number_literal ])) ;) (expression_statement "iVar15 = 0;" (assignment_expression "iVar15 = 0" identifier = number_literal) ;) (if_statement "if (0 < iVar2) {\n                iVar16 = param_1[0xb4];\n                iVar7 = param_1[0xb0];\n                iVar20 = param_1[10];\n                iVar19 = *(int *)(iVar16 + 0x40);\n                iVar18 = *(int *)(iVar16 + 0x28);\n                iVar17 = *(int *)(iVar16 + 0x34);\n                pfVar14 = (float *)(iVar10 + *(int *)(iVar16 + 8) * 4);\n                pfVar12 = (float *)(iVar10 + *(int *)(iVar16 + 0x14) * 4);\n                pfVar11 = (float *)(iVar10 + *(int *)(iVar16 + 0x20) * 4);\n                do {\n                  if (iVar19 == 0) {\n                    uVar5 = (uint)*puVar1;\n                  }\n                  else {\n                    pfVar21 = (float *)(iVar10 + *(int *)(iVar16 + 0x44) * 4);\n                    uVar5 = (uint)puVar1[(int)*pfVar21];\n                    *pfVar21 = (float)uVar5;\n                  }\n                  iVar4 = uVar5 * 0x58 + iVar20;\n                  dVar27 = *(double *)(iVar4 + 0x30);\n                  dVar24 = *(double *)(iVar4 + 0x38);\n                  *pfVar14 = (float)*(double *)(iVar4 + 0x28);\n                  *pfVar12 = (float)dVar27;\n                  *pfVar11 = (float)dVar24;\n                  if (iVar18 != 0) {\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x2c) * 4) =\n                         (float)*(double *)(iVar4 + 0x40);\n                  }\n                  if (iVar17 != 0) {\n                    fVar26 = (float)uVar33;\n                    if (*(int *)(iVar4 + 8) != 0) {\n                      fVar26 = (float)*(double *)(iVar4 + 0x48);\n                    }\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x38) * 4) = fVar26;\n                  }\n                  iVar15 = iVar15 + 1;\n                  iVar10 = iVar10 + iVar7 * 4;\n                  pfVar14 = pfVar14 + iVar7;\n                  pfVar12 = pfVar12 + iVar7;\n                  pfVar11 = pfVar11 + iVar7;\n                } while (iVar2 != iVar15);\n              }" if (parenthesized_expression "(0 < iVar2)" ( (binary_expression "0 < iVar2" number_literal < identifier) )) (compound_statement "{\n                iVar16 = param_1[0xb4];\n                iVar7 = param_1[0xb0];\n                iVar20 = param_1[10];\n                iVar19 = *(int *)(iVar16 + 0x40);\n                iVar18 = *(int *)(iVar16 + 0x28);\n                iVar17 = *(int *)(iVar16 + 0x34);\n                pfVar14 = (float *)(iVar10 + *(int *)(iVar16 + 8) * 4);\n                pfVar12 = (float *)(iVar10 + *(int *)(iVar16 + 0x14) * 4);\n                pfVar11 = (float *)(iVar10 + *(int *)(iVar16 + 0x20) * 4);\n                do {\n                  if (iVar19 == 0) {\n                    uVar5 = (uint)*puVar1;\n                  }\n                  else {\n                    pfVar21 = (float *)(iVar10 + *(int *)(iVar16 + 0x44) * 4);\n                    uVar5 = (uint)puVar1[(int)*pfVar21];\n                    *pfVar21 = (float)uVar5;\n                  }\n                  iVar4 = uVar5 * 0x58 + iVar20;\n                  dVar27 = *(double *)(iVar4 + 0x30);\n                  dVar24 = *(double *)(iVar4 + 0x38);\n                  *pfVar14 = (float)*(double *)(iVar4 + 0x28);\n                  *pfVar12 = (float)dVar27;\n                  *pfVar11 = (float)dVar24;\n                  if (iVar18 != 0) {\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x2c) * 4) =\n                         (float)*(double *)(iVar4 + 0x40);\n                  }\n                  if (iVar17 != 0) {\n                    fVar26 = (float)uVar33;\n                    if (*(int *)(iVar4 + 8) != 0) {\n                      fVar26 = (float)*(double *)(iVar4 + 0x48);\n                    }\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x38) * 4) = fVar26;\n                  }\n                  iVar15 = iVar15 + 1;\n                  iVar10 = iVar10 + iVar7 * 4;\n                  pfVar14 = pfVar14 + iVar7;\n                  pfVar12 = pfVar12 + iVar7;\n                  pfVar11 = pfVar11 + iVar7;\n                } while (iVar2 != iVar15);\n              }" { (expression_statement "iVar16 = param_1[0xb4];" (assignment_expression "iVar16 = param_1[0xb4]" identifier = (subscript_expression "param_1[0xb4]" identifier [ number_literal ])) ;) (expression_statement "iVar7 = param_1[0xb0];" (assignment_expression "iVar7 = param_1[0xb0]" identifier = (subscript_expression "param_1[0xb0]" identifier [ number_literal ])) ;) (expression_statement "iVar20 = param_1[10];" (assignment_expression "iVar20 = param_1[10]" identifier = (subscript_expression "param_1[10]" identifier [ number_literal ])) ;) (expression_statement "iVar19 = *(int *)(iVar16 + 0x40);" (assignment_expression "iVar19 = *(int *)(iVar16 + 0x40)" identifier = (pointer_expression "*(int *)(iVar16 + 0x40)" * (cast_expression "(int *)(iVar16 + 0x40)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar16 + 0x40)" ( (binary_expression "iVar16 + 0x40" identifier + number_literal) ))))) ;) (expression_statement "iVar18 = *(int *)(iVar16 + 0x28);" (assignment_expression "iVar18 = *(int *)(iVar16 + 0x28)" identifier = (pointer_expression "*(int *)(iVar16 + 0x28)" * (cast_expression "(int *)(iVar16 + 0x28)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar16 + 0x28)" ( (binary_expression "iVar16 + 0x28" identifier + number_literal) ))))) ;) (expression_statement "iVar17 = *(int *)(iVar16 + 0x34);" (assignment_expression "iVar17 = *(int *)(iVar16 + 0x34)" identifier = (pointer_expression "*(int *)(iVar16 + 0x34)" * (cast_expression "(int *)(iVar16 + 0x34)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar16 + 0x34)" ( (binary_expression "iVar16 + 0x34" identifier + number_literal) ))))) ;) (expression_statement "pfVar14 = (float *)(iVar10 + *(int *)(iVar16 + 8) * 4);" (assignment_expression "pfVar14 = (float *)(iVar10 + *(int *)(iVar16 + 8) * 4)" identifier = (cast_expression "(float *)(iVar10 + *(int *)(iVar16 + 8) * 4)" ( (type_descriptor "float *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar10 + *(int *)(iVar16 + 8) * 4)" ( (binary_expression "iVar10 + *(int *)(iVar16 + 8) * 4" identifier + (binary_expression "*(int *)(iVar16 + 8) * 4" (pointer_expression "*(int *)(iVar16 + 8)" * (cast_expression "(int *)(iVar16 + 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar16 + 8)" ( (binary_expression "iVar16 + 8" identifier + number_literal) )))) * number_literal)) )))) ;) (expression_statement "pfVar12 = (float *)(iVar10 + *(int *)(iVar16 + 0x14) * 4);" (assignment_expression "pfVar12 = (float *)(iVar10 + *(int *)(iVar16 + 0x14) * 4)" identifier = (cast_expression "(float *)(iVar10 + *(int *)(iVar16 + 0x14) * 4)" ( (type_descriptor "float *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar10 + *(int *)(iVar16 + 0x14) * 4)" ( (binary_expression "iVar10 + *(int *)(iVar16 + 0x14) * 4" identifier + (binary_expression "*(int *)(iVar16 + 0x14) * 4" (pointer_expression "*(int *)(iVar16 + 0x14)" * (cast_expression "(int *)(iVar16 + 0x14)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar16 + 0x14)" ( (binary_expression "iVar16 + 0x14" identifier + number_literal) )))) * number_literal)) )))) ;) (expression_statement "pfVar11 = (float *)(iVar10 + *(int *)(iVar16 + 0x20) * 4);" (assignment_expression "pfVar11 = (float *)(iVar10 + *(int *)(iVar16 + 0x20) * 4)" identifier = (cast_expression "(float *)(iVar10 + *(int *)(iVar16 + 0x20) * 4)" ( (type_descriptor "float *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar10 + *(int *)(iVar16 + 0x20) * 4)" ( (binary_expression "iVar10 + *(int *)(iVar16 + 0x20) * 4" identifier + (binary_expression "*(int *)(iVar16 + 0x20) * 4" (pointer_expression "*(int *)(iVar16 + 0x20)" * (cast_expression "(int *)(iVar16 + 0x20)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar16 + 0x20)" ( (binary_expression "iVar16 + 0x20" identifier + number_literal) )))) * number_literal)) )))) ;) (do_statement "do {\n                  if (iVar19 == 0) {\n                    uVar5 = (uint)*puVar1;\n                  }\n                  else {\n                    pfVar21 = (float *)(iVar10 + *(int *)(iVar16 + 0x44) * 4);\n                    uVar5 = (uint)puVar1[(int)*pfVar21];\n                    *pfVar21 = (float)uVar5;\n                  }\n                  iVar4 = uVar5 * 0x58 + iVar20;\n                  dVar27 = *(double *)(iVar4 + 0x30);\n                  dVar24 = *(double *)(iVar4 + 0x38);\n                  *pfVar14 = (float)*(double *)(iVar4 + 0x28);\n                  *pfVar12 = (float)dVar27;\n                  *pfVar11 = (float)dVar24;\n                  if (iVar18 != 0) {\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x2c) * 4) =\n                         (float)*(double *)(iVar4 + 0x40);\n                  }\n                  if (iVar17 != 0) {\n                    fVar26 = (float)uVar33;\n                    if (*(int *)(iVar4 + 8) != 0) {\n                      fVar26 = (float)*(double *)(iVar4 + 0x48);\n                    }\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x38) * 4) = fVar26;\n                  }\n                  iVar15 = iVar15 + 1;\n                  iVar10 = iVar10 + iVar7 * 4;\n                  pfVar14 = pfVar14 + iVar7;\n                  pfVar12 = pfVar12 + iVar7;\n                  pfVar11 = pfVar11 + iVar7;\n                } while (iVar2 != iVar15);" do (compound_statement "{\n                  if (iVar19 == 0) {\n                    uVar5 = (uint)*puVar1;\n                  }\n                  else {\n                    pfVar21 = (float *)(iVar10 + *(int *)(iVar16 + 0x44) * 4);\n                    uVar5 = (uint)puVar1[(int)*pfVar21];\n                    *pfVar21 = (float)uVar5;\n                  }\n                  iVar4 = uVar5 * 0x58 + iVar20;\n                  dVar27 = *(double *)(iVar4 + 0x30);\n                  dVar24 = *(double *)(iVar4 + 0x38);\n                  *pfVar14 = (float)*(double *)(iVar4 + 0x28);\n                  *pfVar12 = (float)dVar27;\n                  *pfVar11 = (float)dVar24;\n                  if (iVar18 != 0) {\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x2c) * 4) =\n                         (float)*(double *)(iVar4 + 0x40);\n                  }\n                  if (iVar17 != 0) {\n                    fVar26 = (float)uVar33;\n                    if (*(int *)(iVar4 + 8) != 0) {\n                      fVar26 = (float)*(double *)(iVar4 + 0x48);\n                    }\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x38) * 4) = fVar26;\n                  }\n                  iVar15 = iVar15 + 1;\n                  iVar10 = iVar10 + iVar7 * 4;\n                  pfVar14 = pfVar14 + iVar7;\n                  pfVar12 = pfVar12 + iVar7;\n                  pfVar11 = pfVar11 + iVar7;\n                }" { (if_statement "if (iVar19 == 0) {\n                    uVar5 = (uint)*puVar1;\n                  }\n                  else {\n                    pfVar21 = (float *)(iVar10 + *(int *)(iVar16 + 0x44) * 4);\n                    uVar5 = (uint)puVar1[(int)*pfVar21];\n                    *pfVar21 = (float)uVar5;\n                  }" if (parenthesized_expression "(iVar19 == 0)" ( (binary_expression "iVar19 == 0" identifier == number_literal) )) (compound_statement "{\n                    uVar5 = (uint)*puVar1;\n                  }" { (expression_statement "uVar5 = (uint)*puVar1;" (assignment_expression "uVar5 = (uint)*puVar1" identifier = (binary_expression "(uint)*puVar1" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;) }) (else_clause "else {\n                    pfVar21 = (float *)(iVar10 + *(int *)(iVar16 + 0x44) * 4);\n                    uVar5 = (uint)puVar1[(int)*pfVar21];\n                    *pfVar21 = (float)uVar5;\n                  }" else (compound_statement "{\n                    pfVar21 = (float *)(iVar10 + *(int *)(iVar16 + 0x44) * 4);\n                    uVar5 = (uint)puVar1[(int)*pfVar21];\n                    *pfVar21 = (float)uVar5;\n                  }" { (expression_statement "pfVar21 = (float *)(iVar10 + *(int *)(iVar16 + 0x44) * 4);" (assignment_expression "pfVar21 = (float *)(iVar10 + *(int *)(iVar16 + 0x44) * 4)" identifier = (cast_expression "(float *)(iVar10 + *(int *)(iVar16 + 0x44) * 4)" ( (type_descriptor "float *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar10 + *(int *)(iVar16 + 0x44) * 4)" ( (binary_expression "iVar10 + *(int *)(iVar16 + 0x44) * 4" identifier + (binary_expression "*(int *)(iVar16 + 0x44) * 4" (pointer_expression "*(int *)(iVar16 + 0x44)" * (cast_expression "(int *)(iVar16 + 0x44)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar16 + 0x44)" ( (binary_expression "iVar16 + 0x44" identifier + number_literal) )))) * number_literal)) )))) ;) (expression_statement "uVar5 = (uint)puVar1[(int)*pfVar21];" (assignment_expression "uVar5 = (uint)puVar1[(int)*pfVar21]" identifier = (cast_expression "(uint)puVar1[(int)*pfVar21]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "puVar1[(int)*pfVar21]" identifier [ (cast_expression "(int)*pfVar21" ( (type_descriptor "int" primitive_type) ) (pointer_expression "*pfVar21" * identifier)) ]))) ;) (expression_statement "*pfVar21 = (float)uVar5;" (assignment_expression "*pfVar21 = (float)uVar5" (pointer_expression "*pfVar21" * identifier) = (cast_expression "(float)uVar5" ( (type_descriptor "float" primitive_type) ) identifier)) ;) }))) (expression_statement "iVar4 = uVar5 * 0x58 + iVar20;" (assignment_expression "iVar4 = uVar5 * 0x58 + iVar20" identifier = (binary_expression "uVar5 * 0x58 + iVar20" (binary_expression "uVar5 * 0x58" identifier * number_literal) + identifier)) ;) (expression_statement "dVar27 = *(double *)(iVar4 + 0x30);" (assignment_expression "dVar27 = *(double *)(iVar4 + 0x30)" identifier = (pointer_expression "*(double *)(iVar4 + 0x30)" * (cast_expression "(double *)(iVar4 + 0x30)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar4 + 0x30)" ( (binary_expression "iVar4 + 0x30" identifier + number_literal) ))))) ;) (expression_statement "dVar24 = *(double *)(iVar4 + 0x38);" (assignment_expression "dVar24 = *(double *)(iVar4 + 0x38)" identifier = (pointer_expression "*(double *)(iVar4 + 0x38)" * (cast_expression "(double *)(iVar4 + 0x38)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar4 + 0x38)" ( (binary_expression "iVar4 + 0x38" identifier + number_literal) ))))) ;) (expression_statement "*pfVar14 = (float)*(double *)(iVar4 + 0x28);" (assignment_expression "*pfVar14 = (float)*(double *)(iVar4 + 0x28)" (pointer_expression "*pfVar14" * identifier) = (cast_expression "(float)*(double *)(iVar4 + 0x28)" ( (type_descriptor "float" primitive_type) ) (pointer_expression "*(double *)(iVar4 + 0x28)" * (cast_expression "(double *)(iVar4 + 0x28)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar4 + 0x28)" ( (binary_expression "iVar4 + 0x28" identifier + number_literal) )))))) ;) (expression_statement "*pfVar12 = (float)dVar27;" (assignment_expression "*pfVar12 = (float)dVar27" (pointer_expression "*pfVar12" * identifier) = (cast_expression "(float)dVar27" ( (type_descriptor "float" primitive_type) ) identifier)) ;) (expression_statement "*pfVar11 = (float)dVar24;" (assignment_expression "*pfVar11 = (float)dVar24" (pointer_expression "*pfVar11" * identifier) = (cast_expression "(float)dVar24" ( (type_descriptor "float" primitive_type) ) identifier)) ;) (if_statement "if (iVar18 != 0) {\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x2c) * 4) =\n                         (float)*(double *)(iVar4 + 0x40);\n                  }" if (parenthesized_expression "(iVar18 != 0)" ( (binary_expression "iVar18 != 0" identifier != number_literal) )) (compound_statement "{\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x2c) * 4) =\n                         (float)*(double *)(iVar4 + 0x40);\n                  }" { (expression_statement "*(float *)(iVar10 + *(int *)(iVar16 + 0x2c) * 4) =\n                         (float)*(double *)(iVar4 + 0x40);" (assignment_expression "*(float *)(iVar10 + *(int *)(iVar16 + 0x2c) * 4) =\n                         (float)*(double *)(iVar4 + 0x40)" (pointer_expression "*(float *)(iVar10 + *(int *)(iVar16 + 0x2c) * 4)" * (cast_expression "(float *)(iVar10 + *(int *)(iVar16 + 0x2c) * 4)" ( (type_descriptor "float *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar10 + *(int *)(iVar16 + 0x2c) * 4)" ( (binary_expression "iVar10 + *(int *)(iVar16 + 0x2c) * 4" identifier + (binary_expression "*(int *)(iVar16 + 0x2c) * 4" (pointer_expression "*(int *)(iVar16 + 0x2c)" * (cast_expression "(int *)(iVar16 + 0x2c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar16 + 0x2c)" ( (binary_expression "iVar16 + 0x2c" identifier + number_literal) )))) * number_literal)) )))) = (cast_expression "(float)*(double *)(iVar4 + 0x40)" ( (type_descriptor "float" primitive_type) ) (pointer_expression "*(double *)(iVar4 + 0x40)" * (cast_expression "(double *)(iVar4 + 0x40)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar4 + 0x40)" ( (binary_expression "iVar4 + 0x40" identifier + number_literal) )))))) ;) })) (if_statement "if (iVar17 != 0) {\n                    fVar26 = (float)uVar33;\n                    if (*(int *)(iVar4 + 8) != 0) {\n                      fVar26 = (float)*(double *)(iVar4 + 0x48);\n                    }\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x38) * 4) = fVar26;\n                  }" if (parenthesized_expression "(iVar17 != 0)" ( (binary_expression "iVar17 != 0" identifier != number_literal) )) (compound_statement "{\n                    fVar26 = (float)uVar33;\n                    if (*(int *)(iVar4 + 8) != 0) {\n                      fVar26 = (float)*(double *)(iVar4 + 0x48);\n                    }\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x38) * 4) = fVar26;\n                  }" { (expression_statement "fVar26 = (float)uVar33;" (assignment_expression "fVar26 = (float)uVar33" identifier = (cast_expression "(float)uVar33" ( (type_descriptor "float" primitive_type) ) identifier)) ;) (if_statement "if (*(int *)(iVar4 + 8) != 0) {\n                      fVar26 = (float)*(double *)(iVar4 + 0x48);\n                    }" if (parenthesized_expression "(*(int *)(iVar4 + 8) != 0)" ( (binary_expression "*(int *)(iVar4 + 8) != 0" (pointer_expression "*(int *)(iVar4 + 8)" * (cast_expression "(int *)(iVar4 + 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar4 + 8)" ( (binary_expression "iVar4 + 8" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n                      fVar26 = (float)*(double *)(iVar4 + 0x48);\n                    }" { (expression_statement "fVar26 = (float)*(double *)(iVar4 + 0x48);" (assignment_expression "fVar26 = (float)*(double *)(iVar4 + 0x48)" identifier = (cast_expression "(float)*(double *)(iVar4 + 0x48)" ( (type_descriptor "float" primitive_type) ) (pointer_expression "*(double *)(iVar4 + 0x48)" * (cast_expression "(double *)(iVar4 + 0x48)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar4 + 0x48)" ( (binary_expression "iVar4 + 0x48" identifier + number_literal) )))))) ;) })) (expression_statement "*(float *)(iVar10 + *(int *)(iVar16 + 0x38) * 4) = fVar26;" (assignment_expression "*(float *)(iVar10 + *(int *)(iVar16 + 0x38) * 4) = fVar26" (pointer_expression "*(float *)(iVar10 + *(int *)(iVar16 + 0x38) * 4)" * (cast_expression "(float *)(iVar10 + *(int *)(iVar16 + 0x38) * 4)" ( (type_descriptor "float *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar10 + *(int *)(iVar16 + 0x38) * 4)" ( (binary_expression "iVar10 + *(int *)(iVar16 + 0x38) * 4" identifier + (binary_expression "*(int *)(iVar16 + 0x38) * 4" (pointer_expression "*(int *)(iVar16 + 0x38)" * (cast_expression "(int *)(iVar16 + 0x38)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar16 + 0x38)" ( (binary_expression "iVar16 + 0x38" identifier + number_literal) )))) * number_literal)) )))) = identifier) ;) })) (expression_statement "iVar15 = iVar15 + 1;" (assignment_expression "iVar15 = iVar15 + 1" identifier = (binary_expression "iVar15 + 1" identifier + number_literal)) ;) (expression_statement "iVar10 = iVar10 + iVar7 * 4;" (assignment_expression "iVar10 = iVar10 + iVar7 * 4" identifier = (binary_expression "iVar10 + iVar7 * 4" identifier + (binary_expression "iVar7 * 4" identifier * number_literal))) ;) (expression_statement "pfVar14 = pfVar14 + iVar7;" (assignment_expression "pfVar14 = pfVar14 + iVar7" identifier = (binary_expression "pfVar14 + iVar7" identifier + identifier)) ;) (expression_statement "pfVar12 = pfVar12 + iVar7;" (assignment_expression "pfVar12 = pfVar12 + iVar7" identifier = (binary_expression "pfVar12 + iVar7" identifier + identifier)) ;) (expression_statement "pfVar11 = pfVar11 + iVar7;" (assignment_expression "pfVar11 = pfVar11 + iVar7" identifier = (binary_expression "pfVar11 + iVar7" identifier + identifier)) ;) }) while (parenthesized_expression "(iVar2 != iVar15)" ( (binary_expression "iVar2 != iVar15" identifier != identifier) )) ;) })) (expression_statement "iVar10 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8)(uVar3,param_2);" (assignment_expression "iVar10 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8)(uVar3,param_2)" identifier = (call_expression "(*(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8)(uVar3,param_2)" (parenthesized_expression "(*(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8)" ( (pointer_expression "*(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8" * (cast_expression "(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(uVar3,param_2)" ( identifier , identifier )))) ;) (if_statement "if (iVar10 == 0) goto LAB_00065918;" if (parenthesized_expression "(iVar10 == 0)" ( (binary_expression "iVar10 == 0" identifier == number_literal) )) (goto_statement "goto LAB_00065918;" goto statement_identifier ;)) (expression_statement "iVar22 = iVar22 + 1;" (assignment_expression "iVar22 = iVar22 + 1" identifier = (binary_expression "iVar22 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(iVar22 < param_1[7])" ( (binary_expression "iVar22 < param_1[7]" identifier < (subscript_expression "param_1[7]" identifier [ number_literal ])) )) ;) })) (expression_statement "iVar22 = 1;" (assignment_expression "iVar22 = 1" identifier = number_literal) ;) (labeled_statement "LAB_000658cc:\n          (*(code *)PTR_DestroyCacheView_003a8ef4)(uVar3);" statement_identifier : (expression_statement "(*(code *)PTR_DestroyCacheView_003a8ef4)(uVar3);" (call_expression "(*(code *)PTR_DestroyCacheView_003a8ef4)(uVar3)" (parenthesized_expression "(*(code *)PTR_DestroyCacheView_003a8ef4)" ( (pointer_expression "*(code *)PTR_DestroyCacheView_003a8ef4" * (cast_expression "(code *)PTR_DestroyCacheView_003a8ef4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(uVar3)" ( identifier ))) ;)) (expression_statement "(*(code *)PTR_RelinquishMagickMemory_003a8fc0)(puVar1);" (call_expression "(*(code *)PTR_RelinquishMagickMemory_003a8fc0)(puVar1)" (parenthesized_expression "(*(code *)PTR_RelinquishMagickMemory_003a8fc0)" ( (pointer_expression "*(code *)PTR_RelinquishMagickMemory_003a8fc0" * (cast_expression "(code *)PTR_RelinquishMagickMemory_003a8fc0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(puVar1)" ( identifier ))) ;) (return_statement "return iVar22;" return identifier ;) })) (expression_statement "iVar22 = 0;" (assignment_expression "iVar22 = 0" identifier = number_literal) ;) (expression_statement "(*(code *)PTR_ThrowMagickException_003a8f20)\n                  (param_2,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                   PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x147,400,\n                   PTR_LAB_003a88e0 + 0x16f8,PTR_LAB_003a88e0 + 0x3e28,param_1 + 0xd0);" (call_expression "(*(code *)PTR_ThrowMagickException_003a8f20)\n                  (param_2,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                   PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x147,400,\n                   PTR_LAB_003a88e0 + 0x16f8,PTR_LAB_003a88e0 + 0x3e28,param_1 + 0xd0)" (parenthesized_expression "(*(code *)PTR_ThrowMagickException_003a8f20)" ( (pointer_expression "*(code *)PTR_ThrowMagickException_003a8f20" * (cast_expression "(code *)PTR_ThrowMagickException_003a8f20" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_2,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                   PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x147,400,\n                   PTR_LAB_003a88e0 + 0x16f8,PTR_LAB_003a88e0 + 0x3e28,param_1 + 0xd0)" ( identifier , (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88" identifier + number_literal) , (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70" identifier + number_literal) , number_literal , number_literal , (binary_expression "PTR_LAB_003a88e0 + 0x16f8" identifier + number_literal) , (binary_expression "PTR_LAB_003a88e0 + 0x3e28" identifier + number_literal) , (binary_expression "param_1 + 0xd0" identifier + number_literal) ))) ;) })) (return_statement "return iVar22;" return identifier ;) })) }))) (expression_statement "piVar8 = (int *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3784);" (assignment_expression "piVar8 = (int *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3784)" identifier = (cast_expression "(int *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3784)" ( (type_descriptor "int *" primitive_type (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 "puVar23 = PTR___assert_fail_003a9608;" (assignment_expression "puVar23 = PTR___assert_fail_003a9608" identifier = identifier) ;) (expression_statement "(*(code *)PTR___assert_fail_003a9608)\n            (piVar8,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,0x13d,\n             PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a58);" (call_expression "(*(code *)PTR___assert_fail_003a9608)\n            (piVar8,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,0x13d,\n             PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a58)" (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 "(piVar8,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,0x13d,\n             PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a58)" ( identifier , (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88" identifier + number_literal) , number_literal , (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a58" identifier + number_literal) ))) ;) (expression_statement "iVar10 = (**(code **)(puVar23 + 0x343f4c))();" (assignment_expression "iVar10 = (**(code **)(puVar23 + 0x343f4c))()" identifier = (call_expression "(**(code **)(puVar23 + 0x343f4c))()" (parenthesized_expression "(**(code **)(puVar23 + 0x343f4c))" ( (pointer_expression "**(code **)(puVar23 + 0x343f4c)" * (pointer_expression "*(code **)(puVar23 + 0x343f4c)" * (cast_expression "(code **)(puVar23 + 0x343f4c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar23 + 0x343f4c)" ( (binary_expression "puVar23 + 0x343f4c" identifier + number_literal) ))))) )) (argument_list "()" ( )))) ;) (expression_statement "iVar22 = (**(code **)(puVar23 + 0x343b48))();" (assignment_expression "iVar22 = (**(code **)(puVar23 + 0x343b48))()" identifier = (call_expression "(**(code **)(puVar23 + 0x343b48))()" (parenthesized_expression "(**(code **)(puVar23 + 0x343b48))" ( (pointer_expression "**(code **)(puVar23 + 0x343b48)" * (pointer_expression "*(code **)(puVar23 + 0x343b48)" * (cast_expression "(code **)(puVar23 + 0x343b48)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar23 + 0x343b48)" ( (binary_expression "puVar23 + 0x343b48" identifier + number_literal) ))))) )) (argument_list "()" ( )))) ;) (if_statement "if (iVar10 == 0) {\n    trap(7);\n  }" if (parenthesized_expression "(iVar10 == 0)" ( (binary_expression "iVar10 == 0" identifier == number_literal) )) (compound_statement "{\n    trap(7);\n  }" { (expression_statement "trap(7);" (call_expression "trap(7)" identifier (argument_list "(7)" ( number_literal ))) ;) })) (expression_statement "iVar15 = 0x10000 / iVar10;" (assignment_expression "iVar15 = 0x10000 / iVar10" identifier = (binary_expression "0x10000 / iVar10" number_literal / identifier)) ;) (expression_statement "iVar10 = 0x10000 % iVar10;" (assignment_expression "iVar10 = 0x10000 % iVar10" identifier = (binary_expression "0x10000 % iVar10" number_literal % identifier)) ;) (if_statement "if (iVar22 < iVar10) {\n    iVar15 = iVar15 + 1;\n    iVar10 = 0;\n  }" if (parenthesized_expression "(iVar22 < iVar10)" ( (binary_expression "iVar22 < iVar10" identifier < identifier) )) (compound_statement "{\n    iVar15 = iVar15 + 1;\n    iVar10 = 0;\n  }" { (expression_statement "iVar15 = iVar15 + 1;" (assignment_expression "iVar15 = iVar15 + 1" identifier = (binary_expression "iVar15 + 1" identifier + number_literal)) ;) (expression_statement "iVar10 = 0;" (assignment_expression "iVar10 = 0" identifier = number_literal) ;) })) (expression_statement "iVar10 = iVar15 * iVar22 + iVar10;" (assignment_expression "iVar10 = iVar15 * iVar22 + iVar10" identifier = (binary_expression "iVar15 * iVar22 + iVar10" (binary_expression "iVar15 * iVar22" identifier * identifier) + identifier)) ;) (expression_statement "iVar15 = iVar15 + iVar10;" (assignment_expression "iVar15 = iVar15 + iVar10" identifier = (binary_expression "iVar15 + iVar10" identifier + identifier)) ;) (if_statement "if (iVar10 < iVar15) {\n    iVar2 = iVar10 * 0x18;\n    dVar24 = *(double *)(*(int *)(puVar23 + 0x342f28) + -0x3f48);\n    dVar31 = *(double *)(*(int *)(puVar23 + 0x342f20) + 0x1a58);\n    dVar32 = *(double *)(*(int *)(puVar23 + 0x342f28) + -0x3f40);\n    dVar30 = *(double *)(*(int *)(puVar23 + 0x342f20) + 0x1400);\n    dVar27 = *(double *)(*(int *)(puVar23 + 0x342f28) + -0x3f50);\n    iVar22 = iVar10;\n    pdVar6 = (double *)(piVar8[2] + iVar2);\n    pdVar9 = (double *)(*piVar8 + iVar2);\n    pdVar13 = (double *)(piVar8[1] + iVar2);\n    do {\n      iVar10 = iVar22 + 1;\n      dVar28 = (double)iVar22;\n      *pdVar13 = dVar28;\n      dVar25 = (dVar28 + dVar28) - dVar31;\n      dVar29 = dVar25 * dVar27;\n      *pdVar9 = dVar25 * dVar30;\n      *pdVar6 = dVar29;\n      pdVar13[1] = dVar28;\n      pdVar9[1] = dVar25 * 0.0;\n      pdVar6[1] = dVar25 * dVar24;\n      pdVar13[2] = dVar28;\n      pdVar9[2] = dVar25 * dVar32;\n      pdVar6[2] = dVar29;\n      iVar22 = iVar10;\n      pdVar6 = pdVar6 + 3;\n      pdVar9 = pdVar9 + 3;\n      pdVar13 = pdVar13 + 3;\n    } while (iVar15 != iVar10);\n  }" if (parenthesized_expression "(iVar10 < iVar15)" ( (binary_expression "iVar10 < iVar15" identifier < identifier) )) (compound_statement "{\n    iVar2 = iVar10 * 0x18;\n    dVar24 = *(double *)(*(int *)(puVar23 + 0x342f28) + -0x3f48);\n    dVar31 = *(double *)(*(int *)(puVar23 + 0x342f20) + 0x1a58);\n    dVar32 = *(double *)(*(int *)(puVar23 + 0x342f28) + -0x3f40);\n    dVar30 = *(double *)(*(int *)(puVar23 + 0x342f20) + 0x1400);\n    dVar27 = *(double *)(*(int *)(puVar23 + 0x342f28) + -0x3f50);\n    iVar22 = iVar10;\n    pdVar6 = (double *)(piVar8[2] + iVar2);\n    pdVar9 = (double *)(*piVar8 + iVar2);\n    pdVar13 = (double *)(piVar8[1] + iVar2);\n    do {\n      iVar10 = iVar22 + 1;\n      dVar28 = (double)iVar22;\n      *pdVar13 = dVar28;\n      dVar25 = (dVar28 + dVar28) - dVar31;\n      dVar29 = dVar25 * dVar27;\n      *pdVar9 = dVar25 * dVar30;\n      *pdVar6 = dVar29;\n      pdVar13[1] = dVar28;\n      pdVar9[1] = dVar25 * 0.0;\n      pdVar6[1] = dVar25 * dVar24;\n      pdVar13[2] = dVar28;\n      pdVar9[2] = dVar25 * dVar32;\n      pdVar6[2] = dVar29;\n      iVar22 = iVar10;\n      pdVar6 = pdVar6 + 3;\n      pdVar9 = pdVar9 + 3;\n      pdVar13 = pdVar13 + 3;\n    } while (iVar15 != iVar10);\n  }" { (expression_statement "iVar2 = iVar10 * 0x18;" (assignment_expression "iVar2 = iVar10 * 0x18" identifier = (binary_expression "iVar10 * 0x18" identifier * number_literal)) ;) (expression_statement "dVar24 = *(double *)(*(int *)(puVar23 + 0x342f28) + -0x3f48);" (assignment_expression "dVar24 = *(double *)(*(int *)(puVar23 + 0x342f28) + -0x3f48)" identifier = (pointer_expression "*(double *)(*(int *)(puVar23 + 0x342f28) + -0x3f48)" * (cast_expression "(double *)(*(int *)(puVar23 + 0x342f28) + -0x3f48)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar23 + 0x342f28) + -0x3f48)" ( (binary_expression "*(int *)(puVar23 + 0x342f28) + -0x3f48" (pointer_expression "*(int *)(puVar23 + 0x342f28)" * (cast_expression "(int *)(puVar23 + 0x342f28)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar23 + 0x342f28)" ( (binary_expression "puVar23 + 0x342f28" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar31 = *(double *)(*(int *)(puVar23 + 0x342f20) + 0x1a58);" (assignment_expression "dVar31 = *(double *)(*(int *)(puVar23 + 0x342f20) + 0x1a58)" identifier = (pointer_expression "*(double *)(*(int *)(puVar23 + 0x342f20) + 0x1a58)" * (cast_expression "(double *)(*(int *)(puVar23 + 0x342f20) + 0x1a58)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar23 + 0x342f20) + 0x1a58)" ( (binary_expression "*(int *)(puVar23 + 0x342f20) + 0x1a58" (pointer_expression "*(int *)(puVar23 + 0x342f20)" * (cast_expression "(int *)(puVar23 + 0x342f20)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar23 + 0x342f20)" ( (binary_expression "puVar23 + 0x342f20" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar32 = *(double *)(*(int *)(puVar23 + 0x342f28) + -0x3f40);" (assignment_expression "dVar32 = *(double *)(*(int *)(puVar23 + 0x342f28) + -0x3f40)" identifier = (pointer_expression "*(double *)(*(int *)(puVar23 + 0x342f28) + -0x3f40)" * (cast_expression "(double *)(*(int *)(puVar23 + 0x342f28) + -0x3f40)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar23 + 0x342f28) + -0x3f40)" ( (binary_expression "*(int *)(puVar23 + 0x342f28) + -0x3f40" (pointer_expression "*(int *)(puVar23 + 0x342f28)" * (cast_expression "(int *)(puVar23 + 0x342f28)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar23 + 0x342f28)" ( (binary_expression "puVar23 + 0x342f28" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar30 = *(double *)(*(int *)(puVar23 + 0x342f20) + 0x1400);" (assignment_expression "dVar30 = *(double *)(*(int *)(puVar23 + 0x342f20) + 0x1400)" identifier = (pointer_expression "*(double *)(*(int *)(puVar23 + 0x342f20) + 0x1400)" * (cast_expression "(double *)(*(int *)(puVar23 + 0x342f20) + 0x1400)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar23 + 0x342f20) + 0x1400)" ( (binary_expression "*(int *)(puVar23 + 0x342f20) + 0x1400" (pointer_expression "*(int *)(puVar23 + 0x342f20)" * (cast_expression "(int *)(puVar23 + 0x342f20)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar23 + 0x342f20)" ( (binary_expression "puVar23 + 0x342f20" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar27 = *(double *)(*(int *)(puVar23 + 0x342f28) + -0x3f50);" (assignment_expression "dVar27 = *(double *)(*(int *)(puVar23 + 0x342f28) + -0x3f50)" identifier = (pointer_expression "*(double *)(*(int *)(puVar23 + 0x342f28) + -0x3f50)" * (cast_expression "(double *)(*(int *)(puVar23 + 0x342f28) + -0x3f50)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar23 + 0x342f28) + -0x3f50)" ( (binary_expression "*(int *)(puVar23 + 0x342f28) + -0x3f50" (pointer_expression "*(int *)(puVar23 + 0x342f28)" * (cast_expression "(int *)(puVar23 + 0x342f28)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar23 + 0x342f28)" ( (binary_expression "puVar23 + 0x342f28" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "iVar22 = iVar10;" (assignment_expression "iVar22 = iVar10" identifier = identifier) ;) (expression_statement "pdVar6 = (double *)(piVar8[2] + iVar2);" (assignment_expression "pdVar6 = (double *)(piVar8[2] + iVar2)" identifier = (cast_expression "(double *)(piVar8[2] + iVar2)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar8[2] + iVar2)" ( (binary_expression "piVar8[2] + iVar2" (subscript_expression "piVar8[2]" identifier [ number_literal ]) + identifier) )))) ;) (expression_statement "pdVar9 = (double *)(*piVar8 + iVar2);" (assignment_expression "pdVar9 = (double *)(*piVar8 + iVar2)" identifier = (cast_expression "(double *)(*piVar8 + iVar2)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*piVar8 + iVar2)" ( (binary_expression "*piVar8 + iVar2" (pointer_expression "*piVar8" * identifier) + identifier) )))) ;) (expression_statement "pdVar13 = (double *)(piVar8[1] + iVar2);" (assignment_expression "pdVar13 = (double *)(piVar8[1] + iVar2)" identifier = (cast_expression "(double *)(piVar8[1] + iVar2)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar8[1] + iVar2)" ( (binary_expression "piVar8[1] + iVar2" (subscript_expression "piVar8[1]" identifier [ number_literal ]) + identifier) )))) ;) (do_statement "do {\n      iVar10 = iVar22 + 1;\n      dVar28 = (double)iVar22;\n      *pdVar13 = dVar28;\n      dVar25 = (dVar28 + dVar28) - dVar31;\n      dVar29 = dVar25 * dVar27;\n      *pdVar9 = dVar25 * dVar30;\n      *pdVar6 = dVar29;\n      pdVar13[1] = dVar28;\n      pdVar9[1] = dVar25 * 0.0;\n      pdVar6[1] = dVar25 * dVar24;\n      pdVar13[2] = dVar28;\n      pdVar9[2] = dVar25 * dVar32;\n      pdVar6[2] = dVar29;\n      iVar22 = iVar10;\n      pdVar6 = pdVar6 + 3;\n      pdVar9 = pdVar9 + 3;\n      pdVar13 = pdVar13 + 3;\n    } while (iVar15 != iVar10);" do (compound_statement "{\n      iVar10 = iVar22 + 1;\n      dVar28 = (double)iVar22;\n      *pdVar13 = dVar28;\n      dVar25 = (dVar28 + dVar28) - dVar31;\n      dVar29 = dVar25 * dVar27;\n      *pdVar9 = dVar25 * dVar30;\n      *pdVar6 = dVar29;\n      pdVar13[1] = dVar28;\n      pdVar9[1] = dVar25 * 0.0;\n      pdVar6[1] = dVar25 * dVar24;\n      pdVar13[2] = dVar28;\n      pdVar9[2] = dVar25 * dVar32;\n      pdVar6[2] = dVar29;\n      iVar22 = iVar10;\n      pdVar6 = pdVar6 + 3;\n      pdVar9 = pdVar9 + 3;\n      pdVar13 = pdVar13 + 3;\n    }" { (expression_statement "iVar10 = iVar22 + 1;" (assignment_expression "iVar10 = iVar22 + 1" identifier = (binary_expression "iVar22 + 1" identifier + number_literal)) ;) (expression_statement "dVar28 = (double)iVar22;" (assignment_expression "dVar28 = (double)iVar22" identifier = (cast_expression "(double)iVar22" ( (type_descriptor "double" primitive_type) ) identifier)) ;) (expression_statement "*pdVar13 = dVar28;" (assignment_expression "*pdVar13 = dVar28" (pointer_expression "*pdVar13" * identifier) = identifier) ;) (expression_statement "dVar25 = (dVar28 + dVar28) - dVar31;" (assignment_expression "dVar25 = (dVar28 + dVar28) - dVar31" identifier = (binary_expression "(dVar28 + dVar28) - dVar31" (parenthesized_expression "(dVar28 + dVar28)" ( (binary_expression "dVar28 + dVar28" identifier + identifier) )) - identifier)) ;) (expression_statement "dVar29 = dVar25 * dVar27;" (assignment_expression "dVar29 = dVar25 * dVar27" identifier = (binary_expression "dVar25 * dVar27" identifier * identifier)) ;) (expression_statement "*pdVar9 = dVar25 * dVar30;" (assignment_expression "*pdVar9 = dVar25 * dVar30" (pointer_expression "*pdVar9" * identifier) = (binary_expression "dVar25 * dVar30" identifier * identifier)) ;) (expression_statement "*pdVar6 = dVar29;" (assignment_expression "*pdVar6 = dVar29" (pointer_expression "*pdVar6" * identifier) = identifier) ;) (expression_statement "pdVar13[1] = dVar28;" (assignment_expression "pdVar13[1] = dVar28" (subscript_expression "pdVar13[1]" identifier [ number_literal ]) = identifier) ;) (expression_statement "pdVar9[1] = dVar25 * 0.0;" (assignment_expression "pdVar9[1] = dVar25 * 0.0" (subscript_expression "pdVar9[1]" identifier [ number_literal ]) = (binary_expression "dVar25 * 0.0" identifier * number_literal)) ;) (expression_statement "pdVar6[1] = dVar25 * dVar24;" (assignment_expression "pdVar6[1] = dVar25 * dVar24" (subscript_expression "pdVar6[1]" identifier [ number_literal ]) = (binary_expression "dVar25 * dVar24" identifier * identifier)) ;) (expression_statement "pdVar13[2] = dVar28;" (assignment_expression "pdVar13[2] = dVar28" (subscript_expression "pdVar13[2]" identifier [ number_literal ]) = identifier) ;) (expression_statement "pdVar9[2] = dVar25 * dVar32;" (assignment_expression "pdVar9[2] = dVar25 * dVar32" (subscript_expression "pdVar9[2]" identifier [ number_literal ]) = (binary_expression "dVar25 * dVar32" identifier * identifier)) ;) (expression_statement "pdVar6[2] = dVar29;" (assignment_expression "pdVar6[2] = dVar29" (subscript_expression "pdVar6[2]" identifier [ number_literal ]) = identifier) ;) (expression_statement "iVar22 = iVar10;" (assignment_expression "iVar22 = iVar10" identifier = identifier) ;) (expression_statement "pdVar6 = pdVar6 + 3;" (assignment_expression "pdVar6 = pdVar6 + 3" identifier = (binary_expression "pdVar6 + 3" identifier + number_literal)) ;) (expression_statement "pdVar9 = pdVar9 + 3;" (assignment_expression "pdVar9 = pdVar9 + 3" identifier = (binary_expression "pdVar9 + 3" identifier + number_literal)) ;) (expression_statement "pdVar13 = pdVar13 + 3;" (assignment_expression "pdVar13 = pdVar13 + 3" identifier = (binary_expression "pdVar13 + 3" identifier + number_literal)) ;) }) while (parenthesized_expression "(iVar15 != iVar10)" ( (binary_expression "iVar15 != iVar10" identifier != identifier) )) ;) })) (return_statement "return iVar10;" 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\nMagickBooleanType SortColormapByIntensity(Image *image,ExceptionInfo *exception)\n\n{\n  ushort *puVar1;\n  size_t sVar2;\n  undefined4 uVar3;\n  int iVar4;\n  MagickBooleanType MVar5;\n  MagickRealType *pMVar6;\n  size_t sVar7;\n  uint uVar8;\n  double *pdVar9;\n  PixelInfo *pPVar10;\n  int *piVar11;\n  double *pdVar12;\n  size_t sVar13;\n  float *pfVar14;\n  float *pfVar15;\n  double *pdVar16;\n  float *pfVar17;\n  MagickBooleanType MVar18;\n  PixelChannelMap *pPVar19;\n  PixelTrait PVar20;\n  PixelTrait PVar21;\n  PixelTrait PVar22;\n  float *pfVar23;\n  MagickBooleanType MVar24;\n  int iVar25;\n  undefined *puVar26;\n  double dVar27;\n  float fVar29;\n  double dVar28;\n  double dVar30;\n  double dVar31;\n  double dVar32;\n  double dVar33;\n  double dVar34;\n  double dVar35;\n  ulonglong uVar36;\n  int iVar37;\n  \n  if (image == (Image *)0x0) {\n    (*(code *)PTR___assert_fail_003a9608)\n              (PTR_LAB_003a88e0 + 0xdd0,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n               0x13a,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a58);\n  }\n  else {\n    if (image->debug != MagickFalse) {\n      (*(code *)PTR_LogMagickEvent_003a91e0)\n                (0x8000,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x13c,\n                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x1fec);\n    }\n    if (image->signature == 0xabacadab) {\n      MVar24 = MagickTrue;\n      if (image->storage_class == PseudoClass) {\n        puVar1 = (ushort *)(*(code *)PTR_AcquireQuantumMemory_003a950c)(image->colors,2);\n        if (puVar1 != (ushort *)0x0) {\n          sVar13 = image->colors;\n          pPVar10 = image->colormap;\n          if (0 < (int)sVar13) {\n            sVar7 = 0;\n            pMVar6 = &pPVar10->alpha;\n            do {\n              sVar2 = sVar7 + 1;\n              *pMVar6 = (double)(int)sVar7;\n              sVar7 = sVar2;\n              pMVar6 = pMVar6 + 0xb;\n            } while (sVar2 != sVar13);\n          }\n          (*(code *)PTR_qsort_003a98d4)(pPVar10,sVar13,0x58,PTR_LAB_003a893c + 0x4ca0);\n          sVar13 = image->colors;\n          if (0 < (int)sVar13) {\n            sVar7 = 0;\n            pMVar6 = &image->colormap->alpha;\n            do {\n              puVar1[(int)*pMVar6] = (ushort)sVar7;\n              sVar7 = sVar7 + 1;\n              pMVar6 = pMVar6 + 0xb;\n            } while (sVar13 != sVar7);\n          }\n          uVar3 = (*(code *)PTR_AcquireAuthenticCacheView_003a8ed4)(image,exception);\n          if (0 < (int)image->rows) {\n            iVar25 = 0;\n            uVar36 = (ulonglong)*(uint *)(PTR_LAB_003a88e0 + 0x1a50);\n            do {\n              iVar4 = (*(code *)PTR_GetCacheViewAuthenticPixels_003a964c)\n                                (uVar3,0,iVar25,image->columns,1,exception);\n              if (iVar4 == 0) {\nLAB_00065918:\n                MVar24 = MagickFalse;\n                goto LAB_000658cc;\n              }\n              sVar7 = image->columns;\n              sVar13 = 0;\n              if (0 < (int)sVar7) {\n                pPVar19 = image->channel_map;\n                sVar2 = image->number_channels;\n                pPVar10 = image->colormap;\n                PVar22 = pPVar19[5].traits;\n                PVar21 = pPVar19[3].traits;\n                PVar20 = pPVar19[4].traits;\n                pfVar17 = (float *)(iVar4 + pPVar19->offset * 4);\n                pfVar15 = (float *)(iVar4 + pPVar19[1].offset * 4);\n                pfVar14 = (float *)(iVar4 + pPVar19[2].offset * 4);\n                do {\n                  if (PVar22 == UndefinedPixelTrait) {\n                    uVar8 = (uint)*puVar1;\n                  }\n                  else {\n                    pfVar23 = (float *)(iVar4 + pPVar19[5].offset * 4);\n                    uVar8 = (uint)puVar1[(int)*pfVar23];\n                    *pfVar23 = (float)uVar8;\n                  }\n                  dVar30 = pPVar10[uVar8].green;\n                  dVar27 = pPVar10[uVar8].blue;\n                  *pfVar17 = (float)pPVar10[uVar8].red;\n                  *pfVar15 = (float)dVar30;\n                  *pfVar14 = (float)dVar27;\n                  if (PVar21 != UndefinedPixelTrait) {\n                    *(float *)(iVar4 + pPVar19[3].offset * 4) = (float)pPVar10[uVar8].black;\n                  }\n                  if (PVar20 != UndefinedPixelTrait) {\n                    fVar29 = (float)uVar36;\n                    if (pPVar10[uVar8].alpha_trait != UndefinedPixelTrait) {\n                      fVar29 = (float)pPVar10[uVar8].alpha;\n                    }\n                    *(float *)(iVar4 + pPVar19[4].offset * 4) = fVar29;\n                  }\n                  sVar13 = sVar13 + 1;\n                  iVar4 = iVar4 + sVar2 * 4;\n                  pfVar17 = pfVar17 + sVar2;\n                  pfVar15 = pfVar15 + sVar2;\n                  pfVar14 = pfVar14 + sVar2;\n                } while (sVar7 != sVar13);\n              }\n              iVar4 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8)(uVar3,exception);\n              if (iVar4 == 0) goto LAB_00065918;\n              iVar25 = iVar25 + 1;\n            } while (iVar25 < (int)image->rows);\n          }\n          MVar24 = MagickTrue;\nLAB_000658cc:\n          (*(code *)PTR_DestroyCacheView_003a8ef4)(uVar3);\n          (*(code *)PTR_RelinquishMagickMemory_003a8fc0)(puVar1);\n          return MVar24;\n        }\n        MVar24 = MagickFalse;\n        (*(code *)PTR_ThrowMagickException_003a8f20)\n                  (exception,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                   PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x147,400,\n                   PTR_LAB_003a88e0 + 0x16f8,PTR_LAB_003a88e0 + 0x3e28,image->filename);\n      }\n      return MVar24;\n    }\n  }\n  piVar11 = (int *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3784);\n  puVar26 = PTR___assert_fail_003a9608;\n  (*(code *)PTR___assert_fail_003a9608)\n            (piVar11,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,0x13d,\n             PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a58);\n  iVar25 = (**(code **)(puVar26 + 0x343f4c))();\n  iVar4 = (**(code **)(puVar26 + 0x343b48))();\n  if (iVar25 == 0) {\n    trap(7);\n  }\n  iVar37 = 0x10000 / iVar25;\n  iVar25 = 0x10000 % iVar25;\n  if (iVar4 < iVar25) {\n    iVar37 = iVar37 + 1;\n    iVar25 = 0;\n  }\n  MVar24 = iVar37 * iVar4 + iVar25;\n  MVar18 = iVar37 + MVar24;\n  if ((int)MVar24 < (int)MVar18) {\n    iVar25 = MVar24 * 0x18;\n    dVar27 = *(double *)(*(int *)(puVar26 + 0x342f28) + -0x3f48);\n    dVar34 = *(double *)(*(int *)(puVar26 + 0x342f20) + 0x1a58);\n    dVar35 = *(double *)(*(int *)(puVar26 + 0x342f28) + -0x3f40);\n    dVar33 = *(double *)(*(int *)(puVar26 + 0x342f20) + 0x1400);\n    dVar30 = *(double *)(*(int *)(puVar26 + 0x342f28) + -0x3f50);\n    MVar5 = MVar24;\n    pdVar9 = (double *)(piVar11[2] + iVar25);\n    pdVar12 = (double *)(*piVar11 + iVar25);\n    pdVar16 = (double *)(piVar11[1] + iVar25);\n    do {\n      MVar24 = MVar5 + MagickTrue;\n      dVar31 = (double)(int)MVar5;\n      *pdVar16 = dVar31;\n      dVar28 = (dVar31 + dVar31) - dVar34;\n      dVar32 = dVar28 * dVar30;\n      *pdVar12 = dVar28 * dVar33;\n      *pdVar9 = dVar32;\n      pdVar16[1] = dVar31;\n      pdVar12[1] = dVar28 * 0.0;\n      pdVar9[1] = dVar28 * dVar27;\n      pdVar16[2] = dVar31;\n      pdVar12[2] = dVar28 * dVar35;\n      pdVar9[2] = dVar32;\n      MVar5 = MVar24;\n      pdVar9 = pdVar9 + 3;\n      pdVar12 = pdVar12 + 3;\n      pdVar16 = pdVar16 + 3;\n    } while (MVar18 != MVar24);\n  }\n  return MVar24;\n}\n\n" comment comment comment comment comment (function_definition "MagickBooleanType SortColormapByIntensity(Image *image,ExceptionInfo *exception)\n\n{\n  ushort *puVar1;\n  size_t sVar2;\n  undefined4 uVar3;\n  int iVar4;\n  MagickBooleanType MVar5;\n  MagickRealType *pMVar6;\n  size_t sVar7;\n  uint uVar8;\n  double *pdVar9;\n  PixelInfo *pPVar10;\n  int *piVar11;\n  double *pdVar12;\n  size_t sVar13;\n  float *pfVar14;\n  float *pfVar15;\n  double *pdVar16;\n  float *pfVar17;\n  MagickBooleanType MVar18;\n  PixelChannelMap *pPVar19;\n  PixelTrait PVar20;\n  PixelTrait PVar21;\n  PixelTrait PVar22;\n  float *pfVar23;\n  MagickBooleanType MVar24;\n  int iVar25;\n  undefined *puVar26;\n  double dVar27;\n  float fVar29;\n  double dVar28;\n  double dVar30;\n  double dVar31;\n  double dVar32;\n  double dVar33;\n  double dVar34;\n  double dVar35;\n  ulonglong uVar36;\n  int iVar37;\n  \n  if (image == (Image *)0x0) {\n    (*(code *)PTR___assert_fail_003a9608)\n              (PTR_LAB_003a88e0 + 0xdd0,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n               0x13a,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a58);\n  }\n  else {\n    if (image->debug != MagickFalse) {\n      (*(code *)PTR_LogMagickEvent_003a91e0)\n                (0x8000,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x13c,\n                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x1fec);\n    }\n    if (image->signature == 0xabacadab) {\n      MVar24 = MagickTrue;\n      if (image->storage_class == PseudoClass) {\n        puVar1 = (ushort *)(*(code *)PTR_AcquireQuantumMemory_003a950c)(image->colors,2);\n        if (puVar1 != (ushort *)0x0) {\n          sVar13 = image->colors;\n          pPVar10 = image->colormap;\n          if (0 < (int)sVar13) {\n            sVar7 = 0;\n            pMVar6 = &pPVar10->alpha;\n            do {\n              sVar2 = sVar7 + 1;\n              *pMVar6 = (double)(int)sVar7;\n              sVar7 = sVar2;\n              pMVar6 = pMVar6 + 0xb;\n            } while (sVar2 != sVar13);\n          }\n          (*(code *)PTR_qsort_003a98d4)(pPVar10,sVar13,0x58,PTR_LAB_003a893c + 0x4ca0);\n          sVar13 = image->colors;\n          if (0 < (int)sVar13) {\n            sVar7 = 0;\n            pMVar6 = &image->colormap->alpha;\n            do {\n              puVar1[(int)*pMVar6] = (ushort)sVar7;\n              sVar7 = sVar7 + 1;\n              pMVar6 = pMVar6 + 0xb;\n            } while (sVar13 != sVar7);\n          }\n          uVar3 = (*(code *)PTR_AcquireAuthenticCacheView_003a8ed4)(image,exception);\n          if (0 < (int)image->rows) {\n            iVar25 = 0;\n            uVar36 = (ulonglong)*(uint *)(PTR_LAB_003a88e0 + 0x1a50);\n            do {\n              iVar4 = (*(code *)PTR_GetCacheViewAuthenticPixels_003a964c)\n                                (uVar3,0,iVar25,image->columns,1,exception);\n              if (iVar4 == 0) {\nLAB_00065918:\n                MVar24 = MagickFalse;\n                goto LAB_000658cc;\n              }\n              sVar7 = image->columns;\n              sVar13 = 0;\n              if (0 < (int)sVar7) {\n                pPVar19 = image->channel_map;\n                sVar2 = image->number_channels;\n                pPVar10 = image->colormap;\n                PVar22 = pPVar19[5].traits;\n                PVar21 = pPVar19[3].traits;\n                PVar20 = pPVar19[4].traits;\n                pfVar17 = (float *)(iVar4 + pPVar19->offset * 4);\n                pfVar15 = (float *)(iVar4 + pPVar19[1].offset * 4);\n                pfVar14 = (float *)(iVar4 + pPVar19[2].offset * 4);\n                do {\n                  if (PVar22 == UndefinedPixelTrait) {\n                    uVar8 = (uint)*puVar1;\n                  }\n                  else {\n                    pfVar23 = (float *)(iVar4 + pPVar19[5].offset * 4);\n                    uVar8 = (uint)puVar1[(int)*pfVar23];\n                    *pfVar23 = (float)uVar8;\n                  }\n                  dVar30 = pPVar10[uVar8].green;\n                  dVar27 = pPVar10[uVar8].blue;\n                  *pfVar17 = (float)pPVar10[uVar8].red;\n                  *pfVar15 = (float)dVar30;\n                  *pfVar14 = (float)dVar27;\n                  if (PVar21 != UndefinedPixelTrait) {\n                    *(float *)(iVar4 + pPVar19[3].offset * 4) = (float)pPVar10[uVar8].black;\n                  }\n                  if (PVar20 != UndefinedPixelTrait) {\n                    fVar29 = (float)uVar36;\n                    if (pPVar10[uVar8].alpha_trait != UndefinedPixelTrait) {\n                      fVar29 = (float)pPVar10[uVar8].alpha;\n                    }\n                    *(float *)(iVar4 + pPVar19[4].offset * 4) = fVar29;\n                  }\n                  sVar13 = sVar13 + 1;\n                  iVar4 = iVar4 + sVar2 * 4;\n                  pfVar17 = pfVar17 + sVar2;\n                  pfVar15 = pfVar15 + sVar2;\n                  pfVar14 = pfVar14 + sVar2;\n                } while (sVar7 != sVar13);\n              }\n              iVar4 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8)(uVar3,exception);\n              if (iVar4 == 0) goto LAB_00065918;\n              iVar25 = iVar25 + 1;\n            } while (iVar25 < (int)image->rows);\n          }\n          MVar24 = MagickTrue;\nLAB_000658cc:\n          (*(code *)PTR_DestroyCacheView_003a8ef4)(uVar3);\n          (*(code *)PTR_RelinquishMagickMemory_003a8fc0)(puVar1);\n          return MVar24;\n        }\n        MVar24 = MagickFalse;\n        (*(code *)PTR_ThrowMagickException_003a8f20)\n                  (exception,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                   PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x147,400,\n                   PTR_LAB_003a88e0 + 0x16f8,PTR_LAB_003a88e0 + 0x3e28,image->filename);\n      }\n      return MVar24;\n    }\n  }\n  piVar11 = (int *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3784);\n  puVar26 = PTR___assert_fail_003a9608;\n  (*(code *)PTR___assert_fail_003a9608)\n            (piVar11,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,0x13d,\n             PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a58);\n  iVar25 = (**(code **)(puVar26 + 0x343f4c))();\n  iVar4 = (**(code **)(puVar26 + 0x343b48))();\n  if (iVar25 == 0) {\n    trap(7);\n  }\n  iVar37 = 0x10000 / iVar25;\n  iVar25 = 0x10000 % iVar25;\n  if (iVar4 < iVar25) {\n    iVar37 = iVar37 + 1;\n    iVar25 = 0;\n  }\n  MVar24 = iVar37 * iVar4 + iVar25;\n  MVar18 = iVar37 + MVar24;\n  if ((int)MVar24 < (int)MVar18) {\n    iVar25 = MVar24 * 0x18;\n    dVar27 = *(double *)(*(int *)(puVar26 + 0x342f28) + -0x3f48);\n    dVar34 = *(double *)(*(int *)(puVar26 + 0x342f20) + 0x1a58);\n    dVar35 = *(double *)(*(int *)(puVar26 + 0x342f28) + -0x3f40);\n    dVar33 = *(double *)(*(int *)(puVar26 + 0x342f20) + 0x1400);\n    dVar30 = *(double *)(*(int *)(puVar26 + 0x342f28) + -0x3f50);\n    MVar5 = MVar24;\n    pdVar9 = (double *)(piVar11[2] + iVar25);\n    pdVar12 = (double *)(*piVar11 + iVar25);\n    pdVar16 = (double *)(piVar11[1] + iVar25);\n    do {\n      MVar24 = MVar5 + MagickTrue;\n      dVar31 = (double)(int)MVar5;\n      *pdVar16 = dVar31;\n      dVar28 = (dVar31 + dVar31) - dVar34;\n      dVar32 = dVar28 * dVar30;\n      *pdVar12 = dVar28 * dVar33;\n      *pdVar9 = dVar32;\n      pdVar16[1] = dVar31;\n      pdVar12[1] = dVar28 * 0.0;\n      pdVar9[1] = dVar28 * dVar27;\n      pdVar16[2] = dVar31;\n      pdVar12[2] = dVar28 * dVar35;\n      pdVar9[2] = dVar32;\n      MVar5 = MVar24;\n      pdVar9 = pdVar9 + 3;\n      pdVar12 = pdVar12 + 3;\n      pdVar16 = pdVar16 + 3;\n    } while (MVar18 != MVar24);\n  }\n  return MVar24;\n}" type_identifier (function_declarator "SortColormapByIntensity(Image *image,ExceptionInfo *exception)" identifier (parameter_list "(Image *image,ExceptionInfo *exception)" ( (parameter_declaration "Image *image" type_identifier (pointer_declarator "*image" * identifier)) , (parameter_declaration "ExceptionInfo *exception" type_identifier (pointer_declarator "*exception" * identifier)) ))) (compound_statement "{\n  ushort *puVar1;\n  size_t sVar2;\n  undefined4 uVar3;\n  int iVar4;\n  MagickBooleanType MVar5;\n  MagickRealType *pMVar6;\n  size_t sVar7;\n  uint uVar8;\n  double *pdVar9;\n  PixelInfo *pPVar10;\n  int *piVar11;\n  double *pdVar12;\n  size_t sVar13;\n  float *pfVar14;\n  float *pfVar15;\n  double *pdVar16;\n  float *pfVar17;\n  MagickBooleanType MVar18;\n  PixelChannelMap *pPVar19;\n  PixelTrait PVar20;\n  PixelTrait PVar21;\n  PixelTrait PVar22;\n  float *pfVar23;\n  MagickBooleanType MVar24;\n  int iVar25;\n  undefined *puVar26;\n  double dVar27;\n  float fVar29;\n  double dVar28;\n  double dVar30;\n  double dVar31;\n  double dVar32;\n  double dVar33;\n  double dVar34;\n  double dVar35;\n  ulonglong uVar36;\n  int iVar37;\n  \n  if (image == (Image *)0x0) {\n    (*(code *)PTR___assert_fail_003a9608)\n              (PTR_LAB_003a88e0 + 0xdd0,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n               0x13a,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a58);\n  }\n  else {\n    if (image->debug != MagickFalse) {\n      (*(code *)PTR_LogMagickEvent_003a91e0)\n                (0x8000,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x13c,\n                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x1fec);\n    }\n    if (image->signature == 0xabacadab) {\n      MVar24 = MagickTrue;\n      if (image->storage_class == PseudoClass) {\n        puVar1 = (ushort *)(*(code *)PTR_AcquireQuantumMemory_003a950c)(image->colors,2);\n        if (puVar1 != (ushort *)0x0) {\n          sVar13 = image->colors;\n          pPVar10 = image->colormap;\n          if (0 < (int)sVar13) {\n            sVar7 = 0;\n            pMVar6 = &pPVar10->alpha;\n            do {\n              sVar2 = sVar7 + 1;\n              *pMVar6 = (double)(int)sVar7;\n              sVar7 = sVar2;\n              pMVar6 = pMVar6 + 0xb;\n            } while (sVar2 != sVar13);\n          }\n          (*(code *)PTR_qsort_003a98d4)(pPVar10,sVar13,0x58,PTR_LAB_003a893c + 0x4ca0);\n          sVar13 = image->colors;\n          if (0 < (int)sVar13) {\n            sVar7 = 0;\n            pMVar6 = &image->colormap->alpha;\n            do {\n              puVar1[(int)*pMVar6] = (ushort)sVar7;\n              sVar7 = sVar7 + 1;\n              pMVar6 = pMVar6 + 0xb;\n            } while (sVar13 != sVar7);\n          }\n          uVar3 = (*(code *)PTR_AcquireAuthenticCacheView_003a8ed4)(image,exception);\n          if (0 < (int)image->rows) {\n            iVar25 = 0;\n            uVar36 = (ulonglong)*(uint *)(PTR_LAB_003a88e0 + 0x1a50);\n            do {\n              iVar4 = (*(code *)PTR_GetCacheViewAuthenticPixels_003a964c)\n                                (uVar3,0,iVar25,image->columns,1,exception);\n              if (iVar4 == 0) {\nLAB_00065918:\n                MVar24 = MagickFalse;\n                goto LAB_000658cc;\n              }\n              sVar7 = image->columns;\n              sVar13 = 0;\n              if (0 < (int)sVar7) {\n                pPVar19 = image->channel_map;\n                sVar2 = image->number_channels;\n                pPVar10 = image->colormap;\n                PVar22 = pPVar19[5].traits;\n                PVar21 = pPVar19[3].traits;\n                PVar20 = pPVar19[4].traits;\n                pfVar17 = (float *)(iVar4 + pPVar19->offset * 4);\n                pfVar15 = (float *)(iVar4 + pPVar19[1].offset * 4);\n                pfVar14 = (float *)(iVar4 + pPVar19[2].offset * 4);\n                do {\n                  if (PVar22 == UndefinedPixelTrait) {\n                    uVar8 = (uint)*puVar1;\n                  }\n                  else {\n                    pfVar23 = (float *)(iVar4 + pPVar19[5].offset * 4);\n                    uVar8 = (uint)puVar1[(int)*pfVar23];\n                    *pfVar23 = (float)uVar8;\n                  }\n                  dVar30 = pPVar10[uVar8].green;\n                  dVar27 = pPVar10[uVar8].blue;\n                  *pfVar17 = (float)pPVar10[uVar8].red;\n                  *pfVar15 = (float)dVar30;\n                  *pfVar14 = (float)dVar27;\n                  if (PVar21 != UndefinedPixelTrait) {\n                    *(float *)(iVar4 + pPVar19[3].offset * 4) = (float)pPVar10[uVar8].black;\n                  }\n                  if (PVar20 != UndefinedPixelTrait) {\n                    fVar29 = (float)uVar36;\n                    if (pPVar10[uVar8].alpha_trait != UndefinedPixelTrait) {\n                      fVar29 = (float)pPVar10[uVar8].alpha;\n                    }\n                    *(float *)(iVar4 + pPVar19[4].offset * 4) = fVar29;\n                  }\n                  sVar13 = sVar13 + 1;\n                  iVar4 = iVar4 + sVar2 * 4;\n                  pfVar17 = pfVar17 + sVar2;\n                  pfVar15 = pfVar15 + sVar2;\n                  pfVar14 = pfVar14 + sVar2;\n                } while (sVar7 != sVar13);\n              }\n              iVar4 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8)(uVar3,exception);\n              if (iVar4 == 0) goto LAB_00065918;\n              iVar25 = iVar25 + 1;\n            } while (iVar25 < (int)image->rows);\n          }\n          MVar24 = MagickTrue;\nLAB_000658cc:\n          (*(code *)PTR_DestroyCacheView_003a8ef4)(uVar3);\n          (*(code *)PTR_RelinquishMagickMemory_003a8fc0)(puVar1);\n          return MVar24;\n        }\n        MVar24 = MagickFalse;\n        (*(code *)PTR_ThrowMagickException_003a8f20)\n                  (exception,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                   PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x147,400,\n                   PTR_LAB_003a88e0 + 0x16f8,PTR_LAB_003a88e0 + 0x3e28,image->filename);\n      }\n      return MVar24;\n    }\n  }\n  piVar11 = (int *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3784);\n  puVar26 = PTR___assert_fail_003a9608;\n  (*(code *)PTR___assert_fail_003a9608)\n            (piVar11,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,0x13d,\n             PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a58);\n  iVar25 = (**(code **)(puVar26 + 0x343f4c))();\n  iVar4 = (**(code **)(puVar26 + 0x343b48))();\n  if (iVar25 == 0) {\n    trap(7);\n  }\n  iVar37 = 0x10000 / iVar25;\n  iVar25 = 0x10000 % iVar25;\n  if (iVar4 < iVar25) {\n    iVar37 = iVar37 + 1;\n    iVar25 = 0;\n  }\n  MVar24 = iVar37 * iVar4 + iVar25;\n  MVar18 = iVar37 + MVar24;\n  if ((int)MVar24 < (int)MVar18) {\n    iVar25 = MVar24 * 0x18;\n    dVar27 = *(double *)(*(int *)(puVar26 + 0x342f28) + -0x3f48);\n    dVar34 = *(double *)(*(int *)(puVar26 + 0x342f20) + 0x1a58);\n    dVar35 = *(double *)(*(int *)(puVar26 + 0x342f28) + -0x3f40);\n    dVar33 = *(double *)(*(int *)(puVar26 + 0x342f20) + 0x1400);\n    dVar30 = *(double *)(*(int *)(puVar26 + 0x342f28) + -0x3f50);\n    MVar5 = MVar24;\n    pdVar9 = (double *)(piVar11[2] + iVar25);\n    pdVar12 = (double *)(*piVar11 + iVar25);\n    pdVar16 = (double *)(piVar11[1] + iVar25);\n    do {\n      MVar24 = MVar5 + MagickTrue;\n      dVar31 = (double)(int)MVar5;\n      *pdVar16 = dVar31;\n      dVar28 = (dVar31 + dVar31) - dVar34;\n      dVar32 = dVar28 * dVar30;\n      *pdVar12 = dVar28 * dVar33;\n      *pdVar9 = dVar32;\n      pdVar16[1] = dVar31;\n      pdVar12[1] = dVar28 * 0.0;\n      pdVar9[1] = dVar28 * dVar27;\n      pdVar16[2] = dVar31;\n      pdVar12[2] = dVar28 * dVar35;\n      pdVar9[2] = dVar32;\n      MVar5 = MVar24;\n      pdVar9 = pdVar9 + 3;\n      pdVar12 = pdVar12 + 3;\n      pdVar16 = pdVar16 + 3;\n    } while (MVar18 != MVar24);\n  }\n  return MVar24;\n}" { (declaration "ushort *puVar1;" type_identifier (pointer_declarator "*puVar1" * identifier) ;) (declaration "size_t sVar2;" primitive_type identifier ;) (declaration "undefined4 uVar3;" type_identifier identifier ;) (declaration "int iVar4;" primitive_type identifier ;) (declaration "MagickBooleanType MVar5;" type_identifier identifier ;) (declaration "MagickRealType *pMVar6;" type_identifier (pointer_declarator "*pMVar6" * identifier) ;) (declaration "size_t sVar7;" primitive_type identifier ;) (declaration "uint uVar8;" type_identifier identifier ;) (declaration "double *pdVar9;" primitive_type (pointer_declarator "*pdVar9" * identifier) ;) (declaration "PixelInfo *pPVar10;" type_identifier (pointer_declarator "*pPVar10" * identifier) ;) (declaration "int *piVar11;" primitive_type (pointer_declarator "*piVar11" * identifier) ;) (declaration "double *pdVar12;" primitive_type (pointer_declarator "*pdVar12" * identifier) ;) (declaration "size_t sVar13;" primitive_type identifier ;) (declaration "float *pfVar14;" primitive_type (pointer_declarator "*pfVar14" * identifier) ;) (declaration "float *pfVar15;" primitive_type (pointer_declarator "*pfVar15" * identifier) ;) (declaration "double *pdVar16;" primitive_type (pointer_declarator "*pdVar16" * identifier) ;) (declaration "float *pfVar17;" primitive_type (pointer_declarator "*pfVar17" * identifier) ;) (declaration "MagickBooleanType MVar18;" type_identifier identifier ;) (declaration "PixelChannelMap *pPVar19;" type_identifier (pointer_declarator "*pPVar19" * identifier) ;) (declaration "PixelTrait PVar20;" type_identifier identifier ;) (declaration "PixelTrait PVar21;" type_identifier identifier ;) (declaration "PixelTrait PVar22;" type_identifier identifier ;) (declaration "float *pfVar23;" primitive_type (pointer_declarator "*pfVar23" * identifier) ;) (declaration "MagickBooleanType MVar24;" type_identifier identifier ;) (declaration "int iVar25;" primitive_type identifier ;) (declaration "undefined *puVar26;" type_identifier (pointer_declarator "*puVar26" * identifier) ;) (declaration "double dVar27;" primitive_type identifier ;) (declaration "float fVar29;" primitive_type identifier ;) (declaration "double dVar28;" 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 "ulonglong uVar36;" type_identifier identifier ;) (declaration "int iVar37;" primitive_type identifier ;) (if_statement "if (image == (Image *)0x0) {\n    (*(code *)PTR___assert_fail_003a9608)\n              (PTR_LAB_003a88e0 + 0xdd0,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n               0x13a,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a58);\n  }\n  else {\n    if (image->debug != MagickFalse) {\n      (*(code *)PTR_LogMagickEvent_003a91e0)\n                (0x8000,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x13c,\n                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x1fec);\n    }\n    if (image->signature == 0xabacadab) {\n      MVar24 = MagickTrue;\n      if (image->storage_class == PseudoClass) {\n        puVar1 = (ushort *)(*(code *)PTR_AcquireQuantumMemory_003a950c)(image->colors,2);\n        if (puVar1 != (ushort *)0x0) {\n          sVar13 = image->colors;\n          pPVar10 = image->colormap;\n          if (0 < (int)sVar13) {\n            sVar7 = 0;\n            pMVar6 = &pPVar10->alpha;\n            do {\n              sVar2 = sVar7 + 1;\n              *pMVar6 = (double)(int)sVar7;\n              sVar7 = sVar2;\n              pMVar6 = pMVar6 + 0xb;\n            } while (sVar2 != sVar13);\n          }\n          (*(code *)PTR_qsort_003a98d4)(pPVar10,sVar13,0x58,PTR_LAB_003a893c + 0x4ca0);\n          sVar13 = image->colors;\n          if (0 < (int)sVar13) {\n            sVar7 = 0;\n            pMVar6 = &image->colormap->alpha;\n            do {\n              puVar1[(int)*pMVar6] = (ushort)sVar7;\n              sVar7 = sVar7 + 1;\n              pMVar6 = pMVar6 + 0xb;\n            } while (sVar13 != sVar7);\n          }\n          uVar3 = (*(code *)PTR_AcquireAuthenticCacheView_003a8ed4)(image,exception);\n          if (0 < (int)image->rows) {\n            iVar25 = 0;\n            uVar36 = (ulonglong)*(uint *)(PTR_LAB_003a88e0 + 0x1a50);\n            do {\n              iVar4 = (*(code *)PTR_GetCacheViewAuthenticPixels_003a964c)\n                                (uVar3,0,iVar25,image->columns,1,exception);\n              if (iVar4 == 0) {\nLAB_00065918:\n                MVar24 = MagickFalse;\n                goto LAB_000658cc;\n              }\n              sVar7 = image->columns;\n              sVar13 = 0;\n              if (0 < (int)sVar7) {\n                pPVar19 = image->channel_map;\n                sVar2 = image->number_channels;\n                pPVar10 = image->colormap;\n                PVar22 = pPVar19[5].traits;\n                PVar21 = pPVar19[3].traits;\n                PVar20 = pPVar19[4].traits;\n                pfVar17 = (float *)(iVar4 + pPVar19->offset * 4);\n                pfVar15 = (float *)(iVar4 + pPVar19[1].offset * 4);\n                pfVar14 = (float *)(iVar4 + pPVar19[2].offset * 4);\n                do {\n                  if (PVar22 == UndefinedPixelTrait) {\n                    uVar8 = (uint)*puVar1;\n                  }\n                  else {\n                    pfVar23 = (float *)(iVar4 + pPVar19[5].offset * 4);\n                    uVar8 = (uint)puVar1[(int)*pfVar23];\n                    *pfVar23 = (float)uVar8;\n                  }\n                  dVar30 = pPVar10[uVar8].green;\n                  dVar27 = pPVar10[uVar8].blue;\n                  *pfVar17 = (float)pPVar10[uVar8].red;\n                  *pfVar15 = (float)dVar30;\n                  *pfVar14 = (float)dVar27;\n                  if (PVar21 != UndefinedPixelTrait) {\n                    *(float *)(iVar4 + pPVar19[3].offset * 4) = (float)pPVar10[uVar8].black;\n                  }\n                  if (PVar20 != UndefinedPixelTrait) {\n                    fVar29 = (float)uVar36;\n                    if (pPVar10[uVar8].alpha_trait != UndefinedPixelTrait) {\n                      fVar29 = (float)pPVar10[uVar8].alpha;\n                    }\n                    *(float *)(iVar4 + pPVar19[4].offset * 4) = fVar29;\n                  }\n                  sVar13 = sVar13 + 1;\n                  iVar4 = iVar4 + sVar2 * 4;\n                  pfVar17 = pfVar17 + sVar2;\n                  pfVar15 = pfVar15 + sVar2;\n                  pfVar14 = pfVar14 + sVar2;\n                } while (sVar7 != sVar13);\n              }\n              iVar4 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8)(uVar3,exception);\n              if (iVar4 == 0) goto LAB_00065918;\n              iVar25 = iVar25 + 1;\n            } while (iVar25 < (int)image->rows);\n          }\n          MVar24 = MagickTrue;\nLAB_000658cc:\n          (*(code *)PTR_DestroyCacheView_003a8ef4)(uVar3);\n          (*(code *)PTR_RelinquishMagickMemory_003a8fc0)(puVar1);\n          return MVar24;\n        }\n        MVar24 = MagickFalse;\n        (*(code *)PTR_ThrowMagickException_003a8f20)\n                  (exception,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                   PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x147,400,\n                   PTR_LAB_003a88e0 + 0x16f8,PTR_LAB_003a88e0 + 0x3e28,image->filename);\n      }\n      return MVar24;\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    (*(code *)PTR___assert_fail_003a9608)\n              (PTR_LAB_003a88e0 + 0xdd0,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n               0x13a,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a58);\n  }" { (expression_statement "(*(code *)PTR___assert_fail_003a9608)\n              (PTR_LAB_003a88e0 + 0xdd0,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n               0x13a,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a58);" (call_expression "(*(code *)PTR___assert_fail_003a9608)\n              (PTR_LAB_003a88e0 + 0xdd0,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n               0x13a,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a58)" (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_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n               0x13a,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a58)" ( (binary_expression "PTR_LAB_003a88e0 + 0xdd0" identifier + number_literal) , (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88" identifier + number_literal) , number_literal , (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a58" identifier + number_literal) ))) ;) }) (else_clause "else {\n    if (image->debug != MagickFalse) {\n      (*(code *)PTR_LogMagickEvent_003a91e0)\n                (0x8000,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x13c,\n                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x1fec);\n    }\n    if (image->signature == 0xabacadab) {\n      MVar24 = MagickTrue;\n      if (image->storage_class == PseudoClass) {\n        puVar1 = (ushort *)(*(code *)PTR_AcquireQuantumMemory_003a950c)(image->colors,2);\n        if (puVar1 != (ushort *)0x0) {\n          sVar13 = image->colors;\n          pPVar10 = image->colormap;\n          if (0 < (int)sVar13) {\n            sVar7 = 0;\n            pMVar6 = &pPVar10->alpha;\n            do {\n              sVar2 = sVar7 + 1;\n              *pMVar6 = (double)(int)sVar7;\n              sVar7 = sVar2;\n              pMVar6 = pMVar6 + 0xb;\n            } while (sVar2 != sVar13);\n          }\n          (*(code *)PTR_qsort_003a98d4)(pPVar10,sVar13,0x58,PTR_LAB_003a893c + 0x4ca0);\n          sVar13 = image->colors;\n          if (0 < (int)sVar13) {\n            sVar7 = 0;\n            pMVar6 = &image->colormap->alpha;\n            do {\n              puVar1[(int)*pMVar6] = (ushort)sVar7;\n              sVar7 = sVar7 + 1;\n              pMVar6 = pMVar6 + 0xb;\n            } while (sVar13 != sVar7);\n          }\n          uVar3 = (*(code *)PTR_AcquireAuthenticCacheView_003a8ed4)(image,exception);\n          if (0 < (int)image->rows) {\n            iVar25 = 0;\n            uVar36 = (ulonglong)*(uint *)(PTR_LAB_003a88e0 + 0x1a50);\n            do {\n              iVar4 = (*(code *)PTR_GetCacheViewAuthenticPixels_003a964c)\n                                (uVar3,0,iVar25,image->columns,1,exception);\n              if (iVar4 == 0) {\nLAB_00065918:\n                MVar24 = MagickFalse;\n                goto LAB_000658cc;\n              }\n              sVar7 = image->columns;\n              sVar13 = 0;\n              if (0 < (int)sVar7) {\n                pPVar19 = image->channel_map;\n                sVar2 = image->number_channels;\n                pPVar10 = image->colormap;\n                PVar22 = pPVar19[5].traits;\n                PVar21 = pPVar19[3].traits;\n                PVar20 = pPVar19[4].traits;\n                pfVar17 = (float *)(iVar4 + pPVar19->offset * 4);\n                pfVar15 = (float *)(iVar4 + pPVar19[1].offset * 4);\n                pfVar14 = (float *)(iVar4 + pPVar19[2].offset * 4);\n                do {\n                  if (PVar22 == UndefinedPixelTrait) {\n                    uVar8 = (uint)*puVar1;\n                  }\n                  else {\n                    pfVar23 = (float *)(iVar4 + pPVar19[5].offset * 4);\n                    uVar8 = (uint)puVar1[(int)*pfVar23];\n                    *pfVar23 = (float)uVar8;\n                  }\n                  dVar30 = pPVar10[uVar8].green;\n                  dVar27 = pPVar10[uVar8].blue;\n                  *pfVar17 = (float)pPVar10[uVar8].red;\n                  *pfVar15 = (float)dVar30;\n                  *pfVar14 = (float)dVar27;\n                  if (PVar21 != UndefinedPixelTrait) {\n                    *(float *)(iVar4 + pPVar19[3].offset * 4) = (float)pPVar10[uVar8].black;\n                  }\n                  if (PVar20 != UndefinedPixelTrait) {\n                    fVar29 = (float)uVar36;\n                    if (pPVar10[uVar8].alpha_trait != UndefinedPixelTrait) {\n                      fVar29 = (float)pPVar10[uVar8].alpha;\n                    }\n                    *(float *)(iVar4 + pPVar19[4].offset * 4) = fVar29;\n                  }\n                  sVar13 = sVar13 + 1;\n                  iVar4 = iVar4 + sVar2 * 4;\n                  pfVar17 = pfVar17 + sVar2;\n                  pfVar15 = pfVar15 + sVar2;\n                  pfVar14 = pfVar14 + sVar2;\n                } while (sVar7 != sVar13);\n              }\n              iVar4 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8)(uVar3,exception);\n              if (iVar4 == 0) goto LAB_00065918;\n              iVar25 = iVar25 + 1;\n            } while (iVar25 < (int)image->rows);\n          }\n          MVar24 = MagickTrue;\nLAB_000658cc:\n          (*(code *)PTR_DestroyCacheView_003a8ef4)(uVar3);\n          (*(code *)PTR_RelinquishMagickMemory_003a8fc0)(puVar1);\n          return MVar24;\n        }\n        MVar24 = MagickFalse;\n        (*(code *)PTR_ThrowMagickException_003a8f20)\n                  (exception,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                   PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x147,400,\n                   PTR_LAB_003a88e0 + 0x16f8,PTR_LAB_003a88e0 + 0x3e28,image->filename);\n      }\n      return MVar24;\n    }\n  }" else (compound_statement "{\n    if (image->debug != MagickFalse) {\n      (*(code *)PTR_LogMagickEvent_003a91e0)\n                (0x8000,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x13c,\n                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x1fec);\n    }\n    if (image->signature == 0xabacadab) {\n      MVar24 = MagickTrue;\n      if (image->storage_class == PseudoClass) {\n        puVar1 = (ushort *)(*(code *)PTR_AcquireQuantumMemory_003a950c)(image->colors,2);\n        if (puVar1 != (ushort *)0x0) {\n          sVar13 = image->colors;\n          pPVar10 = image->colormap;\n          if (0 < (int)sVar13) {\n            sVar7 = 0;\n            pMVar6 = &pPVar10->alpha;\n            do {\n              sVar2 = sVar7 + 1;\n              *pMVar6 = (double)(int)sVar7;\n              sVar7 = sVar2;\n              pMVar6 = pMVar6 + 0xb;\n            } while (sVar2 != sVar13);\n          }\n          (*(code *)PTR_qsort_003a98d4)(pPVar10,sVar13,0x58,PTR_LAB_003a893c + 0x4ca0);\n          sVar13 = image->colors;\n          if (0 < (int)sVar13) {\n            sVar7 = 0;\n            pMVar6 = &image->colormap->alpha;\n            do {\n              puVar1[(int)*pMVar6] = (ushort)sVar7;\n              sVar7 = sVar7 + 1;\n              pMVar6 = pMVar6 + 0xb;\n            } while (sVar13 != sVar7);\n          }\n          uVar3 = (*(code *)PTR_AcquireAuthenticCacheView_003a8ed4)(image,exception);\n          if (0 < (int)image->rows) {\n            iVar25 = 0;\n            uVar36 = (ulonglong)*(uint *)(PTR_LAB_003a88e0 + 0x1a50);\n            do {\n              iVar4 = (*(code *)PTR_GetCacheViewAuthenticPixels_003a964c)\n                                (uVar3,0,iVar25,image->columns,1,exception);\n              if (iVar4 == 0) {\nLAB_00065918:\n                MVar24 = MagickFalse;\n                goto LAB_000658cc;\n              }\n              sVar7 = image->columns;\n              sVar13 = 0;\n              if (0 < (int)sVar7) {\n                pPVar19 = image->channel_map;\n                sVar2 = image->number_channels;\n                pPVar10 = image->colormap;\n                PVar22 = pPVar19[5].traits;\n                PVar21 = pPVar19[3].traits;\n                PVar20 = pPVar19[4].traits;\n                pfVar17 = (float *)(iVar4 + pPVar19->offset * 4);\n                pfVar15 = (float *)(iVar4 + pPVar19[1].offset * 4);\n                pfVar14 = (float *)(iVar4 + pPVar19[2].offset * 4);\n                do {\n                  if (PVar22 == UndefinedPixelTrait) {\n                    uVar8 = (uint)*puVar1;\n                  }\n                  else {\n                    pfVar23 = (float *)(iVar4 + pPVar19[5].offset * 4);\n                    uVar8 = (uint)puVar1[(int)*pfVar23];\n                    *pfVar23 = (float)uVar8;\n                  }\n                  dVar30 = pPVar10[uVar8].green;\n                  dVar27 = pPVar10[uVar8].blue;\n                  *pfVar17 = (float)pPVar10[uVar8].red;\n                  *pfVar15 = (float)dVar30;\n                  *pfVar14 = (float)dVar27;\n                  if (PVar21 != UndefinedPixelTrait) {\n                    *(float *)(iVar4 + pPVar19[3].offset * 4) = (float)pPVar10[uVar8].black;\n                  }\n                  if (PVar20 != UndefinedPixelTrait) {\n                    fVar29 = (float)uVar36;\n                    if (pPVar10[uVar8].alpha_trait != UndefinedPixelTrait) {\n                      fVar29 = (float)pPVar10[uVar8].alpha;\n                    }\n                    *(float *)(iVar4 + pPVar19[4].offset * 4) = fVar29;\n                  }\n                  sVar13 = sVar13 + 1;\n                  iVar4 = iVar4 + sVar2 * 4;\n                  pfVar17 = pfVar17 + sVar2;\n                  pfVar15 = pfVar15 + sVar2;\n                  pfVar14 = pfVar14 + sVar2;\n                } while (sVar7 != sVar13);\n              }\n              iVar4 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8)(uVar3,exception);\n              if (iVar4 == 0) goto LAB_00065918;\n              iVar25 = iVar25 + 1;\n            } while (iVar25 < (int)image->rows);\n          }\n          MVar24 = MagickTrue;\nLAB_000658cc:\n          (*(code *)PTR_DestroyCacheView_003a8ef4)(uVar3);\n          (*(code *)PTR_RelinquishMagickMemory_003a8fc0)(puVar1);\n          return MVar24;\n        }\n        MVar24 = MagickFalse;\n        (*(code *)PTR_ThrowMagickException_003a8f20)\n                  (exception,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                   PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x147,400,\n                   PTR_LAB_003a88e0 + 0x16f8,PTR_LAB_003a88e0 + 0x3e28,image->filename);\n      }\n      return MVar24;\n    }\n  }" { (if_statement "if (image->debug != MagickFalse) {\n      (*(code *)PTR_LogMagickEvent_003a91e0)\n                (0x8000,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x13c,\n                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x1fec);\n    }" if (parenthesized_expression "(image->debug != MagickFalse)" ( (binary_expression "image->debug != MagickFalse" (field_expression "image->debug" identifier -> field_identifier) != identifier) )) (compound_statement "{\n      (*(code *)PTR_LogMagickEvent_003a91e0)\n                (0x8000,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x13c,\n                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x1fec);\n    }" { (expression_statement "(*(code *)PTR_LogMagickEvent_003a91e0)\n                (0x8000,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x13c,\n                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x1fec);" (call_expression "(*(code *)PTR_LogMagickEvent_003a91e0)\n                (0x8000,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x13c,\n                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x1fec)" (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_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x13c,\n                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x1fec)" ( number_literal , (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88" identifier + number_literal) , (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70" identifier + number_literal) , number_literal , (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x1fec" identifier + number_literal) ))) ;) })) (if_statement "if (image->signature == 0xabacadab) {\n      MVar24 = MagickTrue;\n      if (image->storage_class == PseudoClass) {\n        puVar1 = (ushort *)(*(code *)PTR_AcquireQuantumMemory_003a950c)(image->colors,2);\n        if (puVar1 != (ushort *)0x0) {\n          sVar13 = image->colors;\n          pPVar10 = image->colormap;\n          if (0 < (int)sVar13) {\n            sVar7 = 0;\n            pMVar6 = &pPVar10->alpha;\n            do {\n              sVar2 = sVar7 + 1;\n              *pMVar6 = (double)(int)sVar7;\n              sVar7 = sVar2;\n              pMVar6 = pMVar6 + 0xb;\n            } while (sVar2 != sVar13);\n          }\n          (*(code *)PTR_qsort_003a98d4)(pPVar10,sVar13,0x58,PTR_LAB_003a893c + 0x4ca0);\n          sVar13 = image->colors;\n          if (0 < (int)sVar13) {\n            sVar7 = 0;\n            pMVar6 = &image->colormap->alpha;\n            do {\n              puVar1[(int)*pMVar6] = (ushort)sVar7;\n              sVar7 = sVar7 + 1;\n              pMVar6 = pMVar6 + 0xb;\n            } while (sVar13 != sVar7);\n          }\n          uVar3 = (*(code *)PTR_AcquireAuthenticCacheView_003a8ed4)(image,exception);\n          if (0 < (int)image->rows) {\n            iVar25 = 0;\n            uVar36 = (ulonglong)*(uint *)(PTR_LAB_003a88e0 + 0x1a50);\n            do {\n              iVar4 = (*(code *)PTR_GetCacheViewAuthenticPixels_003a964c)\n                                (uVar3,0,iVar25,image->columns,1,exception);\n              if (iVar4 == 0) {\nLAB_00065918:\n                MVar24 = MagickFalse;\n                goto LAB_000658cc;\n              }\n              sVar7 = image->columns;\n              sVar13 = 0;\n              if (0 < (int)sVar7) {\n                pPVar19 = image->channel_map;\n                sVar2 = image->number_channels;\n                pPVar10 = image->colormap;\n                PVar22 = pPVar19[5].traits;\n                PVar21 = pPVar19[3].traits;\n                PVar20 = pPVar19[4].traits;\n                pfVar17 = (float *)(iVar4 + pPVar19->offset * 4);\n                pfVar15 = (float *)(iVar4 + pPVar19[1].offset * 4);\n                pfVar14 = (float *)(iVar4 + pPVar19[2].offset * 4);\n                do {\n                  if (PVar22 == UndefinedPixelTrait) {\n                    uVar8 = (uint)*puVar1;\n                  }\n                  else {\n                    pfVar23 = (float *)(iVar4 + pPVar19[5].offset * 4);\n                    uVar8 = (uint)puVar1[(int)*pfVar23];\n                    *pfVar23 = (float)uVar8;\n                  }\n                  dVar30 = pPVar10[uVar8].green;\n                  dVar27 = pPVar10[uVar8].blue;\n                  *pfVar17 = (float)pPVar10[uVar8].red;\n                  *pfVar15 = (float)dVar30;\n                  *pfVar14 = (float)dVar27;\n                  if (PVar21 != UndefinedPixelTrait) {\n                    *(float *)(iVar4 + pPVar19[3].offset * 4) = (float)pPVar10[uVar8].black;\n                  }\n                  if (PVar20 != UndefinedPixelTrait) {\n                    fVar29 = (float)uVar36;\n                    if (pPVar10[uVar8].alpha_trait != UndefinedPixelTrait) {\n                      fVar29 = (float)pPVar10[uVar8].alpha;\n                    }\n                    *(float *)(iVar4 + pPVar19[4].offset * 4) = fVar29;\n                  }\n                  sVar13 = sVar13 + 1;\n                  iVar4 = iVar4 + sVar2 * 4;\n                  pfVar17 = pfVar17 + sVar2;\n                  pfVar15 = pfVar15 + sVar2;\n                  pfVar14 = pfVar14 + sVar2;\n                } while (sVar7 != sVar13);\n              }\n              iVar4 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8)(uVar3,exception);\n              if (iVar4 == 0) goto LAB_00065918;\n              iVar25 = iVar25 + 1;\n            } while (iVar25 < (int)image->rows);\n          }\n          MVar24 = MagickTrue;\nLAB_000658cc:\n          (*(code *)PTR_DestroyCacheView_003a8ef4)(uVar3);\n          (*(code *)PTR_RelinquishMagickMemory_003a8fc0)(puVar1);\n          return MVar24;\n        }\n        MVar24 = MagickFalse;\n        (*(code *)PTR_ThrowMagickException_003a8f20)\n                  (exception,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                   PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x147,400,\n                   PTR_LAB_003a88e0 + 0x16f8,PTR_LAB_003a88e0 + 0x3e28,image->filename);\n      }\n      return MVar24;\n    }" if (parenthesized_expression "(image->signature == 0xabacadab)" ( (binary_expression "image->signature == 0xabacadab" (field_expression "image->signature" identifier -> field_identifier) == number_literal) )) (compound_statement "{\n      MVar24 = MagickTrue;\n      if (image->storage_class == PseudoClass) {\n        puVar1 = (ushort *)(*(code *)PTR_AcquireQuantumMemory_003a950c)(image->colors,2);\n        if (puVar1 != (ushort *)0x0) {\n          sVar13 = image->colors;\n          pPVar10 = image->colormap;\n          if (0 < (int)sVar13) {\n            sVar7 = 0;\n            pMVar6 = &pPVar10->alpha;\n            do {\n              sVar2 = sVar7 + 1;\n              *pMVar6 = (double)(int)sVar7;\n              sVar7 = sVar2;\n              pMVar6 = pMVar6 + 0xb;\n            } while (sVar2 != sVar13);\n          }\n          (*(code *)PTR_qsort_003a98d4)(pPVar10,sVar13,0x58,PTR_LAB_003a893c + 0x4ca0);\n          sVar13 = image->colors;\n          if (0 < (int)sVar13) {\n            sVar7 = 0;\n            pMVar6 = &image->colormap->alpha;\n            do {\n              puVar1[(int)*pMVar6] = (ushort)sVar7;\n              sVar7 = sVar7 + 1;\n              pMVar6 = pMVar6 + 0xb;\n            } while (sVar13 != sVar7);\n          }\n          uVar3 = (*(code *)PTR_AcquireAuthenticCacheView_003a8ed4)(image,exception);\n          if (0 < (int)image->rows) {\n            iVar25 = 0;\n            uVar36 = (ulonglong)*(uint *)(PTR_LAB_003a88e0 + 0x1a50);\n            do {\n              iVar4 = (*(code *)PTR_GetCacheViewAuthenticPixels_003a964c)\n                                (uVar3,0,iVar25,image->columns,1,exception);\n              if (iVar4 == 0) {\nLAB_00065918:\n                MVar24 = MagickFalse;\n                goto LAB_000658cc;\n              }\n              sVar7 = image->columns;\n              sVar13 = 0;\n              if (0 < (int)sVar7) {\n                pPVar19 = image->channel_map;\n                sVar2 = image->number_channels;\n                pPVar10 = image->colormap;\n                PVar22 = pPVar19[5].traits;\n                PVar21 = pPVar19[3].traits;\n                PVar20 = pPVar19[4].traits;\n                pfVar17 = (float *)(iVar4 + pPVar19->offset * 4);\n                pfVar15 = (float *)(iVar4 + pPVar19[1].offset * 4);\n                pfVar14 = (float *)(iVar4 + pPVar19[2].offset * 4);\n                do {\n                  if (PVar22 == UndefinedPixelTrait) {\n                    uVar8 = (uint)*puVar1;\n                  }\n                  else {\n                    pfVar23 = (float *)(iVar4 + pPVar19[5].offset * 4);\n                    uVar8 = (uint)puVar1[(int)*pfVar23];\n                    *pfVar23 = (float)uVar8;\n                  }\n                  dVar30 = pPVar10[uVar8].green;\n                  dVar27 = pPVar10[uVar8].blue;\n                  *pfVar17 = (float)pPVar10[uVar8].red;\n                  *pfVar15 = (float)dVar30;\n                  *pfVar14 = (float)dVar27;\n                  if (PVar21 != UndefinedPixelTrait) {\n                    *(float *)(iVar4 + pPVar19[3].offset * 4) = (float)pPVar10[uVar8].black;\n                  }\n                  if (PVar20 != UndefinedPixelTrait) {\n                    fVar29 = (float)uVar36;\n                    if (pPVar10[uVar8].alpha_trait != UndefinedPixelTrait) {\n                      fVar29 = (float)pPVar10[uVar8].alpha;\n                    }\n                    *(float *)(iVar4 + pPVar19[4].offset * 4) = fVar29;\n                  }\n                  sVar13 = sVar13 + 1;\n                  iVar4 = iVar4 + sVar2 * 4;\n                  pfVar17 = pfVar17 + sVar2;\n                  pfVar15 = pfVar15 + sVar2;\n                  pfVar14 = pfVar14 + sVar2;\n                } while (sVar7 != sVar13);\n              }\n              iVar4 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8)(uVar3,exception);\n              if (iVar4 == 0) goto LAB_00065918;\n              iVar25 = iVar25 + 1;\n            } while (iVar25 < (int)image->rows);\n          }\n          MVar24 = MagickTrue;\nLAB_000658cc:\n          (*(code *)PTR_DestroyCacheView_003a8ef4)(uVar3);\n          (*(code *)PTR_RelinquishMagickMemory_003a8fc0)(puVar1);\n          return MVar24;\n        }\n        MVar24 = MagickFalse;\n        (*(code *)PTR_ThrowMagickException_003a8f20)\n                  (exception,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                   PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x147,400,\n                   PTR_LAB_003a88e0 + 0x16f8,PTR_LAB_003a88e0 + 0x3e28,image->filename);\n      }\n      return MVar24;\n    }" { (expression_statement "MVar24 = MagickTrue;" (assignment_expression "MVar24 = MagickTrue" identifier = identifier) ;) (if_statement "if (image->storage_class == PseudoClass) {\n        puVar1 = (ushort *)(*(code *)PTR_AcquireQuantumMemory_003a950c)(image->colors,2);\n        if (puVar1 != (ushort *)0x0) {\n          sVar13 = image->colors;\n          pPVar10 = image->colormap;\n          if (0 < (int)sVar13) {\n            sVar7 = 0;\n            pMVar6 = &pPVar10->alpha;\n            do {\n              sVar2 = sVar7 + 1;\n              *pMVar6 = (double)(int)sVar7;\n              sVar7 = sVar2;\n              pMVar6 = pMVar6 + 0xb;\n            } while (sVar2 != sVar13);\n          }\n          (*(code *)PTR_qsort_003a98d4)(pPVar10,sVar13,0x58,PTR_LAB_003a893c + 0x4ca0);\n          sVar13 = image->colors;\n          if (0 < (int)sVar13) {\n            sVar7 = 0;\n            pMVar6 = &image->colormap->alpha;\n            do {\n              puVar1[(int)*pMVar6] = (ushort)sVar7;\n              sVar7 = sVar7 + 1;\n              pMVar6 = pMVar6 + 0xb;\n            } while (sVar13 != sVar7);\n          }\n          uVar3 = (*(code *)PTR_AcquireAuthenticCacheView_003a8ed4)(image,exception);\n          if (0 < (int)image->rows) {\n            iVar25 = 0;\n            uVar36 = (ulonglong)*(uint *)(PTR_LAB_003a88e0 + 0x1a50);\n            do {\n              iVar4 = (*(code *)PTR_GetCacheViewAuthenticPixels_003a964c)\n                                (uVar3,0,iVar25,image->columns,1,exception);\n              if (iVar4 == 0) {\nLAB_00065918:\n                MVar24 = MagickFalse;\n                goto LAB_000658cc;\n              }\n              sVar7 = image->columns;\n              sVar13 = 0;\n              if (0 < (int)sVar7) {\n                pPVar19 = image->channel_map;\n                sVar2 = image->number_channels;\n                pPVar10 = image->colormap;\n                PVar22 = pPVar19[5].traits;\n                PVar21 = pPVar19[3].traits;\n                PVar20 = pPVar19[4].traits;\n                pfVar17 = (float *)(iVar4 + pPVar19->offset * 4);\n                pfVar15 = (float *)(iVar4 + pPVar19[1].offset * 4);\n                pfVar14 = (float *)(iVar4 + pPVar19[2].offset * 4);\n                do {\n                  if (PVar22 == UndefinedPixelTrait) {\n                    uVar8 = (uint)*puVar1;\n                  }\n                  else {\n                    pfVar23 = (float *)(iVar4 + pPVar19[5].offset * 4);\n                    uVar8 = (uint)puVar1[(int)*pfVar23];\n                    *pfVar23 = (float)uVar8;\n                  }\n                  dVar30 = pPVar10[uVar8].green;\n                  dVar27 = pPVar10[uVar8].blue;\n                  *pfVar17 = (float)pPVar10[uVar8].red;\n                  *pfVar15 = (float)dVar30;\n                  *pfVar14 = (float)dVar27;\n                  if (PVar21 != UndefinedPixelTrait) {\n                    *(float *)(iVar4 + pPVar19[3].offset * 4) = (float)pPVar10[uVar8].black;\n                  }\n                  if (PVar20 != UndefinedPixelTrait) {\n                    fVar29 = (float)uVar36;\n                    if (pPVar10[uVar8].alpha_trait != UndefinedPixelTrait) {\n                      fVar29 = (float)pPVar10[uVar8].alpha;\n                    }\n                    *(float *)(iVar4 + pPVar19[4].offset * 4) = fVar29;\n                  }\n                  sVar13 = sVar13 + 1;\n                  iVar4 = iVar4 + sVar2 * 4;\n                  pfVar17 = pfVar17 + sVar2;\n                  pfVar15 = pfVar15 + sVar2;\n                  pfVar14 = pfVar14 + sVar2;\n                } while (sVar7 != sVar13);\n              }\n              iVar4 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8)(uVar3,exception);\n              if (iVar4 == 0) goto LAB_00065918;\n              iVar25 = iVar25 + 1;\n            } while (iVar25 < (int)image->rows);\n          }\n          MVar24 = MagickTrue;\nLAB_000658cc:\n          (*(code *)PTR_DestroyCacheView_003a8ef4)(uVar3);\n          (*(code *)PTR_RelinquishMagickMemory_003a8fc0)(puVar1);\n          return MVar24;\n        }\n        MVar24 = MagickFalse;\n        (*(code *)PTR_ThrowMagickException_003a8f20)\n                  (exception,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                   PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x147,400,\n                   PTR_LAB_003a88e0 + 0x16f8,PTR_LAB_003a88e0 + 0x3e28,image->filename);\n      }" if (parenthesized_expression "(image->storage_class == PseudoClass)" ( (binary_expression "image->storage_class == PseudoClass" (field_expression "image->storage_class" identifier -> field_identifier) == identifier) )) (compound_statement "{\n        puVar1 = (ushort *)(*(code *)PTR_AcquireQuantumMemory_003a950c)(image->colors,2);\n        if (puVar1 != (ushort *)0x0) {\n          sVar13 = image->colors;\n          pPVar10 = image->colormap;\n          if (0 < (int)sVar13) {\n            sVar7 = 0;\n            pMVar6 = &pPVar10->alpha;\n            do {\n              sVar2 = sVar7 + 1;\n              *pMVar6 = (double)(int)sVar7;\n              sVar7 = sVar2;\n              pMVar6 = pMVar6 + 0xb;\n            } while (sVar2 != sVar13);\n          }\n          (*(code *)PTR_qsort_003a98d4)(pPVar10,sVar13,0x58,PTR_LAB_003a893c + 0x4ca0);\n          sVar13 = image->colors;\n          if (0 < (int)sVar13) {\n            sVar7 = 0;\n            pMVar6 = &image->colormap->alpha;\n            do {\n              puVar1[(int)*pMVar6] = (ushort)sVar7;\n              sVar7 = sVar7 + 1;\n              pMVar6 = pMVar6 + 0xb;\n            } while (sVar13 != sVar7);\n          }\n          uVar3 = (*(code *)PTR_AcquireAuthenticCacheView_003a8ed4)(image,exception);\n          if (0 < (int)image->rows) {\n            iVar25 = 0;\n            uVar36 = (ulonglong)*(uint *)(PTR_LAB_003a88e0 + 0x1a50);\n            do {\n              iVar4 = (*(code *)PTR_GetCacheViewAuthenticPixels_003a964c)\n                                (uVar3,0,iVar25,image->columns,1,exception);\n              if (iVar4 == 0) {\nLAB_00065918:\n                MVar24 = MagickFalse;\n                goto LAB_000658cc;\n              }\n              sVar7 = image->columns;\n              sVar13 = 0;\n              if (0 < (int)sVar7) {\n                pPVar19 = image->channel_map;\n                sVar2 = image->number_channels;\n                pPVar10 = image->colormap;\n                PVar22 = pPVar19[5].traits;\n                PVar21 = pPVar19[3].traits;\n                PVar20 = pPVar19[4].traits;\n                pfVar17 = (float *)(iVar4 + pPVar19->offset * 4);\n                pfVar15 = (float *)(iVar4 + pPVar19[1].offset * 4);\n                pfVar14 = (float *)(iVar4 + pPVar19[2].offset * 4);\n                do {\n                  if (PVar22 == UndefinedPixelTrait) {\n                    uVar8 = (uint)*puVar1;\n                  }\n                  else {\n                    pfVar23 = (float *)(iVar4 + pPVar19[5].offset * 4);\n                    uVar8 = (uint)puVar1[(int)*pfVar23];\n                    *pfVar23 = (float)uVar8;\n                  }\n                  dVar30 = pPVar10[uVar8].green;\n                  dVar27 = pPVar10[uVar8].blue;\n                  *pfVar17 = (float)pPVar10[uVar8].red;\n                  *pfVar15 = (float)dVar30;\n                  *pfVar14 = (float)dVar27;\n                  if (PVar21 != UndefinedPixelTrait) {\n                    *(float *)(iVar4 + pPVar19[3].offset * 4) = (float)pPVar10[uVar8].black;\n                  }\n                  if (PVar20 != UndefinedPixelTrait) {\n                    fVar29 = (float)uVar36;\n                    if (pPVar10[uVar8].alpha_trait != UndefinedPixelTrait) {\n                      fVar29 = (float)pPVar10[uVar8].alpha;\n                    }\n                    *(float *)(iVar4 + pPVar19[4].offset * 4) = fVar29;\n                  }\n                  sVar13 = sVar13 + 1;\n                  iVar4 = iVar4 + sVar2 * 4;\n                  pfVar17 = pfVar17 + sVar2;\n                  pfVar15 = pfVar15 + sVar2;\n                  pfVar14 = pfVar14 + sVar2;\n                } while (sVar7 != sVar13);\n              }\n              iVar4 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8)(uVar3,exception);\n              if (iVar4 == 0) goto LAB_00065918;\n              iVar25 = iVar25 + 1;\n            } while (iVar25 < (int)image->rows);\n          }\n          MVar24 = MagickTrue;\nLAB_000658cc:\n          (*(code *)PTR_DestroyCacheView_003a8ef4)(uVar3);\n          (*(code *)PTR_RelinquishMagickMemory_003a8fc0)(puVar1);\n          return MVar24;\n        }\n        MVar24 = MagickFalse;\n        (*(code *)PTR_ThrowMagickException_003a8f20)\n                  (exception,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                   PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x147,400,\n                   PTR_LAB_003a88e0 + 0x16f8,PTR_LAB_003a88e0 + 0x3e28,image->filename);\n      }" { (expression_statement "puVar1 = (ushort *)(*(code *)PTR_AcquireQuantumMemory_003a950c)(image->colors,2);" (assignment_expression "puVar1 = (ushort *)(*(code *)PTR_AcquireQuantumMemory_003a950c)(image->colors,2)" identifier = (cast_expression "(ushort *)(*(code *)PTR_AcquireQuantumMemory_003a950c)(image->colors,2)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR_AcquireQuantumMemory_003a950c)(image->colors,2)" (parenthesized_expression "(*(code *)PTR_AcquireQuantumMemory_003a950c)" ( (pointer_expression "*(code *)PTR_AcquireQuantumMemory_003a950c" * (cast_expression "(code *)PTR_AcquireQuantumMemory_003a950c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(image->colors,2)" ( (field_expression "image->colors" identifier -> field_identifier) , number_literal ))))) ;) (if_statement "if (puVar1 != (ushort *)0x0) {\n          sVar13 = image->colors;\n          pPVar10 = image->colormap;\n          if (0 < (int)sVar13) {\n            sVar7 = 0;\n            pMVar6 = &pPVar10->alpha;\n            do {\n              sVar2 = sVar7 + 1;\n              *pMVar6 = (double)(int)sVar7;\n              sVar7 = sVar2;\n              pMVar6 = pMVar6 + 0xb;\n            } while (sVar2 != sVar13);\n          }\n          (*(code *)PTR_qsort_003a98d4)(pPVar10,sVar13,0x58,PTR_LAB_003a893c + 0x4ca0);\n          sVar13 = image->colors;\n          if (0 < (int)sVar13) {\n            sVar7 = 0;\n            pMVar6 = &image->colormap->alpha;\n            do {\n              puVar1[(int)*pMVar6] = (ushort)sVar7;\n              sVar7 = sVar7 + 1;\n              pMVar6 = pMVar6 + 0xb;\n            } while (sVar13 != sVar7);\n          }\n          uVar3 = (*(code *)PTR_AcquireAuthenticCacheView_003a8ed4)(image,exception);\n          if (0 < (int)image->rows) {\n            iVar25 = 0;\n            uVar36 = (ulonglong)*(uint *)(PTR_LAB_003a88e0 + 0x1a50);\n            do {\n              iVar4 = (*(code *)PTR_GetCacheViewAuthenticPixels_003a964c)\n                                (uVar3,0,iVar25,image->columns,1,exception);\n              if (iVar4 == 0) {\nLAB_00065918:\n                MVar24 = MagickFalse;\n                goto LAB_000658cc;\n              }\n              sVar7 = image->columns;\n              sVar13 = 0;\n              if (0 < (int)sVar7) {\n                pPVar19 = image->channel_map;\n                sVar2 = image->number_channels;\n                pPVar10 = image->colormap;\n                PVar22 = pPVar19[5].traits;\n                PVar21 = pPVar19[3].traits;\n                PVar20 = pPVar19[4].traits;\n                pfVar17 = (float *)(iVar4 + pPVar19->offset * 4);\n                pfVar15 = (float *)(iVar4 + pPVar19[1].offset * 4);\n                pfVar14 = (float *)(iVar4 + pPVar19[2].offset * 4);\n                do {\n                  if (PVar22 == UndefinedPixelTrait) {\n                    uVar8 = (uint)*puVar1;\n                  }\n                  else {\n                    pfVar23 = (float *)(iVar4 + pPVar19[5].offset * 4);\n                    uVar8 = (uint)puVar1[(int)*pfVar23];\n                    *pfVar23 = (float)uVar8;\n                  }\n                  dVar30 = pPVar10[uVar8].green;\n                  dVar27 = pPVar10[uVar8].blue;\n                  *pfVar17 = (float)pPVar10[uVar8].red;\n                  *pfVar15 = (float)dVar30;\n                  *pfVar14 = (float)dVar27;\n                  if (PVar21 != UndefinedPixelTrait) {\n                    *(float *)(iVar4 + pPVar19[3].offset * 4) = (float)pPVar10[uVar8].black;\n                  }\n                  if (PVar20 != UndefinedPixelTrait) {\n                    fVar29 = (float)uVar36;\n                    if (pPVar10[uVar8].alpha_trait != UndefinedPixelTrait) {\n                      fVar29 = (float)pPVar10[uVar8].alpha;\n                    }\n                    *(float *)(iVar4 + pPVar19[4].offset * 4) = fVar29;\n                  }\n                  sVar13 = sVar13 + 1;\n                  iVar4 = iVar4 + sVar2 * 4;\n                  pfVar17 = pfVar17 + sVar2;\n                  pfVar15 = pfVar15 + sVar2;\n                  pfVar14 = pfVar14 + sVar2;\n                } while (sVar7 != sVar13);\n              }\n              iVar4 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8)(uVar3,exception);\n              if (iVar4 == 0) goto LAB_00065918;\n              iVar25 = iVar25 + 1;\n            } while (iVar25 < (int)image->rows);\n          }\n          MVar24 = MagickTrue;\nLAB_000658cc:\n          (*(code *)PTR_DestroyCacheView_003a8ef4)(uVar3);\n          (*(code *)PTR_RelinquishMagickMemory_003a8fc0)(puVar1);\n          return MVar24;\n        }" if (parenthesized_expression "(puVar1 != (ushort *)0x0)" ( (binary_expression "puVar1 != (ushort *)0x0" identifier != (cast_expression "(ushort *)0x0" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          sVar13 = image->colors;\n          pPVar10 = image->colormap;\n          if (0 < (int)sVar13) {\n            sVar7 = 0;\n            pMVar6 = &pPVar10->alpha;\n            do {\n              sVar2 = sVar7 + 1;\n              *pMVar6 = (double)(int)sVar7;\n              sVar7 = sVar2;\n              pMVar6 = pMVar6 + 0xb;\n            } while (sVar2 != sVar13);\n          }\n          (*(code *)PTR_qsort_003a98d4)(pPVar10,sVar13,0x58,PTR_LAB_003a893c + 0x4ca0);\n          sVar13 = image->colors;\n          if (0 < (int)sVar13) {\n            sVar7 = 0;\n            pMVar6 = &image->colormap->alpha;\n            do {\n              puVar1[(int)*pMVar6] = (ushort)sVar7;\n              sVar7 = sVar7 + 1;\n              pMVar6 = pMVar6 + 0xb;\n            } while (sVar13 != sVar7);\n          }\n          uVar3 = (*(code *)PTR_AcquireAuthenticCacheView_003a8ed4)(image,exception);\n          if (0 < (int)image->rows) {\n            iVar25 = 0;\n            uVar36 = (ulonglong)*(uint *)(PTR_LAB_003a88e0 + 0x1a50);\n            do {\n              iVar4 = (*(code *)PTR_GetCacheViewAuthenticPixels_003a964c)\n                                (uVar3,0,iVar25,image->columns,1,exception);\n              if (iVar4 == 0) {\nLAB_00065918:\n                MVar24 = MagickFalse;\n                goto LAB_000658cc;\n              }\n              sVar7 = image->columns;\n              sVar13 = 0;\n              if (0 < (int)sVar7) {\n                pPVar19 = image->channel_map;\n                sVar2 = image->number_channels;\n                pPVar10 = image->colormap;\n                PVar22 = pPVar19[5].traits;\n                PVar21 = pPVar19[3].traits;\n                PVar20 = pPVar19[4].traits;\n                pfVar17 = (float *)(iVar4 + pPVar19->offset * 4);\n                pfVar15 = (float *)(iVar4 + pPVar19[1].offset * 4);\n                pfVar14 = (float *)(iVar4 + pPVar19[2].offset * 4);\n                do {\n                  if (PVar22 == UndefinedPixelTrait) {\n                    uVar8 = (uint)*puVar1;\n                  }\n                  else {\n                    pfVar23 = (float *)(iVar4 + pPVar19[5].offset * 4);\n                    uVar8 = (uint)puVar1[(int)*pfVar23];\n                    *pfVar23 = (float)uVar8;\n                  }\n                  dVar30 = pPVar10[uVar8].green;\n                  dVar27 = pPVar10[uVar8].blue;\n                  *pfVar17 = (float)pPVar10[uVar8].red;\n                  *pfVar15 = (float)dVar30;\n                  *pfVar14 = (float)dVar27;\n                  if (PVar21 != UndefinedPixelTrait) {\n                    *(float *)(iVar4 + pPVar19[3].offset * 4) = (float)pPVar10[uVar8].black;\n                  }\n                  if (PVar20 != UndefinedPixelTrait) {\n                    fVar29 = (float)uVar36;\n                    if (pPVar10[uVar8].alpha_trait != UndefinedPixelTrait) {\n                      fVar29 = (float)pPVar10[uVar8].alpha;\n                    }\n                    *(float *)(iVar4 + pPVar19[4].offset * 4) = fVar29;\n                  }\n                  sVar13 = sVar13 + 1;\n                  iVar4 = iVar4 + sVar2 * 4;\n                  pfVar17 = pfVar17 + sVar2;\n                  pfVar15 = pfVar15 + sVar2;\n                  pfVar14 = pfVar14 + sVar2;\n                } while (sVar7 != sVar13);\n              }\n              iVar4 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8)(uVar3,exception);\n              if (iVar4 == 0) goto LAB_00065918;\n              iVar25 = iVar25 + 1;\n            } while (iVar25 < (int)image->rows);\n          }\n          MVar24 = MagickTrue;\nLAB_000658cc:\n          (*(code *)PTR_DestroyCacheView_003a8ef4)(uVar3);\n          (*(code *)PTR_RelinquishMagickMemory_003a8fc0)(puVar1);\n          return MVar24;\n        }" { (expression_statement "sVar13 = image->colors;" (assignment_expression "sVar13 = image->colors" identifier = (field_expression "image->colors" identifier -> field_identifier)) ;) (expression_statement "pPVar10 = image->colormap;" (assignment_expression "pPVar10 = image->colormap" identifier = (field_expression "image->colormap" identifier -> field_identifier)) ;) (if_statement "if (0 < (int)sVar13) {\n            sVar7 = 0;\n            pMVar6 = &pPVar10->alpha;\n            do {\n              sVar2 = sVar7 + 1;\n              *pMVar6 = (double)(int)sVar7;\n              sVar7 = sVar2;\n              pMVar6 = pMVar6 + 0xb;\n            } while (sVar2 != sVar13);\n          }" if (parenthesized_expression "(0 < (int)sVar13)" ( (binary_expression "0 < (int)sVar13" number_literal < (cast_expression "(int)sVar13" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n            sVar7 = 0;\n            pMVar6 = &pPVar10->alpha;\n            do {\n              sVar2 = sVar7 + 1;\n              *pMVar6 = (double)(int)sVar7;\n              sVar7 = sVar2;\n              pMVar6 = pMVar6 + 0xb;\n            } while (sVar2 != sVar13);\n          }" { (expression_statement "sVar7 = 0;" (assignment_expression "sVar7 = 0" identifier = number_literal) ;) (expression_statement "pMVar6 = &pPVar10->alpha;" (assignment_expression "pMVar6 = &pPVar10->alpha" identifier = (pointer_expression "&pPVar10->alpha" & (field_expression "pPVar10->alpha" identifier -> field_identifier))) ;) (do_statement "do {\n              sVar2 = sVar7 + 1;\n              *pMVar6 = (double)(int)sVar7;\n              sVar7 = sVar2;\n              pMVar6 = pMVar6 + 0xb;\n            } while (sVar2 != sVar13);" do (compound_statement "{\n              sVar2 = sVar7 + 1;\n              *pMVar6 = (double)(int)sVar7;\n              sVar7 = sVar2;\n              pMVar6 = pMVar6 + 0xb;\n            }" { (expression_statement "sVar2 = sVar7 + 1;" (assignment_expression "sVar2 = sVar7 + 1" identifier = (binary_expression "sVar7 + 1" identifier + number_literal)) ;) (expression_statement "*pMVar6 = (double)(int)sVar7;" (assignment_expression "*pMVar6 = (double)(int)sVar7" (pointer_expression "*pMVar6" * identifier) = (cast_expression "(double)(int)sVar7" ( (type_descriptor "double" primitive_type) ) (cast_expression "(int)sVar7" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (expression_statement "sVar7 = sVar2;" (assignment_expression "sVar7 = sVar2" identifier = identifier) ;) (expression_statement "pMVar6 = pMVar6 + 0xb;" (assignment_expression "pMVar6 = pMVar6 + 0xb" identifier = (binary_expression "pMVar6 + 0xb" identifier + number_literal)) ;) }) while (parenthesized_expression "(sVar2 != sVar13)" ( (binary_expression "sVar2 != sVar13" identifier != identifier) )) ;) })) (expression_statement "(*(code *)PTR_qsort_003a98d4)(pPVar10,sVar13,0x58,PTR_LAB_003a893c + 0x4ca0);" (call_expression "(*(code *)PTR_qsort_003a98d4)(pPVar10,sVar13,0x58,PTR_LAB_003a893c + 0x4ca0)" (parenthesized_expression "(*(code *)PTR_qsort_003a98d4)" ( (pointer_expression "*(code *)PTR_qsort_003a98d4" * (cast_expression "(code *)PTR_qsort_003a98d4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(pPVar10,sVar13,0x58,PTR_LAB_003a893c + 0x4ca0)" ( identifier , identifier , number_literal , (binary_expression "PTR_LAB_003a893c + 0x4ca0" identifier + number_literal) ))) ;) (expression_statement "sVar13 = image->colors;" (assignment_expression "sVar13 = image->colors" identifier = (field_expression "image->colors" identifier -> field_identifier)) ;) (if_statement "if (0 < (int)sVar13) {\n            sVar7 = 0;\n            pMVar6 = &image->colormap->alpha;\n            do {\n              puVar1[(int)*pMVar6] = (ushort)sVar7;\n              sVar7 = sVar7 + 1;\n              pMVar6 = pMVar6 + 0xb;\n            } while (sVar13 != sVar7);\n          }" if (parenthesized_expression "(0 < (int)sVar13)" ( (binary_expression "0 < (int)sVar13" number_literal < (cast_expression "(int)sVar13" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n            sVar7 = 0;\n            pMVar6 = &image->colormap->alpha;\n            do {\n              puVar1[(int)*pMVar6] = (ushort)sVar7;\n              sVar7 = sVar7 + 1;\n              pMVar6 = pMVar6 + 0xb;\n            } while (sVar13 != sVar7);\n          }" { (expression_statement "sVar7 = 0;" (assignment_expression "sVar7 = 0" identifier = number_literal) ;) (expression_statement "pMVar6 = &image->colormap->alpha;" (assignment_expression "pMVar6 = &image->colormap->alpha" identifier = (pointer_expression "&image->colormap->alpha" & (field_expression "image->colormap->alpha" (field_expression "image->colormap" identifier -> field_identifier) -> field_identifier))) ;) (do_statement "do {\n              puVar1[(int)*pMVar6] = (ushort)sVar7;\n              sVar7 = sVar7 + 1;\n              pMVar6 = pMVar6 + 0xb;\n            } while (sVar13 != sVar7);" do (compound_statement "{\n              puVar1[(int)*pMVar6] = (ushort)sVar7;\n              sVar7 = sVar7 + 1;\n              pMVar6 = pMVar6 + 0xb;\n            }" { (expression_statement "puVar1[(int)*pMVar6] = (ushort)sVar7;" (assignment_expression "puVar1[(int)*pMVar6] = (ushort)sVar7" (subscript_expression "puVar1[(int)*pMVar6]" identifier [ (cast_expression "(int)*pMVar6" ( (type_descriptor "int" primitive_type) ) (pointer_expression "*pMVar6" * identifier)) ]) = (cast_expression "(ushort)sVar7" ( (type_descriptor "ushort" type_identifier) ) identifier)) ;) (expression_statement "sVar7 = sVar7 + 1;" (assignment_expression "sVar7 = sVar7 + 1" identifier = (binary_expression "sVar7 + 1" identifier + number_literal)) ;) (expression_statement "pMVar6 = pMVar6 + 0xb;" (assignment_expression "pMVar6 = pMVar6 + 0xb" identifier = (binary_expression "pMVar6 + 0xb" identifier + number_literal)) ;) }) while (parenthesized_expression "(sVar13 != sVar7)" ( (binary_expression "sVar13 != sVar7" identifier != identifier) )) ;) })) (expression_statement "uVar3 = (*(code *)PTR_AcquireAuthenticCacheView_003a8ed4)(image,exception);" (assignment_expression "uVar3 = (*(code *)PTR_AcquireAuthenticCacheView_003a8ed4)(image,exception)" identifier = (call_expression "(*(code *)PTR_AcquireAuthenticCacheView_003a8ed4)(image,exception)" (parenthesized_expression "(*(code *)PTR_AcquireAuthenticCacheView_003a8ed4)" ( (pointer_expression "*(code *)PTR_AcquireAuthenticCacheView_003a8ed4" * (cast_expression "(code *)PTR_AcquireAuthenticCacheView_003a8ed4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(image,exception)" ( identifier , identifier )))) ;) (if_statement "if (0 < (int)image->rows) {\n            iVar25 = 0;\n            uVar36 = (ulonglong)*(uint *)(PTR_LAB_003a88e0 + 0x1a50);\n            do {\n              iVar4 = (*(code *)PTR_GetCacheViewAuthenticPixels_003a964c)\n                                (uVar3,0,iVar25,image->columns,1,exception);\n              if (iVar4 == 0) {\nLAB_00065918:\n                MVar24 = MagickFalse;\n                goto LAB_000658cc;\n              }\n              sVar7 = image->columns;\n              sVar13 = 0;\n              if (0 < (int)sVar7) {\n                pPVar19 = image->channel_map;\n                sVar2 = image->number_channels;\n                pPVar10 = image->colormap;\n                PVar22 = pPVar19[5].traits;\n                PVar21 = pPVar19[3].traits;\n                PVar20 = pPVar19[4].traits;\n                pfVar17 = (float *)(iVar4 + pPVar19->offset * 4);\n                pfVar15 = (float *)(iVar4 + pPVar19[1].offset * 4);\n                pfVar14 = (float *)(iVar4 + pPVar19[2].offset * 4);\n                do {\n                  if (PVar22 == UndefinedPixelTrait) {\n                    uVar8 = (uint)*puVar1;\n                  }\n                  else {\n                    pfVar23 = (float *)(iVar4 + pPVar19[5].offset * 4);\n                    uVar8 = (uint)puVar1[(int)*pfVar23];\n                    *pfVar23 = (float)uVar8;\n                  }\n                  dVar30 = pPVar10[uVar8].green;\n                  dVar27 = pPVar10[uVar8].blue;\n                  *pfVar17 = (float)pPVar10[uVar8].red;\n                  *pfVar15 = (float)dVar30;\n                  *pfVar14 = (float)dVar27;\n                  if (PVar21 != UndefinedPixelTrait) {\n                    *(float *)(iVar4 + pPVar19[3].offset * 4) = (float)pPVar10[uVar8].black;\n                  }\n                  if (PVar20 != UndefinedPixelTrait) {\n                    fVar29 = (float)uVar36;\n                    if (pPVar10[uVar8].alpha_trait != UndefinedPixelTrait) {\n                      fVar29 = (float)pPVar10[uVar8].alpha;\n                    }\n                    *(float *)(iVar4 + pPVar19[4].offset * 4) = fVar29;\n                  }\n                  sVar13 = sVar13 + 1;\n                  iVar4 = iVar4 + sVar2 * 4;\n                  pfVar17 = pfVar17 + sVar2;\n                  pfVar15 = pfVar15 + sVar2;\n                  pfVar14 = pfVar14 + sVar2;\n                } while (sVar7 != sVar13);\n              }\n              iVar4 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8)(uVar3,exception);\n              if (iVar4 == 0) goto LAB_00065918;\n              iVar25 = iVar25 + 1;\n            } while (iVar25 < (int)image->rows);\n          }" if (parenthesized_expression "(0 < (int)image->rows)" ( (binary_expression "0 < (int)image->rows" number_literal < (cast_expression "(int)image->rows" ( (type_descriptor "int" primitive_type) ) (field_expression "image->rows" identifier -> field_identifier))) )) (compound_statement "{\n            iVar25 = 0;\n            uVar36 = (ulonglong)*(uint *)(PTR_LAB_003a88e0 + 0x1a50);\n            do {\n              iVar4 = (*(code *)PTR_GetCacheViewAuthenticPixels_003a964c)\n                                (uVar3,0,iVar25,image->columns,1,exception);\n              if (iVar4 == 0) {\nLAB_00065918:\n                MVar24 = MagickFalse;\n                goto LAB_000658cc;\n              }\n              sVar7 = image->columns;\n              sVar13 = 0;\n              if (0 < (int)sVar7) {\n                pPVar19 = image->channel_map;\n                sVar2 = image->number_channels;\n                pPVar10 = image->colormap;\n                PVar22 = pPVar19[5].traits;\n                PVar21 = pPVar19[3].traits;\n                PVar20 = pPVar19[4].traits;\n                pfVar17 = (float *)(iVar4 + pPVar19->offset * 4);\n                pfVar15 = (float *)(iVar4 + pPVar19[1].offset * 4);\n                pfVar14 = (float *)(iVar4 + pPVar19[2].offset * 4);\n                do {\n                  if (PVar22 == UndefinedPixelTrait) {\n                    uVar8 = (uint)*puVar1;\n                  }\n                  else {\n                    pfVar23 = (float *)(iVar4 + pPVar19[5].offset * 4);\n                    uVar8 = (uint)puVar1[(int)*pfVar23];\n                    *pfVar23 = (float)uVar8;\n                  }\n                  dVar30 = pPVar10[uVar8].green;\n                  dVar27 = pPVar10[uVar8].blue;\n                  *pfVar17 = (float)pPVar10[uVar8].red;\n                  *pfVar15 = (float)dVar30;\n                  *pfVar14 = (float)dVar27;\n                  if (PVar21 != UndefinedPixelTrait) {\n                    *(float *)(iVar4 + pPVar19[3].offset * 4) = (float)pPVar10[uVar8].black;\n                  }\n                  if (PVar20 != UndefinedPixelTrait) {\n                    fVar29 = (float)uVar36;\n                    if (pPVar10[uVar8].alpha_trait != UndefinedPixelTrait) {\n                      fVar29 = (float)pPVar10[uVar8].alpha;\n                    }\n                    *(float *)(iVar4 + pPVar19[4].offset * 4) = fVar29;\n                  }\n                  sVar13 = sVar13 + 1;\n                  iVar4 = iVar4 + sVar2 * 4;\n                  pfVar17 = pfVar17 + sVar2;\n                  pfVar15 = pfVar15 + sVar2;\n                  pfVar14 = pfVar14 + sVar2;\n                } while (sVar7 != sVar13);\n              }\n              iVar4 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8)(uVar3,exception);\n              if (iVar4 == 0) goto LAB_00065918;\n              iVar25 = iVar25 + 1;\n            } while (iVar25 < (int)image->rows);\n          }" { (expression_statement "iVar25 = 0;" (assignment_expression "iVar25 = 0" identifier = number_literal) ;) (expression_statement "uVar36 = (ulonglong)*(uint *)(PTR_LAB_003a88e0 + 0x1a50);" (assignment_expression "uVar36 = (ulonglong)*(uint *)(PTR_LAB_003a88e0 + 0x1a50)" identifier = (binary_expression "(ulonglong)*(uint *)(PTR_LAB_003a88e0 + 0x1a50)" (parenthesized_expression "(ulonglong)" ( identifier )) * (cast_expression "(uint *)(PTR_LAB_003a88e0 + 0x1a50)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_003a88e0 + 0x1a50)" ( (binary_expression "PTR_LAB_003a88e0 + 0x1a50" identifier + number_literal) ))))) ;) (do_statement "do {\n              iVar4 = (*(code *)PTR_GetCacheViewAuthenticPixels_003a964c)\n                                (uVar3,0,iVar25,image->columns,1,exception);\n              if (iVar4 == 0) {\nLAB_00065918:\n                MVar24 = MagickFalse;\n                goto LAB_000658cc;\n              }\n              sVar7 = image->columns;\n              sVar13 = 0;\n              if (0 < (int)sVar7) {\n                pPVar19 = image->channel_map;\n                sVar2 = image->number_channels;\n                pPVar10 = image->colormap;\n                PVar22 = pPVar19[5].traits;\n                PVar21 = pPVar19[3].traits;\n                PVar20 = pPVar19[4].traits;\n                pfVar17 = (float *)(iVar4 + pPVar19->offset * 4);\n                pfVar15 = (float *)(iVar4 + pPVar19[1].offset * 4);\n                pfVar14 = (float *)(iVar4 + pPVar19[2].offset * 4);\n                do {\n                  if (PVar22 == UndefinedPixelTrait) {\n                    uVar8 = (uint)*puVar1;\n                  }\n                  else {\n                    pfVar23 = (float *)(iVar4 + pPVar19[5].offset * 4);\n                    uVar8 = (uint)puVar1[(int)*pfVar23];\n                    *pfVar23 = (float)uVar8;\n                  }\n                  dVar30 = pPVar10[uVar8].green;\n                  dVar27 = pPVar10[uVar8].blue;\n                  *pfVar17 = (float)pPVar10[uVar8].red;\n                  *pfVar15 = (float)dVar30;\n                  *pfVar14 = (float)dVar27;\n                  if (PVar21 != UndefinedPixelTrait) {\n                    *(float *)(iVar4 + pPVar19[3].offset * 4) = (float)pPVar10[uVar8].black;\n                  }\n                  if (PVar20 != UndefinedPixelTrait) {\n                    fVar29 = (float)uVar36;\n                    if (pPVar10[uVar8].alpha_trait != UndefinedPixelTrait) {\n                      fVar29 = (float)pPVar10[uVar8].alpha;\n                    }\n                    *(float *)(iVar4 + pPVar19[4].offset * 4) = fVar29;\n                  }\n                  sVar13 = sVar13 + 1;\n                  iVar4 = iVar4 + sVar2 * 4;\n                  pfVar17 = pfVar17 + sVar2;\n                  pfVar15 = pfVar15 + sVar2;\n                  pfVar14 = pfVar14 + sVar2;\n                } while (sVar7 != sVar13);\n              }\n              iVar4 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8)(uVar3,exception);\n              if (iVar4 == 0) goto LAB_00065918;\n              iVar25 = iVar25 + 1;\n            } while (iVar25 < (int)image->rows);" do (compound_statement "{\n              iVar4 = (*(code *)PTR_GetCacheViewAuthenticPixels_003a964c)\n                                (uVar3,0,iVar25,image->columns,1,exception);\n              if (iVar4 == 0) {\nLAB_00065918:\n                MVar24 = MagickFalse;\n                goto LAB_000658cc;\n              }\n              sVar7 = image->columns;\n              sVar13 = 0;\n              if (0 < (int)sVar7) {\n                pPVar19 = image->channel_map;\n                sVar2 = image->number_channels;\n                pPVar10 = image->colormap;\n                PVar22 = pPVar19[5].traits;\n                PVar21 = pPVar19[3].traits;\n                PVar20 = pPVar19[4].traits;\n                pfVar17 = (float *)(iVar4 + pPVar19->offset * 4);\n                pfVar15 = (float *)(iVar4 + pPVar19[1].offset * 4);\n                pfVar14 = (float *)(iVar4 + pPVar19[2].offset * 4);\n                do {\n                  if (PVar22 == UndefinedPixelTrait) {\n                    uVar8 = (uint)*puVar1;\n                  }\n                  else {\n                    pfVar23 = (float *)(iVar4 + pPVar19[5].offset * 4);\n                    uVar8 = (uint)puVar1[(int)*pfVar23];\n                    *pfVar23 = (float)uVar8;\n                  }\n                  dVar30 = pPVar10[uVar8].green;\n                  dVar27 = pPVar10[uVar8].blue;\n                  *pfVar17 = (float)pPVar10[uVar8].red;\n                  *pfVar15 = (float)dVar30;\n                  *pfVar14 = (float)dVar27;\n                  if (PVar21 != UndefinedPixelTrait) {\n                    *(float *)(iVar4 + pPVar19[3].offset * 4) = (float)pPVar10[uVar8].black;\n                  }\n                  if (PVar20 != UndefinedPixelTrait) {\n                    fVar29 = (float)uVar36;\n                    if (pPVar10[uVar8].alpha_trait != UndefinedPixelTrait) {\n                      fVar29 = (float)pPVar10[uVar8].alpha;\n                    }\n                    *(float *)(iVar4 + pPVar19[4].offset * 4) = fVar29;\n                  }\n                  sVar13 = sVar13 + 1;\n                  iVar4 = iVar4 + sVar2 * 4;\n                  pfVar17 = pfVar17 + sVar2;\n                  pfVar15 = pfVar15 + sVar2;\n                  pfVar14 = pfVar14 + sVar2;\n                } while (sVar7 != sVar13);\n              }\n              iVar4 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8)(uVar3,exception);\n              if (iVar4 == 0) goto LAB_00065918;\n              iVar25 = iVar25 + 1;\n            }" { (expression_statement "iVar4 = (*(code *)PTR_GetCacheViewAuthenticPixels_003a964c)\n                                (uVar3,0,iVar25,image->columns,1,exception);" (assignment_expression "iVar4 = (*(code *)PTR_GetCacheViewAuthenticPixels_003a964c)\n                                (uVar3,0,iVar25,image->columns,1,exception)" identifier = (call_expression "(*(code *)PTR_GetCacheViewAuthenticPixels_003a964c)\n                                (uVar3,0,iVar25,image->columns,1,exception)" (parenthesized_expression "(*(code *)PTR_GetCacheViewAuthenticPixels_003a964c)" ( (pointer_expression "*(code *)PTR_GetCacheViewAuthenticPixels_003a964c" * (cast_expression "(code *)PTR_GetCacheViewAuthenticPixels_003a964c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(uVar3,0,iVar25,image->columns,1,exception)" ( identifier , number_literal , identifier , (field_expression "image->columns" identifier -> field_identifier) , number_literal , identifier )))) ;) (if_statement "if (iVar4 == 0) {\nLAB_00065918:\n                MVar24 = MagickFalse;\n                goto LAB_000658cc;\n              }" if (parenthesized_expression "(iVar4 == 0)" ( (binary_expression "iVar4 == 0" identifier == number_literal) )) (compound_statement "{\nLAB_00065918:\n                MVar24 = MagickFalse;\n                goto LAB_000658cc;\n              }" { (labeled_statement "LAB_00065918:\n                MVar24 = MagickFalse;" statement_identifier : (expression_statement "MVar24 = MagickFalse;" (assignment_expression "MVar24 = MagickFalse" identifier = identifier) ;)) (goto_statement "goto LAB_000658cc;" goto statement_identifier ;) })) (expression_statement "sVar7 = image->columns;" (assignment_expression "sVar7 = image->columns" identifier = (field_expression "image->columns" identifier -> field_identifier)) ;) (expression_statement "sVar13 = 0;" (assignment_expression "sVar13 = 0" identifier = number_literal) ;) (if_statement "if (0 < (int)sVar7) {\n                pPVar19 = image->channel_map;\n                sVar2 = image->number_channels;\n                pPVar10 = image->colormap;\n                PVar22 = pPVar19[5].traits;\n                PVar21 = pPVar19[3].traits;\n                PVar20 = pPVar19[4].traits;\n                pfVar17 = (float *)(iVar4 + pPVar19->offset * 4);\n                pfVar15 = (float *)(iVar4 + pPVar19[1].offset * 4);\n                pfVar14 = (float *)(iVar4 + pPVar19[2].offset * 4);\n                do {\n                  if (PVar22 == UndefinedPixelTrait) {\n                    uVar8 = (uint)*puVar1;\n                  }\n                  else {\n                    pfVar23 = (float *)(iVar4 + pPVar19[5].offset * 4);\n                    uVar8 = (uint)puVar1[(int)*pfVar23];\n                    *pfVar23 = (float)uVar8;\n                  }\n                  dVar30 = pPVar10[uVar8].green;\n                  dVar27 = pPVar10[uVar8].blue;\n                  *pfVar17 = (float)pPVar10[uVar8].red;\n                  *pfVar15 = (float)dVar30;\n                  *pfVar14 = (float)dVar27;\n                  if (PVar21 != UndefinedPixelTrait) {\n                    *(float *)(iVar4 + pPVar19[3].offset * 4) = (float)pPVar10[uVar8].black;\n                  }\n                  if (PVar20 != UndefinedPixelTrait) {\n                    fVar29 = (float)uVar36;\n                    if (pPVar10[uVar8].alpha_trait != UndefinedPixelTrait) {\n                      fVar29 = (float)pPVar10[uVar8].alpha;\n                    }\n                    *(float *)(iVar4 + pPVar19[4].offset * 4) = fVar29;\n                  }\n                  sVar13 = sVar13 + 1;\n                  iVar4 = iVar4 + sVar2 * 4;\n                  pfVar17 = pfVar17 + sVar2;\n                  pfVar15 = pfVar15 + sVar2;\n                  pfVar14 = pfVar14 + sVar2;\n                } while (sVar7 != sVar13);\n              }" if (parenthesized_expression "(0 < (int)sVar7)" ( (binary_expression "0 < (int)sVar7" number_literal < (cast_expression "(int)sVar7" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n                pPVar19 = image->channel_map;\n                sVar2 = image->number_channels;\n                pPVar10 = image->colormap;\n                PVar22 = pPVar19[5].traits;\n                PVar21 = pPVar19[3].traits;\n                PVar20 = pPVar19[4].traits;\n                pfVar17 = (float *)(iVar4 + pPVar19->offset * 4);\n                pfVar15 = (float *)(iVar4 + pPVar19[1].offset * 4);\n                pfVar14 = (float *)(iVar4 + pPVar19[2].offset * 4);\n                do {\n                  if (PVar22 == UndefinedPixelTrait) {\n                    uVar8 = (uint)*puVar1;\n                  }\n                  else {\n                    pfVar23 = (float *)(iVar4 + pPVar19[5].offset * 4);\n                    uVar8 = (uint)puVar1[(int)*pfVar23];\n                    *pfVar23 = (float)uVar8;\n                  }\n                  dVar30 = pPVar10[uVar8].green;\n                  dVar27 = pPVar10[uVar8].blue;\n                  *pfVar17 = (float)pPVar10[uVar8].red;\n                  *pfVar15 = (float)dVar30;\n                  *pfVar14 = (float)dVar27;\n                  if (PVar21 != UndefinedPixelTrait) {\n                    *(float *)(iVar4 + pPVar19[3].offset * 4) = (float)pPVar10[uVar8].black;\n                  }\n                  if (PVar20 != UndefinedPixelTrait) {\n                    fVar29 = (float)uVar36;\n                    if (pPVar10[uVar8].alpha_trait != UndefinedPixelTrait) {\n                      fVar29 = (float)pPVar10[uVar8].alpha;\n                    }\n                    *(float *)(iVar4 + pPVar19[4].offset * 4) = fVar29;\n                  }\n                  sVar13 = sVar13 + 1;\n                  iVar4 = iVar4 + sVar2 * 4;\n                  pfVar17 = pfVar17 + sVar2;\n                  pfVar15 = pfVar15 + sVar2;\n                  pfVar14 = pfVar14 + sVar2;\n                } while (sVar7 != sVar13);\n              }" { (expression_statement "pPVar19 = image->channel_map;" (assignment_expression "pPVar19 = image->channel_map" identifier = (field_expression "image->channel_map" identifier -> field_identifier)) ;) (expression_statement "sVar2 = image->number_channels;" (assignment_expression "sVar2 = image->number_channels" identifier = (field_expression "image->number_channels" identifier -> field_identifier)) ;) (expression_statement "pPVar10 = image->colormap;" (assignment_expression "pPVar10 = image->colormap" identifier = (field_expression "image->colormap" identifier -> field_identifier)) ;) (expression_statement "PVar22 = pPVar19[5].traits;" (assignment_expression "PVar22 = pPVar19[5].traits" identifier = (field_expression "pPVar19[5].traits" (subscript_expression "pPVar19[5]" identifier [ number_literal ]) . field_identifier)) ;) (expression_statement "PVar21 = pPVar19[3].traits;" (assignment_expression "PVar21 = pPVar19[3].traits" identifier = (field_expression "pPVar19[3].traits" (subscript_expression "pPVar19[3]" identifier [ number_literal ]) . field_identifier)) ;) (expression_statement "PVar20 = pPVar19[4].traits;" (assignment_expression "PVar20 = pPVar19[4].traits" identifier = (field_expression "pPVar19[4].traits" (subscript_expression "pPVar19[4]" identifier [ number_literal ]) . field_identifier)) ;) (expression_statement "pfVar17 = (float *)(iVar4 + pPVar19->offset * 4);" (assignment_expression "pfVar17 = (float *)(iVar4 + pPVar19->offset * 4)" identifier = (cast_expression "(float *)(iVar4 + pPVar19->offset * 4)" ( (type_descriptor "float *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar4 + pPVar19->offset * 4)" ( (binary_expression "iVar4 + pPVar19->offset * 4" identifier + (binary_expression "pPVar19->offset * 4" (field_expression "pPVar19->offset" identifier -> field_identifier) * number_literal)) )))) ;) (expression_statement "pfVar15 = (float *)(iVar4 + pPVar19[1].offset * 4);" (assignment_expression "pfVar15 = (float *)(iVar4 + pPVar19[1].offset * 4)" identifier = (cast_expression "(float *)(iVar4 + pPVar19[1].offset * 4)" ( (type_descriptor "float *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar4 + pPVar19[1].offset * 4)" ( (binary_expression "iVar4 + pPVar19[1].offset * 4" identifier + (binary_expression "pPVar19[1].offset * 4" (field_expression "pPVar19[1].offset" (subscript_expression "pPVar19[1]" identifier [ number_literal ]) . field_identifier) * number_literal)) )))) ;) (expression_statement "pfVar14 = (float *)(iVar4 + pPVar19[2].offset * 4);" (assignment_expression "pfVar14 = (float *)(iVar4 + pPVar19[2].offset * 4)" identifier = (cast_expression "(float *)(iVar4 + pPVar19[2].offset * 4)" ( (type_descriptor "float *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar4 + pPVar19[2].offset * 4)" ( (binary_expression "iVar4 + pPVar19[2].offset * 4" identifier + (binary_expression "pPVar19[2].offset * 4" (field_expression "pPVar19[2].offset" (subscript_expression "pPVar19[2]" identifier [ number_literal ]) . field_identifier) * number_literal)) )))) ;) (do_statement "do {\n                  if (PVar22 == UndefinedPixelTrait) {\n                    uVar8 = (uint)*puVar1;\n                  }\n                  else {\n                    pfVar23 = (float *)(iVar4 + pPVar19[5].offset * 4);\n                    uVar8 = (uint)puVar1[(int)*pfVar23];\n                    *pfVar23 = (float)uVar8;\n                  }\n                  dVar30 = pPVar10[uVar8].green;\n                  dVar27 = pPVar10[uVar8].blue;\n                  *pfVar17 = (float)pPVar10[uVar8].red;\n                  *pfVar15 = (float)dVar30;\n                  *pfVar14 = (float)dVar27;\n                  if (PVar21 != UndefinedPixelTrait) {\n                    *(float *)(iVar4 + pPVar19[3].offset * 4) = (float)pPVar10[uVar8].black;\n                  }\n                  if (PVar20 != UndefinedPixelTrait) {\n                    fVar29 = (float)uVar36;\n                    if (pPVar10[uVar8].alpha_trait != UndefinedPixelTrait) {\n                      fVar29 = (float)pPVar10[uVar8].alpha;\n                    }\n                    *(float *)(iVar4 + pPVar19[4].offset * 4) = fVar29;\n                  }\n                  sVar13 = sVar13 + 1;\n                  iVar4 = iVar4 + sVar2 * 4;\n                  pfVar17 = pfVar17 + sVar2;\n                  pfVar15 = pfVar15 + sVar2;\n                  pfVar14 = pfVar14 + sVar2;\n                } while (sVar7 != sVar13);" do (compound_statement "{\n                  if (PVar22 == UndefinedPixelTrait) {\n                    uVar8 = (uint)*puVar1;\n                  }\n                  else {\n                    pfVar23 = (float *)(iVar4 + pPVar19[5].offset * 4);\n                    uVar8 = (uint)puVar1[(int)*pfVar23];\n                    *pfVar23 = (float)uVar8;\n                  }\n                  dVar30 = pPVar10[uVar8].green;\n                  dVar27 = pPVar10[uVar8].blue;\n                  *pfVar17 = (float)pPVar10[uVar8].red;\n                  *pfVar15 = (float)dVar30;\n                  *pfVar14 = (float)dVar27;\n                  if (PVar21 != UndefinedPixelTrait) {\n                    *(float *)(iVar4 + pPVar19[3].offset * 4) = (float)pPVar10[uVar8].black;\n                  }\n                  if (PVar20 != UndefinedPixelTrait) {\n                    fVar29 = (float)uVar36;\n                    if (pPVar10[uVar8].alpha_trait != UndefinedPixelTrait) {\n                      fVar29 = (float)pPVar10[uVar8].alpha;\n                    }\n                    *(float *)(iVar4 + pPVar19[4].offset * 4) = fVar29;\n                  }\n                  sVar13 = sVar13 + 1;\n                  iVar4 = iVar4 + sVar2 * 4;\n                  pfVar17 = pfVar17 + sVar2;\n                  pfVar15 = pfVar15 + sVar2;\n                  pfVar14 = pfVar14 + sVar2;\n                }" { (if_statement "if (PVar22 == UndefinedPixelTrait) {\n                    uVar8 = (uint)*puVar1;\n                  }\n                  else {\n                    pfVar23 = (float *)(iVar4 + pPVar19[5].offset * 4);\n                    uVar8 = (uint)puVar1[(int)*pfVar23];\n                    *pfVar23 = (float)uVar8;\n                  }" if (parenthesized_expression "(PVar22 == UndefinedPixelTrait)" ( (binary_expression "PVar22 == UndefinedPixelTrait" identifier == identifier) )) (compound_statement "{\n                    uVar8 = (uint)*puVar1;\n                  }" { (expression_statement "uVar8 = (uint)*puVar1;" (assignment_expression "uVar8 = (uint)*puVar1" identifier = (binary_expression "(uint)*puVar1" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;) }) (else_clause "else {\n                    pfVar23 = (float *)(iVar4 + pPVar19[5].offset * 4);\n                    uVar8 = (uint)puVar1[(int)*pfVar23];\n                    *pfVar23 = (float)uVar8;\n                  }" else (compound_statement "{\n                    pfVar23 = (float *)(iVar4 + pPVar19[5].offset * 4);\n                    uVar8 = (uint)puVar1[(int)*pfVar23];\n                    *pfVar23 = (float)uVar8;\n                  }" { (expression_statement "pfVar23 = (float *)(iVar4 + pPVar19[5].offset * 4);" (assignment_expression "pfVar23 = (float *)(iVar4 + pPVar19[5].offset * 4)" identifier = (cast_expression "(float *)(iVar4 + pPVar19[5].offset * 4)" ( (type_descriptor "float *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar4 + pPVar19[5].offset * 4)" ( (binary_expression "iVar4 + pPVar19[5].offset * 4" identifier + (binary_expression "pPVar19[5].offset * 4" (field_expression "pPVar19[5].offset" (subscript_expression "pPVar19[5]" identifier [ number_literal ]) . field_identifier) * number_literal)) )))) ;) (expression_statement "uVar8 = (uint)puVar1[(int)*pfVar23];" (assignment_expression "uVar8 = (uint)puVar1[(int)*pfVar23]" identifier = (cast_expression "(uint)puVar1[(int)*pfVar23]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "puVar1[(int)*pfVar23]" identifier [ (cast_expression "(int)*pfVar23" ( (type_descriptor "int" primitive_type) ) (pointer_expression "*pfVar23" * identifier)) ]))) ;) (expression_statement "*pfVar23 = (float)uVar8;" (assignment_expression "*pfVar23 = (float)uVar8" (pointer_expression "*pfVar23" * identifier) = (cast_expression "(float)uVar8" ( (type_descriptor "float" primitive_type) ) identifier)) ;) }))) (expression_statement "dVar30 = pPVar10[uVar8].green;" (assignment_expression "dVar30 = pPVar10[uVar8].green" identifier = (field_expression "pPVar10[uVar8].green" (subscript_expression "pPVar10[uVar8]" identifier [ identifier ]) . field_identifier)) ;) (expression_statement "dVar27 = pPVar10[uVar8].blue;" (assignment_expression "dVar27 = pPVar10[uVar8].blue" identifier = (field_expression "pPVar10[uVar8].blue" (subscript_expression "pPVar10[uVar8]" identifier [ identifier ]) . field_identifier)) ;) (expression_statement "*pfVar17 = (float)pPVar10[uVar8].red;" (assignment_expression "*pfVar17 = (float)pPVar10[uVar8].red" (pointer_expression "*pfVar17" * identifier) = (cast_expression "(float)pPVar10[uVar8].red" ( (type_descriptor "float" primitive_type) ) (field_expression "pPVar10[uVar8].red" (subscript_expression "pPVar10[uVar8]" identifier [ identifier ]) . field_identifier))) ;) (expression_statement "*pfVar15 = (float)dVar30;" (assignment_expression "*pfVar15 = (float)dVar30" (pointer_expression "*pfVar15" * identifier) = (cast_expression "(float)dVar30" ( (type_descriptor "float" primitive_type) ) identifier)) ;) (expression_statement "*pfVar14 = (float)dVar27;" (assignment_expression "*pfVar14 = (float)dVar27" (pointer_expression "*pfVar14" * identifier) = (cast_expression "(float)dVar27" ( (type_descriptor "float" primitive_type) ) identifier)) ;) (if_statement "if (PVar21 != UndefinedPixelTrait) {\n                    *(float *)(iVar4 + pPVar19[3].offset * 4) = (float)pPVar10[uVar8].black;\n                  }" if (parenthesized_expression "(PVar21 != UndefinedPixelTrait)" ( (binary_expression "PVar21 != UndefinedPixelTrait" identifier != identifier) )) (compound_statement "{\n                    *(float *)(iVar4 + pPVar19[3].offset * 4) = (float)pPVar10[uVar8].black;\n                  }" { (expression_statement "*(float *)(iVar4 + pPVar19[3].offset * 4) = (float)pPVar10[uVar8].black;" (assignment_expression "*(float *)(iVar4 + pPVar19[3].offset * 4) = (float)pPVar10[uVar8].black" (pointer_expression "*(float *)(iVar4 + pPVar19[3].offset * 4)" * (cast_expression "(float *)(iVar4 + pPVar19[3].offset * 4)" ( (type_descriptor "float *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar4 + pPVar19[3].offset * 4)" ( (binary_expression "iVar4 + pPVar19[3].offset * 4" identifier + (binary_expression "pPVar19[3].offset * 4" (field_expression "pPVar19[3].offset" (subscript_expression "pPVar19[3]" identifier [ number_literal ]) . field_identifier) * number_literal)) )))) = (cast_expression "(float)pPVar10[uVar8].black" ( (type_descriptor "float" primitive_type) ) (field_expression "pPVar10[uVar8].black" (subscript_expression "pPVar10[uVar8]" identifier [ identifier ]) . field_identifier))) ;) })) (if_statement "if (PVar20 != UndefinedPixelTrait) {\n                    fVar29 = (float)uVar36;\n                    if (pPVar10[uVar8].alpha_trait != UndefinedPixelTrait) {\n                      fVar29 = (float)pPVar10[uVar8].alpha;\n                    }\n                    *(float *)(iVar4 + pPVar19[4].offset * 4) = fVar29;\n                  }" if (parenthesized_expression "(PVar20 != UndefinedPixelTrait)" ( (binary_expression "PVar20 != UndefinedPixelTrait" identifier != identifier) )) (compound_statement "{\n                    fVar29 = (float)uVar36;\n                    if (pPVar10[uVar8].alpha_trait != UndefinedPixelTrait) {\n                      fVar29 = (float)pPVar10[uVar8].alpha;\n                    }\n                    *(float *)(iVar4 + pPVar19[4].offset * 4) = fVar29;\n                  }" { (expression_statement "fVar29 = (float)uVar36;" (assignment_expression "fVar29 = (float)uVar36" identifier = (cast_expression "(float)uVar36" ( (type_descriptor "float" primitive_type) ) identifier)) ;) (if_statement "if (pPVar10[uVar8].alpha_trait != UndefinedPixelTrait) {\n                      fVar29 = (float)pPVar10[uVar8].alpha;\n                    }" if (parenthesized_expression "(pPVar10[uVar8].alpha_trait != UndefinedPixelTrait)" ( (binary_expression "pPVar10[uVar8].alpha_trait != UndefinedPixelTrait" (field_expression "pPVar10[uVar8].alpha_trait" (subscript_expression "pPVar10[uVar8]" identifier [ identifier ]) . field_identifier) != identifier) )) (compound_statement "{\n                      fVar29 = (float)pPVar10[uVar8].alpha;\n                    }" { (expression_statement "fVar29 = (float)pPVar10[uVar8].alpha;" (assignment_expression "fVar29 = (float)pPVar10[uVar8].alpha" identifier = (cast_expression "(float)pPVar10[uVar8].alpha" ( (type_descriptor "float" primitive_type) ) (field_expression "pPVar10[uVar8].alpha" (subscript_expression "pPVar10[uVar8]" identifier [ identifier ]) . field_identifier))) ;) })) (expression_statement "*(float *)(iVar4 + pPVar19[4].offset * 4) = fVar29;" (assignment_expression "*(float *)(iVar4 + pPVar19[4].offset * 4) = fVar29" (pointer_expression "*(float *)(iVar4 + pPVar19[4].offset * 4)" * (cast_expression "(float *)(iVar4 + pPVar19[4].offset * 4)" ( (type_descriptor "float *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar4 + pPVar19[4].offset * 4)" ( (binary_expression "iVar4 + pPVar19[4].offset * 4" identifier + (binary_expression "pPVar19[4].offset * 4" (field_expression "pPVar19[4].offset" (subscript_expression "pPVar19[4]" identifier [ number_literal ]) . field_identifier) * number_literal)) )))) = identifier) ;) })) (expression_statement "sVar13 = sVar13 + 1;" (assignment_expression "sVar13 = sVar13 + 1" identifier = (binary_expression "sVar13 + 1" identifier + number_literal)) ;) (expression_statement "iVar4 = iVar4 + sVar2 * 4;" (assignment_expression "iVar4 = iVar4 + sVar2 * 4" identifier = (binary_expression "iVar4 + sVar2 * 4" identifier + (binary_expression "sVar2 * 4" identifier * number_literal))) ;) (expression_statement "pfVar17 = pfVar17 + sVar2;" (assignment_expression "pfVar17 = pfVar17 + sVar2" identifier = (binary_expression "pfVar17 + sVar2" identifier + identifier)) ;) (expression_statement "pfVar15 = pfVar15 + sVar2;" (assignment_expression "pfVar15 = pfVar15 + sVar2" identifier = (binary_expression "pfVar15 + sVar2" identifier + identifier)) ;) (expression_statement "pfVar14 = pfVar14 + sVar2;" (assignment_expression "pfVar14 = pfVar14 + sVar2" identifier = (binary_expression "pfVar14 + sVar2" identifier + identifier)) ;) }) while (parenthesized_expression "(sVar7 != sVar13)" ( (binary_expression "sVar7 != sVar13" identifier != identifier) )) ;) })) (expression_statement "iVar4 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8)(uVar3,exception);" (assignment_expression "iVar4 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8)(uVar3,exception)" identifier = (call_expression "(*(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8)(uVar3,exception)" (parenthesized_expression "(*(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8)" ( (pointer_expression "*(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8" * (cast_expression "(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(uVar3,exception)" ( identifier , identifier )))) ;) (if_statement "if (iVar4 == 0) goto LAB_00065918;" if (parenthesized_expression "(iVar4 == 0)" ( (binary_expression "iVar4 == 0" identifier == number_literal) )) (goto_statement "goto LAB_00065918;" goto statement_identifier ;)) (expression_statement "iVar25 = iVar25 + 1;" (assignment_expression "iVar25 = iVar25 + 1" identifier = (binary_expression "iVar25 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(iVar25 < (int)image->rows)" ( (binary_expression "iVar25 < (int)image->rows" identifier < (cast_expression "(int)image->rows" ( (type_descriptor "int" primitive_type) ) (field_expression "image->rows" identifier -> field_identifier))) )) ;) })) (expression_statement "MVar24 = MagickTrue;" (assignment_expression "MVar24 = MagickTrue" identifier = identifier) ;) (labeled_statement "LAB_000658cc:\n          (*(code *)PTR_DestroyCacheView_003a8ef4)(uVar3);" statement_identifier : (expression_statement "(*(code *)PTR_DestroyCacheView_003a8ef4)(uVar3);" (call_expression "(*(code *)PTR_DestroyCacheView_003a8ef4)(uVar3)" (parenthesized_expression "(*(code *)PTR_DestroyCacheView_003a8ef4)" ( (pointer_expression "*(code *)PTR_DestroyCacheView_003a8ef4" * (cast_expression "(code *)PTR_DestroyCacheView_003a8ef4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(uVar3)" ( identifier ))) ;)) (expression_statement "(*(code *)PTR_RelinquishMagickMemory_003a8fc0)(puVar1);" (call_expression "(*(code *)PTR_RelinquishMagickMemory_003a8fc0)(puVar1)" (parenthesized_expression "(*(code *)PTR_RelinquishMagickMemory_003a8fc0)" ( (pointer_expression "*(code *)PTR_RelinquishMagickMemory_003a8fc0" * (cast_expression "(code *)PTR_RelinquishMagickMemory_003a8fc0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(puVar1)" ( identifier ))) ;) (return_statement "return MVar24;" return identifier ;) })) (expression_statement "MVar24 = MagickFalse;" (assignment_expression "MVar24 = MagickFalse" identifier = identifier) ;) (expression_statement "(*(code *)PTR_ThrowMagickException_003a8f20)\n                  (exception,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                   PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x147,400,\n                   PTR_LAB_003a88e0 + 0x16f8,PTR_LAB_003a88e0 + 0x3e28,image->filename);" (call_expression "(*(code *)PTR_ThrowMagickException_003a8f20)\n                  (exception,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                   PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x147,400,\n                   PTR_LAB_003a88e0 + 0x16f8,PTR_LAB_003a88e0 + 0x3e28,image->filename)" (parenthesized_expression "(*(code *)PTR_ThrowMagickException_003a8f20)" ( (pointer_expression "*(code *)PTR_ThrowMagickException_003a8f20" * (cast_expression "(code *)PTR_ThrowMagickException_003a8f20" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(exception,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                   PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x147,400,\n                   PTR_LAB_003a88e0 + 0x16f8,PTR_LAB_003a88e0 + 0x3e28,image->filename)" ( identifier , (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88" identifier + number_literal) , (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70" identifier + number_literal) , number_literal , number_literal , (binary_expression "PTR_LAB_003a88e0 + 0x16f8" identifier + number_literal) , (binary_expression "PTR_LAB_003a88e0 + 0x3e28" identifier + number_literal) , (field_expression "image->filename" identifier -> field_identifier) ))) ;) })) (return_statement "return MVar24;" return identifier ;) })) }))) (expression_statement "piVar11 = (int *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3784);" (assignment_expression "piVar11 = (int *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3784)" identifier = (cast_expression "(int *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3784)" ( (type_descriptor "int *" primitive_type (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 "puVar26 = PTR___assert_fail_003a9608;" (assignment_expression "puVar26 = PTR___assert_fail_003a9608" identifier = identifier) ;) (expression_statement "(*(code *)PTR___assert_fail_003a9608)\n            (piVar11,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,0x13d,\n             PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a58);" (call_expression "(*(code *)PTR___assert_fail_003a9608)\n            (piVar11,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,0x13d,\n             PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a58)" (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 "(piVar11,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,0x13d,\n             PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a58)" ( identifier , (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88" identifier + number_literal) , number_literal , (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a58" identifier + number_literal) ))) ;) (expression_statement "iVar25 = (**(code **)(puVar26 + 0x343f4c))();" (assignment_expression "iVar25 = (**(code **)(puVar26 + 0x343f4c))()" identifier = (call_expression "(**(code **)(puVar26 + 0x343f4c))()" (parenthesized_expression "(**(code **)(puVar26 + 0x343f4c))" ( (pointer_expression "**(code **)(puVar26 + 0x343f4c)" * (pointer_expression "*(code **)(puVar26 + 0x343f4c)" * (cast_expression "(code **)(puVar26 + 0x343f4c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar26 + 0x343f4c)" ( (binary_expression "puVar26 + 0x343f4c" identifier + number_literal) ))))) )) (argument_list "()" ( )))) ;) (expression_statement "iVar4 = (**(code **)(puVar26 + 0x343b48))();" (assignment_expression "iVar4 = (**(code **)(puVar26 + 0x343b48))()" identifier = (call_expression "(**(code **)(puVar26 + 0x343b48))()" (parenthesized_expression "(**(code **)(puVar26 + 0x343b48))" ( (pointer_expression "**(code **)(puVar26 + 0x343b48)" * (pointer_expression "*(code **)(puVar26 + 0x343b48)" * (cast_expression "(code **)(puVar26 + 0x343b48)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar26 + 0x343b48)" ( (binary_expression "puVar26 + 0x343b48" identifier + number_literal) ))))) )) (argument_list "()" ( )))) ;) (if_statement "if (iVar25 == 0) {\n    trap(7);\n  }" if (parenthesized_expression "(iVar25 == 0)" ( (binary_expression "iVar25 == 0" identifier == number_literal) )) (compound_statement "{\n    trap(7);\n  }" { (expression_statement "trap(7);" (call_expression "trap(7)" identifier (argument_list "(7)" ( number_literal ))) ;) })) (expression_statement "iVar37 = 0x10000 / iVar25;" (assignment_expression "iVar37 = 0x10000 / iVar25" identifier = (binary_expression "0x10000 / iVar25" number_literal / identifier)) ;) (expression_statement "iVar25 = 0x10000 % iVar25;" (assignment_expression "iVar25 = 0x10000 % iVar25" identifier = (binary_expression "0x10000 % iVar25" number_literal % identifier)) ;) (if_statement "if (iVar4 < iVar25) {\n    iVar37 = iVar37 + 1;\n    iVar25 = 0;\n  }" if (parenthesized_expression "(iVar4 < iVar25)" ( (binary_expression "iVar4 < iVar25" identifier < identifier) )) (compound_statement "{\n    iVar37 = iVar37 + 1;\n    iVar25 = 0;\n  }" { (expression_statement "iVar37 = iVar37 + 1;" (assignment_expression "iVar37 = iVar37 + 1" identifier = (binary_expression "iVar37 + 1" identifier + number_literal)) ;) (expression_statement "iVar25 = 0;" (assignment_expression "iVar25 = 0" identifier = number_literal) ;) })) (expression_statement "MVar24 = iVar37 * iVar4 + iVar25;" (assignment_expression "MVar24 = iVar37 * iVar4 + iVar25" identifier = (binary_expression "iVar37 * iVar4 + iVar25" (binary_expression "iVar37 * iVar4" identifier * identifier) + identifier)) ;) (expression_statement "MVar18 = iVar37 + MVar24;" (assignment_expression "MVar18 = iVar37 + MVar24" identifier = (binary_expression "iVar37 + MVar24" identifier + identifier)) ;) (if_statement "if ((int)MVar24 < (int)MVar18) {\n    iVar25 = MVar24 * 0x18;\n    dVar27 = *(double *)(*(int *)(puVar26 + 0x342f28) + -0x3f48);\n    dVar34 = *(double *)(*(int *)(puVar26 + 0x342f20) + 0x1a58);\n    dVar35 = *(double *)(*(int *)(puVar26 + 0x342f28) + -0x3f40);\n    dVar33 = *(double *)(*(int *)(puVar26 + 0x342f20) + 0x1400);\n    dVar30 = *(double *)(*(int *)(puVar26 + 0x342f28) + -0x3f50);\n    MVar5 = MVar24;\n    pdVar9 = (double *)(piVar11[2] + iVar25);\n    pdVar12 = (double *)(*piVar11 + iVar25);\n    pdVar16 = (double *)(piVar11[1] + iVar25);\n    do {\n      MVar24 = MVar5 + MagickTrue;\n      dVar31 = (double)(int)MVar5;\n      *pdVar16 = dVar31;\n      dVar28 = (dVar31 + dVar31) - dVar34;\n      dVar32 = dVar28 * dVar30;\n      *pdVar12 = dVar28 * dVar33;\n      *pdVar9 = dVar32;\n      pdVar16[1] = dVar31;\n      pdVar12[1] = dVar28 * 0.0;\n      pdVar9[1] = dVar28 * dVar27;\n      pdVar16[2] = dVar31;\n      pdVar12[2] = dVar28 * dVar35;\n      pdVar9[2] = dVar32;\n      MVar5 = MVar24;\n      pdVar9 = pdVar9 + 3;\n      pdVar12 = pdVar12 + 3;\n      pdVar16 = pdVar16 + 3;\n    } while (MVar18 != MVar24);\n  }" if (parenthesized_expression "((int)MVar24 < (int)MVar18)" ( (binary_expression "(int)MVar24 < (int)MVar18" (cast_expression "(int)MVar24" ( (type_descriptor "int" primitive_type) ) identifier) < (cast_expression "(int)MVar18" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n    iVar25 = MVar24 * 0x18;\n    dVar27 = *(double *)(*(int *)(puVar26 + 0x342f28) + -0x3f48);\n    dVar34 = *(double *)(*(int *)(puVar26 + 0x342f20) + 0x1a58);\n    dVar35 = *(double *)(*(int *)(puVar26 + 0x342f28) + -0x3f40);\n    dVar33 = *(double *)(*(int *)(puVar26 + 0x342f20) + 0x1400);\n    dVar30 = *(double *)(*(int *)(puVar26 + 0x342f28) + -0x3f50);\n    MVar5 = MVar24;\n    pdVar9 = (double *)(piVar11[2] + iVar25);\n    pdVar12 = (double *)(*piVar11 + iVar25);\n    pdVar16 = (double *)(piVar11[1] + iVar25);\n    do {\n      MVar24 = MVar5 + MagickTrue;\n      dVar31 = (double)(int)MVar5;\n      *pdVar16 = dVar31;\n      dVar28 = (dVar31 + dVar31) - dVar34;\n      dVar32 = dVar28 * dVar30;\n      *pdVar12 = dVar28 * dVar33;\n      *pdVar9 = dVar32;\n      pdVar16[1] = dVar31;\n      pdVar12[1] = dVar28 * 0.0;\n      pdVar9[1] = dVar28 * dVar27;\n      pdVar16[2] = dVar31;\n      pdVar12[2] = dVar28 * dVar35;\n      pdVar9[2] = dVar32;\n      MVar5 = MVar24;\n      pdVar9 = pdVar9 + 3;\n      pdVar12 = pdVar12 + 3;\n      pdVar16 = pdVar16 + 3;\n    } while (MVar18 != MVar24);\n  }" { (expression_statement "iVar25 = MVar24 * 0x18;" (assignment_expression "iVar25 = MVar24 * 0x18" identifier = (binary_expression "MVar24 * 0x18" identifier * number_literal)) ;) (expression_statement "dVar27 = *(double *)(*(int *)(puVar26 + 0x342f28) + -0x3f48);" (assignment_expression "dVar27 = *(double *)(*(int *)(puVar26 + 0x342f28) + -0x3f48)" identifier = (pointer_expression "*(double *)(*(int *)(puVar26 + 0x342f28) + -0x3f48)" * (cast_expression "(double *)(*(int *)(puVar26 + 0x342f28) + -0x3f48)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar26 + 0x342f28) + -0x3f48)" ( (binary_expression "*(int *)(puVar26 + 0x342f28) + -0x3f48" (pointer_expression "*(int *)(puVar26 + 0x342f28)" * (cast_expression "(int *)(puVar26 + 0x342f28)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + 0x342f28)" ( (binary_expression "puVar26 + 0x342f28" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar34 = *(double *)(*(int *)(puVar26 + 0x342f20) + 0x1a58);" (assignment_expression "dVar34 = *(double *)(*(int *)(puVar26 + 0x342f20) + 0x1a58)" identifier = (pointer_expression "*(double *)(*(int *)(puVar26 + 0x342f20) + 0x1a58)" * (cast_expression "(double *)(*(int *)(puVar26 + 0x342f20) + 0x1a58)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar26 + 0x342f20) + 0x1a58)" ( (binary_expression "*(int *)(puVar26 + 0x342f20) + 0x1a58" (pointer_expression "*(int *)(puVar26 + 0x342f20)" * (cast_expression "(int *)(puVar26 + 0x342f20)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + 0x342f20)" ( (binary_expression "puVar26 + 0x342f20" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar35 = *(double *)(*(int *)(puVar26 + 0x342f28) + -0x3f40);" (assignment_expression "dVar35 = *(double *)(*(int *)(puVar26 + 0x342f28) + -0x3f40)" identifier = (pointer_expression "*(double *)(*(int *)(puVar26 + 0x342f28) + -0x3f40)" * (cast_expression "(double *)(*(int *)(puVar26 + 0x342f28) + -0x3f40)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar26 + 0x342f28) + -0x3f40)" ( (binary_expression "*(int *)(puVar26 + 0x342f28) + -0x3f40" (pointer_expression "*(int *)(puVar26 + 0x342f28)" * (cast_expression "(int *)(puVar26 + 0x342f28)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + 0x342f28)" ( (binary_expression "puVar26 + 0x342f28" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar33 = *(double *)(*(int *)(puVar26 + 0x342f20) + 0x1400);" (assignment_expression "dVar33 = *(double *)(*(int *)(puVar26 + 0x342f20) + 0x1400)" identifier = (pointer_expression "*(double *)(*(int *)(puVar26 + 0x342f20) + 0x1400)" * (cast_expression "(double *)(*(int *)(puVar26 + 0x342f20) + 0x1400)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar26 + 0x342f20) + 0x1400)" ( (binary_expression "*(int *)(puVar26 + 0x342f20) + 0x1400" (pointer_expression "*(int *)(puVar26 + 0x342f20)" * (cast_expression "(int *)(puVar26 + 0x342f20)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + 0x342f20)" ( (binary_expression "puVar26 + 0x342f20" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar30 = *(double *)(*(int *)(puVar26 + 0x342f28) + -0x3f50);" (assignment_expression "dVar30 = *(double *)(*(int *)(puVar26 + 0x342f28) + -0x3f50)" identifier = (pointer_expression "*(double *)(*(int *)(puVar26 + 0x342f28) + -0x3f50)" * (cast_expression "(double *)(*(int *)(puVar26 + 0x342f28) + -0x3f50)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar26 + 0x342f28) + -0x3f50)" ( (binary_expression "*(int *)(puVar26 + 0x342f28) + -0x3f50" (pointer_expression "*(int *)(puVar26 + 0x342f28)" * (cast_expression "(int *)(puVar26 + 0x342f28)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + 0x342f28)" ( (binary_expression "puVar26 + 0x342f28" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "MVar5 = MVar24;" (assignment_expression "MVar5 = MVar24" identifier = identifier) ;) (expression_statement "pdVar9 = (double *)(piVar11[2] + iVar25);" (assignment_expression "pdVar9 = (double *)(piVar11[2] + iVar25)" identifier = (cast_expression "(double *)(piVar11[2] + iVar25)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar11[2] + iVar25)" ( (binary_expression "piVar11[2] + iVar25" (subscript_expression "piVar11[2]" identifier [ number_literal ]) + identifier) )))) ;) (expression_statement "pdVar12 = (double *)(*piVar11 + iVar25);" (assignment_expression "pdVar12 = (double *)(*piVar11 + iVar25)" identifier = (cast_expression "(double *)(*piVar11 + iVar25)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*piVar11 + iVar25)" ( (binary_expression "*piVar11 + iVar25" (pointer_expression "*piVar11" * identifier) + identifier) )))) ;) (expression_statement "pdVar16 = (double *)(piVar11[1] + iVar25);" (assignment_expression "pdVar16 = (double *)(piVar11[1] + iVar25)" identifier = (cast_expression "(double *)(piVar11[1] + iVar25)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar11[1] + iVar25)" ( (binary_expression "piVar11[1] + iVar25" (subscript_expression "piVar11[1]" identifier [ number_literal ]) + identifier) )))) ;) (do_statement "do {\n      MVar24 = MVar5 + MagickTrue;\n      dVar31 = (double)(int)MVar5;\n      *pdVar16 = dVar31;\n      dVar28 = (dVar31 + dVar31) - dVar34;\n      dVar32 = dVar28 * dVar30;\n      *pdVar12 = dVar28 * dVar33;\n      *pdVar9 = dVar32;\n      pdVar16[1] = dVar31;\n      pdVar12[1] = dVar28 * 0.0;\n      pdVar9[1] = dVar28 * dVar27;\n      pdVar16[2] = dVar31;\n      pdVar12[2] = dVar28 * dVar35;\n      pdVar9[2] = dVar32;\n      MVar5 = MVar24;\n      pdVar9 = pdVar9 + 3;\n      pdVar12 = pdVar12 + 3;\n      pdVar16 = pdVar16 + 3;\n    } while (MVar18 != MVar24);" do (compound_statement "{\n      MVar24 = MVar5 + MagickTrue;\n      dVar31 = (double)(int)MVar5;\n      *pdVar16 = dVar31;\n      dVar28 = (dVar31 + dVar31) - dVar34;\n      dVar32 = dVar28 * dVar30;\n      *pdVar12 = dVar28 * dVar33;\n      *pdVar9 = dVar32;\n      pdVar16[1] = dVar31;\n      pdVar12[1] = dVar28 * 0.0;\n      pdVar9[1] = dVar28 * dVar27;\n      pdVar16[2] = dVar31;\n      pdVar12[2] = dVar28 * dVar35;\n      pdVar9[2] = dVar32;\n      MVar5 = MVar24;\n      pdVar9 = pdVar9 + 3;\n      pdVar12 = pdVar12 + 3;\n      pdVar16 = pdVar16 + 3;\n    }" { (expression_statement "MVar24 = MVar5 + MagickTrue;" (assignment_expression "MVar24 = MVar5 + MagickTrue" identifier = (binary_expression "MVar5 + MagickTrue" identifier + identifier)) ;) (expression_statement "dVar31 = (double)(int)MVar5;" (assignment_expression "dVar31 = (double)(int)MVar5" identifier = (cast_expression "(double)(int)MVar5" ( (type_descriptor "double" primitive_type) ) (cast_expression "(int)MVar5" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (expression_statement "*pdVar16 = dVar31;" (assignment_expression "*pdVar16 = dVar31" (pointer_expression "*pdVar16" * identifier) = identifier) ;) (expression_statement "dVar28 = (dVar31 + dVar31) - dVar34;" (assignment_expression "dVar28 = (dVar31 + dVar31) - dVar34" identifier = (binary_expression "(dVar31 + dVar31) - dVar34" (parenthesized_expression "(dVar31 + dVar31)" ( (binary_expression "dVar31 + dVar31" identifier + identifier) )) - identifier)) ;) (expression_statement "dVar32 = dVar28 * dVar30;" (assignment_expression "dVar32 = dVar28 * dVar30" identifier = (binary_expression "dVar28 * dVar30" identifier * identifier)) ;) (expression_statement "*pdVar12 = dVar28 * dVar33;" (assignment_expression "*pdVar12 = dVar28 * dVar33" (pointer_expression "*pdVar12" * identifier) = (binary_expression "dVar28 * dVar33" identifier * identifier)) ;) (expression_statement "*pdVar9 = dVar32;" (assignment_expression "*pdVar9 = dVar32" (pointer_expression "*pdVar9" * identifier) = identifier) ;) (expression_statement "pdVar16[1] = dVar31;" (assignment_expression "pdVar16[1] = dVar31" (subscript_expression "pdVar16[1]" identifier [ number_literal ]) = identifier) ;) (expression_statement "pdVar12[1] = dVar28 * 0.0;" (assignment_expression "pdVar12[1] = dVar28 * 0.0" (subscript_expression "pdVar12[1]" identifier [ number_literal ]) = (binary_expression "dVar28 * 0.0" identifier * number_literal)) ;) (expression_statement "pdVar9[1] = dVar28 * dVar27;" (assignment_expression "pdVar9[1] = dVar28 * dVar27" (subscript_expression "pdVar9[1]" identifier [ number_literal ]) = (binary_expression "dVar28 * dVar27" identifier * identifier)) ;) (expression_statement "pdVar16[2] = dVar31;" (assignment_expression "pdVar16[2] = dVar31" (subscript_expression "pdVar16[2]" identifier [ number_literal ]) = identifier) ;) (expression_statement "pdVar12[2] = dVar28 * dVar35;" (assignment_expression "pdVar12[2] = dVar28 * dVar35" (subscript_expression "pdVar12[2]" identifier [ number_literal ]) = (binary_expression "dVar28 * dVar35" identifier * identifier)) ;) (expression_statement "pdVar9[2] = dVar32;" (assignment_expression "pdVar9[2] = dVar32" (subscript_expression "pdVar9[2]" identifier [ number_literal ]) = identifier) ;) (expression_statement "MVar5 = MVar24;" (assignment_expression "MVar5 = MVar24" identifier = identifier) ;) (expression_statement "pdVar9 = pdVar9 + 3;" (assignment_expression "pdVar9 = pdVar9 + 3" identifier = (binary_expression "pdVar9 + 3" identifier + number_literal)) ;) (expression_statement "pdVar12 = pdVar12 + 3;" (assignment_expression "pdVar12 = pdVar12 + 3" identifier = (binary_expression "pdVar12 + 3" identifier + number_literal)) ;) (expression_statement "pdVar16 = pdVar16 + 3;" (assignment_expression "pdVar16 = pdVar16 + 3" identifier = (binary_expression "pdVar16 + 3" identifier + number_literal)) ;) }) while (parenthesized_expression "(MVar18 != MVar24)" ( (binary_expression "MVar18 != MVar24" identifier != identifier) )) ;) })) (return_statement "return MVar24;" return identifier ;) })))
(translation_unit "int SortColormapByIntensity(int *param_1,undefined4 param_2)\n\n{\n  ushort *puVar1;\n  int iVar2;\n  undefined4 uVar3;\n  int iVar4;\n  uint uVar5;\n  double *pdVar6;\n  int iVar7;\n  int *piVar8;\n  double *pdVar9;\n  int iVar10;\n  float *pfVar11;\n  float *pfVar12;\n  double *pdVar13;\n  float *pfVar14;\n  int iVar15;\n  int iVar16;\n  int iVar17;\n  int iVar18;\n  int iVar19;\n  int iVar20;\n  float *pfVar21;\n  int iVar22;\n  undefined *puVar23;\n  double dVar24;\n  float fVar26;\n  double dVar25;\n  double dVar27;\n  double dVar28;\n  double dVar29;\n  double dVar30;\n  double dVar31;\n  double dVar32;\n  ulonglong uVar33;\n  \n  if (param_1 == (int *)0x0) {\n    (*(code *)PTR___assert_fail_003a9608)\n              (PTR_LAB_003a88e0 + 0xdd0,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n               0x13a,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a58);\n  }\n  else {\n    if (param_1[0xcd4] != 0) {\n      (*(code *)PTR_LogMagickEvent_003a91e0)\n                (0x8000,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x13c,\n                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x1fec);\n    }\n    if (param_1[0xcdb] == -0x54535255) {\n      iVar22 = 1;\n      if (*param_1 == 2) {\n        puVar1 = (ushort *)(*(code *)PTR_AcquireQuantumMemory_003a950c)(param_1[9],2);\n        if (puVar1 != (ushort *)0x0) {\n          iVar10 = param_1[9];\n          iVar22 = param_1[10];\n          if (0 < iVar10) {\n            iVar15 = 0;\n            pdVar6 = (double *)(iVar22 + 0x48);\n            do {\n              iVar2 = iVar15 + 1;\n              *pdVar6 = (double)iVar15;\n              iVar15 = iVar2;\n              pdVar6 = pdVar6 + 0xb;\n            } while (iVar2 != iVar10);\n          }\n          (*(code *)PTR_qsort_003a98d4)(iVar22,iVar10,0x58,PTR_LAB_003a893c + 0x4ca0);\n          iVar22 = param_1[9];\n          if (0 < iVar22) {\n            iVar10 = 0;\n            pdVar6 = (double *)(param_1[10] + 0x48);\n            do {\n              puVar1[(int)*pdVar6] = (ushort)iVar10;\n              iVar10 = iVar10 + 1;\n              pdVar6 = pdVar6 + 0xb;\n            } while (iVar22 != iVar10);\n          }\n          uVar3 = (*(code *)PTR_AcquireAuthenticCacheView_003a8ed4)(param_1,param_2);\n          if (0 < param_1[7]) {\n            iVar22 = 0;\n            uVar33 = (ulonglong)*(uint *)(PTR_LAB_003a88e0 + 0x1a50);\n            do {\n              iVar10 = (*(code *)PTR_GetCacheViewAuthenticPixels_003a964c)\n                                 (uVar3,0,iVar22,param_1[6],1,param_2);\n              if (iVar10 == 0) {\nLAB_00065918:\n                iVar22 = 0;\n                goto LAB_000658cc;\n              }\n              iVar2 = param_1[6];\n              iVar15 = 0;\n              if (0 < iVar2) {\n                iVar16 = param_1[0xb4];\n                iVar7 = param_1[0xb0];\n                iVar20 = param_1[10];\n                iVar19 = *(int *)(iVar16 + 0x40);\n                iVar18 = *(int *)(iVar16 + 0x28);\n                iVar17 = *(int *)(iVar16 + 0x34);\n                pfVar14 = (float *)(iVar10 + *(int *)(iVar16 + 8) * 4);\n                pfVar12 = (float *)(iVar10 + *(int *)(iVar16 + 0x14) * 4);\n                pfVar11 = (float *)(iVar10 + *(int *)(iVar16 + 0x20) * 4);\n                do {\n                  if (iVar19 == 0) {\n                    uVar5 = (uint)*puVar1;\n                  }\n                  else {\n                    pfVar21 = (float *)(iVar10 + *(int *)(iVar16 + 0x44) * 4);\n                    uVar5 = (uint)puVar1[(int)*pfVar21];\n                    *pfVar21 = (float)uVar5;\n                  }\n                  iVar4 = uVar5 * 0x58 + iVar20;\n                  dVar27 = *(double *)(iVar4 + 0x30);\n                  dVar24 = *(double *)(iVar4 + 0x38);\n                  *pfVar14 = (float)*(double *)(iVar4 + 0x28);\n                  *pfVar12 = (float)dVar27;\n                  *pfVar11 = (float)dVar24;\n                  if (iVar18 != 0) {\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x2c) * 4) =\n                         (float)*(double *)(iVar4 + 0x40);\n                  }\n                  if (iVar17 != 0) {\n                    fVar26 = (float)uVar33;\n                    if (*(int *)(iVar4 + 8) != 0) {\n                      fVar26 = (float)*(double *)(iVar4 + 0x48);\n                    }\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x38) * 4) = fVar26;\n                  }\n                  iVar15 = iVar15 + 1;\n                  iVar10 = iVar10 + iVar7 * 4;\n                  pfVar14 = pfVar14 + iVar7;\n                  pfVar12 = pfVar12 + iVar7;\n                  pfVar11 = pfVar11 + iVar7;\n                } while (iVar2 != iVar15);\n              }\n              iVar10 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8)(uVar3,param_2);\n              if (iVar10 == 0) goto LAB_00065918;\n              iVar22 = iVar22 + 1;\n            } while (iVar22 < param_1[7]);\n          }\n          iVar22 = 1;\nLAB_000658cc:\n          (*(code *)PTR_DestroyCacheView_003a8ef4)(uVar3);\n          (*(code *)PTR_RelinquishMagickMemory_003a8fc0)(puVar1);\n          return iVar22;\n        }\n        iVar22 = 0;\n        (*(code *)PTR_ThrowMagickException_003a8f20)\n                  (param_2,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                   PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x147,400,\n                   PTR_LAB_003a88e0 + 0x16f8,PTR_LAB_003a88e0 + 0x3e28,param_1 + 0xd0);\n      }\n      return iVar22;\n    }\n  }\n  piVar8 = (int *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3784);\n  puVar23 = PTR___assert_fail_003a9608;\n  (*(code *)PTR___assert_fail_003a9608)\n            (piVar8,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,0x13d,\n             PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a58);\n  iVar10 = (**(code **)(puVar23 + 0x343f4c))();\n  iVar22 = (**(code **)(puVar23 + 0x343b48))();\n  if (iVar10 == 0) {\n    trap(7);\n  }\n  iVar15 = 0x10000 / iVar10;\n  iVar10 = 0x10000 % iVar10;\n  if (iVar22 < iVar10) {\n    iVar15 = iVar15 + 1;\n    iVar10 = 0;\n  }\n  iVar10 = iVar15 * iVar22 + iVar10;\n  iVar15 = iVar15 + iVar10;\n  if (iVar10 < iVar15) {\n    iVar2 = iVar10 * 0x18;\n    dVar24 = *(double *)(*(int *)(puVar23 + 0x342f28) + -0x3f48);\n    dVar31 = *(double *)(*(int *)(puVar23 + 0x342f20) + 0x1a58);\n    dVar32 = *(double *)(*(int *)(puVar23 + 0x342f28) + -0x3f40);\n    dVar30 = *(double *)(*(int *)(puVar23 + 0x342f20) + 0x1400);\n    dVar27 = *(double *)(*(int *)(puVar23 + 0x342f28) + -0x3f50);\n    iVar22 = iVar10;\n    pdVar6 = (double *)(piVar8[2] + iVar2);\n    pdVar9 = (double *)(*piVar8 + iVar2);\n    pdVar13 = (double *)(piVar8[1] + iVar2);\n    do {\n      iVar10 = iVar22 + 1;\n      dVar28 = (double)iVar22;\n      *pdVar13 = dVar28;\n      dVar25 = (dVar28 + dVar28) - dVar31;\n      dVar29 = dVar25 * dVar27;\n      *pdVar9 = dVar25 * dVar30;\n      *pdVar6 = dVar29;\n      pdVar13[1] = dVar28;\n      pdVar9[1] = dVar25 * 0.0;\n      pdVar6[1] = dVar25 * dVar24;\n      pdVar13[2] = dVar28;\n      pdVar9[2] = dVar25 * dVar32;\n      pdVar6[2] = dVar29;\n      iVar22 = iVar10;\n      pdVar6 = pdVar6 + 3;\n      pdVar9 = pdVar9 + 3;\n      pdVar13 = pdVar13 + 3;\n    } while (iVar15 != iVar10);\n  }\n  return iVar10;\n}\n\n" (function_definition "int SortColormapByIntensity(int *param_1,undefined4 param_2)\n\n{\n  ushort *puVar1;\n  int iVar2;\n  undefined4 uVar3;\n  int iVar4;\n  uint uVar5;\n  double *pdVar6;\n  int iVar7;\n  int *piVar8;\n  double *pdVar9;\n  int iVar10;\n  float *pfVar11;\n  float *pfVar12;\n  double *pdVar13;\n  float *pfVar14;\n  int iVar15;\n  int iVar16;\n  int iVar17;\n  int iVar18;\n  int iVar19;\n  int iVar20;\n  float *pfVar21;\n  int iVar22;\n  undefined *puVar23;\n  double dVar24;\n  float fVar26;\n  double dVar25;\n  double dVar27;\n  double dVar28;\n  double dVar29;\n  double dVar30;\n  double dVar31;\n  double dVar32;\n  ulonglong uVar33;\n  \n  if (param_1 == (int *)0x0) {\n    (*(code *)PTR___assert_fail_003a9608)\n              (PTR_LAB_003a88e0 + 0xdd0,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n               0x13a,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a58);\n  }\n  else {\n    if (param_1[0xcd4] != 0) {\n      (*(code *)PTR_LogMagickEvent_003a91e0)\n                (0x8000,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x13c,\n                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x1fec);\n    }\n    if (param_1[0xcdb] == -0x54535255) {\n      iVar22 = 1;\n      if (*param_1 == 2) {\n        puVar1 = (ushort *)(*(code *)PTR_AcquireQuantumMemory_003a950c)(param_1[9],2);\n        if (puVar1 != (ushort *)0x0) {\n          iVar10 = param_1[9];\n          iVar22 = param_1[10];\n          if (0 < iVar10) {\n            iVar15 = 0;\n            pdVar6 = (double *)(iVar22 + 0x48);\n            do {\n              iVar2 = iVar15 + 1;\n              *pdVar6 = (double)iVar15;\n              iVar15 = iVar2;\n              pdVar6 = pdVar6 + 0xb;\n            } while (iVar2 != iVar10);\n          }\n          (*(code *)PTR_qsort_003a98d4)(iVar22,iVar10,0x58,PTR_LAB_003a893c + 0x4ca0);\n          iVar22 = param_1[9];\n          if (0 < iVar22) {\n            iVar10 = 0;\n            pdVar6 = (double *)(param_1[10] + 0x48);\n            do {\n              puVar1[(int)*pdVar6] = (ushort)iVar10;\n              iVar10 = iVar10 + 1;\n              pdVar6 = pdVar6 + 0xb;\n            } while (iVar22 != iVar10);\n          }\n          uVar3 = (*(code *)PTR_AcquireAuthenticCacheView_003a8ed4)(param_1,param_2);\n          if (0 < param_1[7]) {\n            iVar22 = 0;\n            uVar33 = (ulonglong)*(uint *)(PTR_LAB_003a88e0 + 0x1a50);\n            do {\n              iVar10 = (*(code *)PTR_GetCacheViewAuthenticPixels_003a964c)\n                                 (uVar3,0,iVar22,param_1[6],1,param_2);\n              if (iVar10 == 0) {\nLAB_00065918:\n                iVar22 = 0;\n                goto LAB_000658cc;\n              }\n              iVar2 = param_1[6];\n              iVar15 = 0;\n              if (0 < iVar2) {\n                iVar16 = param_1[0xb4];\n                iVar7 = param_1[0xb0];\n                iVar20 = param_1[10];\n                iVar19 = *(int *)(iVar16 + 0x40);\n                iVar18 = *(int *)(iVar16 + 0x28);\n                iVar17 = *(int *)(iVar16 + 0x34);\n                pfVar14 = (float *)(iVar10 + *(int *)(iVar16 + 8) * 4);\n                pfVar12 = (float *)(iVar10 + *(int *)(iVar16 + 0x14) * 4);\n                pfVar11 = (float *)(iVar10 + *(int *)(iVar16 + 0x20) * 4);\n                do {\n                  if (iVar19 == 0) {\n                    uVar5 = (uint)*puVar1;\n                  }\n                  else {\n                    pfVar21 = (float *)(iVar10 + *(int *)(iVar16 + 0x44) * 4);\n                    uVar5 = (uint)puVar1[(int)*pfVar21];\n                    *pfVar21 = (float)uVar5;\n                  }\n                  iVar4 = uVar5 * 0x58 + iVar20;\n                  dVar27 = *(double *)(iVar4 + 0x30);\n                  dVar24 = *(double *)(iVar4 + 0x38);\n                  *pfVar14 = (float)*(double *)(iVar4 + 0x28);\n                  *pfVar12 = (float)dVar27;\n                  *pfVar11 = (float)dVar24;\n                  if (iVar18 != 0) {\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x2c) * 4) =\n                         (float)*(double *)(iVar4 + 0x40);\n                  }\n                  if (iVar17 != 0) {\n                    fVar26 = (float)uVar33;\n                    if (*(int *)(iVar4 + 8) != 0) {\n                      fVar26 = (float)*(double *)(iVar4 + 0x48);\n                    }\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x38) * 4) = fVar26;\n                  }\n                  iVar15 = iVar15 + 1;\n                  iVar10 = iVar10 + iVar7 * 4;\n                  pfVar14 = pfVar14 + iVar7;\n                  pfVar12 = pfVar12 + iVar7;\n                  pfVar11 = pfVar11 + iVar7;\n                } while (iVar2 != iVar15);\n              }\n              iVar10 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8)(uVar3,param_2);\n              if (iVar10 == 0) goto LAB_00065918;\n              iVar22 = iVar22 + 1;\n            } while (iVar22 < param_1[7]);\n          }\n          iVar22 = 1;\nLAB_000658cc:\n          (*(code *)PTR_DestroyCacheView_003a8ef4)(uVar3);\n          (*(code *)PTR_RelinquishMagickMemory_003a8fc0)(puVar1);\n          return iVar22;\n        }\n        iVar22 = 0;\n        (*(code *)PTR_ThrowMagickException_003a8f20)\n                  (param_2,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                   PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x147,400,\n                   PTR_LAB_003a88e0 + 0x16f8,PTR_LAB_003a88e0 + 0x3e28,param_1 + 0xd0);\n      }\n      return iVar22;\n    }\n  }\n  piVar8 = (int *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3784);\n  puVar23 = PTR___assert_fail_003a9608;\n  (*(code *)PTR___assert_fail_003a9608)\n            (piVar8,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,0x13d,\n             PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a58);\n  iVar10 = (**(code **)(puVar23 + 0x343f4c))();\n  iVar22 = (**(code **)(puVar23 + 0x343b48))();\n  if (iVar10 == 0) {\n    trap(7);\n  }\n  iVar15 = 0x10000 / iVar10;\n  iVar10 = 0x10000 % iVar10;\n  if (iVar22 < iVar10) {\n    iVar15 = iVar15 + 1;\n    iVar10 = 0;\n  }\n  iVar10 = iVar15 * iVar22 + iVar10;\n  iVar15 = iVar15 + iVar10;\n  if (iVar10 < iVar15) {\n    iVar2 = iVar10 * 0x18;\n    dVar24 = *(double *)(*(int *)(puVar23 + 0x342f28) + -0x3f48);\n    dVar31 = *(double *)(*(int *)(puVar23 + 0x342f20) + 0x1a58);\n    dVar32 = *(double *)(*(int *)(puVar23 + 0x342f28) + -0x3f40);\n    dVar30 = *(double *)(*(int *)(puVar23 + 0x342f20) + 0x1400);\n    dVar27 = *(double *)(*(int *)(puVar23 + 0x342f28) + -0x3f50);\n    iVar22 = iVar10;\n    pdVar6 = (double *)(piVar8[2] + iVar2);\n    pdVar9 = (double *)(*piVar8 + iVar2);\n    pdVar13 = (double *)(piVar8[1] + iVar2);\n    do {\n      iVar10 = iVar22 + 1;\n      dVar28 = (double)iVar22;\n      *pdVar13 = dVar28;\n      dVar25 = (dVar28 + dVar28) - dVar31;\n      dVar29 = dVar25 * dVar27;\n      *pdVar9 = dVar25 * dVar30;\n      *pdVar6 = dVar29;\n      pdVar13[1] = dVar28;\n      pdVar9[1] = dVar25 * 0.0;\n      pdVar6[1] = dVar25 * dVar24;\n      pdVar13[2] = dVar28;\n      pdVar9[2] = dVar25 * dVar32;\n      pdVar6[2] = dVar29;\n      iVar22 = iVar10;\n      pdVar6 = pdVar6 + 3;\n      pdVar9 = pdVar9 + 3;\n      pdVar13 = pdVar13 + 3;\n    } while (iVar15 != iVar10);\n  }\n  return iVar10;\n}" primitive_type (function_declarator "SortColormapByIntensity(int *param_1,undefined4 param_2)" identifier (parameter_list "(int *param_1,undefined4 param_2)" ( (parameter_declaration "int *param_1" primitive_type (pointer_declarator "*param_1" * identifier)) , (parameter_declaration "undefined4 param_2" type_identifier identifier) ))) (compound_statement "{\n  ushort *puVar1;\n  int iVar2;\n  undefined4 uVar3;\n  int iVar4;\n  uint uVar5;\n  double *pdVar6;\n  int iVar7;\n  int *piVar8;\n  double *pdVar9;\n  int iVar10;\n  float *pfVar11;\n  float *pfVar12;\n  double *pdVar13;\n  float *pfVar14;\n  int iVar15;\n  int iVar16;\n  int iVar17;\n  int iVar18;\n  int iVar19;\n  int iVar20;\n  float *pfVar21;\n  int iVar22;\n  undefined *puVar23;\n  double dVar24;\n  float fVar26;\n  double dVar25;\n  double dVar27;\n  double dVar28;\n  double dVar29;\n  double dVar30;\n  double dVar31;\n  double dVar32;\n  ulonglong uVar33;\n  \n  if (param_1 == (int *)0x0) {\n    (*(code *)PTR___assert_fail_003a9608)\n              (PTR_LAB_003a88e0 + 0xdd0,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n               0x13a,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a58);\n  }\n  else {\n    if (param_1[0xcd4] != 0) {\n      (*(code *)PTR_LogMagickEvent_003a91e0)\n                (0x8000,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x13c,\n                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x1fec);\n    }\n    if (param_1[0xcdb] == -0x54535255) {\n      iVar22 = 1;\n      if (*param_1 == 2) {\n        puVar1 = (ushort *)(*(code *)PTR_AcquireQuantumMemory_003a950c)(param_1[9],2);\n        if (puVar1 != (ushort *)0x0) {\n          iVar10 = param_1[9];\n          iVar22 = param_1[10];\n          if (0 < iVar10) {\n            iVar15 = 0;\n            pdVar6 = (double *)(iVar22 + 0x48);\n            do {\n              iVar2 = iVar15 + 1;\n              *pdVar6 = (double)iVar15;\n              iVar15 = iVar2;\n              pdVar6 = pdVar6 + 0xb;\n            } while (iVar2 != iVar10);\n          }\n          (*(code *)PTR_qsort_003a98d4)(iVar22,iVar10,0x58,PTR_LAB_003a893c + 0x4ca0);\n          iVar22 = param_1[9];\n          if (0 < iVar22) {\n            iVar10 = 0;\n            pdVar6 = (double *)(param_1[10] + 0x48);\n            do {\n              puVar1[(int)*pdVar6] = (ushort)iVar10;\n              iVar10 = iVar10 + 1;\n              pdVar6 = pdVar6 + 0xb;\n            } while (iVar22 != iVar10);\n          }\n          uVar3 = (*(code *)PTR_AcquireAuthenticCacheView_003a8ed4)(param_1,param_2);\n          if (0 < param_1[7]) {\n            iVar22 = 0;\n            uVar33 = (ulonglong)*(uint *)(PTR_LAB_003a88e0 + 0x1a50);\n            do {\n              iVar10 = (*(code *)PTR_GetCacheViewAuthenticPixels_003a964c)\n                                 (uVar3,0,iVar22,param_1[6],1,param_2);\n              if (iVar10 == 0) {\nLAB_00065918:\n                iVar22 = 0;\n                goto LAB_000658cc;\n              }\n              iVar2 = param_1[6];\n              iVar15 = 0;\n              if (0 < iVar2) {\n                iVar16 = param_1[0xb4];\n                iVar7 = param_1[0xb0];\n                iVar20 = param_1[10];\n                iVar19 = *(int *)(iVar16 + 0x40);\n                iVar18 = *(int *)(iVar16 + 0x28);\n                iVar17 = *(int *)(iVar16 + 0x34);\n                pfVar14 = (float *)(iVar10 + *(int *)(iVar16 + 8) * 4);\n                pfVar12 = (float *)(iVar10 + *(int *)(iVar16 + 0x14) * 4);\n                pfVar11 = (float *)(iVar10 + *(int *)(iVar16 + 0x20) * 4);\n                do {\n                  if (iVar19 == 0) {\n                    uVar5 = (uint)*puVar1;\n                  }\n                  else {\n                    pfVar21 = (float *)(iVar10 + *(int *)(iVar16 + 0x44) * 4);\n                    uVar5 = (uint)puVar1[(int)*pfVar21];\n                    *pfVar21 = (float)uVar5;\n                  }\n                  iVar4 = uVar5 * 0x58 + iVar20;\n                  dVar27 = *(double *)(iVar4 + 0x30);\n                  dVar24 = *(double *)(iVar4 + 0x38);\n                  *pfVar14 = (float)*(double *)(iVar4 + 0x28);\n                  *pfVar12 = (float)dVar27;\n                  *pfVar11 = (float)dVar24;\n                  if (iVar18 != 0) {\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x2c) * 4) =\n                         (float)*(double *)(iVar4 + 0x40);\n                  }\n                  if (iVar17 != 0) {\n                    fVar26 = (float)uVar33;\n                    if (*(int *)(iVar4 + 8) != 0) {\n                      fVar26 = (float)*(double *)(iVar4 + 0x48);\n                    }\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x38) * 4) = fVar26;\n                  }\n                  iVar15 = iVar15 + 1;\n                  iVar10 = iVar10 + iVar7 * 4;\n                  pfVar14 = pfVar14 + iVar7;\n                  pfVar12 = pfVar12 + iVar7;\n                  pfVar11 = pfVar11 + iVar7;\n                } while (iVar2 != iVar15);\n              }\n              iVar10 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8)(uVar3,param_2);\n              if (iVar10 == 0) goto LAB_00065918;\n              iVar22 = iVar22 + 1;\n            } while (iVar22 < param_1[7]);\n          }\n          iVar22 = 1;\nLAB_000658cc:\n          (*(code *)PTR_DestroyCacheView_003a8ef4)(uVar3);\n          (*(code *)PTR_RelinquishMagickMemory_003a8fc0)(puVar1);\n          return iVar22;\n        }\n        iVar22 = 0;\n        (*(code *)PTR_ThrowMagickException_003a8f20)\n                  (param_2,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                   PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x147,400,\n                   PTR_LAB_003a88e0 + 0x16f8,PTR_LAB_003a88e0 + 0x3e28,param_1 + 0xd0);\n      }\n      return iVar22;\n    }\n  }\n  piVar8 = (int *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3784);\n  puVar23 = PTR___assert_fail_003a9608;\n  (*(code *)PTR___assert_fail_003a9608)\n            (piVar8,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,0x13d,\n             PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a58);\n  iVar10 = (**(code **)(puVar23 + 0x343f4c))();\n  iVar22 = (**(code **)(puVar23 + 0x343b48))();\n  if (iVar10 == 0) {\n    trap(7);\n  }\n  iVar15 = 0x10000 / iVar10;\n  iVar10 = 0x10000 % iVar10;\n  if (iVar22 < iVar10) {\n    iVar15 = iVar15 + 1;\n    iVar10 = 0;\n  }\n  iVar10 = iVar15 * iVar22 + iVar10;\n  iVar15 = iVar15 + iVar10;\n  if (iVar10 < iVar15) {\n    iVar2 = iVar10 * 0x18;\n    dVar24 = *(double *)(*(int *)(puVar23 + 0x342f28) + -0x3f48);\n    dVar31 = *(double *)(*(int *)(puVar23 + 0x342f20) + 0x1a58);\n    dVar32 = *(double *)(*(int *)(puVar23 + 0x342f28) + -0x3f40);\n    dVar30 = *(double *)(*(int *)(puVar23 + 0x342f20) + 0x1400);\n    dVar27 = *(double *)(*(int *)(puVar23 + 0x342f28) + -0x3f50);\n    iVar22 = iVar10;\n    pdVar6 = (double *)(piVar8[2] + iVar2);\n    pdVar9 = (double *)(*piVar8 + iVar2);\n    pdVar13 = (double *)(piVar8[1] + iVar2);\n    do {\n      iVar10 = iVar22 + 1;\n      dVar28 = (double)iVar22;\n      *pdVar13 = dVar28;\n      dVar25 = (dVar28 + dVar28) - dVar31;\n      dVar29 = dVar25 * dVar27;\n      *pdVar9 = dVar25 * dVar30;\n      *pdVar6 = dVar29;\n      pdVar13[1] = dVar28;\n      pdVar9[1] = dVar25 * 0.0;\n      pdVar6[1] = dVar25 * dVar24;\n      pdVar13[2] = dVar28;\n      pdVar9[2] = dVar25 * dVar32;\n      pdVar6[2] = dVar29;\n      iVar22 = iVar10;\n      pdVar6 = pdVar6 + 3;\n      pdVar9 = pdVar9 + 3;\n      pdVar13 = pdVar13 + 3;\n    } while (iVar15 != iVar10);\n  }\n  return iVar10;\n}" { (declaration "ushort *puVar1;" type_identifier (pointer_declarator "*puVar1" * identifier) ;) (declaration "int iVar2;" primitive_type identifier ;) (declaration "undefined4 uVar3;" type_identifier identifier ;) (declaration "int iVar4;" primitive_type identifier ;) (declaration "uint uVar5;" type_identifier identifier ;) (declaration "double *pdVar6;" primitive_type (pointer_declarator "*pdVar6" * identifier) ;) (declaration "int iVar7;" primitive_type identifier ;) (declaration "int *piVar8;" primitive_type (pointer_declarator "*piVar8" * identifier) ;) (declaration "double *pdVar9;" primitive_type (pointer_declarator "*pdVar9" * identifier) ;) (declaration "int iVar10;" primitive_type identifier ;) (declaration "float *pfVar11;" primitive_type (pointer_declarator "*pfVar11" * identifier) ;) (declaration "float *pfVar12;" primitive_type (pointer_declarator "*pfVar12" * identifier) ;) (declaration "double *pdVar13;" primitive_type (pointer_declarator "*pdVar13" * identifier) ;) (declaration "float *pfVar14;" primitive_type (pointer_declarator "*pfVar14" * identifier) ;) (declaration "int iVar15;" primitive_type identifier ;) (declaration "int iVar16;" primitive_type identifier ;) (declaration "int iVar17;" primitive_type identifier ;) (declaration "int iVar18;" primitive_type identifier ;) (declaration "int iVar19;" primitive_type identifier ;) (declaration "int iVar20;" primitive_type identifier ;) (declaration "float *pfVar21;" primitive_type (pointer_declarator "*pfVar21" * identifier) ;) (declaration "int iVar22;" primitive_type identifier ;) (declaration "undefined *puVar23;" type_identifier (pointer_declarator "*puVar23" * identifier) ;) (declaration "double dVar24;" primitive_type identifier ;) (declaration "float fVar26;" primitive_type identifier ;) (declaration "double dVar25;" 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 "ulonglong uVar33;" type_identifier identifier ;) (if_statement "if (param_1 == (int *)0x0) {\n    (*(code *)PTR___assert_fail_003a9608)\n              (PTR_LAB_003a88e0 + 0xdd0,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n               0x13a,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a58);\n  }\n  else {\n    if (param_1[0xcd4] != 0) {\n      (*(code *)PTR_LogMagickEvent_003a91e0)\n                (0x8000,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x13c,\n                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x1fec);\n    }\n    if (param_1[0xcdb] == -0x54535255) {\n      iVar22 = 1;\n      if (*param_1 == 2) {\n        puVar1 = (ushort *)(*(code *)PTR_AcquireQuantumMemory_003a950c)(param_1[9],2);\n        if (puVar1 != (ushort *)0x0) {\n          iVar10 = param_1[9];\n          iVar22 = param_1[10];\n          if (0 < iVar10) {\n            iVar15 = 0;\n            pdVar6 = (double *)(iVar22 + 0x48);\n            do {\n              iVar2 = iVar15 + 1;\n              *pdVar6 = (double)iVar15;\n              iVar15 = iVar2;\n              pdVar6 = pdVar6 + 0xb;\n            } while (iVar2 != iVar10);\n          }\n          (*(code *)PTR_qsort_003a98d4)(iVar22,iVar10,0x58,PTR_LAB_003a893c + 0x4ca0);\n          iVar22 = param_1[9];\n          if (0 < iVar22) {\n            iVar10 = 0;\n            pdVar6 = (double *)(param_1[10] + 0x48);\n            do {\n              puVar1[(int)*pdVar6] = (ushort)iVar10;\n              iVar10 = iVar10 + 1;\n              pdVar6 = pdVar6 + 0xb;\n            } while (iVar22 != iVar10);\n          }\n          uVar3 = (*(code *)PTR_AcquireAuthenticCacheView_003a8ed4)(param_1,param_2);\n          if (0 < param_1[7]) {\n            iVar22 = 0;\n            uVar33 = (ulonglong)*(uint *)(PTR_LAB_003a88e0 + 0x1a50);\n            do {\n              iVar10 = (*(code *)PTR_GetCacheViewAuthenticPixels_003a964c)\n                                 (uVar3,0,iVar22,param_1[6],1,param_2);\n              if (iVar10 == 0) {\nLAB_00065918:\n                iVar22 = 0;\n                goto LAB_000658cc;\n              }\n              iVar2 = param_1[6];\n              iVar15 = 0;\n              if (0 < iVar2) {\n                iVar16 = param_1[0xb4];\n                iVar7 = param_1[0xb0];\n                iVar20 = param_1[10];\n                iVar19 = *(int *)(iVar16 + 0x40);\n                iVar18 = *(int *)(iVar16 + 0x28);\n                iVar17 = *(int *)(iVar16 + 0x34);\n                pfVar14 = (float *)(iVar10 + *(int *)(iVar16 + 8) * 4);\n                pfVar12 = (float *)(iVar10 + *(int *)(iVar16 + 0x14) * 4);\n                pfVar11 = (float *)(iVar10 + *(int *)(iVar16 + 0x20) * 4);\n                do {\n                  if (iVar19 == 0) {\n                    uVar5 = (uint)*puVar1;\n                  }\n                  else {\n                    pfVar21 = (float *)(iVar10 + *(int *)(iVar16 + 0x44) * 4);\n                    uVar5 = (uint)puVar1[(int)*pfVar21];\n                    *pfVar21 = (float)uVar5;\n                  }\n                  iVar4 = uVar5 * 0x58 + iVar20;\n                  dVar27 = *(double *)(iVar4 + 0x30);\n                  dVar24 = *(double *)(iVar4 + 0x38);\n                  *pfVar14 = (float)*(double *)(iVar4 + 0x28);\n                  *pfVar12 = (float)dVar27;\n                  *pfVar11 = (float)dVar24;\n                  if (iVar18 != 0) {\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x2c) * 4) =\n                         (float)*(double *)(iVar4 + 0x40);\n                  }\n                  if (iVar17 != 0) {\n                    fVar26 = (float)uVar33;\n                    if (*(int *)(iVar4 + 8) != 0) {\n                      fVar26 = (float)*(double *)(iVar4 + 0x48);\n                    }\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x38) * 4) = fVar26;\n                  }\n                  iVar15 = iVar15 + 1;\n                  iVar10 = iVar10 + iVar7 * 4;\n                  pfVar14 = pfVar14 + iVar7;\n                  pfVar12 = pfVar12 + iVar7;\n                  pfVar11 = pfVar11 + iVar7;\n                } while (iVar2 != iVar15);\n              }\n              iVar10 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8)(uVar3,param_2);\n              if (iVar10 == 0) goto LAB_00065918;\n              iVar22 = iVar22 + 1;\n            } while (iVar22 < param_1[7]);\n          }\n          iVar22 = 1;\nLAB_000658cc:\n          (*(code *)PTR_DestroyCacheView_003a8ef4)(uVar3);\n          (*(code *)PTR_RelinquishMagickMemory_003a8fc0)(puVar1);\n          return iVar22;\n        }\n        iVar22 = 0;\n        (*(code *)PTR_ThrowMagickException_003a8f20)\n                  (param_2,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                   PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x147,400,\n                   PTR_LAB_003a88e0 + 0x16f8,PTR_LAB_003a88e0 + 0x3e28,param_1 + 0xd0);\n      }\n      return iVar22;\n    }\n  }" if (parenthesized_expression "(param_1 == (int *)0x0)" ( (binary_expression "param_1 == (int *)0x0" identifier == (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    (*(code *)PTR___assert_fail_003a9608)\n              (PTR_LAB_003a88e0 + 0xdd0,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n               0x13a,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a58);\n  }" { (expression_statement "(*(code *)PTR___assert_fail_003a9608)\n              (PTR_LAB_003a88e0 + 0xdd0,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n               0x13a,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a58);" (call_expression "(*(code *)PTR___assert_fail_003a9608)\n              (PTR_LAB_003a88e0 + 0xdd0,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n               0x13a,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a58)" (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_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n               0x13a,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a58)" ( (binary_expression "PTR_LAB_003a88e0 + 0xdd0" identifier + number_literal) , (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88" identifier + number_literal) , number_literal , (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a58" identifier + number_literal) ))) ;) }) (else_clause "else {\n    if (param_1[0xcd4] != 0) {\n      (*(code *)PTR_LogMagickEvent_003a91e0)\n                (0x8000,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x13c,\n                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x1fec);\n    }\n    if (param_1[0xcdb] == -0x54535255) {\n      iVar22 = 1;\n      if (*param_1 == 2) {\n        puVar1 = (ushort *)(*(code *)PTR_AcquireQuantumMemory_003a950c)(param_1[9],2);\n        if (puVar1 != (ushort *)0x0) {\n          iVar10 = param_1[9];\n          iVar22 = param_1[10];\n          if (0 < iVar10) {\n            iVar15 = 0;\n            pdVar6 = (double *)(iVar22 + 0x48);\n            do {\n              iVar2 = iVar15 + 1;\n              *pdVar6 = (double)iVar15;\n              iVar15 = iVar2;\n              pdVar6 = pdVar6 + 0xb;\n            } while (iVar2 != iVar10);\n          }\n          (*(code *)PTR_qsort_003a98d4)(iVar22,iVar10,0x58,PTR_LAB_003a893c + 0x4ca0);\n          iVar22 = param_1[9];\n          if (0 < iVar22) {\n            iVar10 = 0;\n            pdVar6 = (double *)(param_1[10] + 0x48);\n            do {\n              puVar1[(int)*pdVar6] = (ushort)iVar10;\n              iVar10 = iVar10 + 1;\n              pdVar6 = pdVar6 + 0xb;\n            } while (iVar22 != iVar10);\n          }\n          uVar3 = (*(code *)PTR_AcquireAuthenticCacheView_003a8ed4)(param_1,param_2);\n          if (0 < param_1[7]) {\n            iVar22 = 0;\n            uVar33 = (ulonglong)*(uint *)(PTR_LAB_003a88e0 + 0x1a50);\n            do {\n              iVar10 = (*(code *)PTR_GetCacheViewAuthenticPixels_003a964c)\n                                 (uVar3,0,iVar22,param_1[6],1,param_2);\n              if (iVar10 == 0) {\nLAB_00065918:\n                iVar22 = 0;\n                goto LAB_000658cc;\n              }\n              iVar2 = param_1[6];\n              iVar15 = 0;\n              if (0 < iVar2) {\n                iVar16 = param_1[0xb4];\n                iVar7 = param_1[0xb0];\n                iVar20 = param_1[10];\n                iVar19 = *(int *)(iVar16 + 0x40);\n                iVar18 = *(int *)(iVar16 + 0x28);\n                iVar17 = *(int *)(iVar16 + 0x34);\n                pfVar14 = (float *)(iVar10 + *(int *)(iVar16 + 8) * 4);\n                pfVar12 = (float *)(iVar10 + *(int *)(iVar16 + 0x14) * 4);\n                pfVar11 = (float *)(iVar10 + *(int *)(iVar16 + 0x20) * 4);\n                do {\n                  if (iVar19 == 0) {\n                    uVar5 = (uint)*puVar1;\n                  }\n                  else {\n                    pfVar21 = (float *)(iVar10 + *(int *)(iVar16 + 0x44) * 4);\n                    uVar5 = (uint)puVar1[(int)*pfVar21];\n                    *pfVar21 = (float)uVar5;\n                  }\n                  iVar4 = uVar5 * 0x58 + iVar20;\n                  dVar27 = *(double *)(iVar4 + 0x30);\n                  dVar24 = *(double *)(iVar4 + 0x38);\n                  *pfVar14 = (float)*(double *)(iVar4 + 0x28);\n                  *pfVar12 = (float)dVar27;\n                  *pfVar11 = (float)dVar24;\n                  if (iVar18 != 0) {\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x2c) * 4) =\n                         (float)*(double *)(iVar4 + 0x40);\n                  }\n                  if (iVar17 != 0) {\n                    fVar26 = (float)uVar33;\n                    if (*(int *)(iVar4 + 8) != 0) {\n                      fVar26 = (float)*(double *)(iVar4 + 0x48);\n                    }\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x38) * 4) = fVar26;\n                  }\n                  iVar15 = iVar15 + 1;\n                  iVar10 = iVar10 + iVar7 * 4;\n                  pfVar14 = pfVar14 + iVar7;\n                  pfVar12 = pfVar12 + iVar7;\n                  pfVar11 = pfVar11 + iVar7;\n                } while (iVar2 != iVar15);\n              }\n              iVar10 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8)(uVar3,param_2);\n              if (iVar10 == 0) goto LAB_00065918;\n              iVar22 = iVar22 + 1;\n            } while (iVar22 < param_1[7]);\n          }\n          iVar22 = 1;\nLAB_000658cc:\n          (*(code *)PTR_DestroyCacheView_003a8ef4)(uVar3);\n          (*(code *)PTR_RelinquishMagickMemory_003a8fc0)(puVar1);\n          return iVar22;\n        }\n        iVar22 = 0;\n        (*(code *)PTR_ThrowMagickException_003a8f20)\n                  (param_2,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                   PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x147,400,\n                   PTR_LAB_003a88e0 + 0x16f8,PTR_LAB_003a88e0 + 0x3e28,param_1 + 0xd0);\n      }\n      return iVar22;\n    }\n  }" else (compound_statement "{\n    if (param_1[0xcd4] != 0) {\n      (*(code *)PTR_LogMagickEvent_003a91e0)\n                (0x8000,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x13c,\n                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x1fec);\n    }\n    if (param_1[0xcdb] == -0x54535255) {\n      iVar22 = 1;\n      if (*param_1 == 2) {\n        puVar1 = (ushort *)(*(code *)PTR_AcquireQuantumMemory_003a950c)(param_1[9],2);\n        if (puVar1 != (ushort *)0x0) {\n          iVar10 = param_1[9];\n          iVar22 = param_1[10];\n          if (0 < iVar10) {\n            iVar15 = 0;\n            pdVar6 = (double *)(iVar22 + 0x48);\n            do {\n              iVar2 = iVar15 + 1;\n              *pdVar6 = (double)iVar15;\n              iVar15 = iVar2;\n              pdVar6 = pdVar6 + 0xb;\n            } while (iVar2 != iVar10);\n          }\n          (*(code *)PTR_qsort_003a98d4)(iVar22,iVar10,0x58,PTR_LAB_003a893c + 0x4ca0);\n          iVar22 = param_1[9];\n          if (0 < iVar22) {\n            iVar10 = 0;\n            pdVar6 = (double *)(param_1[10] + 0x48);\n            do {\n              puVar1[(int)*pdVar6] = (ushort)iVar10;\n              iVar10 = iVar10 + 1;\n              pdVar6 = pdVar6 + 0xb;\n            } while (iVar22 != iVar10);\n          }\n          uVar3 = (*(code *)PTR_AcquireAuthenticCacheView_003a8ed4)(param_1,param_2);\n          if (0 < param_1[7]) {\n            iVar22 = 0;\n            uVar33 = (ulonglong)*(uint *)(PTR_LAB_003a88e0 + 0x1a50);\n            do {\n              iVar10 = (*(code *)PTR_GetCacheViewAuthenticPixels_003a964c)\n                                 (uVar3,0,iVar22,param_1[6],1,param_2);\n              if (iVar10 == 0) {\nLAB_00065918:\n                iVar22 = 0;\n                goto LAB_000658cc;\n              }\n              iVar2 = param_1[6];\n              iVar15 = 0;\n              if (0 < iVar2) {\n                iVar16 = param_1[0xb4];\n                iVar7 = param_1[0xb0];\n                iVar20 = param_1[10];\n                iVar19 = *(int *)(iVar16 + 0x40);\n                iVar18 = *(int *)(iVar16 + 0x28);\n                iVar17 = *(int *)(iVar16 + 0x34);\n                pfVar14 = (float *)(iVar10 + *(int *)(iVar16 + 8) * 4);\n                pfVar12 = (float *)(iVar10 + *(int *)(iVar16 + 0x14) * 4);\n                pfVar11 = (float *)(iVar10 + *(int *)(iVar16 + 0x20) * 4);\n                do {\n                  if (iVar19 == 0) {\n                    uVar5 = (uint)*puVar1;\n                  }\n                  else {\n                    pfVar21 = (float *)(iVar10 + *(int *)(iVar16 + 0x44) * 4);\n                    uVar5 = (uint)puVar1[(int)*pfVar21];\n                    *pfVar21 = (float)uVar5;\n                  }\n                  iVar4 = uVar5 * 0x58 + iVar20;\n                  dVar27 = *(double *)(iVar4 + 0x30);\n                  dVar24 = *(double *)(iVar4 + 0x38);\n                  *pfVar14 = (float)*(double *)(iVar4 + 0x28);\n                  *pfVar12 = (float)dVar27;\n                  *pfVar11 = (float)dVar24;\n                  if (iVar18 != 0) {\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x2c) * 4) =\n                         (float)*(double *)(iVar4 + 0x40);\n                  }\n                  if (iVar17 != 0) {\n                    fVar26 = (float)uVar33;\n                    if (*(int *)(iVar4 + 8) != 0) {\n                      fVar26 = (float)*(double *)(iVar4 + 0x48);\n                    }\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x38) * 4) = fVar26;\n                  }\n                  iVar15 = iVar15 + 1;\n                  iVar10 = iVar10 + iVar7 * 4;\n                  pfVar14 = pfVar14 + iVar7;\n                  pfVar12 = pfVar12 + iVar7;\n                  pfVar11 = pfVar11 + iVar7;\n                } while (iVar2 != iVar15);\n              }\n              iVar10 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8)(uVar3,param_2);\n              if (iVar10 == 0) goto LAB_00065918;\n              iVar22 = iVar22 + 1;\n            } while (iVar22 < param_1[7]);\n          }\n          iVar22 = 1;\nLAB_000658cc:\n          (*(code *)PTR_DestroyCacheView_003a8ef4)(uVar3);\n          (*(code *)PTR_RelinquishMagickMemory_003a8fc0)(puVar1);\n          return iVar22;\n        }\n        iVar22 = 0;\n        (*(code *)PTR_ThrowMagickException_003a8f20)\n                  (param_2,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                   PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x147,400,\n                   PTR_LAB_003a88e0 + 0x16f8,PTR_LAB_003a88e0 + 0x3e28,param_1 + 0xd0);\n      }\n      return iVar22;\n    }\n  }" { (if_statement "if (param_1[0xcd4] != 0) {\n      (*(code *)PTR_LogMagickEvent_003a91e0)\n                (0x8000,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x13c,\n                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x1fec);\n    }" if (parenthesized_expression "(param_1[0xcd4] != 0)" ( (binary_expression "param_1[0xcd4] != 0" (subscript_expression "param_1[0xcd4]" identifier [ number_literal ]) != number_literal) )) (compound_statement "{\n      (*(code *)PTR_LogMagickEvent_003a91e0)\n                (0x8000,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x13c,\n                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x1fec);\n    }" { (expression_statement "(*(code *)PTR_LogMagickEvent_003a91e0)\n                (0x8000,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x13c,\n                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x1fec);" (call_expression "(*(code *)PTR_LogMagickEvent_003a91e0)\n                (0x8000,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x13c,\n                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x1fec)" (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_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x13c,\n                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x1fec)" ( number_literal , (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88" identifier + number_literal) , (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70" identifier + number_literal) , number_literal , (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x1fec" identifier + number_literal) ))) ;) })) (if_statement "if (param_1[0xcdb] == -0x54535255) {\n      iVar22 = 1;\n      if (*param_1 == 2) {\n        puVar1 = (ushort *)(*(code *)PTR_AcquireQuantumMemory_003a950c)(param_1[9],2);\n        if (puVar1 != (ushort *)0x0) {\n          iVar10 = param_1[9];\n          iVar22 = param_1[10];\n          if (0 < iVar10) {\n            iVar15 = 0;\n            pdVar6 = (double *)(iVar22 + 0x48);\n            do {\n              iVar2 = iVar15 + 1;\n              *pdVar6 = (double)iVar15;\n              iVar15 = iVar2;\n              pdVar6 = pdVar6 + 0xb;\n            } while (iVar2 != iVar10);\n          }\n          (*(code *)PTR_qsort_003a98d4)(iVar22,iVar10,0x58,PTR_LAB_003a893c + 0x4ca0);\n          iVar22 = param_1[9];\n          if (0 < iVar22) {\n            iVar10 = 0;\n            pdVar6 = (double *)(param_1[10] + 0x48);\n            do {\n              puVar1[(int)*pdVar6] = (ushort)iVar10;\n              iVar10 = iVar10 + 1;\n              pdVar6 = pdVar6 + 0xb;\n            } while (iVar22 != iVar10);\n          }\n          uVar3 = (*(code *)PTR_AcquireAuthenticCacheView_003a8ed4)(param_1,param_2);\n          if (0 < param_1[7]) {\n            iVar22 = 0;\n            uVar33 = (ulonglong)*(uint *)(PTR_LAB_003a88e0 + 0x1a50);\n            do {\n              iVar10 = (*(code *)PTR_GetCacheViewAuthenticPixels_003a964c)\n                                 (uVar3,0,iVar22,param_1[6],1,param_2);\n              if (iVar10 == 0) {\nLAB_00065918:\n                iVar22 = 0;\n                goto LAB_000658cc;\n              }\n              iVar2 = param_1[6];\n              iVar15 = 0;\n              if (0 < iVar2) {\n                iVar16 = param_1[0xb4];\n                iVar7 = param_1[0xb0];\n                iVar20 = param_1[10];\n                iVar19 = *(int *)(iVar16 + 0x40);\n                iVar18 = *(int *)(iVar16 + 0x28);\n                iVar17 = *(int *)(iVar16 + 0x34);\n                pfVar14 = (float *)(iVar10 + *(int *)(iVar16 + 8) * 4);\n                pfVar12 = (float *)(iVar10 + *(int *)(iVar16 + 0x14) * 4);\n                pfVar11 = (float *)(iVar10 + *(int *)(iVar16 + 0x20) * 4);\n                do {\n                  if (iVar19 == 0) {\n                    uVar5 = (uint)*puVar1;\n                  }\n                  else {\n                    pfVar21 = (float *)(iVar10 + *(int *)(iVar16 + 0x44) * 4);\n                    uVar5 = (uint)puVar1[(int)*pfVar21];\n                    *pfVar21 = (float)uVar5;\n                  }\n                  iVar4 = uVar5 * 0x58 + iVar20;\n                  dVar27 = *(double *)(iVar4 + 0x30);\n                  dVar24 = *(double *)(iVar4 + 0x38);\n                  *pfVar14 = (float)*(double *)(iVar4 + 0x28);\n                  *pfVar12 = (float)dVar27;\n                  *pfVar11 = (float)dVar24;\n                  if (iVar18 != 0) {\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x2c) * 4) =\n                         (float)*(double *)(iVar4 + 0x40);\n                  }\n                  if (iVar17 != 0) {\n                    fVar26 = (float)uVar33;\n                    if (*(int *)(iVar4 + 8) != 0) {\n                      fVar26 = (float)*(double *)(iVar4 + 0x48);\n                    }\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x38) * 4) = fVar26;\n                  }\n                  iVar15 = iVar15 + 1;\n                  iVar10 = iVar10 + iVar7 * 4;\n                  pfVar14 = pfVar14 + iVar7;\n                  pfVar12 = pfVar12 + iVar7;\n                  pfVar11 = pfVar11 + iVar7;\n                } while (iVar2 != iVar15);\n              }\n              iVar10 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8)(uVar3,param_2);\n              if (iVar10 == 0) goto LAB_00065918;\n              iVar22 = iVar22 + 1;\n            } while (iVar22 < param_1[7]);\n          }\n          iVar22 = 1;\nLAB_000658cc:\n          (*(code *)PTR_DestroyCacheView_003a8ef4)(uVar3);\n          (*(code *)PTR_RelinquishMagickMemory_003a8fc0)(puVar1);\n          return iVar22;\n        }\n        iVar22 = 0;\n        (*(code *)PTR_ThrowMagickException_003a8f20)\n                  (param_2,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                   PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x147,400,\n                   PTR_LAB_003a88e0 + 0x16f8,PTR_LAB_003a88e0 + 0x3e28,param_1 + 0xd0);\n      }\n      return iVar22;\n    }" if (parenthesized_expression "(param_1[0xcdb] == -0x54535255)" ( (binary_expression "param_1[0xcdb] == -0x54535255" (subscript_expression "param_1[0xcdb]" identifier [ number_literal ]) == number_literal) )) (compound_statement "{\n      iVar22 = 1;\n      if (*param_1 == 2) {\n        puVar1 = (ushort *)(*(code *)PTR_AcquireQuantumMemory_003a950c)(param_1[9],2);\n        if (puVar1 != (ushort *)0x0) {\n          iVar10 = param_1[9];\n          iVar22 = param_1[10];\n          if (0 < iVar10) {\n            iVar15 = 0;\n            pdVar6 = (double *)(iVar22 + 0x48);\n            do {\n              iVar2 = iVar15 + 1;\n              *pdVar6 = (double)iVar15;\n              iVar15 = iVar2;\n              pdVar6 = pdVar6 + 0xb;\n            } while (iVar2 != iVar10);\n          }\n          (*(code *)PTR_qsort_003a98d4)(iVar22,iVar10,0x58,PTR_LAB_003a893c + 0x4ca0);\n          iVar22 = param_1[9];\n          if (0 < iVar22) {\n            iVar10 = 0;\n            pdVar6 = (double *)(param_1[10] + 0x48);\n            do {\n              puVar1[(int)*pdVar6] = (ushort)iVar10;\n              iVar10 = iVar10 + 1;\n              pdVar6 = pdVar6 + 0xb;\n            } while (iVar22 != iVar10);\n          }\n          uVar3 = (*(code *)PTR_AcquireAuthenticCacheView_003a8ed4)(param_1,param_2);\n          if (0 < param_1[7]) {\n            iVar22 = 0;\n            uVar33 = (ulonglong)*(uint *)(PTR_LAB_003a88e0 + 0x1a50);\n            do {\n              iVar10 = (*(code *)PTR_GetCacheViewAuthenticPixels_003a964c)\n                                 (uVar3,0,iVar22,param_1[6],1,param_2);\n              if (iVar10 == 0) {\nLAB_00065918:\n                iVar22 = 0;\n                goto LAB_000658cc;\n              }\n              iVar2 = param_1[6];\n              iVar15 = 0;\n              if (0 < iVar2) {\n                iVar16 = param_1[0xb4];\n                iVar7 = param_1[0xb0];\n                iVar20 = param_1[10];\n                iVar19 = *(int *)(iVar16 + 0x40);\n                iVar18 = *(int *)(iVar16 + 0x28);\n                iVar17 = *(int *)(iVar16 + 0x34);\n                pfVar14 = (float *)(iVar10 + *(int *)(iVar16 + 8) * 4);\n                pfVar12 = (float *)(iVar10 + *(int *)(iVar16 + 0x14) * 4);\n                pfVar11 = (float *)(iVar10 + *(int *)(iVar16 + 0x20) * 4);\n                do {\n                  if (iVar19 == 0) {\n                    uVar5 = (uint)*puVar1;\n                  }\n                  else {\n                    pfVar21 = (float *)(iVar10 + *(int *)(iVar16 + 0x44) * 4);\n                    uVar5 = (uint)puVar1[(int)*pfVar21];\n                    *pfVar21 = (float)uVar5;\n                  }\n                  iVar4 = uVar5 * 0x58 + iVar20;\n                  dVar27 = *(double *)(iVar4 + 0x30);\n                  dVar24 = *(double *)(iVar4 + 0x38);\n                  *pfVar14 = (float)*(double *)(iVar4 + 0x28);\n                  *pfVar12 = (float)dVar27;\n                  *pfVar11 = (float)dVar24;\n                  if (iVar18 != 0) {\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x2c) * 4) =\n                         (float)*(double *)(iVar4 + 0x40);\n                  }\n                  if (iVar17 != 0) {\n                    fVar26 = (float)uVar33;\n                    if (*(int *)(iVar4 + 8) != 0) {\n                      fVar26 = (float)*(double *)(iVar4 + 0x48);\n                    }\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x38) * 4) = fVar26;\n                  }\n                  iVar15 = iVar15 + 1;\n                  iVar10 = iVar10 + iVar7 * 4;\n                  pfVar14 = pfVar14 + iVar7;\n                  pfVar12 = pfVar12 + iVar7;\n                  pfVar11 = pfVar11 + iVar7;\n                } while (iVar2 != iVar15);\n              }\n              iVar10 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8)(uVar3,param_2);\n              if (iVar10 == 0) goto LAB_00065918;\n              iVar22 = iVar22 + 1;\n            } while (iVar22 < param_1[7]);\n          }\n          iVar22 = 1;\nLAB_000658cc:\n          (*(code *)PTR_DestroyCacheView_003a8ef4)(uVar3);\n          (*(code *)PTR_RelinquishMagickMemory_003a8fc0)(puVar1);\n          return iVar22;\n        }\n        iVar22 = 0;\n        (*(code *)PTR_ThrowMagickException_003a8f20)\n                  (param_2,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                   PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x147,400,\n                   PTR_LAB_003a88e0 + 0x16f8,PTR_LAB_003a88e0 + 0x3e28,param_1 + 0xd0);\n      }\n      return iVar22;\n    }" { (expression_statement "iVar22 = 1;" (assignment_expression "iVar22 = 1" identifier = number_literal) ;) (if_statement "if (*param_1 == 2) {\n        puVar1 = (ushort *)(*(code *)PTR_AcquireQuantumMemory_003a950c)(param_1[9],2);\n        if (puVar1 != (ushort *)0x0) {\n          iVar10 = param_1[9];\n          iVar22 = param_1[10];\n          if (0 < iVar10) {\n            iVar15 = 0;\n            pdVar6 = (double *)(iVar22 + 0x48);\n            do {\n              iVar2 = iVar15 + 1;\n              *pdVar6 = (double)iVar15;\n              iVar15 = iVar2;\n              pdVar6 = pdVar6 + 0xb;\n            } while (iVar2 != iVar10);\n          }\n          (*(code *)PTR_qsort_003a98d4)(iVar22,iVar10,0x58,PTR_LAB_003a893c + 0x4ca0);\n          iVar22 = param_1[9];\n          if (0 < iVar22) {\n            iVar10 = 0;\n            pdVar6 = (double *)(param_1[10] + 0x48);\n            do {\n              puVar1[(int)*pdVar6] = (ushort)iVar10;\n              iVar10 = iVar10 + 1;\n              pdVar6 = pdVar6 + 0xb;\n            } while (iVar22 != iVar10);\n          }\n          uVar3 = (*(code *)PTR_AcquireAuthenticCacheView_003a8ed4)(param_1,param_2);\n          if (0 < param_1[7]) {\n            iVar22 = 0;\n            uVar33 = (ulonglong)*(uint *)(PTR_LAB_003a88e0 + 0x1a50);\n            do {\n              iVar10 = (*(code *)PTR_GetCacheViewAuthenticPixels_003a964c)\n                                 (uVar3,0,iVar22,param_1[6],1,param_2);\n              if (iVar10 == 0) {\nLAB_00065918:\n                iVar22 = 0;\n                goto LAB_000658cc;\n              }\n              iVar2 = param_1[6];\n              iVar15 = 0;\n              if (0 < iVar2) {\n                iVar16 = param_1[0xb4];\n                iVar7 = param_1[0xb0];\n                iVar20 = param_1[10];\n                iVar19 = *(int *)(iVar16 + 0x40);\n                iVar18 = *(int *)(iVar16 + 0x28);\n                iVar17 = *(int *)(iVar16 + 0x34);\n                pfVar14 = (float *)(iVar10 + *(int *)(iVar16 + 8) * 4);\n                pfVar12 = (float *)(iVar10 + *(int *)(iVar16 + 0x14) * 4);\n                pfVar11 = (float *)(iVar10 + *(int *)(iVar16 + 0x20) * 4);\n                do {\n                  if (iVar19 == 0) {\n                    uVar5 = (uint)*puVar1;\n                  }\n                  else {\n                    pfVar21 = (float *)(iVar10 + *(int *)(iVar16 + 0x44) * 4);\n                    uVar5 = (uint)puVar1[(int)*pfVar21];\n                    *pfVar21 = (float)uVar5;\n                  }\n                  iVar4 = uVar5 * 0x58 + iVar20;\n                  dVar27 = *(double *)(iVar4 + 0x30);\n                  dVar24 = *(double *)(iVar4 + 0x38);\n                  *pfVar14 = (float)*(double *)(iVar4 + 0x28);\n                  *pfVar12 = (float)dVar27;\n                  *pfVar11 = (float)dVar24;\n                  if (iVar18 != 0) {\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x2c) * 4) =\n                         (float)*(double *)(iVar4 + 0x40);\n                  }\n                  if (iVar17 != 0) {\n                    fVar26 = (float)uVar33;\n                    if (*(int *)(iVar4 + 8) != 0) {\n                      fVar26 = (float)*(double *)(iVar4 + 0x48);\n                    }\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x38) * 4) = fVar26;\n                  }\n                  iVar15 = iVar15 + 1;\n                  iVar10 = iVar10 + iVar7 * 4;\n                  pfVar14 = pfVar14 + iVar7;\n                  pfVar12 = pfVar12 + iVar7;\n                  pfVar11 = pfVar11 + iVar7;\n                } while (iVar2 != iVar15);\n              }\n              iVar10 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8)(uVar3,param_2);\n              if (iVar10 == 0) goto LAB_00065918;\n              iVar22 = iVar22 + 1;\n            } while (iVar22 < param_1[7]);\n          }\n          iVar22 = 1;\nLAB_000658cc:\n          (*(code *)PTR_DestroyCacheView_003a8ef4)(uVar3);\n          (*(code *)PTR_RelinquishMagickMemory_003a8fc0)(puVar1);\n          return iVar22;\n        }\n        iVar22 = 0;\n        (*(code *)PTR_ThrowMagickException_003a8f20)\n                  (param_2,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                   PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x147,400,\n                   PTR_LAB_003a88e0 + 0x16f8,PTR_LAB_003a88e0 + 0x3e28,param_1 + 0xd0);\n      }" if (parenthesized_expression "(*param_1 == 2)" ( (binary_expression "*param_1 == 2" (pointer_expression "*param_1" * identifier) == number_literal) )) (compound_statement "{\n        puVar1 = (ushort *)(*(code *)PTR_AcquireQuantumMemory_003a950c)(param_1[9],2);\n        if (puVar1 != (ushort *)0x0) {\n          iVar10 = param_1[9];\n          iVar22 = param_1[10];\n          if (0 < iVar10) {\n            iVar15 = 0;\n            pdVar6 = (double *)(iVar22 + 0x48);\n            do {\n              iVar2 = iVar15 + 1;\n              *pdVar6 = (double)iVar15;\n              iVar15 = iVar2;\n              pdVar6 = pdVar6 + 0xb;\n            } while (iVar2 != iVar10);\n          }\n          (*(code *)PTR_qsort_003a98d4)(iVar22,iVar10,0x58,PTR_LAB_003a893c + 0x4ca0);\n          iVar22 = param_1[9];\n          if (0 < iVar22) {\n            iVar10 = 0;\n            pdVar6 = (double *)(param_1[10] + 0x48);\n            do {\n              puVar1[(int)*pdVar6] = (ushort)iVar10;\n              iVar10 = iVar10 + 1;\n              pdVar6 = pdVar6 + 0xb;\n            } while (iVar22 != iVar10);\n          }\n          uVar3 = (*(code *)PTR_AcquireAuthenticCacheView_003a8ed4)(param_1,param_2);\n          if (0 < param_1[7]) {\n            iVar22 = 0;\n            uVar33 = (ulonglong)*(uint *)(PTR_LAB_003a88e0 + 0x1a50);\n            do {\n              iVar10 = (*(code *)PTR_GetCacheViewAuthenticPixels_003a964c)\n                                 (uVar3,0,iVar22,param_1[6],1,param_2);\n              if (iVar10 == 0) {\nLAB_00065918:\n                iVar22 = 0;\n                goto LAB_000658cc;\n              }\n              iVar2 = param_1[6];\n              iVar15 = 0;\n              if (0 < iVar2) {\n                iVar16 = param_1[0xb4];\n                iVar7 = param_1[0xb0];\n                iVar20 = param_1[10];\n                iVar19 = *(int *)(iVar16 + 0x40);\n                iVar18 = *(int *)(iVar16 + 0x28);\n                iVar17 = *(int *)(iVar16 + 0x34);\n                pfVar14 = (float *)(iVar10 + *(int *)(iVar16 + 8) * 4);\n                pfVar12 = (float *)(iVar10 + *(int *)(iVar16 + 0x14) * 4);\n                pfVar11 = (float *)(iVar10 + *(int *)(iVar16 + 0x20) * 4);\n                do {\n                  if (iVar19 == 0) {\n                    uVar5 = (uint)*puVar1;\n                  }\n                  else {\n                    pfVar21 = (float *)(iVar10 + *(int *)(iVar16 + 0x44) * 4);\n                    uVar5 = (uint)puVar1[(int)*pfVar21];\n                    *pfVar21 = (float)uVar5;\n                  }\n                  iVar4 = uVar5 * 0x58 + iVar20;\n                  dVar27 = *(double *)(iVar4 + 0x30);\n                  dVar24 = *(double *)(iVar4 + 0x38);\n                  *pfVar14 = (float)*(double *)(iVar4 + 0x28);\n                  *pfVar12 = (float)dVar27;\n                  *pfVar11 = (float)dVar24;\n                  if (iVar18 != 0) {\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x2c) * 4) =\n                         (float)*(double *)(iVar4 + 0x40);\n                  }\n                  if (iVar17 != 0) {\n                    fVar26 = (float)uVar33;\n                    if (*(int *)(iVar4 + 8) != 0) {\n                      fVar26 = (float)*(double *)(iVar4 + 0x48);\n                    }\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x38) * 4) = fVar26;\n                  }\n                  iVar15 = iVar15 + 1;\n                  iVar10 = iVar10 + iVar7 * 4;\n                  pfVar14 = pfVar14 + iVar7;\n                  pfVar12 = pfVar12 + iVar7;\n                  pfVar11 = pfVar11 + iVar7;\n                } while (iVar2 != iVar15);\n              }\n              iVar10 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8)(uVar3,param_2);\n              if (iVar10 == 0) goto LAB_00065918;\n              iVar22 = iVar22 + 1;\n            } while (iVar22 < param_1[7]);\n          }\n          iVar22 = 1;\nLAB_000658cc:\n          (*(code *)PTR_DestroyCacheView_003a8ef4)(uVar3);\n          (*(code *)PTR_RelinquishMagickMemory_003a8fc0)(puVar1);\n          return iVar22;\n        }\n        iVar22 = 0;\n        (*(code *)PTR_ThrowMagickException_003a8f20)\n                  (param_2,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                   PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x147,400,\n                   PTR_LAB_003a88e0 + 0x16f8,PTR_LAB_003a88e0 + 0x3e28,param_1 + 0xd0);\n      }" { (expression_statement "puVar1 = (ushort *)(*(code *)PTR_AcquireQuantumMemory_003a950c)(param_1[9],2);" (assignment_expression "puVar1 = (ushort *)(*(code *)PTR_AcquireQuantumMemory_003a950c)(param_1[9],2)" identifier = (cast_expression "(ushort *)(*(code *)PTR_AcquireQuantumMemory_003a950c)(param_1[9],2)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR_AcquireQuantumMemory_003a950c)(param_1[9],2)" (parenthesized_expression "(*(code *)PTR_AcquireQuantumMemory_003a950c)" ( (pointer_expression "*(code *)PTR_AcquireQuantumMemory_003a950c" * (cast_expression "(code *)PTR_AcquireQuantumMemory_003a950c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_1[9],2)" ( (subscript_expression "param_1[9]" identifier [ number_literal ]) , number_literal ))))) ;) (if_statement "if (puVar1 != (ushort *)0x0) {\n          iVar10 = param_1[9];\n          iVar22 = param_1[10];\n          if (0 < iVar10) {\n            iVar15 = 0;\n            pdVar6 = (double *)(iVar22 + 0x48);\n            do {\n              iVar2 = iVar15 + 1;\n              *pdVar6 = (double)iVar15;\n              iVar15 = iVar2;\n              pdVar6 = pdVar6 + 0xb;\n            } while (iVar2 != iVar10);\n          }\n          (*(code *)PTR_qsort_003a98d4)(iVar22,iVar10,0x58,PTR_LAB_003a893c + 0x4ca0);\n          iVar22 = param_1[9];\n          if (0 < iVar22) {\n            iVar10 = 0;\n            pdVar6 = (double *)(param_1[10] + 0x48);\n            do {\n              puVar1[(int)*pdVar6] = (ushort)iVar10;\n              iVar10 = iVar10 + 1;\n              pdVar6 = pdVar6 + 0xb;\n            } while (iVar22 != iVar10);\n          }\n          uVar3 = (*(code *)PTR_AcquireAuthenticCacheView_003a8ed4)(param_1,param_2);\n          if (0 < param_1[7]) {\n            iVar22 = 0;\n            uVar33 = (ulonglong)*(uint *)(PTR_LAB_003a88e0 + 0x1a50);\n            do {\n              iVar10 = (*(code *)PTR_GetCacheViewAuthenticPixels_003a964c)\n                                 (uVar3,0,iVar22,param_1[6],1,param_2);\n              if (iVar10 == 0) {\nLAB_00065918:\n                iVar22 = 0;\n                goto LAB_000658cc;\n              }\n              iVar2 = param_1[6];\n              iVar15 = 0;\n              if (0 < iVar2) {\n                iVar16 = param_1[0xb4];\n                iVar7 = param_1[0xb0];\n                iVar20 = param_1[10];\n                iVar19 = *(int *)(iVar16 + 0x40);\n                iVar18 = *(int *)(iVar16 + 0x28);\n                iVar17 = *(int *)(iVar16 + 0x34);\n                pfVar14 = (float *)(iVar10 + *(int *)(iVar16 + 8) * 4);\n                pfVar12 = (float *)(iVar10 + *(int *)(iVar16 + 0x14) * 4);\n                pfVar11 = (float *)(iVar10 + *(int *)(iVar16 + 0x20) * 4);\n                do {\n                  if (iVar19 == 0) {\n                    uVar5 = (uint)*puVar1;\n                  }\n                  else {\n                    pfVar21 = (float *)(iVar10 + *(int *)(iVar16 + 0x44) * 4);\n                    uVar5 = (uint)puVar1[(int)*pfVar21];\n                    *pfVar21 = (float)uVar5;\n                  }\n                  iVar4 = uVar5 * 0x58 + iVar20;\n                  dVar27 = *(double *)(iVar4 + 0x30);\n                  dVar24 = *(double *)(iVar4 + 0x38);\n                  *pfVar14 = (float)*(double *)(iVar4 + 0x28);\n                  *pfVar12 = (float)dVar27;\n                  *pfVar11 = (float)dVar24;\n                  if (iVar18 != 0) {\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x2c) * 4) =\n                         (float)*(double *)(iVar4 + 0x40);\n                  }\n                  if (iVar17 != 0) {\n                    fVar26 = (float)uVar33;\n                    if (*(int *)(iVar4 + 8) != 0) {\n                      fVar26 = (float)*(double *)(iVar4 + 0x48);\n                    }\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x38) * 4) = fVar26;\n                  }\n                  iVar15 = iVar15 + 1;\n                  iVar10 = iVar10 + iVar7 * 4;\n                  pfVar14 = pfVar14 + iVar7;\n                  pfVar12 = pfVar12 + iVar7;\n                  pfVar11 = pfVar11 + iVar7;\n                } while (iVar2 != iVar15);\n              }\n              iVar10 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8)(uVar3,param_2);\n              if (iVar10 == 0) goto LAB_00065918;\n              iVar22 = iVar22 + 1;\n            } while (iVar22 < param_1[7]);\n          }\n          iVar22 = 1;\nLAB_000658cc:\n          (*(code *)PTR_DestroyCacheView_003a8ef4)(uVar3);\n          (*(code *)PTR_RelinquishMagickMemory_003a8fc0)(puVar1);\n          return iVar22;\n        }" if (parenthesized_expression "(puVar1 != (ushort *)0x0)" ( (binary_expression "puVar1 != (ushort *)0x0" identifier != (cast_expression "(ushort *)0x0" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          iVar10 = param_1[9];\n          iVar22 = param_1[10];\n          if (0 < iVar10) {\n            iVar15 = 0;\n            pdVar6 = (double *)(iVar22 + 0x48);\n            do {\n              iVar2 = iVar15 + 1;\n              *pdVar6 = (double)iVar15;\n              iVar15 = iVar2;\n              pdVar6 = pdVar6 + 0xb;\n            } while (iVar2 != iVar10);\n          }\n          (*(code *)PTR_qsort_003a98d4)(iVar22,iVar10,0x58,PTR_LAB_003a893c + 0x4ca0);\n          iVar22 = param_1[9];\n          if (0 < iVar22) {\n            iVar10 = 0;\n            pdVar6 = (double *)(param_1[10] + 0x48);\n            do {\n              puVar1[(int)*pdVar6] = (ushort)iVar10;\n              iVar10 = iVar10 + 1;\n              pdVar6 = pdVar6 + 0xb;\n            } while (iVar22 != iVar10);\n          }\n          uVar3 = (*(code *)PTR_AcquireAuthenticCacheView_003a8ed4)(param_1,param_2);\n          if (0 < param_1[7]) {\n            iVar22 = 0;\n            uVar33 = (ulonglong)*(uint *)(PTR_LAB_003a88e0 + 0x1a50);\n            do {\n              iVar10 = (*(code *)PTR_GetCacheViewAuthenticPixels_003a964c)\n                                 (uVar3,0,iVar22,param_1[6],1,param_2);\n              if (iVar10 == 0) {\nLAB_00065918:\n                iVar22 = 0;\n                goto LAB_000658cc;\n              }\n              iVar2 = param_1[6];\n              iVar15 = 0;\n              if (0 < iVar2) {\n                iVar16 = param_1[0xb4];\n                iVar7 = param_1[0xb0];\n                iVar20 = param_1[10];\n                iVar19 = *(int *)(iVar16 + 0x40);\n                iVar18 = *(int *)(iVar16 + 0x28);\n                iVar17 = *(int *)(iVar16 + 0x34);\n                pfVar14 = (float *)(iVar10 + *(int *)(iVar16 + 8) * 4);\n                pfVar12 = (float *)(iVar10 + *(int *)(iVar16 + 0x14) * 4);\n                pfVar11 = (float *)(iVar10 + *(int *)(iVar16 + 0x20) * 4);\n                do {\n                  if (iVar19 == 0) {\n                    uVar5 = (uint)*puVar1;\n                  }\n                  else {\n                    pfVar21 = (float *)(iVar10 + *(int *)(iVar16 + 0x44) * 4);\n                    uVar5 = (uint)puVar1[(int)*pfVar21];\n                    *pfVar21 = (float)uVar5;\n                  }\n                  iVar4 = uVar5 * 0x58 + iVar20;\n                  dVar27 = *(double *)(iVar4 + 0x30);\n                  dVar24 = *(double *)(iVar4 + 0x38);\n                  *pfVar14 = (float)*(double *)(iVar4 + 0x28);\n                  *pfVar12 = (float)dVar27;\n                  *pfVar11 = (float)dVar24;\n                  if (iVar18 != 0) {\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x2c) * 4) =\n                         (float)*(double *)(iVar4 + 0x40);\n                  }\n                  if (iVar17 != 0) {\n                    fVar26 = (float)uVar33;\n                    if (*(int *)(iVar4 + 8) != 0) {\n                      fVar26 = (float)*(double *)(iVar4 + 0x48);\n                    }\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x38) * 4) = fVar26;\n                  }\n                  iVar15 = iVar15 + 1;\n                  iVar10 = iVar10 + iVar7 * 4;\n                  pfVar14 = pfVar14 + iVar7;\n                  pfVar12 = pfVar12 + iVar7;\n                  pfVar11 = pfVar11 + iVar7;\n                } while (iVar2 != iVar15);\n              }\n              iVar10 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8)(uVar3,param_2);\n              if (iVar10 == 0) goto LAB_00065918;\n              iVar22 = iVar22 + 1;\n            } while (iVar22 < param_1[7]);\n          }\n          iVar22 = 1;\nLAB_000658cc:\n          (*(code *)PTR_DestroyCacheView_003a8ef4)(uVar3);\n          (*(code *)PTR_RelinquishMagickMemory_003a8fc0)(puVar1);\n          return iVar22;\n        }" { (expression_statement "iVar10 = param_1[9];" (assignment_expression "iVar10 = param_1[9]" identifier = (subscript_expression "param_1[9]" identifier [ number_literal ])) ;) (expression_statement "iVar22 = param_1[10];" (assignment_expression "iVar22 = param_1[10]" identifier = (subscript_expression "param_1[10]" identifier [ number_literal ])) ;) (if_statement "if (0 < iVar10) {\n            iVar15 = 0;\n            pdVar6 = (double *)(iVar22 + 0x48);\n            do {\n              iVar2 = iVar15 + 1;\n              *pdVar6 = (double)iVar15;\n              iVar15 = iVar2;\n              pdVar6 = pdVar6 + 0xb;\n            } while (iVar2 != iVar10);\n          }" if (parenthesized_expression "(0 < iVar10)" ( (binary_expression "0 < iVar10" number_literal < identifier) )) (compound_statement "{\n            iVar15 = 0;\n            pdVar6 = (double *)(iVar22 + 0x48);\n            do {\n              iVar2 = iVar15 + 1;\n              *pdVar6 = (double)iVar15;\n              iVar15 = iVar2;\n              pdVar6 = pdVar6 + 0xb;\n            } while (iVar2 != iVar10);\n          }" { (expression_statement "iVar15 = 0;" (assignment_expression "iVar15 = 0" identifier = number_literal) ;) (expression_statement "pdVar6 = (double *)(iVar22 + 0x48);" (assignment_expression "pdVar6 = (double *)(iVar22 + 0x48)" identifier = (cast_expression "(double *)(iVar22 + 0x48)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar22 + 0x48)" ( (binary_expression "iVar22 + 0x48" identifier + number_literal) )))) ;) (do_statement "do {\n              iVar2 = iVar15 + 1;\n              *pdVar6 = (double)iVar15;\n              iVar15 = iVar2;\n              pdVar6 = pdVar6 + 0xb;\n            } while (iVar2 != iVar10);" do (compound_statement "{\n              iVar2 = iVar15 + 1;\n              *pdVar6 = (double)iVar15;\n              iVar15 = iVar2;\n              pdVar6 = pdVar6 + 0xb;\n            }" { (expression_statement "iVar2 = iVar15 + 1;" (assignment_expression "iVar2 = iVar15 + 1" identifier = (binary_expression "iVar15 + 1" identifier + number_literal)) ;) (expression_statement "*pdVar6 = (double)iVar15;" (assignment_expression "*pdVar6 = (double)iVar15" (pointer_expression "*pdVar6" * identifier) = (cast_expression "(double)iVar15" ( (type_descriptor "double" primitive_type) ) identifier)) ;) (expression_statement "iVar15 = iVar2;" (assignment_expression "iVar15 = iVar2" identifier = identifier) ;) (expression_statement "pdVar6 = pdVar6 + 0xb;" (assignment_expression "pdVar6 = pdVar6 + 0xb" identifier = (binary_expression "pdVar6 + 0xb" identifier + number_literal)) ;) }) while (parenthesized_expression "(iVar2 != iVar10)" ( (binary_expression "iVar2 != iVar10" identifier != identifier) )) ;) })) (expression_statement "(*(code *)PTR_qsort_003a98d4)(iVar22,iVar10,0x58,PTR_LAB_003a893c + 0x4ca0);" (call_expression "(*(code *)PTR_qsort_003a98d4)(iVar22,iVar10,0x58,PTR_LAB_003a893c + 0x4ca0)" (parenthesized_expression "(*(code *)PTR_qsort_003a98d4)" ( (pointer_expression "*(code *)PTR_qsort_003a98d4" * (cast_expression "(code *)PTR_qsort_003a98d4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar22,iVar10,0x58,PTR_LAB_003a893c + 0x4ca0)" ( identifier , identifier , number_literal , (binary_expression "PTR_LAB_003a893c + 0x4ca0" identifier + number_literal) ))) ;) (expression_statement "iVar22 = param_1[9];" (assignment_expression "iVar22 = param_1[9]" identifier = (subscript_expression "param_1[9]" identifier [ number_literal ])) ;) (if_statement "if (0 < iVar22) {\n            iVar10 = 0;\n            pdVar6 = (double *)(param_1[10] + 0x48);\n            do {\n              puVar1[(int)*pdVar6] = (ushort)iVar10;\n              iVar10 = iVar10 + 1;\n              pdVar6 = pdVar6 + 0xb;\n            } while (iVar22 != iVar10);\n          }" if (parenthesized_expression "(0 < iVar22)" ( (binary_expression "0 < iVar22" number_literal < identifier) )) (compound_statement "{\n            iVar10 = 0;\n            pdVar6 = (double *)(param_1[10] + 0x48);\n            do {\n              puVar1[(int)*pdVar6] = (ushort)iVar10;\n              iVar10 = iVar10 + 1;\n              pdVar6 = pdVar6 + 0xb;\n            } while (iVar22 != iVar10);\n          }" { (expression_statement "iVar10 = 0;" (assignment_expression "iVar10 = 0" identifier = number_literal) ;) (expression_statement "pdVar6 = (double *)(param_1[10] + 0x48);" (assignment_expression "pdVar6 = (double *)(param_1[10] + 0x48)" identifier = (cast_expression "(double *)(param_1[10] + 0x48)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1[10] + 0x48)" ( (binary_expression "param_1[10] + 0x48" (subscript_expression "param_1[10]" identifier [ number_literal ]) + number_literal) )))) ;) (do_statement "do {\n              puVar1[(int)*pdVar6] = (ushort)iVar10;\n              iVar10 = iVar10 + 1;\n              pdVar6 = pdVar6 + 0xb;\n            } while (iVar22 != iVar10);" do (compound_statement "{\n              puVar1[(int)*pdVar6] = (ushort)iVar10;\n              iVar10 = iVar10 + 1;\n              pdVar6 = pdVar6 + 0xb;\n            }" { (expression_statement "puVar1[(int)*pdVar6] = (ushort)iVar10;" (assignment_expression "puVar1[(int)*pdVar6] = (ushort)iVar10" (subscript_expression "puVar1[(int)*pdVar6]" identifier [ (cast_expression "(int)*pdVar6" ( (type_descriptor "int" primitive_type) ) (pointer_expression "*pdVar6" * identifier)) ]) = (cast_expression "(ushort)iVar10" ( (type_descriptor "ushort" type_identifier) ) identifier)) ;) (expression_statement "iVar10 = iVar10 + 1;" (assignment_expression "iVar10 = iVar10 + 1" identifier = (binary_expression "iVar10 + 1" identifier + number_literal)) ;) (expression_statement "pdVar6 = pdVar6 + 0xb;" (assignment_expression "pdVar6 = pdVar6 + 0xb" identifier = (binary_expression "pdVar6 + 0xb" identifier + number_literal)) ;) }) while (parenthesized_expression "(iVar22 != iVar10)" ( (binary_expression "iVar22 != iVar10" identifier != identifier) )) ;) })) (expression_statement "uVar3 = (*(code *)PTR_AcquireAuthenticCacheView_003a8ed4)(param_1,param_2);" (assignment_expression "uVar3 = (*(code *)PTR_AcquireAuthenticCacheView_003a8ed4)(param_1,param_2)" identifier = (call_expression "(*(code *)PTR_AcquireAuthenticCacheView_003a8ed4)(param_1,param_2)" (parenthesized_expression "(*(code *)PTR_AcquireAuthenticCacheView_003a8ed4)" ( (pointer_expression "*(code *)PTR_AcquireAuthenticCacheView_003a8ed4" * (cast_expression "(code *)PTR_AcquireAuthenticCacheView_003a8ed4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_1,param_2)" ( identifier , identifier )))) ;) (if_statement "if (0 < param_1[7]) {\n            iVar22 = 0;\n            uVar33 = (ulonglong)*(uint *)(PTR_LAB_003a88e0 + 0x1a50);\n            do {\n              iVar10 = (*(code *)PTR_GetCacheViewAuthenticPixels_003a964c)\n                                 (uVar3,0,iVar22,param_1[6],1,param_2);\n              if (iVar10 == 0) {\nLAB_00065918:\n                iVar22 = 0;\n                goto LAB_000658cc;\n              }\n              iVar2 = param_1[6];\n              iVar15 = 0;\n              if (0 < iVar2) {\n                iVar16 = param_1[0xb4];\n                iVar7 = param_1[0xb0];\n                iVar20 = param_1[10];\n                iVar19 = *(int *)(iVar16 + 0x40);\n                iVar18 = *(int *)(iVar16 + 0x28);\n                iVar17 = *(int *)(iVar16 + 0x34);\n                pfVar14 = (float *)(iVar10 + *(int *)(iVar16 + 8) * 4);\n                pfVar12 = (float *)(iVar10 + *(int *)(iVar16 + 0x14) * 4);\n                pfVar11 = (float *)(iVar10 + *(int *)(iVar16 + 0x20) * 4);\n                do {\n                  if (iVar19 == 0) {\n                    uVar5 = (uint)*puVar1;\n                  }\n                  else {\n                    pfVar21 = (float *)(iVar10 + *(int *)(iVar16 + 0x44) * 4);\n                    uVar5 = (uint)puVar1[(int)*pfVar21];\n                    *pfVar21 = (float)uVar5;\n                  }\n                  iVar4 = uVar5 * 0x58 + iVar20;\n                  dVar27 = *(double *)(iVar4 + 0x30);\n                  dVar24 = *(double *)(iVar4 + 0x38);\n                  *pfVar14 = (float)*(double *)(iVar4 + 0x28);\n                  *pfVar12 = (float)dVar27;\n                  *pfVar11 = (float)dVar24;\n                  if (iVar18 != 0) {\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x2c) * 4) =\n                         (float)*(double *)(iVar4 + 0x40);\n                  }\n                  if (iVar17 != 0) {\n                    fVar26 = (float)uVar33;\n                    if (*(int *)(iVar4 + 8) != 0) {\n                      fVar26 = (float)*(double *)(iVar4 + 0x48);\n                    }\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x38) * 4) = fVar26;\n                  }\n                  iVar15 = iVar15 + 1;\n                  iVar10 = iVar10 + iVar7 * 4;\n                  pfVar14 = pfVar14 + iVar7;\n                  pfVar12 = pfVar12 + iVar7;\n                  pfVar11 = pfVar11 + iVar7;\n                } while (iVar2 != iVar15);\n              }\n              iVar10 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8)(uVar3,param_2);\n              if (iVar10 == 0) goto LAB_00065918;\n              iVar22 = iVar22 + 1;\n            } while (iVar22 < param_1[7]);\n          }" if (parenthesized_expression "(0 < param_1[7])" ( (binary_expression "0 < param_1[7]" number_literal < (subscript_expression "param_1[7]" identifier [ number_literal ])) )) (compound_statement "{\n            iVar22 = 0;\n            uVar33 = (ulonglong)*(uint *)(PTR_LAB_003a88e0 + 0x1a50);\n            do {\n              iVar10 = (*(code *)PTR_GetCacheViewAuthenticPixels_003a964c)\n                                 (uVar3,0,iVar22,param_1[6],1,param_2);\n              if (iVar10 == 0) {\nLAB_00065918:\n                iVar22 = 0;\n                goto LAB_000658cc;\n              }\n              iVar2 = param_1[6];\n              iVar15 = 0;\n              if (0 < iVar2) {\n                iVar16 = param_1[0xb4];\n                iVar7 = param_1[0xb0];\n                iVar20 = param_1[10];\n                iVar19 = *(int *)(iVar16 + 0x40);\n                iVar18 = *(int *)(iVar16 + 0x28);\n                iVar17 = *(int *)(iVar16 + 0x34);\n                pfVar14 = (float *)(iVar10 + *(int *)(iVar16 + 8) * 4);\n                pfVar12 = (float *)(iVar10 + *(int *)(iVar16 + 0x14) * 4);\n                pfVar11 = (float *)(iVar10 + *(int *)(iVar16 + 0x20) * 4);\n                do {\n                  if (iVar19 == 0) {\n                    uVar5 = (uint)*puVar1;\n                  }\n                  else {\n                    pfVar21 = (float *)(iVar10 + *(int *)(iVar16 + 0x44) * 4);\n                    uVar5 = (uint)puVar1[(int)*pfVar21];\n                    *pfVar21 = (float)uVar5;\n                  }\n                  iVar4 = uVar5 * 0x58 + iVar20;\n                  dVar27 = *(double *)(iVar4 + 0x30);\n                  dVar24 = *(double *)(iVar4 + 0x38);\n                  *pfVar14 = (float)*(double *)(iVar4 + 0x28);\n                  *pfVar12 = (float)dVar27;\n                  *pfVar11 = (float)dVar24;\n                  if (iVar18 != 0) {\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x2c) * 4) =\n                         (float)*(double *)(iVar4 + 0x40);\n                  }\n                  if (iVar17 != 0) {\n                    fVar26 = (float)uVar33;\n                    if (*(int *)(iVar4 + 8) != 0) {\n                      fVar26 = (float)*(double *)(iVar4 + 0x48);\n                    }\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x38) * 4) = fVar26;\n                  }\n                  iVar15 = iVar15 + 1;\n                  iVar10 = iVar10 + iVar7 * 4;\n                  pfVar14 = pfVar14 + iVar7;\n                  pfVar12 = pfVar12 + iVar7;\n                  pfVar11 = pfVar11 + iVar7;\n                } while (iVar2 != iVar15);\n              }\n              iVar10 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8)(uVar3,param_2);\n              if (iVar10 == 0) goto LAB_00065918;\n              iVar22 = iVar22 + 1;\n            } while (iVar22 < param_1[7]);\n          }" { (expression_statement "iVar22 = 0;" (assignment_expression "iVar22 = 0" identifier = number_literal) ;) (expression_statement "uVar33 = (ulonglong)*(uint *)(PTR_LAB_003a88e0 + 0x1a50);" (assignment_expression "uVar33 = (ulonglong)*(uint *)(PTR_LAB_003a88e0 + 0x1a50)" identifier = (binary_expression "(ulonglong)*(uint *)(PTR_LAB_003a88e0 + 0x1a50)" (parenthesized_expression "(ulonglong)" ( identifier )) * (cast_expression "(uint *)(PTR_LAB_003a88e0 + 0x1a50)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_003a88e0 + 0x1a50)" ( (binary_expression "PTR_LAB_003a88e0 + 0x1a50" identifier + number_literal) ))))) ;) (do_statement "do {\n              iVar10 = (*(code *)PTR_GetCacheViewAuthenticPixels_003a964c)\n                                 (uVar3,0,iVar22,param_1[6],1,param_2);\n              if (iVar10 == 0) {\nLAB_00065918:\n                iVar22 = 0;\n                goto LAB_000658cc;\n              }\n              iVar2 = param_1[6];\n              iVar15 = 0;\n              if (0 < iVar2) {\n                iVar16 = param_1[0xb4];\n                iVar7 = param_1[0xb0];\n                iVar20 = param_1[10];\n                iVar19 = *(int *)(iVar16 + 0x40);\n                iVar18 = *(int *)(iVar16 + 0x28);\n                iVar17 = *(int *)(iVar16 + 0x34);\n                pfVar14 = (float *)(iVar10 + *(int *)(iVar16 + 8) * 4);\n                pfVar12 = (float *)(iVar10 + *(int *)(iVar16 + 0x14) * 4);\n                pfVar11 = (float *)(iVar10 + *(int *)(iVar16 + 0x20) * 4);\n                do {\n                  if (iVar19 == 0) {\n                    uVar5 = (uint)*puVar1;\n                  }\n                  else {\n                    pfVar21 = (float *)(iVar10 + *(int *)(iVar16 + 0x44) * 4);\n                    uVar5 = (uint)puVar1[(int)*pfVar21];\n                    *pfVar21 = (float)uVar5;\n                  }\n                  iVar4 = uVar5 * 0x58 + iVar20;\n                  dVar27 = *(double *)(iVar4 + 0x30);\n                  dVar24 = *(double *)(iVar4 + 0x38);\n                  *pfVar14 = (float)*(double *)(iVar4 + 0x28);\n                  *pfVar12 = (float)dVar27;\n                  *pfVar11 = (float)dVar24;\n                  if (iVar18 != 0) {\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x2c) * 4) =\n                         (float)*(double *)(iVar4 + 0x40);\n                  }\n                  if (iVar17 != 0) {\n                    fVar26 = (float)uVar33;\n                    if (*(int *)(iVar4 + 8) != 0) {\n                      fVar26 = (float)*(double *)(iVar4 + 0x48);\n                    }\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x38) * 4) = fVar26;\n                  }\n                  iVar15 = iVar15 + 1;\n                  iVar10 = iVar10 + iVar7 * 4;\n                  pfVar14 = pfVar14 + iVar7;\n                  pfVar12 = pfVar12 + iVar7;\n                  pfVar11 = pfVar11 + iVar7;\n                } while (iVar2 != iVar15);\n              }\n              iVar10 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8)(uVar3,param_2);\n              if (iVar10 == 0) goto LAB_00065918;\n              iVar22 = iVar22 + 1;\n            } while (iVar22 < param_1[7]);" do (compound_statement "{\n              iVar10 = (*(code *)PTR_GetCacheViewAuthenticPixels_003a964c)\n                                 (uVar3,0,iVar22,param_1[6],1,param_2);\n              if (iVar10 == 0) {\nLAB_00065918:\n                iVar22 = 0;\n                goto LAB_000658cc;\n              }\n              iVar2 = param_1[6];\n              iVar15 = 0;\n              if (0 < iVar2) {\n                iVar16 = param_1[0xb4];\n                iVar7 = param_1[0xb0];\n                iVar20 = param_1[10];\n                iVar19 = *(int *)(iVar16 + 0x40);\n                iVar18 = *(int *)(iVar16 + 0x28);\n                iVar17 = *(int *)(iVar16 + 0x34);\n                pfVar14 = (float *)(iVar10 + *(int *)(iVar16 + 8) * 4);\n                pfVar12 = (float *)(iVar10 + *(int *)(iVar16 + 0x14) * 4);\n                pfVar11 = (float *)(iVar10 + *(int *)(iVar16 + 0x20) * 4);\n                do {\n                  if (iVar19 == 0) {\n                    uVar5 = (uint)*puVar1;\n                  }\n                  else {\n                    pfVar21 = (float *)(iVar10 + *(int *)(iVar16 + 0x44) * 4);\n                    uVar5 = (uint)puVar1[(int)*pfVar21];\n                    *pfVar21 = (float)uVar5;\n                  }\n                  iVar4 = uVar5 * 0x58 + iVar20;\n                  dVar27 = *(double *)(iVar4 + 0x30);\n                  dVar24 = *(double *)(iVar4 + 0x38);\n                  *pfVar14 = (float)*(double *)(iVar4 + 0x28);\n                  *pfVar12 = (float)dVar27;\n                  *pfVar11 = (float)dVar24;\n                  if (iVar18 != 0) {\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x2c) * 4) =\n                         (float)*(double *)(iVar4 + 0x40);\n                  }\n                  if (iVar17 != 0) {\n                    fVar26 = (float)uVar33;\n                    if (*(int *)(iVar4 + 8) != 0) {\n                      fVar26 = (float)*(double *)(iVar4 + 0x48);\n                    }\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x38) * 4) = fVar26;\n                  }\n                  iVar15 = iVar15 + 1;\n                  iVar10 = iVar10 + iVar7 * 4;\n                  pfVar14 = pfVar14 + iVar7;\n                  pfVar12 = pfVar12 + iVar7;\n                  pfVar11 = pfVar11 + iVar7;\n                } while (iVar2 != iVar15);\n              }\n              iVar10 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8)(uVar3,param_2);\n              if (iVar10 == 0) goto LAB_00065918;\n              iVar22 = iVar22 + 1;\n            }" { (expression_statement "iVar10 = (*(code *)PTR_GetCacheViewAuthenticPixels_003a964c)\n                                 (uVar3,0,iVar22,param_1[6],1,param_2);" (assignment_expression "iVar10 = (*(code *)PTR_GetCacheViewAuthenticPixels_003a964c)\n                                 (uVar3,0,iVar22,param_1[6],1,param_2)" identifier = (call_expression "(*(code *)PTR_GetCacheViewAuthenticPixels_003a964c)\n                                 (uVar3,0,iVar22,param_1[6],1,param_2)" (parenthesized_expression "(*(code *)PTR_GetCacheViewAuthenticPixels_003a964c)" ( (pointer_expression "*(code *)PTR_GetCacheViewAuthenticPixels_003a964c" * (cast_expression "(code *)PTR_GetCacheViewAuthenticPixels_003a964c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(uVar3,0,iVar22,param_1[6],1,param_2)" ( identifier , number_literal , identifier , (subscript_expression "param_1[6]" identifier [ number_literal ]) , number_literal , identifier )))) ;) (if_statement "if (iVar10 == 0) {\nLAB_00065918:\n                iVar22 = 0;\n                goto LAB_000658cc;\n              }" if (parenthesized_expression "(iVar10 == 0)" ( (binary_expression "iVar10 == 0" identifier == number_literal) )) (compound_statement "{\nLAB_00065918:\n                iVar22 = 0;\n                goto LAB_000658cc;\n              }" { (labeled_statement "LAB_00065918:\n                iVar22 = 0;" statement_identifier : (expression_statement "iVar22 = 0;" (assignment_expression "iVar22 = 0" identifier = number_literal) ;)) (goto_statement "goto LAB_000658cc;" goto statement_identifier ;) })) (expression_statement "iVar2 = param_1[6];" (assignment_expression "iVar2 = param_1[6]" identifier = (subscript_expression "param_1[6]" identifier [ number_literal ])) ;) (expression_statement "iVar15 = 0;" (assignment_expression "iVar15 = 0" identifier = number_literal) ;) (if_statement "if (0 < iVar2) {\n                iVar16 = param_1[0xb4];\n                iVar7 = param_1[0xb0];\n                iVar20 = param_1[10];\n                iVar19 = *(int *)(iVar16 + 0x40);\n                iVar18 = *(int *)(iVar16 + 0x28);\n                iVar17 = *(int *)(iVar16 + 0x34);\n                pfVar14 = (float *)(iVar10 + *(int *)(iVar16 + 8) * 4);\n                pfVar12 = (float *)(iVar10 + *(int *)(iVar16 + 0x14) * 4);\n                pfVar11 = (float *)(iVar10 + *(int *)(iVar16 + 0x20) * 4);\n                do {\n                  if (iVar19 == 0) {\n                    uVar5 = (uint)*puVar1;\n                  }\n                  else {\n                    pfVar21 = (float *)(iVar10 + *(int *)(iVar16 + 0x44) * 4);\n                    uVar5 = (uint)puVar1[(int)*pfVar21];\n                    *pfVar21 = (float)uVar5;\n                  }\n                  iVar4 = uVar5 * 0x58 + iVar20;\n                  dVar27 = *(double *)(iVar4 + 0x30);\n                  dVar24 = *(double *)(iVar4 + 0x38);\n                  *pfVar14 = (float)*(double *)(iVar4 + 0x28);\n                  *pfVar12 = (float)dVar27;\n                  *pfVar11 = (float)dVar24;\n                  if (iVar18 != 0) {\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x2c) * 4) =\n                         (float)*(double *)(iVar4 + 0x40);\n                  }\n                  if (iVar17 != 0) {\n                    fVar26 = (float)uVar33;\n                    if (*(int *)(iVar4 + 8) != 0) {\n                      fVar26 = (float)*(double *)(iVar4 + 0x48);\n                    }\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x38) * 4) = fVar26;\n                  }\n                  iVar15 = iVar15 + 1;\n                  iVar10 = iVar10 + iVar7 * 4;\n                  pfVar14 = pfVar14 + iVar7;\n                  pfVar12 = pfVar12 + iVar7;\n                  pfVar11 = pfVar11 + iVar7;\n                } while (iVar2 != iVar15);\n              }" if (parenthesized_expression "(0 < iVar2)" ( (binary_expression "0 < iVar2" number_literal < identifier) )) (compound_statement "{\n                iVar16 = param_1[0xb4];\n                iVar7 = param_1[0xb0];\n                iVar20 = param_1[10];\n                iVar19 = *(int *)(iVar16 + 0x40);\n                iVar18 = *(int *)(iVar16 + 0x28);\n                iVar17 = *(int *)(iVar16 + 0x34);\n                pfVar14 = (float *)(iVar10 + *(int *)(iVar16 + 8) * 4);\n                pfVar12 = (float *)(iVar10 + *(int *)(iVar16 + 0x14) * 4);\n                pfVar11 = (float *)(iVar10 + *(int *)(iVar16 + 0x20) * 4);\n                do {\n                  if (iVar19 == 0) {\n                    uVar5 = (uint)*puVar1;\n                  }\n                  else {\n                    pfVar21 = (float *)(iVar10 + *(int *)(iVar16 + 0x44) * 4);\n                    uVar5 = (uint)puVar1[(int)*pfVar21];\n                    *pfVar21 = (float)uVar5;\n                  }\n                  iVar4 = uVar5 * 0x58 + iVar20;\n                  dVar27 = *(double *)(iVar4 + 0x30);\n                  dVar24 = *(double *)(iVar4 + 0x38);\n                  *pfVar14 = (float)*(double *)(iVar4 + 0x28);\n                  *pfVar12 = (float)dVar27;\n                  *pfVar11 = (float)dVar24;\n                  if (iVar18 != 0) {\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x2c) * 4) =\n                         (float)*(double *)(iVar4 + 0x40);\n                  }\n                  if (iVar17 != 0) {\n                    fVar26 = (float)uVar33;\n                    if (*(int *)(iVar4 + 8) != 0) {\n                      fVar26 = (float)*(double *)(iVar4 + 0x48);\n                    }\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x38) * 4) = fVar26;\n                  }\n                  iVar15 = iVar15 + 1;\n                  iVar10 = iVar10 + iVar7 * 4;\n                  pfVar14 = pfVar14 + iVar7;\n                  pfVar12 = pfVar12 + iVar7;\n                  pfVar11 = pfVar11 + iVar7;\n                } while (iVar2 != iVar15);\n              }" { (expression_statement "iVar16 = param_1[0xb4];" (assignment_expression "iVar16 = param_1[0xb4]" identifier = (subscript_expression "param_1[0xb4]" identifier [ number_literal ])) ;) (expression_statement "iVar7 = param_1[0xb0];" (assignment_expression "iVar7 = param_1[0xb0]" identifier = (subscript_expression "param_1[0xb0]" identifier [ number_literal ])) ;) (expression_statement "iVar20 = param_1[10];" (assignment_expression "iVar20 = param_1[10]" identifier = (subscript_expression "param_1[10]" identifier [ number_literal ])) ;) (expression_statement "iVar19 = *(int *)(iVar16 + 0x40);" (assignment_expression "iVar19 = *(int *)(iVar16 + 0x40)" identifier = (pointer_expression "*(int *)(iVar16 + 0x40)" * (cast_expression "(int *)(iVar16 + 0x40)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar16 + 0x40)" ( (binary_expression "iVar16 + 0x40" identifier + number_literal) ))))) ;) (expression_statement "iVar18 = *(int *)(iVar16 + 0x28);" (assignment_expression "iVar18 = *(int *)(iVar16 + 0x28)" identifier = (pointer_expression "*(int *)(iVar16 + 0x28)" * (cast_expression "(int *)(iVar16 + 0x28)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar16 + 0x28)" ( (binary_expression "iVar16 + 0x28" identifier + number_literal) ))))) ;) (expression_statement "iVar17 = *(int *)(iVar16 + 0x34);" (assignment_expression "iVar17 = *(int *)(iVar16 + 0x34)" identifier = (pointer_expression "*(int *)(iVar16 + 0x34)" * (cast_expression "(int *)(iVar16 + 0x34)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar16 + 0x34)" ( (binary_expression "iVar16 + 0x34" identifier + number_literal) ))))) ;) (expression_statement "pfVar14 = (float *)(iVar10 + *(int *)(iVar16 + 8) * 4);" (assignment_expression "pfVar14 = (float *)(iVar10 + *(int *)(iVar16 + 8) * 4)" identifier = (cast_expression "(float *)(iVar10 + *(int *)(iVar16 + 8) * 4)" ( (type_descriptor "float *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar10 + *(int *)(iVar16 + 8) * 4)" ( (binary_expression "iVar10 + *(int *)(iVar16 + 8) * 4" identifier + (binary_expression "*(int *)(iVar16 + 8) * 4" (pointer_expression "*(int *)(iVar16 + 8)" * (cast_expression "(int *)(iVar16 + 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar16 + 8)" ( (binary_expression "iVar16 + 8" identifier + number_literal) )))) * number_literal)) )))) ;) (expression_statement "pfVar12 = (float *)(iVar10 + *(int *)(iVar16 + 0x14) * 4);" (assignment_expression "pfVar12 = (float *)(iVar10 + *(int *)(iVar16 + 0x14) * 4)" identifier = (cast_expression "(float *)(iVar10 + *(int *)(iVar16 + 0x14) * 4)" ( (type_descriptor "float *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar10 + *(int *)(iVar16 + 0x14) * 4)" ( (binary_expression "iVar10 + *(int *)(iVar16 + 0x14) * 4" identifier + (binary_expression "*(int *)(iVar16 + 0x14) * 4" (pointer_expression "*(int *)(iVar16 + 0x14)" * (cast_expression "(int *)(iVar16 + 0x14)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar16 + 0x14)" ( (binary_expression "iVar16 + 0x14" identifier + number_literal) )))) * number_literal)) )))) ;) (expression_statement "pfVar11 = (float *)(iVar10 + *(int *)(iVar16 + 0x20) * 4);" (assignment_expression "pfVar11 = (float *)(iVar10 + *(int *)(iVar16 + 0x20) * 4)" identifier = (cast_expression "(float *)(iVar10 + *(int *)(iVar16 + 0x20) * 4)" ( (type_descriptor "float *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar10 + *(int *)(iVar16 + 0x20) * 4)" ( (binary_expression "iVar10 + *(int *)(iVar16 + 0x20) * 4" identifier + (binary_expression "*(int *)(iVar16 + 0x20) * 4" (pointer_expression "*(int *)(iVar16 + 0x20)" * (cast_expression "(int *)(iVar16 + 0x20)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar16 + 0x20)" ( (binary_expression "iVar16 + 0x20" identifier + number_literal) )))) * number_literal)) )))) ;) (do_statement "do {\n                  if (iVar19 == 0) {\n                    uVar5 = (uint)*puVar1;\n                  }\n                  else {\n                    pfVar21 = (float *)(iVar10 + *(int *)(iVar16 + 0x44) * 4);\n                    uVar5 = (uint)puVar1[(int)*pfVar21];\n                    *pfVar21 = (float)uVar5;\n                  }\n                  iVar4 = uVar5 * 0x58 + iVar20;\n                  dVar27 = *(double *)(iVar4 + 0x30);\n                  dVar24 = *(double *)(iVar4 + 0x38);\n                  *pfVar14 = (float)*(double *)(iVar4 + 0x28);\n                  *pfVar12 = (float)dVar27;\n                  *pfVar11 = (float)dVar24;\n                  if (iVar18 != 0) {\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x2c) * 4) =\n                         (float)*(double *)(iVar4 + 0x40);\n                  }\n                  if (iVar17 != 0) {\n                    fVar26 = (float)uVar33;\n                    if (*(int *)(iVar4 + 8) != 0) {\n                      fVar26 = (float)*(double *)(iVar4 + 0x48);\n                    }\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x38) * 4) = fVar26;\n                  }\n                  iVar15 = iVar15 + 1;\n                  iVar10 = iVar10 + iVar7 * 4;\n                  pfVar14 = pfVar14 + iVar7;\n                  pfVar12 = pfVar12 + iVar7;\n                  pfVar11 = pfVar11 + iVar7;\n                } while (iVar2 != iVar15);" do (compound_statement "{\n                  if (iVar19 == 0) {\n                    uVar5 = (uint)*puVar1;\n                  }\n                  else {\n                    pfVar21 = (float *)(iVar10 + *(int *)(iVar16 + 0x44) * 4);\n                    uVar5 = (uint)puVar1[(int)*pfVar21];\n                    *pfVar21 = (float)uVar5;\n                  }\n                  iVar4 = uVar5 * 0x58 + iVar20;\n                  dVar27 = *(double *)(iVar4 + 0x30);\n                  dVar24 = *(double *)(iVar4 + 0x38);\n                  *pfVar14 = (float)*(double *)(iVar4 + 0x28);\n                  *pfVar12 = (float)dVar27;\n                  *pfVar11 = (float)dVar24;\n                  if (iVar18 != 0) {\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x2c) * 4) =\n                         (float)*(double *)(iVar4 + 0x40);\n                  }\n                  if (iVar17 != 0) {\n                    fVar26 = (float)uVar33;\n                    if (*(int *)(iVar4 + 8) != 0) {\n                      fVar26 = (float)*(double *)(iVar4 + 0x48);\n                    }\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x38) * 4) = fVar26;\n                  }\n                  iVar15 = iVar15 + 1;\n                  iVar10 = iVar10 + iVar7 * 4;\n                  pfVar14 = pfVar14 + iVar7;\n                  pfVar12 = pfVar12 + iVar7;\n                  pfVar11 = pfVar11 + iVar7;\n                }" { (if_statement "if (iVar19 == 0) {\n                    uVar5 = (uint)*puVar1;\n                  }\n                  else {\n                    pfVar21 = (float *)(iVar10 + *(int *)(iVar16 + 0x44) * 4);\n                    uVar5 = (uint)puVar1[(int)*pfVar21];\n                    *pfVar21 = (float)uVar5;\n                  }" if (parenthesized_expression "(iVar19 == 0)" ( (binary_expression "iVar19 == 0" identifier == number_literal) )) (compound_statement "{\n                    uVar5 = (uint)*puVar1;\n                  }" { (expression_statement "uVar5 = (uint)*puVar1;" (assignment_expression "uVar5 = (uint)*puVar1" identifier = (binary_expression "(uint)*puVar1" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;) }) (else_clause "else {\n                    pfVar21 = (float *)(iVar10 + *(int *)(iVar16 + 0x44) * 4);\n                    uVar5 = (uint)puVar1[(int)*pfVar21];\n                    *pfVar21 = (float)uVar5;\n                  }" else (compound_statement "{\n                    pfVar21 = (float *)(iVar10 + *(int *)(iVar16 + 0x44) * 4);\n                    uVar5 = (uint)puVar1[(int)*pfVar21];\n                    *pfVar21 = (float)uVar5;\n                  }" { (expression_statement "pfVar21 = (float *)(iVar10 + *(int *)(iVar16 + 0x44) * 4);" (assignment_expression "pfVar21 = (float *)(iVar10 + *(int *)(iVar16 + 0x44) * 4)" identifier = (cast_expression "(float *)(iVar10 + *(int *)(iVar16 + 0x44) * 4)" ( (type_descriptor "float *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar10 + *(int *)(iVar16 + 0x44) * 4)" ( (binary_expression "iVar10 + *(int *)(iVar16 + 0x44) * 4" identifier + (binary_expression "*(int *)(iVar16 + 0x44) * 4" (pointer_expression "*(int *)(iVar16 + 0x44)" * (cast_expression "(int *)(iVar16 + 0x44)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar16 + 0x44)" ( (binary_expression "iVar16 + 0x44" identifier + number_literal) )))) * number_literal)) )))) ;) (expression_statement "uVar5 = (uint)puVar1[(int)*pfVar21];" (assignment_expression "uVar5 = (uint)puVar1[(int)*pfVar21]" identifier = (cast_expression "(uint)puVar1[(int)*pfVar21]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "puVar1[(int)*pfVar21]" identifier [ (cast_expression "(int)*pfVar21" ( (type_descriptor "int" primitive_type) ) (pointer_expression "*pfVar21" * identifier)) ]))) ;) (expression_statement "*pfVar21 = (float)uVar5;" (assignment_expression "*pfVar21 = (float)uVar5" (pointer_expression "*pfVar21" * identifier) = (cast_expression "(float)uVar5" ( (type_descriptor "float" primitive_type) ) identifier)) ;) }))) (expression_statement "iVar4 = uVar5 * 0x58 + iVar20;" (assignment_expression "iVar4 = uVar5 * 0x58 + iVar20" identifier = (binary_expression "uVar5 * 0x58 + iVar20" (binary_expression "uVar5 * 0x58" identifier * number_literal) + identifier)) ;) (expression_statement "dVar27 = *(double *)(iVar4 + 0x30);" (assignment_expression "dVar27 = *(double *)(iVar4 + 0x30)" identifier = (pointer_expression "*(double *)(iVar4 + 0x30)" * (cast_expression "(double *)(iVar4 + 0x30)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar4 + 0x30)" ( (binary_expression "iVar4 + 0x30" identifier + number_literal) ))))) ;) (expression_statement "dVar24 = *(double *)(iVar4 + 0x38);" (assignment_expression "dVar24 = *(double *)(iVar4 + 0x38)" identifier = (pointer_expression "*(double *)(iVar4 + 0x38)" * (cast_expression "(double *)(iVar4 + 0x38)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar4 + 0x38)" ( (binary_expression "iVar4 + 0x38" identifier + number_literal) ))))) ;) (expression_statement "*pfVar14 = (float)*(double *)(iVar4 + 0x28);" (assignment_expression "*pfVar14 = (float)*(double *)(iVar4 + 0x28)" (pointer_expression "*pfVar14" * identifier) = (cast_expression "(float)*(double *)(iVar4 + 0x28)" ( (type_descriptor "float" primitive_type) ) (pointer_expression "*(double *)(iVar4 + 0x28)" * (cast_expression "(double *)(iVar4 + 0x28)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar4 + 0x28)" ( (binary_expression "iVar4 + 0x28" identifier + number_literal) )))))) ;) (expression_statement "*pfVar12 = (float)dVar27;" (assignment_expression "*pfVar12 = (float)dVar27" (pointer_expression "*pfVar12" * identifier) = (cast_expression "(float)dVar27" ( (type_descriptor "float" primitive_type) ) identifier)) ;) (expression_statement "*pfVar11 = (float)dVar24;" (assignment_expression "*pfVar11 = (float)dVar24" (pointer_expression "*pfVar11" * identifier) = (cast_expression "(float)dVar24" ( (type_descriptor "float" primitive_type) ) identifier)) ;) (if_statement "if (iVar18 != 0) {\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x2c) * 4) =\n                         (float)*(double *)(iVar4 + 0x40);\n                  }" if (parenthesized_expression "(iVar18 != 0)" ( (binary_expression "iVar18 != 0" identifier != number_literal) )) (compound_statement "{\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x2c) * 4) =\n                         (float)*(double *)(iVar4 + 0x40);\n                  }" { (expression_statement "*(float *)(iVar10 + *(int *)(iVar16 + 0x2c) * 4) =\n                         (float)*(double *)(iVar4 + 0x40);" (assignment_expression "*(float *)(iVar10 + *(int *)(iVar16 + 0x2c) * 4) =\n                         (float)*(double *)(iVar4 + 0x40)" (pointer_expression "*(float *)(iVar10 + *(int *)(iVar16 + 0x2c) * 4)" * (cast_expression "(float *)(iVar10 + *(int *)(iVar16 + 0x2c) * 4)" ( (type_descriptor "float *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar10 + *(int *)(iVar16 + 0x2c) * 4)" ( (binary_expression "iVar10 + *(int *)(iVar16 + 0x2c) * 4" identifier + (binary_expression "*(int *)(iVar16 + 0x2c) * 4" (pointer_expression "*(int *)(iVar16 + 0x2c)" * (cast_expression "(int *)(iVar16 + 0x2c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar16 + 0x2c)" ( (binary_expression "iVar16 + 0x2c" identifier + number_literal) )))) * number_literal)) )))) = (cast_expression "(float)*(double *)(iVar4 + 0x40)" ( (type_descriptor "float" primitive_type) ) (pointer_expression "*(double *)(iVar4 + 0x40)" * (cast_expression "(double *)(iVar4 + 0x40)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar4 + 0x40)" ( (binary_expression "iVar4 + 0x40" identifier + number_literal) )))))) ;) })) (if_statement "if (iVar17 != 0) {\n                    fVar26 = (float)uVar33;\n                    if (*(int *)(iVar4 + 8) != 0) {\n                      fVar26 = (float)*(double *)(iVar4 + 0x48);\n                    }\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x38) * 4) = fVar26;\n                  }" if (parenthesized_expression "(iVar17 != 0)" ( (binary_expression "iVar17 != 0" identifier != number_literal) )) (compound_statement "{\n                    fVar26 = (float)uVar33;\n                    if (*(int *)(iVar4 + 8) != 0) {\n                      fVar26 = (float)*(double *)(iVar4 + 0x48);\n                    }\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x38) * 4) = fVar26;\n                  }" { (expression_statement "fVar26 = (float)uVar33;" (assignment_expression "fVar26 = (float)uVar33" identifier = (cast_expression "(float)uVar33" ( (type_descriptor "float" primitive_type) ) identifier)) ;) (if_statement "if (*(int *)(iVar4 + 8) != 0) {\n                      fVar26 = (float)*(double *)(iVar4 + 0x48);\n                    }" if (parenthesized_expression "(*(int *)(iVar4 + 8) != 0)" ( (binary_expression "*(int *)(iVar4 + 8) != 0" (pointer_expression "*(int *)(iVar4 + 8)" * (cast_expression "(int *)(iVar4 + 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar4 + 8)" ( (binary_expression "iVar4 + 8" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n                      fVar26 = (float)*(double *)(iVar4 + 0x48);\n                    }" { (expression_statement "fVar26 = (float)*(double *)(iVar4 + 0x48);" (assignment_expression "fVar26 = (float)*(double *)(iVar4 + 0x48)" identifier = (cast_expression "(float)*(double *)(iVar4 + 0x48)" ( (type_descriptor "float" primitive_type) ) (pointer_expression "*(double *)(iVar4 + 0x48)" * (cast_expression "(double *)(iVar4 + 0x48)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar4 + 0x48)" ( (binary_expression "iVar4 + 0x48" identifier + number_literal) )))))) ;) })) (expression_statement "*(float *)(iVar10 + *(int *)(iVar16 + 0x38) * 4) = fVar26;" (assignment_expression "*(float *)(iVar10 + *(int *)(iVar16 + 0x38) * 4) = fVar26" (pointer_expression "*(float *)(iVar10 + *(int *)(iVar16 + 0x38) * 4)" * (cast_expression "(float *)(iVar10 + *(int *)(iVar16 + 0x38) * 4)" ( (type_descriptor "float *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar10 + *(int *)(iVar16 + 0x38) * 4)" ( (binary_expression "iVar10 + *(int *)(iVar16 + 0x38) * 4" identifier + (binary_expression "*(int *)(iVar16 + 0x38) * 4" (pointer_expression "*(int *)(iVar16 + 0x38)" * (cast_expression "(int *)(iVar16 + 0x38)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar16 + 0x38)" ( (binary_expression "iVar16 + 0x38" identifier + number_literal) )))) * number_literal)) )))) = identifier) ;) })) (expression_statement "iVar15 = iVar15 + 1;" (assignment_expression "iVar15 = iVar15 + 1" identifier = (binary_expression "iVar15 + 1" identifier + number_literal)) ;) (expression_statement "iVar10 = iVar10 + iVar7 * 4;" (assignment_expression "iVar10 = iVar10 + iVar7 * 4" identifier = (binary_expression "iVar10 + iVar7 * 4" identifier + (binary_expression "iVar7 * 4" identifier * number_literal))) ;) (expression_statement "pfVar14 = pfVar14 + iVar7;" (assignment_expression "pfVar14 = pfVar14 + iVar7" identifier = (binary_expression "pfVar14 + iVar7" identifier + identifier)) ;) (expression_statement "pfVar12 = pfVar12 + iVar7;" (assignment_expression "pfVar12 = pfVar12 + iVar7" identifier = (binary_expression "pfVar12 + iVar7" identifier + identifier)) ;) (expression_statement "pfVar11 = pfVar11 + iVar7;" (assignment_expression "pfVar11 = pfVar11 + iVar7" identifier = (binary_expression "pfVar11 + iVar7" identifier + identifier)) ;) }) while (parenthesized_expression "(iVar2 != iVar15)" ( (binary_expression "iVar2 != iVar15" identifier != identifier) )) ;) })) (expression_statement "iVar10 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8)(uVar3,param_2);" (assignment_expression "iVar10 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8)(uVar3,param_2)" identifier = (call_expression "(*(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8)(uVar3,param_2)" (parenthesized_expression "(*(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8)" ( (pointer_expression "*(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8" * (cast_expression "(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(uVar3,param_2)" ( identifier , identifier )))) ;) (if_statement "if (iVar10 == 0) goto LAB_00065918;" if (parenthesized_expression "(iVar10 == 0)" ( (binary_expression "iVar10 == 0" identifier == number_literal) )) (goto_statement "goto LAB_00065918;" goto statement_identifier ;)) (expression_statement "iVar22 = iVar22 + 1;" (assignment_expression "iVar22 = iVar22 + 1" identifier = (binary_expression "iVar22 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(iVar22 < param_1[7])" ( (binary_expression "iVar22 < param_1[7]" identifier < (subscript_expression "param_1[7]" identifier [ number_literal ])) )) ;) })) (expression_statement "iVar22 = 1;" (assignment_expression "iVar22 = 1" identifier = number_literal) ;) (labeled_statement "LAB_000658cc:\n          (*(code *)PTR_DestroyCacheView_003a8ef4)(uVar3);" statement_identifier : (expression_statement "(*(code *)PTR_DestroyCacheView_003a8ef4)(uVar3);" (call_expression "(*(code *)PTR_DestroyCacheView_003a8ef4)(uVar3)" (parenthesized_expression "(*(code *)PTR_DestroyCacheView_003a8ef4)" ( (pointer_expression "*(code *)PTR_DestroyCacheView_003a8ef4" * (cast_expression "(code *)PTR_DestroyCacheView_003a8ef4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(uVar3)" ( identifier ))) ;)) (expression_statement "(*(code *)PTR_RelinquishMagickMemory_003a8fc0)(puVar1);" (call_expression "(*(code *)PTR_RelinquishMagickMemory_003a8fc0)(puVar1)" (parenthesized_expression "(*(code *)PTR_RelinquishMagickMemory_003a8fc0)" ( (pointer_expression "*(code *)PTR_RelinquishMagickMemory_003a8fc0" * (cast_expression "(code *)PTR_RelinquishMagickMemory_003a8fc0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(puVar1)" ( identifier ))) ;) (return_statement "return iVar22;" return identifier ;) })) (expression_statement "iVar22 = 0;" (assignment_expression "iVar22 = 0" identifier = number_literal) ;) (expression_statement "(*(code *)PTR_ThrowMagickException_003a8f20)\n                  (param_2,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                   PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x147,400,\n                   PTR_LAB_003a88e0 + 0x16f8,PTR_LAB_003a88e0 + 0x3e28,param_1 + 0xd0);" (call_expression "(*(code *)PTR_ThrowMagickException_003a8f20)\n                  (param_2,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                   PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x147,400,\n                   PTR_LAB_003a88e0 + 0x16f8,PTR_LAB_003a88e0 + 0x3e28,param_1 + 0xd0)" (parenthesized_expression "(*(code *)PTR_ThrowMagickException_003a8f20)" ( (pointer_expression "*(code *)PTR_ThrowMagickException_003a8f20" * (cast_expression "(code *)PTR_ThrowMagickException_003a8f20" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_2,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                   PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x147,400,\n                   PTR_LAB_003a88e0 + 0x16f8,PTR_LAB_003a88e0 + 0x3e28,param_1 + 0xd0)" ( identifier , (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88" identifier + number_literal) , (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70" identifier + number_literal) , number_literal , number_literal , (binary_expression "PTR_LAB_003a88e0 + 0x16f8" identifier + number_literal) , (binary_expression "PTR_LAB_003a88e0 + 0x3e28" identifier + number_literal) , (binary_expression "param_1 + 0xd0" identifier + number_literal) ))) ;) })) (return_statement "return iVar22;" return identifier ;) })) }))) (expression_statement "piVar8 = (int *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3784);" (assignment_expression "piVar8 = (int *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3784)" identifier = (cast_expression "(int *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3784)" ( (type_descriptor "int *" primitive_type (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 "puVar23 = PTR___assert_fail_003a9608;" (assignment_expression "puVar23 = PTR___assert_fail_003a9608" identifier = identifier) ;) (expression_statement "(*(code *)PTR___assert_fail_003a9608)\n            (piVar8,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,0x13d,\n             PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a58);" (call_expression "(*(code *)PTR___assert_fail_003a9608)\n            (piVar8,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,0x13d,\n             PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a58)" (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 "(piVar8,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,0x13d,\n             PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a58)" ( identifier , (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88" identifier + number_literal) , number_literal , (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a58" identifier + number_literal) ))) ;) (expression_statement "iVar10 = (**(code **)(puVar23 + 0x343f4c))();" (assignment_expression "iVar10 = (**(code **)(puVar23 + 0x343f4c))()" identifier = (call_expression "(**(code **)(puVar23 + 0x343f4c))()" (parenthesized_expression "(**(code **)(puVar23 + 0x343f4c))" ( (pointer_expression "**(code **)(puVar23 + 0x343f4c)" * (pointer_expression "*(code **)(puVar23 + 0x343f4c)" * (cast_expression "(code **)(puVar23 + 0x343f4c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar23 + 0x343f4c)" ( (binary_expression "puVar23 + 0x343f4c" identifier + number_literal) ))))) )) (argument_list "()" ( )))) ;) (expression_statement "iVar22 = (**(code **)(puVar23 + 0x343b48))();" (assignment_expression "iVar22 = (**(code **)(puVar23 + 0x343b48))()" identifier = (call_expression "(**(code **)(puVar23 + 0x343b48))()" (parenthesized_expression "(**(code **)(puVar23 + 0x343b48))" ( (pointer_expression "**(code **)(puVar23 + 0x343b48)" * (pointer_expression "*(code **)(puVar23 + 0x343b48)" * (cast_expression "(code **)(puVar23 + 0x343b48)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar23 + 0x343b48)" ( (binary_expression "puVar23 + 0x343b48" identifier + number_literal) ))))) )) (argument_list "()" ( )))) ;) (if_statement "if (iVar10 == 0) {\n    trap(7);\n  }" if (parenthesized_expression "(iVar10 == 0)" ( (binary_expression "iVar10 == 0" identifier == number_literal) )) (compound_statement "{\n    trap(7);\n  }" { (expression_statement "trap(7);" (call_expression "trap(7)" identifier (argument_list "(7)" ( number_literal ))) ;) })) (expression_statement "iVar15 = 0x10000 / iVar10;" (assignment_expression "iVar15 = 0x10000 / iVar10" identifier = (binary_expression "0x10000 / iVar10" number_literal / identifier)) ;) (expression_statement "iVar10 = 0x10000 % iVar10;" (assignment_expression "iVar10 = 0x10000 % iVar10" identifier = (binary_expression "0x10000 % iVar10" number_literal % identifier)) ;) (if_statement "if (iVar22 < iVar10) {\n    iVar15 = iVar15 + 1;\n    iVar10 = 0;\n  }" if (parenthesized_expression "(iVar22 < iVar10)" ( (binary_expression "iVar22 < iVar10" identifier < identifier) )) (compound_statement "{\n    iVar15 = iVar15 + 1;\n    iVar10 = 0;\n  }" { (expression_statement "iVar15 = iVar15 + 1;" (assignment_expression "iVar15 = iVar15 + 1" identifier = (binary_expression "iVar15 + 1" identifier + number_literal)) ;) (expression_statement "iVar10 = 0;" (assignment_expression "iVar10 = 0" identifier = number_literal) ;) })) (expression_statement "iVar10 = iVar15 * iVar22 + iVar10;" (assignment_expression "iVar10 = iVar15 * iVar22 + iVar10" identifier = (binary_expression "iVar15 * iVar22 + iVar10" (binary_expression "iVar15 * iVar22" identifier * identifier) + identifier)) ;) (expression_statement "iVar15 = iVar15 + iVar10;" (assignment_expression "iVar15 = iVar15 + iVar10" identifier = (binary_expression "iVar15 + iVar10" identifier + identifier)) ;) (if_statement "if (iVar10 < iVar15) {\n    iVar2 = iVar10 * 0x18;\n    dVar24 = *(double *)(*(int *)(puVar23 + 0x342f28) + -0x3f48);\n    dVar31 = *(double *)(*(int *)(puVar23 + 0x342f20) + 0x1a58);\n    dVar32 = *(double *)(*(int *)(puVar23 + 0x342f28) + -0x3f40);\n    dVar30 = *(double *)(*(int *)(puVar23 + 0x342f20) + 0x1400);\n    dVar27 = *(double *)(*(int *)(puVar23 + 0x342f28) + -0x3f50);\n    iVar22 = iVar10;\n    pdVar6 = (double *)(piVar8[2] + iVar2);\n    pdVar9 = (double *)(*piVar8 + iVar2);\n    pdVar13 = (double *)(piVar8[1] + iVar2);\n    do {\n      iVar10 = iVar22 + 1;\n      dVar28 = (double)iVar22;\n      *pdVar13 = dVar28;\n      dVar25 = (dVar28 + dVar28) - dVar31;\n      dVar29 = dVar25 * dVar27;\n      *pdVar9 = dVar25 * dVar30;\n      *pdVar6 = dVar29;\n      pdVar13[1] = dVar28;\n      pdVar9[1] = dVar25 * 0.0;\n      pdVar6[1] = dVar25 * dVar24;\n      pdVar13[2] = dVar28;\n      pdVar9[2] = dVar25 * dVar32;\n      pdVar6[2] = dVar29;\n      iVar22 = iVar10;\n      pdVar6 = pdVar6 + 3;\n      pdVar9 = pdVar9 + 3;\n      pdVar13 = pdVar13 + 3;\n    } while (iVar15 != iVar10);\n  }" if (parenthesized_expression "(iVar10 < iVar15)" ( (binary_expression "iVar10 < iVar15" identifier < identifier) )) (compound_statement "{\n    iVar2 = iVar10 * 0x18;\n    dVar24 = *(double *)(*(int *)(puVar23 + 0x342f28) + -0x3f48);\n    dVar31 = *(double *)(*(int *)(puVar23 + 0x342f20) + 0x1a58);\n    dVar32 = *(double *)(*(int *)(puVar23 + 0x342f28) + -0x3f40);\n    dVar30 = *(double *)(*(int *)(puVar23 + 0x342f20) + 0x1400);\n    dVar27 = *(double *)(*(int *)(puVar23 + 0x342f28) + -0x3f50);\n    iVar22 = iVar10;\n    pdVar6 = (double *)(piVar8[2] + iVar2);\n    pdVar9 = (double *)(*piVar8 + iVar2);\n    pdVar13 = (double *)(piVar8[1] + iVar2);\n    do {\n      iVar10 = iVar22 + 1;\n      dVar28 = (double)iVar22;\n      *pdVar13 = dVar28;\n      dVar25 = (dVar28 + dVar28) - dVar31;\n      dVar29 = dVar25 * dVar27;\n      *pdVar9 = dVar25 * dVar30;\n      *pdVar6 = dVar29;\n      pdVar13[1] = dVar28;\n      pdVar9[1] = dVar25 * 0.0;\n      pdVar6[1] = dVar25 * dVar24;\n      pdVar13[2] = dVar28;\n      pdVar9[2] = dVar25 * dVar32;\n      pdVar6[2] = dVar29;\n      iVar22 = iVar10;\n      pdVar6 = pdVar6 + 3;\n      pdVar9 = pdVar9 + 3;\n      pdVar13 = pdVar13 + 3;\n    } while (iVar15 != iVar10);\n  }" { (expression_statement "iVar2 = iVar10 * 0x18;" (assignment_expression "iVar2 = iVar10 * 0x18" identifier = (binary_expression "iVar10 * 0x18" identifier * number_literal)) ;) (expression_statement "dVar24 = *(double *)(*(int *)(puVar23 + 0x342f28) + -0x3f48);" (assignment_expression "dVar24 = *(double *)(*(int *)(puVar23 + 0x342f28) + -0x3f48)" identifier = (pointer_expression "*(double *)(*(int *)(puVar23 + 0x342f28) + -0x3f48)" * (cast_expression "(double *)(*(int *)(puVar23 + 0x342f28) + -0x3f48)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar23 + 0x342f28) + -0x3f48)" ( (binary_expression "*(int *)(puVar23 + 0x342f28) + -0x3f48" (pointer_expression "*(int *)(puVar23 + 0x342f28)" * (cast_expression "(int *)(puVar23 + 0x342f28)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar23 + 0x342f28)" ( (binary_expression "puVar23 + 0x342f28" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar31 = *(double *)(*(int *)(puVar23 + 0x342f20) + 0x1a58);" (assignment_expression "dVar31 = *(double *)(*(int *)(puVar23 + 0x342f20) + 0x1a58)" identifier = (pointer_expression "*(double *)(*(int *)(puVar23 + 0x342f20) + 0x1a58)" * (cast_expression "(double *)(*(int *)(puVar23 + 0x342f20) + 0x1a58)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar23 + 0x342f20) + 0x1a58)" ( (binary_expression "*(int *)(puVar23 + 0x342f20) + 0x1a58" (pointer_expression "*(int *)(puVar23 + 0x342f20)" * (cast_expression "(int *)(puVar23 + 0x342f20)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar23 + 0x342f20)" ( (binary_expression "puVar23 + 0x342f20" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar32 = *(double *)(*(int *)(puVar23 + 0x342f28) + -0x3f40);" (assignment_expression "dVar32 = *(double *)(*(int *)(puVar23 + 0x342f28) + -0x3f40)" identifier = (pointer_expression "*(double *)(*(int *)(puVar23 + 0x342f28) + -0x3f40)" * (cast_expression "(double *)(*(int *)(puVar23 + 0x342f28) + -0x3f40)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar23 + 0x342f28) + -0x3f40)" ( (binary_expression "*(int *)(puVar23 + 0x342f28) + -0x3f40" (pointer_expression "*(int *)(puVar23 + 0x342f28)" * (cast_expression "(int *)(puVar23 + 0x342f28)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar23 + 0x342f28)" ( (binary_expression "puVar23 + 0x342f28" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar30 = *(double *)(*(int *)(puVar23 + 0x342f20) + 0x1400);" (assignment_expression "dVar30 = *(double *)(*(int *)(puVar23 + 0x342f20) + 0x1400)" identifier = (pointer_expression "*(double *)(*(int *)(puVar23 + 0x342f20) + 0x1400)" * (cast_expression "(double *)(*(int *)(puVar23 + 0x342f20) + 0x1400)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar23 + 0x342f20) + 0x1400)" ( (binary_expression "*(int *)(puVar23 + 0x342f20) + 0x1400" (pointer_expression "*(int *)(puVar23 + 0x342f20)" * (cast_expression "(int *)(puVar23 + 0x342f20)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar23 + 0x342f20)" ( (binary_expression "puVar23 + 0x342f20" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar27 = *(double *)(*(int *)(puVar23 + 0x342f28) + -0x3f50);" (assignment_expression "dVar27 = *(double *)(*(int *)(puVar23 + 0x342f28) + -0x3f50)" identifier = (pointer_expression "*(double *)(*(int *)(puVar23 + 0x342f28) + -0x3f50)" * (cast_expression "(double *)(*(int *)(puVar23 + 0x342f28) + -0x3f50)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar23 + 0x342f28) + -0x3f50)" ( (binary_expression "*(int *)(puVar23 + 0x342f28) + -0x3f50" (pointer_expression "*(int *)(puVar23 + 0x342f28)" * (cast_expression "(int *)(puVar23 + 0x342f28)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar23 + 0x342f28)" ( (binary_expression "puVar23 + 0x342f28" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "iVar22 = iVar10;" (assignment_expression "iVar22 = iVar10" identifier = identifier) ;) (expression_statement "pdVar6 = (double *)(piVar8[2] + iVar2);" (assignment_expression "pdVar6 = (double *)(piVar8[2] + iVar2)" identifier = (cast_expression "(double *)(piVar8[2] + iVar2)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar8[2] + iVar2)" ( (binary_expression "piVar8[2] + iVar2" (subscript_expression "piVar8[2]" identifier [ number_literal ]) + identifier) )))) ;) (expression_statement "pdVar9 = (double *)(*piVar8 + iVar2);" (assignment_expression "pdVar9 = (double *)(*piVar8 + iVar2)" identifier = (cast_expression "(double *)(*piVar8 + iVar2)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*piVar8 + iVar2)" ( (binary_expression "*piVar8 + iVar2" (pointer_expression "*piVar8" * identifier) + identifier) )))) ;) (expression_statement "pdVar13 = (double *)(piVar8[1] + iVar2);" (assignment_expression "pdVar13 = (double *)(piVar8[1] + iVar2)" identifier = (cast_expression "(double *)(piVar8[1] + iVar2)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar8[1] + iVar2)" ( (binary_expression "piVar8[1] + iVar2" (subscript_expression "piVar8[1]" identifier [ number_literal ]) + identifier) )))) ;) (do_statement "do {\n      iVar10 = iVar22 + 1;\n      dVar28 = (double)iVar22;\n      *pdVar13 = dVar28;\n      dVar25 = (dVar28 + dVar28) - dVar31;\n      dVar29 = dVar25 * dVar27;\n      *pdVar9 = dVar25 * dVar30;\n      *pdVar6 = dVar29;\n      pdVar13[1] = dVar28;\n      pdVar9[1] = dVar25 * 0.0;\n      pdVar6[1] = dVar25 * dVar24;\n      pdVar13[2] = dVar28;\n      pdVar9[2] = dVar25 * dVar32;\n      pdVar6[2] = dVar29;\n      iVar22 = iVar10;\n      pdVar6 = pdVar6 + 3;\n      pdVar9 = pdVar9 + 3;\n      pdVar13 = pdVar13 + 3;\n    } while (iVar15 != iVar10);" do (compound_statement "{\n      iVar10 = iVar22 + 1;\n      dVar28 = (double)iVar22;\n      *pdVar13 = dVar28;\n      dVar25 = (dVar28 + dVar28) - dVar31;\n      dVar29 = dVar25 * dVar27;\n      *pdVar9 = dVar25 * dVar30;\n      *pdVar6 = dVar29;\n      pdVar13[1] = dVar28;\n      pdVar9[1] = dVar25 * 0.0;\n      pdVar6[1] = dVar25 * dVar24;\n      pdVar13[2] = dVar28;\n      pdVar9[2] = dVar25 * dVar32;\n      pdVar6[2] = dVar29;\n      iVar22 = iVar10;\n      pdVar6 = pdVar6 + 3;\n      pdVar9 = pdVar9 + 3;\n      pdVar13 = pdVar13 + 3;\n    }" { (expression_statement "iVar10 = iVar22 + 1;" (assignment_expression "iVar10 = iVar22 + 1" identifier = (binary_expression "iVar22 + 1" identifier + number_literal)) ;) (expression_statement "dVar28 = (double)iVar22;" (assignment_expression "dVar28 = (double)iVar22" identifier = (cast_expression "(double)iVar22" ( (type_descriptor "double" primitive_type) ) identifier)) ;) (expression_statement "*pdVar13 = dVar28;" (assignment_expression "*pdVar13 = dVar28" (pointer_expression "*pdVar13" * identifier) = identifier) ;) (expression_statement "dVar25 = (dVar28 + dVar28) - dVar31;" (assignment_expression "dVar25 = (dVar28 + dVar28) - dVar31" identifier = (binary_expression "(dVar28 + dVar28) - dVar31" (parenthesized_expression "(dVar28 + dVar28)" ( (binary_expression "dVar28 + dVar28" identifier + identifier) )) - identifier)) ;) (expression_statement "dVar29 = dVar25 * dVar27;" (assignment_expression "dVar29 = dVar25 * dVar27" identifier = (binary_expression "dVar25 * dVar27" identifier * identifier)) ;) (expression_statement "*pdVar9 = dVar25 * dVar30;" (assignment_expression "*pdVar9 = dVar25 * dVar30" (pointer_expression "*pdVar9" * identifier) = (binary_expression "dVar25 * dVar30" identifier * identifier)) ;) (expression_statement "*pdVar6 = dVar29;" (assignment_expression "*pdVar6 = dVar29" (pointer_expression "*pdVar6" * identifier) = identifier) ;) (expression_statement "pdVar13[1] = dVar28;" (assignment_expression "pdVar13[1] = dVar28" (subscript_expression "pdVar13[1]" identifier [ number_literal ]) = identifier) ;) (expression_statement "pdVar9[1] = dVar25 * 0.0;" (assignment_expression "pdVar9[1] = dVar25 * 0.0" (subscript_expression "pdVar9[1]" identifier [ number_literal ]) = (binary_expression "dVar25 * 0.0" identifier * number_literal)) ;) (expression_statement "pdVar6[1] = dVar25 * dVar24;" (assignment_expression "pdVar6[1] = dVar25 * dVar24" (subscript_expression "pdVar6[1]" identifier [ number_literal ]) = (binary_expression "dVar25 * dVar24" identifier * identifier)) ;) (expression_statement "pdVar13[2] = dVar28;" (assignment_expression "pdVar13[2] = dVar28" (subscript_expression "pdVar13[2]" identifier [ number_literal ]) = identifier) ;) (expression_statement "pdVar9[2] = dVar25 * dVar32;" (assignment_expression "pdVar9[2] = dVar25 * dVar32" (subscript_expression "pdVar9[2]" identifier [ number_literal ]) = (binary_expression "dVar25 * dVar32" identifier * identifier)) ;) (expression_statement "pdVar6[2] = dVar29;" (assignment_expression "pdVar6[2] = dVar29" (subscript_expression "pdVar6[2]" identifier [ number_literal ]) = identifier) ;) (expression_statement "iVar22 = iVar10;" (assignment_expression "iVar22 = iVar10" identifier = identifier) ;) (expression_statement "pdVar6 = pdVar6 + 3;" (assignment_expression "pdVar6 = pdVar6 + 3" identifier = (binary_expression "pdVar6 + 3" identifier + number_literal)) ;) (expression_statement "pdVar9 = pdVar9 + 3;" (assignment_expression "pdVar9 = pdVar9 + 3" identifier = (binary_expression "pdVar9 + 3" identifier + number_literal)) ;) (expression_statement "pdVar13 = pdVar13 + 3;" (assignment_expression "pdVar13 = pdVar13 + 3" identifier = (binary_expression "pdVar13 + 3" identifier + number_literal)) ;) }) while (parenthesized_expression "(iVar15 != iVar10)" ( (binary_expression "iVar15 != iVar10" identifier != identifier) )) ;) })) (return_statement "return iVar10;" return identifier ;) })))
(translation_unit (function_definition TYPE (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE (pointer_declarator * IDENT)) , (parameter_declaration TYPE IDENT) ))) (compound_statement { (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (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 (pointer_declarator * IDENT) ;) (declaration TYPE 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 ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( (binary_expression IDENT + LIT) , (binary_expression IDENT + LIT) , LIT , (binary_expression IDENT + LIT) ))) ;) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) != LIT) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( LIT , (binary_expression IDENT + LIT) , (binary_expression IDENT + LIT) , LIT , (binary_expression IDENT + LIT) ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( (subscript_expression IDENT [ LIT ]) , LIT ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (if_statement if (parenthesized_expression ( (binary_expression LIT < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( (binary_expression IDENT != IDENT) )) ;) })) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT , IDENT , LIT , (binary_expression IDENT + LIT) ))) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (if_statement if (parenthesized_expression ( (binary_expression LIT < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) + LIT) )))) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression (subscript_expression IDENT [ (cast_expression ( (type_descriptor TYPE) ) (pointer_expression * IDENT)) ]) = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( (binary_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 )))) ;) (if_statement if (parenthesized_expression ( (binary_expression LIT < (subscript_expression IDENT [ LIT ])) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( IDENT )) * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT , LIT , IDENT , (subscript_expression IDENT [ LIT ]) , LIT , IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = LIT) ;)) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression LIT < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) * LIT)) )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) * LIT)) )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) * LIT)) )))) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( IDENT )) * IDENT)) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) * LIT)) )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ (cast_expression ( (type_descriptor TYPE) ) (pointer_expression * IDENT)) ]))) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) }))) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT * LIT) + IDENT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = (cast_expression ( (type_descriptor TYPE) ) (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))))) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) * LIT)) )))) = (cast_expression ( (type_descriptor TYPE) ) (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) 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) ) (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))))) ;) })) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) * LIT)) )))) = IDENT) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + (binary_expression IDENT * LIT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) }) while (parenthesized_expression ( (binary_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 )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( (binary_expression IDENT < (subscript_expression IDENT [ LIT ])) )) ;) })) (expression_statement (assignment_expression IDENT = LIT) ;) (labeled_statement statement_identifier : (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT ))) ;)) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT ))) ;) (return_statement return IDENT ;) })) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT , (binary_expression IDENT + LIT) , (binary_expression IDENT + LIT) , LIT , LIT , (binary_expression IDENT + LIT) , (binary_expression IDENT + LIT) , (binary_expression IDENT + LIT) ))) ;) })) (return_statement return IDENT ;) })) }))) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT , (binary_expression IDENT + LIT) , LIT , (binary_expression IDENT + LIT) ))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( )))) ;) (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 ( )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( LIT ))) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression LIT / IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression LIT % IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = LIT) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT * IDENT) + IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT * LIT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) + IDENT) )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) + IDENT) )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) + IDENT) )))) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = IDENT) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression IDENT + IDENT) )) - IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT * IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = (binary_expression IDENT * IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = IDENT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (binary_expression IDENT * LIT)) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (binary_expression IDENT * IDENT)) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (binary_expression IDENT * IDENT)) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( (binary_expression IDENT != IDENT) )) ;) })) (return_statement return IDENT ;) })))
(function_definition "int SortColormapByIntensity(int *param_1,undefined4 param_2)\n\n{\n  ushort *puVar1;\n  int iVar2;\n  undefined4 uVar3;\n  int iVar4;\n  uint uVar5;\n  double *pdVar6;\n  int iVar7;\n  int *piVar8;\n  double *pdVar9;\n  int iVar10;\n  float *pfVar11;\n  float *pfVar12;\n  double *pdVar13;\n  float *pfVar14;\n  int iVar15;\n  int iVar16;\n  int iVar17;\n  int iVar18;\n  int iVar19;\n  int iVar20;\n  float *pfVar21;\n  int iVar22;\n  undefined *puVar23;\n  double dVar24;\n  float fVar26;\n  double dVar25;\n  double dVar27;\n  double dVar28;\n  double dVar29;\n  double dVar30;\n  double dVar31;\n  double dVar32;\n  ulonglong uVar33;\n  \n  if (param_1 == (int *)0x0) {\n    (*(code *)PTR___assert_fail_003a9608)\n              (PTR_LAB_003a88e0 + 0xdd0,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n               0x13a,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a58);\n  }\n  else {\n    if (param_1[0xcd4] != 0) {\n      (*(code *)PTR_LogMagickEvent_003a91e0)\n                (0x8000,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x13c,\n                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x1fec);\n    }\n    if (param_1[0xcdb] == -0x54535255) {\n      iVar22 = 1;\n      if (*param_1 == 2) {\n        puVar1 = (ushort *)(*(code *)PTR_AcquireQuantumMemory_003a950c)(param_1[9],2);\n        if (puVar1 != (ushort *)0x0) {\n          iVar10 = param_1[9];\n          iVar22 = param_1[10];\n          if (0 < iVar10) {\n            iVar15 = 0;\n            pdVar6 = (double *)(iVar22 + 0x48);\n            do {\n              iVar2 = iVar15 + 1;\n              *pdVar6 = (double)iVar15;\n              iVar15 = iVar2;\n              pdVar6 = pdVar6 + 0xb;\n            } while (iVar2 != iVar10);\n          }\n          (*(code *)PTR_qsort_003a98d4)(iVar22,iVar10,0x58,PTR_LAB_003a893c + 0x4ca0);\n          iVar22 = param_1[9];\n          if (0 < iVar22) {\n            iVar10 = 0;\n            pdVar6 = (double *)(param_1[10] + 0x48);\n            do {\n              puVar1[(int)*pdVar6] = (ushort)iVar10;\n              iVar10 = iVar10 + 1;\n              pdVar6 = pdVar6 + 0xb;\n            } while (iVar22 != iVar10);\n          }\n          uVar3 = (*(code *)PTR_AcquireAuthenticCacheView_003a8ed4)(param_1,param_2);\n          if (0 < param_1[7]) {\n            iVar22 = 0;\n            uVar33 = (ulonglong)*(uint *)(PTR_LAB_003a88e0 + 0x1a50);\n            do {\n              iVar10 = (*(code *)PTR_GetCacheViewAuthenticPixels_003a964c)\n                                 (uVar3,0,iVar22,param_1[6],1,param_2);\n              if (iVar10 == 0) {\nLAB_00065918:\n                iVar22 = 0;\n                goto LAB_000658cc;\n              }\n              iVar2 = param_1[6];\n              iVar15 = 0;\n              if (0 < iVar2) {\n                iVar16 = param_1[0xb4];\n                iVar7 = param_1[0xb0];\n                iVar20 = param_1[10];\n                iVar19 = *(int *)(iVar16 + 0x40);\n                iVar18 = *(int *)(iVar16 + 0x28);\n                iVar17 = *(int *)(iVar16 + 0x34);\n                pfVar14 = (float *)(iVar10 + *(int *)(iVar16 + 8) * 4);\n                pfVar12 = (float *)(iVar10 + *(int *)(iVar16 + 0x14) * 4);\n                pfVar11 = (float *)(iVar10 + *(int *)(iVar16 + 0x20) * 4);\n                do {\n                  if (iVar19 == 0) {\n                    uVar5 = (uint)*puVar1;\n                  }\n                  else {\n                    pfVar21 = (float *)(iVar10 + *(int *)(iVar16 + 0x44) * 4);\n                    uVar5 = (uint)puVar1[(int)*pfVar21];\n                    *pfVar21 = (float)uVar5;\n                  }\n                  iVar4 = uVar5 * 0x58 + iVar20;\n                  dVar27 = *(double *)(iVar4 + 0x30);\n                  dVar24 = *(double *)(iVar4 + 0x38);\n                  *pfVar14 = (float)*(double *)(iVar4 + 0x28);\n                  *pfVar12 = (float)dVar27;\n                  *pfVar11 = (float)dVar24;\n                  if (iVar18 != 0) {\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x2c) * 4) =\n                         (float)*(double *)(iVar4 + 0x40);\n                  }\n                  if (iVar17 != 0) {\n                    fVar26 = (float)uVar33;\n                    if (*(int *)(iVar4 + 8) != 0) {\n                      fVar26 = (float)*(double *)(iVar4 + 0x48);\n                    }\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x38) * 4) = fVar26;\n                  }\n                  iVar15 = iVar15 + 1;\n                  iVar10 = iVar10 + iVar7 * 4;\n                  pfVar14 = pfVar14 + iVar7;\n                  pfVar12 = pfVar12 + iVar7;\n                  pfVar11 = pfVar11 + iVar7;\n                } while (iVar2 != iVar15);\n              }\n              iVar10 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8)(uVar3,param_2);\n              if (iVar10 == 0) goto LAB_00065918;\n              iVar22 = iVar22 + 1;\n            } while (iVar22 < param_1[7]);\n          }\n          iVar22 = 1;\nLAB_000658cc:\n          (*(code *)PTR_DestroyCacheView_003a8ef4)(uVar3);\n          (*(code *)PTR_RelinquishMagickMemory_003a8fc0)(puVar1);\n          return iVar22;\n        }\n        iVar22 = 0;\n        (*(code *)PTR_ThrowMagickException_003a8f20)\n                  (param_2,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                   PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x147,400,\n                   PTR_LAB_003a88e0 + 0x16f8,PTR_LAB_003a88e0 + 0x3e28,param_1 + 0xd0);\n      }\n      return iVar22;\n    }\n  }\n  piVar8 = (int *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3784);\n  puVar23 = PTR___assert_fail_003a9608;\n  (*(code *)PTR___assert_fail_003a9608)\n            (piVar8,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,0x13d,\n             PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a58);\n  iVar10 = (**(code **)(puVar23 + 0x343f4c))();\n  iVar22 = (**(code **)(puVar23 + 0x343b48))();\n  if (iVar10 == 0) {\n    trap(7);\n  }\n  iVar15 = 0x10000 / iVar10;\n  iVar10 = 0x10000 % iVar10;\n  if (iVar22 < iVar10) {\n    iVar15 = iVar15 + 1;\n    iVar10 = 0;\n  }\n  iVar10 = iVar15 * iVar22 + iVar10;\n  iVar15 = iVar15 + iVar10;\n  if (iVar10 < iVar15) {\n    iVar2 = iVar10 * 0x18;\n    dVar24 = *(double *)(*(int *)(puVar23 + 0x342f28) + -0x3f48);\n    dVar31 = *(double *)(*(int *)(puVar23 + 0x342f20) + 0x1a58);\n    dVar32 = *(double *)(*(int *)(puVar23 + 0x342f28) + -0x3f40);\n    dVar30 = *(double *)(*(int *)(puVar23 + 0x342f20) + 0x1400);\n    dVar27 = *(double *)(*(int *)(puVar23 + 0x342f28) + -0x3f50);\n    iVar22 = iVar10;\n    pdVar6 = (double *)(piVar8[2] + iVar2);\n    pdVar9 = (double *)(*piVar8 + iVar2);\n    pdVar13 = (double *)(piVar8[1] + iVar2);\n    do {\n      iVar10 = iVar22 + 1;\n      dVar28 = (double)iVar22;\n      *pdVar13 = dVar28;\n      dVar25 = (dVar28 + dVar28) - dVar31;\n      dVar29 = dVar25 * dVar27;\n      *pdVar9 = dVar25 * dVar30;\n      *pdVar6 = dVar29;\n      pdVar13[1] = dVar28;\n      pdVar9[1] = dVar25 * 0.0;\n      pdVar6[1] = dVar25 * dVar24;\n      pdVar13[2] = dVar28;\n      pdVar9[2] = dVar25 * dVar32;\n      pdVar6[2] = dVar29;\n      iVar22 = iVar10;\n      pdVar6 = pdVar6 + 3;\n      pdVar9 = pdVar9 + 3;\n      pdVar13 = pdVar13 + 3;\n    } while (iVar15 != iVar10);\n  }\n  return iVar10;\n}" (primitive_type "int") (function_declarator "SortColormapByIntensity(int *param_1,undefined4 param_2)" (identifier "SortColormapByIntensity") (parameter_list "(int *param_1,undefined4 param_2)" (( "(") (parameter_declaration "int *param_1" (primitive_type "int") (pointer_declarator "*param_1" (* "*") (identifier "param_1"))) (, ",") (parameter_declaration "undefined4 param_2" (type_identifier "undefined4") (identifier "param_2")) () ")"))) (compound_statement "{\n  ushort *puVar1;\n  int iVar2;\n  undefined4 uVar3;\n  int iVar4;\n  uint uVar5;\n  double *pdVar6;\n  int iVar7;\n  int *piVar8;\n  double *pdVar9;\n  int iVar10;\n  float *pfVar11;\n  float *pfVar12;\n  double *pdVar13;\n  float *pfVar14;\n  int iVar15;\n  int iVar16;\n  int iVar17;\n  int iVar18;\n  int iVar19;\n  int iVar20;\n  float *pfVar21;\n  int iVar22;\n  undefined *puVar23;\n  double dVar24;\n  float fVar26;\n  double dVar25;\n  double dVar27;\n  double dVar28;\n  double dVar29;\n  double dVar30;\n  double dVar31;\n  double dVar32;\n  ulonglong uVar33;\n  \n  if (param_1 == (int *)0x0) {\n    (*(code *)PTR___assert_fail_003a9608)\n              (PTR_LAB_003a88e0 + 0xdd0,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n               0x13a,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a58);\n  }\n  else {\n    if (param_1[0xcd4] != 0) {\n      (*(code *)PTR_LogMagickEvent_003a91e0)\n                (0x8000,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x13c,\n                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x1fec);\n    }\n    if (param_1[0xcdb] == -0x54535255) {\n      iVar22 = 1;\n      if (*param_1 == 2) {\n        puVar1 = (ushort *)(*(code *)PTR_AcquireQuantumMemory_003a950c)(param_1[9],2);\n        if (puVar1 != (ushort *)0x0) {\n          iVar10 = param_1[9];\n          iVar22 = param_1[10];\n          if (0 < iVar10) {\n            iVar15 = 0;\n            pdVar6 = (double *)(iVar22 + 0x48);\n            do {\n              iVar2 = iVar15 + 1;\n              *pdVar6 = (double)iVar15;\n              iVar15 = iVar2;\n              pdVar6 = pdVar6 + 0xb;\n            } while (iVar2 != iVar10);\n          }\n          (*(code *)PTR_qsort_003a98d4)(iVar22,iVar10,0x58,PTR_LAB_003a893c + 0x4ca0);\n          iVar22 = param_1[9];\n          if (0 < iVar22) {\n            iVar10 = 0;\n            pdVar6 = (double *)(param_1[10] + 0x48);\n            do {\n              puVar1[(int)*pdVar6] = (ushort)iVar10;\n              iVar10 = iVar10 + 1;\n              pdVar6 = pdVar6 + 0xb;\n            } while (iVar22 != iVar10);\n          }\n          uVar3 = (*(code *)PTR_AcquireAuthenticCacheView_003a8ed4)(param_1,param_2);\n          if (0 < param_1[7]) {\n            iVar22 = 0;\n            uVar33 = (ulonglong)*(uint *)(PTR_LAB_003a88e0 + 0x1a50);\n            do {\n              iVar10 = (*(code *)PTR_GetCacheViewAuthenticPixels_003a964c)\n                                 (uVar3,0,iVar22,param_1[6],1,param_2);\n              if (iVar10 == 0) {\nLAB_00065918:\n                iVar22 = 0;\n                goto LAB_000658cc;\n              }\n              iVar2 = param_1[6];\n              iVar15 = 0;\n              if (0 < iVar2) {\n                iVar16 = param_1[0xb4];\n                iVar7 = param_1[0xb0];\n                iVar20 = param_1[10];\n                iVar19 = *(int *)(iVar16 + 0x40);\n                iVar18 = *(int *)(iVar16 + 0x28);\n                iVar17 = *(int *)(iVar16 + 0x34);\n                pfVar14 = (float *)(iVar10 + *(int *)(iVar16 + 8) * 4);\n                pfVar12 = (float *)(iVar10 + *(int *)(iVar16 + 0x14) * 4);\n                pfVar11 = (float *)(iVar10 + *(int *)(iVar16 + 0x20) * 4);\n                do {\n                  if (iVar19 == 0) {\n                    uVar5 = (uint)*puVar1;\n                  }\n                  else {\n                    pfVar21 = (float *)(iVar10 + *(int *)(iVar16 + 0x44) * 4);\n                    uVar5 = (uint)puVar1[(int)*pfVar21];\n                    *pfVar21 = (float)uVar5;\n                  }\n                  iVar4 = uVar5 * 0x58 + iVar20;\n                  dVar27 = *(double *)(iVar4 + 0x30);\n                  dVar24 = *(double *)(iVar4 + 0x38);\n                  *pfVar14 = (float)*(double *)(iVar4 + 0x28);\n                  *pfVar12 = (float)dVar27;\n                  *pfVar11 = (float)dVar24;\n                  if (iVar18 != 0) {\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x2c) * 4) =\n                         (float)*(double *)(iVar4 + 0x40);\n                  }\n                  if (iVar17 != 0) {\n                    fVar26 = (float)uVar33;\n                    if (*(int *)(iVar4 + 8) != 0) {\n                      fVar26 = (float)*(double *)(iVar4 + 0x48);\n                    }\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x38) * 4) = fVar26;\n                  }\n                  iVar15 = iVar15 + 1;\n                  iVar10 = iVar10 + iVar7 * 4;\n                  pfVar14 = pfVar14 + iVar7;\n                  pfVar12 = pfVar12 + iVar7;\n                  pfVar11 = pfVar11 + iVar7;\n                } while (iVar2 != iVar15);\n              }\n              iVar10 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8)(uVar3,param_2);\n              if (iVar10 == 0) goto LAB_00065918;\n              iVar22 = iVar22 + 1;\n            } while (iVar22 < param_1[7]);\n          }\n          iVar22 = 1;\nLAB_000658cc:\n          (*(code *)PTR_DestroyCacheView_003a8ef4)(uVar3);\n          (*(code *)PTR_RelinquishMagickMemory_003a8fc0)(puVar1);\n          return iVar22;\n        }\n        iVar22 = 0;\n        (*(code *)PTR_ThrowMagickException_003a8f20)\n                  (param_2,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                   PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x147,400,\n                   PTR_LAB_003a88e0 + 0x16f8,PTR_LAB_003a88e0 + 0x3e28,param_1 + 0xd0);\n      }\n      return iVar22;\n    }\n  }\n  piVar8 = (int *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3784);\n  puVar23 = PTR___assert_fail_003a9608;\n  (*(code *)PTR___assert_fail_003a9608)\n            (piVar8,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,0x13d,\n             PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a58);\n  iVar10 = (**(code **)(puVar23 + 0x343f4c))();\n  iVar22 = (**(code **)(puVar23 + 0x343b48))();\n  if (iVar10 == 0) {\n    trap(7);\n  }\n  iVar15 = 0x10000 / iVar10;\n  iVar10 = 0x10000 % iVar10;\n  if (iVar22 < iVar10) {\n    iVar15 = iVar15 + 1;\n    iVar10 = 0;\n  }\n  iVar10 = iVar15 * iVar22 + iVar10;\n  iVar15 = iVar15 + iVar10;\n  if (iVar10 < iVar15) {\n    iVar2 = iVar10 * 0x18;\n    dVar24 = *(double *)(*(int *)(puVar23 + 0x342f28) + -0x3f48);\n    dVar31 = *(double *)(*(int *)(puVar23 + 0x342f20) + 0x1a58);\n    dVar32 = *(double *)(*(int *)(puVar23 + 0x342f28) + -0x3f40);\n    dVar30 = *(double *)(*(int *)(puVar23 + 0x342f20) + 0x1400);\n    dVar27 = *(double *)(*(int *)(puVar23 + 0x342f28) + -0x3f50);\n    iVar22 = iVar10;\n    pdVar6 = (double *)(piVar8[2] + iVar2);\n    pdVar9 = (double *)(*piVar8 + iVar2);\n    pdVar13 = (double *)(piVar8[1] + iVar2);\n    do {\n      iVar10 = iVar22 + 1;\n      dVar28 = (double)iVar22;\n      *pdVar13 = dVar28;\n      dVar25 = (dVar28 + dVar28) - dVar31;\n      dVar29 = dVar25 * dVar27;\n      *pdVar9 = dVar25 * dVar30;\n      *pdVar6 = dVar29;\n      pdVar13[1] = dVar28;\n      pdVar9[1] = dVar25 * 0.0;\n      pdVar6[1] = dVar25 * dVar24;\n      pdVar13[2] = dVar28;\n      pdVar9[2] = dVar25 * dVar32;\n      pdVar6[2] = dVar29;\n      iVar22 = iVar10;\n      pdVar6 = pdVar6 + 3;\n      pdVar9 = pdVar9 + 3;\n      pdVar13 = pdVar13 + 3;\n    } while (iVar15 != iVar10);\n  }\n  return iVar10;\n}" ({ "{") (declaration "ushort *puVar1;" (type_identifier "ushort") (pointer_declarator "*puVar1" (* "*") (identifier "puVar1")) (; ";")) (declaration "int iVar2;" (primitive_type "int") (identifier "iVar2") (; ";")) (declaration "undefined4 uVar3;" (type_identifier "undefined4") (identifier "uVar3") (; ";")) (declaration "int iVar4;" (primitive_type "int") (identifier "iVar4") (; ";")) (declaration "uint uVar5;" (type_identifier "uint") (identifier "uVar5") (; ";")) (declaration "double *pdVar6;" (primitive_type "double") (pointer_declarator "*pdVar6" (* "*") (identifier "pdVar6")) (; ";")) (declaration "int iVar7;" (primitive_type "int") (identifier "iVar7") (; ";")) (declaration "int *piVar8;" (primitive_type "int") (pointer_declarator "*piVar8" (* "*") (identifier "piVar8")) (; ";")) (declaration "double *pdVar9;" (primitive_type "double") (pointer_declarator "*pdVar9" (* "*") (identifier "pdVar9")) (; ";")) (declaration "int iVar10;" (primitive_type "int") (identifier "iVar10") (; ";")) (declaration "float *pfVar11;" (primitive_type "float") (pointer_declarator "*pfVar11" (* "*") (identifier "pfVar11")) (; ";")) (declaration "float *pfVar12;" (primitive_type "float") (pointer_declarator "*pfVar12" (* "*") (identifier "pfVar12")) (; ";")) (declaration "double *pdVar13;" (primitive_type "double") (pointer_declarator "*pdVar13" (* "*") (identifier "pdVar13")) (; ";")) (declaration "float *pfVar14;" (primitive_type "float") (pointer_declarator "*pfVar14" (* "*") (identifier "pfVar14")) (; ";")) (declaration "int iVar15;" (primitive_type "int") (identifier "iVar15") (; ";")) (declaration "int iVar16;" (primitive_type "int") (identifier "iVar16") (; ";")) (declaration "int iVar17;" (primitive_type "int") (identifier "iVar17") (; ";")) (declaration "int iVar18;" (primitive_type "int") (identifier "iVar18") (; ";")) (declaration "int iVar19;" (primitive_type "int") (identifier "iVar19") (; ";")) (declaration "int iVar20;" (primitive_type "int") (identifier "iVar20") (; ";")) (declaration "float *pfVar21;" (primitive_type "float") (pointer_declarator "*pfVar21" (* "*") (identifier "pfVar21")) (; ";")) (declaration "int iVar22;" (primitive_type "int") (identifier "iVar22") (; ";")) (declaration "undefined *puVar23;" (type_identifier "undefined") (pointer_declarator "*puVar23" (* "*") (identifier "puVar23")) (; ";")) (declaration "double dVar24;" (primitive_type "double") (identifier "dVar24") (; ";")) (declaration "float fVar26;" (primitive_type "float") (identifier "fVar26") (; ";")) (declaration "double dVar25;" (primitive_type "double") (identifier "dVar25") (; ";")) (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 "ulonglong uVar33;" (type_identifier "ulonglong") (identifier "uVar33") (; ";")) (if_statement "if (param_1 == (int *)0x0) {\n    (*(code *)PTR___assert_fail_003a9608)\n              (PTR_LAB_003a88e0 + 0xdd0,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n               0x13a,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a58);\n  }\n  else {\n    if (param_1[0xcd4] != 0) {\n      (*(code *)PTR_LogMagickEvent_003a91e0)\n                (0x8000,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x13c,\n                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x1fec);\n    }\n    if (param_1[0xcdb] == -0x54535255) {\n      iVar22 = 1;\n      if (*param_1 == 2) {\n        puVar1 = (ushort *)(*(code *)PTR_AcquireQuantumMemory_003a950c)(param_1[9],2);\n        if (puVar1 != (ushort *)0x0) {\n          iVar10 = param_1[9];\n          iVar22 = param_1[10];\n          if (0 < iVar10) {\n            iVar15 = 0;\n            pdVar6 = (double *)(iVar22 + 0x48);\n            do {\n              iVar2 = iVar15 + 1;\n              *pdVar6 = (double)iVar15;\n              iVar15 = iVar2;\n              pdVar6 = pdVar6 + 0xb;\n            } while (iVar2 != iVar10);\n          }\n          (*(code *)PTR_qsort_003a98d4)(iVar22,iVar10,0x58,PTR_LAB_003a893c + 0x4ca0);\n          iVar22 = param_1[9];\n          if (0 < iVar22) {\n            iVar10 = 0;\n            pdVar6 = (double *)(param_1[10] + 0x48);\n            do {\n              puVar1[(int)*pdVar6] = (ushort)iVar10;\n              iVar10 = iVar10 + 1;\n              pdVar6 = pdVar6 + 0xb;\n            } while (iVar22 != iVar10);\n          }\n          uVar3 = (*(code *)PTR_AcquireAuthenticCacheView_003a8ed4)(param_1,param_2);\n          if (0 < param_1[7]) {\n            iVar22 = 0;\n            uVar33 = (ulonglong)*(uint *)(PTR_LAB_003a88e0 + 0x1a50);\n            do {\n              iVar10 = (*(code *)PTR_GetCacheViewAuthenticPixels_003a964c)\n                                 (uVar3,0,iVar22,param_1[6],1,param_2);\n              if (iVar10 == 0) {\nLAB_00065918:\n                iVar22 = 0;\n                goto LAB_000658cc;\n              }\n              iVar2 = param_1[6];\n              iVar15 = 0;\n              if (0 < iVar2) {\n                iVar16 = param_1[0xb4];\n                iVar7 = param_1[0xb0];\n                iVar20 = param_1[10];\n                iVar19 = *(int *)(iVar16 + 0x40);\n                iVar18 = *(int *)(iVar16 + 0x28);\n                iVar17 = *(int *)(iVar16 + 0x34);\n                pfVar14 = (float *)(iVar10 + *(int *)(iVar16 + 8) * 4);\n                pfVar12 = (float *)(iVar10 + *(int *)(iVar16 + 0x14) * 4);\n                pfVar11 = (float *)(iVar10 + *(int *)(iVar16 + 0x20) * 4);\n                do {\n                  if (iVar19 == 0) {\n                    uVar5 = (uint)*puVar1;\n                  }\n                  else {\n                    pfVar21 = (float *)(iVar10 + *(int *)(iVar16 + 0x44) * 4);\n                    uVar5 = (uint)puVar1[(int)*pfVar21];\n                    *pfVar21 = (float)uVar5;\n                  }\n                  iVar4 = uVar5 * 0x58 + iVar20;\n                  dVar27 = *(double *)(iVar4 + 0x30);\n                  dVar24 = *(double *)(iVar4 + 0x38);\n                  *pfVar14 = (float)*(double *)(iVar4 + 0x28);\n                  *pfVar12 = (float)dVar27;\n                  *pfVar11 = (float)dVar24;\n                  if (iVar18 != 0) {\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x2c) * 4) =\n                         (float)*(double *)(iVar4 + 0x40);\n                  }\n                  if (iVar17 != 0) {\n                    fVar26 = (float)uVar33;\n                    if (*(int *)(iVar4 + 8) != 0) {\n                      fVar26 = (float)*(double *)(iVar4 + 0x48);\n                    }\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x38) * 4) = fVar26;\n                  }\n                  iVar15 = iVar15 + 1;\n                  iVar10 = iVar10 + iVar7 * 4;\n                  pfVar14 = pfVar14 + iVar7;\n                  pfVar12 = pfVar12 + iVar7;\n                  pfVar11 = pfVar11 + iVar7;\n                } while (iVar2 != iVar15);\n              }\n              iVar10 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8)(uVar3,param_2);\n              if (iVar10 == 0) goto LAB_00065918;\n              iVar22 = iVar22 + 1;\n            } while (iVar22 < param_1[7]);\n          }\n          iVar22 = 1;\nLAB_000658cc:\n          (*(code *)PTR_DestroyCacheView_003a8ef4)(uVar3);\n          (*(code *)PTR_RelinquishMagickMemory_003a8fc0)(puVar1);\n          return iVar22;\n        }\n        iVar22 = 0;\n        (*(code *)PTR_ThrowMagickException_003a8f20)\n                  (param_2,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                   PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x147,400,\n                   PTR_LAB_003a88e0 + 0x16f8,PTR_LAB_003a88e0 + 0x3e28,param_1 + 0xd0);\n      }\n      return iVar22;\n    }\n  }" (if "if") (parenthesized_expression "(param_1 == (int *)0x0)" (( "(") (binary_expression "param_1 == (int *)0x0" (identifier "param_1") (== "==") (cast_expression "(int *)0x0" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n    (*(code *)PTR___assert_fail_003a9608)\n              (PTR_LAB_003a88e0 + 0xdd0,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n               0x13a,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a58);\n  }" ({ "{") (expression_statement "(*(code *)PTR___assert_fail_003a9608)\n              (PTR_LAB_003a88e0 + 0xdd0,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n               0x13a,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a58);" (call_expression "(*(code *)PTR___assert_fail_003a9608)\n              (PTR_LAB_003a88e0 + 0xdd0,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n               0x13a,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a58)" (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_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n               0x13a,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a58)" (( "(") (binary_expression "PTR_LAB_003a88e0 + 0xdd0" (identifier "PTR_LAB_003a88e0") (+ "+") (number_literal "0xdd0")) (, ",") (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88" (identifier "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8") (+ "+") (number_literal "-0x5a88")) (, ",") (number_literal "0x13a") (, ",") (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a58" (identifier "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8") (+ "+") (number_literal "-0x5a58")) () ")"))) (; ";")) (} "}")) (else_clause "else {\n    if (param_1[0xcd4] != 0) {\n      (*(code *)PTR_LogMagickEvent_003a91e0)\n                (0x8000,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x13c,\n                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x1fec);\n    }\n    if (param_1[0xcdb] == -0x54535255) {\n      iVar22 = 1;\n      if (*param_1 == 2) {\n        puVar1 = (ushort *)(*(code *)PTR_AcquireQuantumMemory_003a950c)(param_1[9],2);\n        if (puVar1 != (ushort *)0x0) {\n          iVar10 = param_1[9];\n          iVar22 = param_1[10];\n          if (0 < iVar10) {\n            iVar15 = 0;\n            pdVar6 = (double *)(iVar22 + 0x48);\n            do {\n              iVar2 = iVar15 + 1;\n              *pdVar6 = (double)iVar15;\n              iVar15 = iVar2;\n              pdVar6 = pdVar6 + 0xb;\n            } while (iVar2 != iVar10);\n          }\n          (*(code *)PTR_qsort_003a98d4)(iVar22,iVar10,0x58,PTR_LAB_003a893c + 0x4ca0);\n          iVar22 = param_1[9];\n          if (0 < iVar22) {\n            iVar10 = 0;\n            pdVar6 = (double *)(param_1[10] + 0x48);\n            do {\n              puVar1[(int)*pdVar6] = (ushort)iVar10;\n              iVar10 = iVar10 + 1;\n              pdVar6 = pdVar6 + 0xb;\n            } while (iVar22 != iVar10);\n          }\n          uVar3 = (*(code *)PTR_AcquireAuthenticCacheView_003a8ed4)(param_1,param_2);\n          if (0 < param_1[7]) {\n            iVar22 = 0;\n            uVar33 = (ulonglong)*(uint *)(PTR_LAB_003a88e0 + 0x1a50);\n            do {\n              iVar10 = (*(code *)PTR_GetCacheViewAuthenticPixels_003a964c)\n                                 (uVar3,0,iVar22,param_1[6],1,param_2);\n              if (iVar10 == 0) {\nLAB_00065918:\n                iVar22 = 0;\n                goto LAB_000658cc;\n              }\n              iVar2 = param_1[6];\n              iVar15 = 0;\n              if (0 < iVar2) {\n                iVar16 = param_1[0xb4];\n                iVar7 = param_1[0xb0];\n                iVar20 = param_1[10];\n                iVar19 = *(int *)(iVar16 + 0x40);\n                iVar18 = *(int *)(iVar16 + 0x28);\n                iVar17 = *(int *)(iVar16 + 0x34);\n                pfVar14 = (float *)(iVar10 + *(int *)(iVar16 + 8) * 4);\n                pfVar12 = (float *)(iVar10 + *(int *)(iVar16 + 0x14) * 4);\n                pfVar11 = (float *)(iVar10 + *(int *)(iVar16 + 0x20) * 4);\n                do {\n                  if (iVar19 == 0) {\n                    uVar5 = (uint)*puVar1;\n                  }\n                  else {\n                    pfVar21 = (float *)(iVar10 + *(int *)(iVar16 + 0x44) * 4);\n                    uVar5 = (uint)puVar1[(int)*pfVar21];\n                    *pfVar21 = (float)uVar5;\n                  }\n                  iVar4 = uVar5 * 0x58 + iVar20;\n                  dVar27 = *(double *)(iVar4 + 0x30);\n                  dVar24 = *(double *)(iVar4 + 0x38);\n                  *pfVar14 = (float)*(double *)(iVar4 + 0x28);\n                  *pfVar12 = (float)dVar27;\n                  *pfVar11 = (float)dVar24;\n                  if (iVar18 != 0) {\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x2c) * 4) =\n                         (float)*(double *)(iVar4 + 0x40);\n                  }\n                  if (iVar17 != 0) {\n                    fVar26 = (float)uVar33;\n                    if (*(int *)(iVar4 + 8) != 0) {\n                      fVar26 = (float)*(double *)(iVar4 + 0x48);\n                    }\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x38) * 4) = fVar26;\n                  }\n                  iVar15 = iVar15 + 1;\n                  iVar10 = iVar10 + iVar7 * 4;\n                  pfVar14 = pfVar14 + iVar7;\n                  pfVar12 = pfVar12 + iVar7;\n                  pfVar11 = pfVar11 + iVar7;\n                } while (iVar2 != iVar15);\n              }\n              iVar10 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8)(uVar3,param_2);\n              if (iVar10 == 0) goto LAB_00065918;\n              iVar22 = iVar22 + 1;\n            } while (iVar22 < param_1[7]);\n          }\n          iVar22 = 1;\nLAB_000658cc:\n          (*(code *)PTR_DestroyCacheView_003a8ef4)(uVar3);\n          (*(code *)PTR_RelinquishMagickMemory_003a8fc0)(puVar1);\n          return iVar22;\n        }\n        iVar22 = 0;\n        (*(code *)PTR_ThrowMagickException_003a8f20)\n                  (param_2,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                   PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x147,400,\n                   PTR_LAB_003a88e0 + 0x16f8,PTR_LAB_003a88e0 + 0x3e28,param_1 + 0xd0);\n      }\n      return iVar22;\n    }\n  }" (else "else") (compound_statement "{\n    if (param_1[0xcd4] != 0) {\n      (*(code *)PTR_LogMagickEvent_003a91e0)\n                (0x8000,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x13c,\n                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x1fec);\n    }\n    if (param_1[0xcdb] == -0x54535255) {\n      iVar22 = 1;\n      if (*param_1 == 2) {\n        puVar1 = (ushort *)(*(code *)PTR_AcquireQuantumMemory_003a950c)(param_1[9],2);\n        if (puVar1 != (ushort *)0x0) {\n          iVar10 = param_1[9];\n          iVar22 = param_1[10];\n          if (0 < iVar10) {\n            iVar15 = 0;\n            pdVar6 = (double *)(iVar22 + 0x48);\n            do {\n              iVar2 = iVar15 + 1;\n              *pdVar6 = (double)iVar15;\n              iVar15 = iVar2;\n              pdVar6 = pdVar6 + 0xb;\n            } while (iVar2 != iVar10);\n          }\n          (*(code *)PTR_qsort_003a98d4)(iVar22,iVar10,0x58,PTR_LAB_003a893c + 0x4ca0);\n          iVar22 = param_1[9];\n          if (0 < iVar22) {\n            iVar10 = 0;\n            pdVar6 = (double *)(param_1[10] + 0x48);\n            do {\n              puVar1[(int)*pdVar6] = (ushort)iVar10;\n              iVar10 = iVar10 + 1;\n              pdVar6 = pdVar6 + 0xb;\n            } while (iVar22 != iVar10);\n          }\n          uVar3 = (*(code *)PTR_AcquireAuthenticCacheView_003a8ed4)(param_1,param_2);\n          if (0 < param_1[7]) {\n            iVar22 = 0;\n            uVar33 = (ulonglong)*(uint *)(PTR_LAB_003a88e0 + 0x1a50);\n            do {\n              iVar10 = (*(code *)PTR_GetCacheViewAuthenticPixels_003a964c)\n                                 (uVar3,0,iVar22,param_1[6],1,param_2);\n              if (iVar10 == 0) {\nLAB_00065918:\n                iVar22 = 0;\n                goto LAB_000658cc;\n              }\n              iVar2 = param_1[6];\n              iVar15 = 0;\n              if (0 < iVar2) {\n                iVar16 = param_1[0xb4];\n                iVar7 = param_1[0xb0];\n                iVar20 = param_1[10];\n                iVar19 = *(int *)(iVar16 + 0x40);\n                iVar18 = *(int *)(iVar16 + 0x28);\n                iVar17 = *(int *)(iVar16 + 0x34);\n                pfVar14 = (float *)(iVar10 + *(int *)(iVar16 + 8) * 4);\n                pfVar12 = (float *)(iVar10 + *(int *)(iVar16 + 0x14) * 4);\n                pfVar11 = (float *)(iVar10 + *(int *)(iVar16 + 0x20) * 4);\n                do {\n                  if (iVar19 == 0) {\n                    uVar5 = (uint)*puVar1;\n                  }\n                  else {\n                    pfVar21 = (float *)(iVar10 + *(int *)(iVar16 + 0x44) * 4);\n                    uVar5 = (uint)puVar1[(int)*pfVar21];\n                    *pfVar21 = (float)uVar5;\n                  }\n                  iVar4 = uVar5 * 0x58 + iVar20;\n                  dVar27 = *(double *)(iVar4 + 0x30);\n                  dVar24 = *(double *)(iVar4 + 0x38);\n                  *pfVar14 = (float)*(double *)(iVar4 + 0x28);\n                  *pfVar12 = (float)dVar27;\n                  *pfVar11 = (float)dVar24;\n                  if (iVar18 != 0) {\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x2c) * 4) =\n                         (float)*(double *)(iVar4 + 0x40);\n                  }\n                  if (iVar17 != 0) {\n                    fVar26 = (float)uVar33;\n                    if (*(int *)(iVar4 + 8) != 0) {\n                      fVar26 = (float)*(double *)(iVar4 + 0x48);\n                    }\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x38) * 4) = fVar26;\n                  }\n                  iVar15 = iVar15 + 1;\n                  iVar10 = iVar10 + iVar7 * 4;\n                  pfVar14 = pfVar14 + iVar7;\n                  pfVar12 = pfVar12 + iVar7;\n                  pfVar11 = pfVar11 + iVar7;\n                } while (iVar2 != iVar15);\n              }\n              iVar10 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8)(uVar3,param_2);\n              if (iVar10 == 0) goto LAB_00065918;\n              iVar22 = iVar22 + 1;\n            } while (iVar22 < param_1[7]);\n          }\n          iVar22 = 1;\nLAB_000658cc:\n          (*(code *)PTR_DestroyCacheView_003a8ef4)(uVar3);\n          (*(code *)PTR_RelinquishMagickMemory_003a8fc0)(puVar1);\n          return iVar22;\n        }\n        iVar22 = 0;\n        (*(code *)PTR_ThrowMagickException_003a8f20)\n                  (param_2,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                   PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x147,400,\n                   PTR_LAB_003a88e0 + 0x16f8,PTR_LAB_003a88e0 + 0x3e28,param_1 + 0xd0);\n      }\n      return iVar22;\n    }\n  }" ({ "{") (if_statement "if (param_1[0xcd4] != 0) {\n      (*(code *)PTR_LogMagickEvent_003a91e0)\n                (0x8000,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x13c,\n                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x1fec);\n    }" (if "if") (parenthesized_expression "(param_1[0xcd4] != 0)" (( "(") (binary_expression "param_1[0xcd4] != 0" (subscript_expression "param_1[0xcd4]" (identifier "param_1") ([ "[") (number_literal "0xcd4") (] "]")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      (*(code *)PTR_LogMagickEvent_003a91e0)\n                (0x8000,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x13c,\n                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x1fec);\n    }" ({ "{") (expression_statement "(*(code *)PTR_LogMagickEvent_003a91e0)\n                (0x8000,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x13c,\n                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x1fec);" (call_expression "(*(code *)PTR_LogMagickEvent_003a91e0)\n                (0x8000,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x13c,\n                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x1fec)" (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_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x13c,\n                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x1fec)" (( "(") (number_literal "0x8000") (, ",") (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88" (identifier "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8") (+ "+") (number_literal "-0x5a88")) (, ",") (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70" (identifier "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8") (+ "+") (number_literal "-0x5a70")) (, ",") (number_literal "0x13c") (, ",") (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x1fec" (identifier "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8") (+ "+") (number_literal "-0x1fec")) () ")"))) (; ";")) (} "}"))) (if_statement "if (param_1[0xcdb] == -0x54535255) {\n      iVar22 = 1;\n      if (*param_1 == 2) {\n        puVar1 = (ushort *)(*(code *)PTR_AcquireQuantumMemory_003a950c)(param_1[9],2);\n        if (puVar1 != (ushort *)0x0) {\n          iVar10 = param_1[9];\n          iVar22 = param_1[10];\n          if (0 < iVar10) {\n            iVar15 = 0;\n            pdVar6 = (double *)(iVar22 + 0x48);\n            do {\n              iVar2 = iVar15 + 1;\n              *pdVar6 = (double)iVar15;\n              iVar15 = iVar2;\n              pdVar6 = pdVar6 + 0xb;\n            } while (iVar2 != iVar10);\n          }\n          (*(code *)PTR_qsort_003a98d4)(iVar22,iVar10,0x58,PTR_LAB_003a893c + 0x4ca0);\n          iVar22 = param_1[9];\n          if (0 < iVar22) {\n            iVar10 = 0;\n            pdVar6 = (double *)(param_1[10] + 0x48);\n            do {\n              puVar1[(int)*pdVar6] = (ushort)iVar10;\n              iVar10 = iVar10 + 1;\n              pdVar6 = pdVar6 + 0xb;\n            } while (iVar22 != iVar10);\n          }\n          uVar3 = (*(code *)PTR_AcquireAuthenticCacheView_003a8ed4)(param_1,param_2);\n          if (0 < param_1[7]) {\n            iVar22 = 0;\n            uVar33 = (ulonglong)*(uint *)(PTR_LAB_003a88e0 + 0x1a50);\n            do {\n              iVar10 = (*(code *)PTR_GetCacheViewAuthenticPixels_003a964c)\n                                 (uVar3,0,iVar22,param_1[6],1,param_2);\n              if (iVar10 == 0) {\nLAB_00065918:\n                iVar22 = 0;\n                goto LAB_000658cc;\n              }\n              iVar2 = param_1[6];\n              iVar15 = 0;\n              if (0 < iVar2) {\n                iVar16 = param_1[0xb4];\n                iVar7 = param_1[0xb0];\n                iVar20 = param_1[10];\n                iVar19 = *(int *)(iVar16 + 0x40);\n                iVar18 = *(int *)(iVar16 + 0x28);\n                iVar17 = *(int *)(iVar16 + 0x34);\n                pfVar14 = (float *)(iVar10 + *(int *)(iVar16 + 8) * 4);\n                pfVar12 = (float *)(iVar10 + *(int *)(iVar16 + 0x14) * 4);\n                pfVar11 = (float *)(iVar10 + *(int *)(iVar16 + 0x20) * 4);\n                do {\n                  if (iVar19 == 0) {\n                    uVar5 = (uint)*puVar1;\n                  }\n                  else {\n                    pfVar21 = (float *)(iVar10 + *(int *)(iVar16 + 0x44) * 4);\n                    uVar5 = (uint)puVar1[(int)*pfVar21];\n                    *pfVar21 = (float)uVar5;\n                  }\n                  iVar4 = uVar5 * 0x58 + iVar20;\n                  dVar27 = *(double *)(iVar4 + 0x30);\n                  dVar24 = *(double *)(iVar4 + 0x38);\n                  *pfVar14 = (float)*(double *)(iVar4 + 0x28);\n                  *pfVar12 = (float)dVar27;\n                  *pfVar11 = (float)dVar24;\n                  if (iVar18 != 0) {\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x2c) * 4) =\n                         (float)*(double *)(iVar4 + 0x40);\n                  }\n                  if (iVar17 != 0) {\n                    fVar26 = (float)uVar33;\n                    if (*(int *)(iVar4 + 8) != 0) {\n                      fVar26 = (float)*(double *)(iVar4 + 0x48);\n                    }\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x38) * 4) = fVar26;\n                  }\n                  iVar15 = iVar15 + 1;\n                  iVar10 = iVar10 + iVar7 * 4;\n                  pfVar14 = pfVar14 + iVar7;\n                  pfVar12 = pfVar12 + iVar7;\n                  pfVar11 = pfVar11 + iVar7;\n                } while (iVar2 != iVar15);\n              }\n              iVar10 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8)(uVar3,param_2);\n              if (iVar10 == 0) goto LAB_00065918;\n              iVar22 = iVar22 + 1;\n            } while (iVar22 < param_1[7]);\n          }\n          iVar22 = 1;\nLAB_000658cc:\n          (*(code *)PTR_DestroyCacheView_003a8ef4)(uVar3);\n          (*(code *)PTR_RelinquishMagickMemory_003a8fc0)(puVar1);\n          return iVar22;\n        }\n        iVar22 = 0;\n        (*(code *)PTR_ThrowMagickException_003a8f20)\n                  (param_2,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                   PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x147,400,\n                   PTR_LAB_003a88e0 + 0x16f8,PTR_LAB_003a88e0 + 0x3e28,param_1 + 0xd0);\n      }\n      return iVar22;\n    }" (if "if") (parenthesized_expression "(param_1[0xcdb] == -0x54535255)" (( "(") (binary_expression "param_1[0xcdb] == -0x54535255" (subscript_expression "param_1[0xcdb]" (identifier "param_1") ([ "[") (number_literal "0xcdb") (] "]")) (== "==") (number_literal "-0x54535255")) () ")")) (compound_statement "{\n      iVar22 = 1;\n      if (*param_1 == 2) {\n        puVar1 = (ushort *)(*(code *)PTR_AcquireQuantumMemory_003a950c)(param_1[9],2);\n        if (puVar1 != (ushort *)0x0) {\n          iVar10 = param_1[9];\n          iVar22 = param_1[10];\n          if (0 < iVar10) {\n            iVar15 = 0;\n            pdVar6 = (double *)(iVar22 + 0x48);\n            do {\n              iVar2 = iVar15 + 1;\n              *pdVar6 = (double)iVar15;\n              iVar15 = iVar2;\n              pdVar6 = pdVar6 + 0xb;\n            } while (iVar2 != iVar10);\n          }\n          (*(code *)PTR_qsort_003a98d4)(iVar22,iVar10,0x58,PTR_LAB_003a893c + 0x4ca0);\n          iVar22 = param_1[9];\n          if (0 < iVar22) {\n            iVar10 = 0;\n            pdVar6 = (double *)(param_1[10] + 0x48);\n            do {\n              puVar1[(int)*pdVar6] = (ushort)iVar10;\n              iVar10 = iVar10 + 1;\n              pdVar6 = pdVar6 + 0xb;\n            } while (iVar22 != iVar10);\n          }\n          uVar3 = (*(code *)PTR_AcquireAuthenticCacheView_003a8ed4)(param_1,param_2);\n          if (0 < param_1[7]) {\n            iVar22 = 0;\n            uVar33 = (ulonglong)*(uint *)(PTR_LAB_003a88e0 + 0x1a50);\n            do {\n              iVar10 = (*(code *)PTR_GetCacheViewAuthenticPixels_003a964c)\n                                 (uVar3,0,iVar22,param_1[6],1,param_2);\n              if (iVar10 == 0) {\nLAB_00065918:\n                iVar22 = 0;\n                goto LAB_000658cc;\n              }\n              iVar2 = param_1[6];\n              iVar15 = 0;\n              if (0 < iVar2) {\n                iVar16 = param_1[0xb4];\n                iVar7 = param_1[0xb0];\n                iVar20 = param_1[10];\n                iVar19 = *(int *)(iVar16 + 0x40);\n                iVar18 = *(int *)(iVar16 + 0x28);\n                iVar17 = *(int *)(iVar16 + 0x34);\n                pfVar14 = (float *)(iVar10 + *(int *)(iVar16 + 8) * 4);\n                pfVar12 = (float *)(iVar10 + *(int *)(iVar16 + 0x14) * 4);\n                pfVar11 = (float *)(iVar10 + *(int *)(iVar16 + 0x20) * 4);\n                do {\n                  if (iVar19 == 0) {\n                    uVar5 = (uint)*puVar1;\n                  }\n                  else {\n                    pfVar21 = (float *)(iVar10 + *(int *)(iVar16 + 0x44) * 4);\n                    uVar5 = (uint)puVar1[(int)*pfVar21];\n                    *pfVar21 = (float)uVar5;\n                  }\n                  iVar4 = uVar5 * 0x58 + iVar20;\n                  dVar27 = *(double *)(iVar4 + 0x30);\n                  dVar24 = *(double *)(iVar4 + 0x38);\n                  *pfVar14 = (float)*(double *)(iVar4 + 0x28);\n                  *pfVar12 = (float)dVar27;\n                  *pfVar11 = (float)dVar24;\n                  if (iVar18 != 0) {\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x2c) * 4) =\n                         (float)*(double *)(iVar4 + 0x40);\n                  }\n                  if (iVar17 != 0) {\n                    fVar26 = (float)uVar33;\n                    if (*(int *)(iVar4 + 8) != 0) {\n                      fVar26 = (float)*(double *)(iVar4 + 0x48);\n                    }\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x38) * 4) = fVar26;\n                  }\n                  iVar15 = iVar15 + 1;\n                  iVar10 = iVar10 + iVar7 * 4;\n                  pfVar14 = pfVar14 + iVar7;\n                  pfVar12 = pfVar12 + iVar7;\n                  pfVar11 = pfVar11 + iVar7;\n                } while (iVar2 != iVar15);\n              }\n              iVar10 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8)(uVar3,param_2);\n              if (iVar10 == 0) goto LAB_00065918;\n              iVar22 = iVar22 + 1;\n            } while (iVar22 < param_1[7]);\n          }\n          iVar22 = 1;\nLAB_000658cc:\n          (*(code *)PTR_DestroyCacheView_003a8ef4)(uVar3);\n          (*(code *)PTR_RelinquishMagickMemory_003a8fc0)(puVar1);\n          return iVar22;\n        }\n        iVar22 = 0;\n        (*(code *)PTR_ThrowMagickException_003a8f20)\n                  (param_2,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                   PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x147,400,\n                   PTR_LAB_003a88e0 + 0x16f8,PTR_LAB_003a88e0 + 0x3e28,param_1 + 0xd0);\n      }\n      return iVar22;\n    }" ({ "{") (expression_statement "iVar22 = 1;" (assignment_expression "iVar22 = 1" (identifier "iVar22") (= "=") (number_literal "1")) (; ";")) (if_statement "if (*param_1 == 2) {\n        puVar1 = (ushort *)(*(code *)PTR_AcquireQuantumMemory_003a950c)(param_1[9],2);\n        if (puVar1 != (ushort *)0x0) {\n          iVar10 = param_1[9];\n          iVar22 = param_1[10];\n          if (0 < iVar10) {\n            iVar15 = 0;\n            pdVar6 = (double *)(iVar22 + 0x48);\n            do {\n              iVar2 = iVar15 + 1;\n              *pdVar6 = (double)iVar15;\n              iVar15 = iVar2;\n              pdVar6 = pdVar6 + 0xb;\n            } while (iVar2 != iVar10);\n          }\n          (*(code *)PTR_qsort_003a98d4)(iVar22,iVar10,0x58,PTR_LAB_003a893c + 0x4ca0);\n          iVar22 = param_1[9];\n          if (0 < iVar22) {\n            iVar10 = 0;\n            pdVar6 = (double *)(param_1[10] + 0x48);\n            do {\n              puVar1[(int)*pdVar6] = (ushort)iVar10;\n              iVar10 = iVar10 + 1;\n              pdVar6 = pdVar6 + 0xb;\n            } while (iVar22 != iVar10);\n          }\n          uVar3 = (*(code *)PTR_AcquireAuthenticCacheView_003a8ed4)(param_1,param_2);\n          if (0 < param_1[7]) {\n            iVar22 = 0;\n            uVar33 = (ulonglong)*(uint *)(PTR_LAB_003a88e0 + 0x1a50);\n            do {\n              iVar10 = (*(code *)PTR_GetCacheViewAuthenticPixels_003a964c)\n                                 (uVar3,0,iVar22,param_1[6],1,param_2);\n              if (iVar10 == 0) {\nLAB_00065918:\n                iVar22 = 0;\n                goto LAB_000658cc;\n              }\n              iVar2 = param_1[6];\n              iVar15 = 0;\n              if (0 < iVar2) {\n                iVar16 = param_1[0xb4];\n                iVar7 = param_1[0xb0];\n                iVar20 = param_1[10];\n                iVar19 = *(int *)(iVar16 + 0x40);\n                iVar18 = *(int *)(iVar16 + 0x28);\n                iVar17 = *(int *)(iVar16 + 0x34);\n                pfVar14 = (float *)(iVar10 + *(int *)(iVar16 + 8) * 4);\n                pfVar12 = (float *)(iVar10 + *(int *)(iVar16 + 0x14) * 4);\n                pfVar11 = (float *)(iVar10 + *(int *)(iVar16 + 0x20) * 4);\n                do {\n                  if (iVar19 == 0) {\n                    uVar5 = (uint)*puVar1;\n                  }\n                  else {\n                    pfVar21 = (float *)(iVar10 + *(int *)(iVar16 + 0x44) * 4);\n                    uVar5 = (uint)puVar1[(int)*pfVar21];\n                    *pfVar21 = (float)uVar5;\n                  }\n                  iVar4 = uVar5 * 0x58 + iVar20;\n                  dVar27 = *(double *)(iVar4 + 0x30);\n                  dVar24 = *(double *)(iVar4 + 0x38);\n                  *pfVar14 = (float)*(double *)(iVar4 + 0x28);\n                  *pfVar12 = (float)dVar27;\n                  *pfVar11 = (float)dVar24;\n                  if (iVar18 != 0) {\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x2c) * 4) =\n                         (float)*(double *)(iVar4 + 0x40);\n                  }\n                  if (iVar17 != 0) {\n                    fVar26 = (float)uVar33;\n                    if (*(int *)(iVar4 + 8) != 0) {\n                      fVar26 = (float)*(double *)(iVar4 + 0x48);\n                    }\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x38) * 4) = fVar26;\n                  }\n                  iVar15 = iVar15 + 1;\n                  iVar10 = iVar10 + iVar7 * 4;\n                  pfVar14 = pfVar14 + iVar7;\n                  pfVar12 = pfVar12 + iVar7;\n                  pfVar11 = pfVar11 + iVar7;\n                } while (iVar2 != iVar15);\n              }\n              iVar10 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8)(uVar3,param_2);\n              if (iVar10 == 0) goto LAB_00065918;\n              iVar22 = iVar22 + 1;\n            } while (iVar22 < param_1[7]);\n          }\n          iVar22 = 1;\nLAB_000658cc:\n          (*(code *)PTR_DestroyCacheView_003a8ef4)(uVar3);\n          (*(code *)PTR_RelinquishMagickMemory_003a8fc0)(puVar1);\n          return iVar22;\n        }\n        iVar22 = 0;\n        (*(code *)PTR_ThrowMagickException_003a8f20)\n                  (param_2,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                   PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x147,400,\n                   PTR_LAB_003a88e0 + 0x16f8,PTR_LAB_003a88e0 + 0x3e28,param_1 + 0xd0);\n      }" (if "if") (parenthesized_expression "(*param_1 == 2)" (( "(") (binary_expression "*param_1 == 2" (pointer_expression "*param_1" (* "*") (identifier "param_1")) (== "==") (number_literal "2")) () ")")) (compound_statement "{\n        puVar1 = (ushort *)(*(code *)PTR_AcquireQuantumMemory_003a950c)(param_1[9],2);\n        if (puVar1 != (ushort *)0x0) {\n          iVar10 = param_1[9];\n          iVar22 = param_1[10];\n          if (0 < iVar10) {\n            iVar15 = 0;\n            pdVar6 = (double *)(iVar22 + 0x48);\n            do {\n              iVar2 = iVar15 + 1;\n              *pdVar6 = (double)iVar15;\n              iVar15 = iVar2;\n              pdVar6 = pdVar6 + 0xb;\n            } while (iVar2 != iVar10);\n          }\n          (*(code *)PTR_qsort_003a98d4)(iVar22,iVar10,0x58,PTR_LAB_003a893c + 0x4ca0);\n          iVar22 = param_1[9];\n          if (0 < iVar22) {\n            iVar10 = 0;\n            pdVar6 = (double *)(param_1[10] + 0x48);\n            do {\n              puVar1[(int)*pdVar6] = (ushort)iVar10;\n              iVar10 = iVar10 + 1;\n              pdVar6 = pdVar6 + 0xb;\n            } while (iVar22 != iVar10);\n          }\n          uVar3 = (*(code *)PTR_AcquireAuthenticCacheView_003a8ed4)(param_1,param_2);\n          if (0 < param_1[7]) {\n            iVar22 = 0;\n            uVar33 = (ulonglong)*(uint *)(PTR_LAB_003a88e0 + 0x1a50);\n            do {\n              iVar10 = (*(code *)PTR_GetCacheViewAuthenticPixels_003a964c)\n                                 (uVar3,0,iVar22,param_1[6],1,param_2);\n              if (iVar10 == 0) {\nLAB_00065918:\n                iVar22 = 0;\n                goto LAB_000658cc;\n              }\n              iVar2 = param_1[6];\n              iVar15 = 0;\n              if (0 < iVar2) {\n                iVar16 = param_1[0xb4];\n                iVar7 = param_1[0xb0];\n                iVar20 = param_1[10];\n                iVar19 = *(int *)(iVar16 + 0x40);\n                iVar18 = *(int *)(iVar16 + 0x28);\n                iVar17 = *(int *)(iVar16 + 0x34);\n                pfVar14 = (float *)(iVar10 + *(int *)(iVar16 + 8) * 4);\n                pfVar12 = (float *)(iVar10 + *(int *)(iVar16 + 0x14) * 4);\n                pfVar11 = (float *)(iVar10 + *(int *)(iVar16 + 0x20) * 4);\n                do {\n                  if (iVar19 == 0) {\n                    uVar5 = (uint)*puVar1;\n                  }\n                  else {\n                    pfVar21 = (float *)(iVar10 + *(int *)(iVar16 + 0x44) * 4);\n                    uVar5 = (uint)puVar1[(int)*pfVar21];\n                    *pfVar21 = (float)uVar5;\n                  }\n                  iVar4 = uVar5 * 0x58 + iVar20;\n                  dVar27 = *(double *)(iVar4 + 0x30);\n                  dVar24 = *(double *)(iVar4 + 0x38);\n                  *pfVar14 = (float)*(double *)(iVar4 + 0x28);\n                  *pfVar12 = (float)dVar27;\n                  *pfVar11 = (float)dVar24;\n                  if (iVar18 != 0) {\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x2c) * 4) =\n                         (float)*(double *)(iVar4 + 0x40);\n                  }\n                  if (iVar17 != 0) {\n                    fVar26 = (float)uVar33;\n                    if (*(int *)(iVar4 + 8) != 0) {\n                      fVar26 = (float)*(double *)(iVar4 + 0x48);\n                    }\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x38) * 4) = fVar26;\n                  }\n                  iVar15 = iVar15 + 1;\n                  iVar10 = iVar10 + iVar7 * 4;\n                  pfVar14 = pfVar14 + iVar7;\n                  pfVar12 = pfVar12 + iVar7;\n                  pfVar11 = pfVar11 + iVar7;\n                } while (iVar2 != iVar15);\n              }\n              iVar10 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8)(uVar3,param_2);\n              if (iVar10 == 0) goto LAB_00065918;\n              iVar22 = iVar22 + 1;\n            } while (iVar22 < param_1[7]);\n          }\n          iVar22 = 1;\nLAB_000658cc:\n          (*(code *)PTR_DestroyCacheView_003a8ef4)(uVar3);\n          (*(code *)PTR_RelinquishMagickMemory_003a8fc0)(puVar1);\n          return iVar22;\n        }\n        iVar22 = 0;\n        (*(code *)PTR_ThrowMagickException_003a8f20)\n                  (param_2,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                   PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x147,400,\n                   PTR_LAB_003a88e0 + 0x16f8,PTR_LAB_003a88e0 + 0x3e28,param_1 + 0xd0);\n      }" ({ "{") (expression_statement "puVar1 = (ushort *)(*(code *)PTR_AcquireQuantumMemory_003a950c)(param_1[9],2);" (assignment_expression "puVar1 = (ushort *)(*(code *)PTR_AcquireQuantumMemory_003a950c)(param_1[9],2)" (identifier "puVar1") (= "=") (cast_expression "(ushort *)(*(code *)PTR_AcquireQuantumMemory_003a950c)(param_1[9],2)" (( "(") (type_descriptor "ushort *" (type_identifier "ushort") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(*(code *)PTR_AcquireQuantumMemory_003a950c)(param_1[9],2)" (parenthesized_expression "(*(code *)PTR_AcquireQuantumMemory_003a950c)" (( "(") (pointer_expression "*(code *)PTR_AcquireQuantumMemory_003a950c" (* "*") (cast_expression "(code *)PTR_AcquireQuantumMemory_003a950c" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_AcquireQuantumMemory_003a950c"))) () ")")) (argument_list "(param_1[9],2)" (( "(") (subscript_expression "param_1[9]" (identifier "param_1") ([ "[") (number_literal "9") (] "]")) (, ",") (number_literal "2") () ")"))))) (; ";")) (if_statement "if (puVar1 != (ushort *)0x0) {\n          iVar10 = param_1[9];\n          iVar22 = param_1[10];\n          if (0 < iVar10) {\n            iVar15 = 0;\n            pdVar6 = (double *)(iVar22 + 0x48);\n            do {\n              iVar2 = iVar15 + 1;\n              *pdVar6 = (double)iVar15;\n              iVar15 = iVar2;\n              pdVar6 = pdVar6 + 0xb;\n            } while (iVar2 != iVar10);\n          }\n          (*(code *)PTR_qsort_003a98d4)(iVar22,iVar10,0x58,PTR_LAB_003a893c + 0x4ca0);\n          iVar22 = param_1[9];\n          if (0 < iVar22) {\n            iVar10 = 0;\n            pdVar6 = (double *)(param_1[10] + 0x48);\n            do {\n              puVar1[(int)*pdVar6] = (ushort)iVar10;\n              iVar10 = iVar10 + 1;\n              pdVar6 = pdVar6 + 0xb;\n            } while (iVar22 != iVar10);\n          }\n          uVar3 = (*(code *)PTR_AcquireAuthenticCacheView_003a8ed4)(param_1,param_2);\n          if (0 < param_1[7]) {\n            iVar22 = 0;\n            uVar33 = (ulonglong)*(uint *)(PTR_LAB_003a88e0 + 0x1a50);\n            do {\n              iVar10 = (*(code *)PTR_GetCacheViewAuthenticPixels_003a964c)\n                                 (uVar3,0,iVar22,param_1[6],1,param_2);\n              if (iVar10 == 0) {\nLAB_00065918:\n                iVar22 = 0;\n                goto LAB_000658cc;\n              }\n              iVar2 = param_1[6];\n              iVar15 = 0;\n              if (0 < iVar2) {\n                iVar16 = param_1[0xb4];\n                iVar7 = param_1[0xb0];\n                iVar20 = param_1[10];\n                iVar19 = *(int *)(iVar16 + 0x40);\n                iVar18 = *(int *)(iVar16 + 0x28);\n                iVar17 = *(int *)(iVar16 + 0x34);\n                pfVar14 = (float *)(iVar10 + *(int *)(iVar16 + 8) * 4);\n                pfVar12 = (float *)(iVar10 + *(int *)(iVar16 + 0x14) * 4);\n                pfVar11 = (float *)(iVar10 + *(int *)(iVar16 + 0x20) * 4);\n                do {\n                  if (iVar19 == 0) {\n                    uVar5 = (uint)*puVar1;\n                  }\n                  else {\n                    pfVar21 = (float *)(iVar10 + *(int *)(iVar16 + 0x44) * 4);\n                    uVar5 = (uint)puVar1[(int)*pfVar21];\n                    *pfVar21 = (float)uVar5;\n                  }\n                  iVar4 = uVar5 * 0x58 + iVar20;\n                  dVar27 = *(double *)(iVar4 + 0x30);\n                  dVar24 = *(double *)(iVar4 + 0x38);\n                  *pfVar14 = (float)*(double *)(iVar4 + 0x28);\n                  *pfVar12 = (float)dVar27;\n                  *pfVar11 = (float)dVar24;\n                  if (iVar18 != 0) {\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x2c) * 4) =\n                         (float)*(double *)(iVar4 + 0x40);\n                  }\n                  if (iVar17 != 0) {\n                    fVar26 = (float)uVar33;\n                    if (*(int *)(iVar4 + 8) != 0) {\n                      fVar26 = (float)*(double *)(iVar4 + 0x48);\n                    }\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x38) * 4) = fVar26;\n                  }\n                  iVar15 = iVar15 + 1;\n                  iVar10 = iVar10 + iVar7 * 4;\n                  pfVar14 = pfVar14 + iVar7;\n                  pfVar12 = pfVar12 + iVar7;\n                  pfVar11 = pfVar11 + iVar7;\n                } while (iVar2 != iVar15);\n              }\n              iVar10 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8)(uVar3,param_2);\n              if (iVar10 == 0) goto LAB_00065918;\n              iVar22 = iVar22 + 1;\n            } while (iVar22 < param_1[7]);\n          }\n          iVar22 = 1;\nLAB_000658cc:\n          (*(code *)PTR_DestroyCacheView_003a8ef4)(uVar3);\n          (*(code *)PTR_RelinquishMagickMemory_003a8fc0)(puVar1);\n          return iVar22;\n        }" (if "if") (parenthesized_expression "(puVar1 != (ushort *)0x0)" (( "(") (binary_expression "puVar1 != (ushort *)0x0" (identifier "puVar1") (!= "!=") (cast_expression "(ushort *)0x0" (( "(") (type_descriptor "ushort *" (type_identifier "ushort") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n          iVar10 = param_1[9];\n          iVar22 = param_1[10];\n          if (0 < iVar10) {\n            iVar15 = 0;\n            pdVar6 = (double *)(iVar22 + 0x48);\n            do {\n              iVar2 = iVar15 + 1;\n              *pdVar6 = (double)iVar15;\n              iVar15 = iVar2;\n              pdVar6 = pdVar6 + 0xb;\n            } while (iVar2 != iVar10);\n          }\n          (*(code *)PTR_qsort_003a98d4)(iVar22,iVar10,0x58,PTR_LAB_003a893c + 0x4ca0);\n          iVar22 = param_1[9];\n          if (0 < iVar22) {\n            iVar10 = 0;\n            pdVar6 = (double *)(param_1[10] + 0x48);\n            do {\n              puVar1[(int)*pdVar6] = (ushort)iVar10;\n              iVar10 = iVar10 + 1;\n              pdVar6 = pdVar6 + 0xb;\n            } while (iVar22 != iVar10);\n          }\n          uVar3 = (*(code *)PTR_AcquireAuthenticCacheView_003a8ed4)(param_1,param_2);\n          if (0 < param_1[7]) {\n            iVar22 = 0;\n            uVar33 = (ulonglong)*(uint *)(PTR_LAB_003a88e0 + 0x1a50);\n            do {\n              iVar10 = (*(code *)PTR_GetCacheViewAuthenticPixels_003a964c)\n                                 (uVar3,0,iVar22,param_1[6],1,param_2);\n              if (iVar10 == 0) {\nLAB_00065918:\n                iVar22 = 0;\n                goto LAB_000658cc;\n              }\n              iVar2 = param_1[6];\n              iVar15 = 0;\n              if (0 < iVar2) {\n                iVar16 = param_1[0xb4];\n                iVar7 = param_1[0xb0];\n                iVar20 = param_1[10];\n                iVar19 = *(int *)(iVar16 + 0x40);\n                iVar18 = *(int *)(iVar16 + 0x28);\n                iVar17 = *(int *)(iVar16 + 0x34);\n                pfVar14 = (float *)(iVar10 + *(int *)(iVar16 + 8) * 4);\n                pfVar12 = (float *)(iVar10 + *(int *)(iVar16 + 0x14) * 4);\n                pfVar11 = (float *)(iVar10 + *(int *)(iVar16 + 0x20) * 4);\n                do {\n                  if (iVar19 == 0) {\n                    uVar5 = (uint)*puVar1;\n                  }\n                  else {\n                    pfVar21 = (float *)(iVar10 + *(int *)(iVar16 + 0x44) * 4);\n                    uVar5 = (uint)puVar1[(int)*pfVar21];\n                    *pfVar21 = (float)uVar5;\n                  }\n                  iVar4 = uVar5 * 0x58 + iVar20;\n                  dVar27 = *(double *)(iVar4 + 0x30);\n                  dVar24 = *(double *)(iVar4 + 0x38);\n                  *pfVar14 = (float)*(double *)(iVar4 + 0x28);\n                  *pfVar12 = (float)dVar27;\n                  *pfVar11 = (float)dVar24;\n                  if (iVar18 != 0) {\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x2c) * 4) =\n                         (float)*(double *)(iVar4 + 0x40);\n                  }\n                  if (iVar17 != 0) {\n                    fVar26 = (float)uVar33;\n                    if (*(int *)(iVar4 + 8) != 0) {\n                      fVar26 = (float)*(double *)(iVar4 + 0x48);\n                    }\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x38) * 4) = fVar26;\n                  }\n                  iVar15 = iVar15 + 1;\n                  iVar10 = iVar10 + iVar7 * 4;\n                  pfVar14 = pfVar14 + iVar7;\n                  pfVar12 = pfVar12 + iVar7;\n                  pfVar11 = pfVar11 + iVar7;\n                } while (iVar2 != iVar15);\n              }\n              iVar10 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8)(uVar3,param_2);\n              if (iVar10 == 0) goto LAB_00065918;\n              iVar22 = iVar22 + 1;\n            } while (iVar22 < param_1[7]);\n          }\n          iVar22 = 1;\nLAB_000658cc:\n          (*(code *)PTR_DestroyCacheView_003a8ef4)(uVar3);\n          (*(code *)PTR_RelinquishMagickMemory_003a8fc0)(puVar1);\n          return iVar22;\n        }" ({ "{") (expression_statement "iVar10 = param_1[9];" (assignment_expression "iVar10 = param_1[9]" (identifier "iVar10") (= "=") (subscript_expression "param_1[9]" (identifier "param_1") ([ "[") (number_literal "9") (] "]"))) (; ";")) (expression_statement "iVar22 = param_1[10];" (assignment_expression "iVar22 = param_1[10]" (identifier "iVar22") (= "=") (subscript_expression "param_1[10]" (identifier "param_1") ([ "[") (number_literal "10") (] "]"))) (; ";")) (if_statement "if (0 < iVar10) {\n            iVar15 = 0;\n            pdVar6 = (double *)(iVar22 + 0x48);\n            do {\n              iVar2 = iVar15 + 1;\n              *pdVar6 = (double)iVar15;\n              iVar15 = iVar2;\n              pdVar6 = pdVar6 + 0xb;\n            } while (iVar2 != iVar10);\n          }" (if "if") (parenthesized_expression "(0 < iVar10)" (( "(") (binary_expression "0 < iVar10" (number_literal "0") (< "<") (identifier "iVar10")) () ")")) (compound_statement "{\n            iVar15 = 0;\n            pdVar6 = (double *)(iVar22 + 0x48);\n            do {\n              iVar2 = iVar15 + 1;\n              *pdVar6 = (double)iVar15;\n              iVar15 = iVar2;\n              pdVar6 = pdVar6 + 0xb;\n            } while (iVar2 != iVar10);\n          }" ({ "{") (expression_statement "iVar15 = 0;" (assignment_expression "iVar15 = 0" (identifier "iVar15") (= "=") (number_literal "0")) (; ";")) (expression_statement "pdVar6 = (double *)(iVar22 + 0x48);" (assignment_expression "pdVar6 = (double *)(iVar22 + 0x48)" (identifier "pdVar6") (= "=") (cast_expression "(double *)(iVar22 + 0x48)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar22 + 0x48)" (( "(") (binary_expression "iVar22 + 0x48" (identifier "iVar22") (+ "+") (number_literal "0x48")) () ")")))) (; ";")) (do_statement "do {\n              iVar2 = iVar15 + 1;\n              *pdVar6 = (double)iVar15;\n              iVar15 = iVar2;\n              pdVar6 = pdVar6 + 0xb;\n            } while (iVar2 != iVar10);" (do "do") (compound_statement "{\n              iVar2 = iVar15 + 1;\n              *pdVar6 = (double)iVar15;\n              iVar15 = iVar2;\n              pdVar6 = pdVar6 + 0xb;\n            }" ({ "{") (expression_statement "iVar2 = iVar15 + 1;" (assignment_expression "iVar2 = iVar15 + 1" (identifier "iVar2") (= "=") (binary_expression "iVar15 + 1" (identifier "iVar15") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "*pdVar6 = (double)iVar15;" (assignment_expression "*pdVar6 = (double)iVar15" (pointer_expression "*pdVar6" (* "*") (identifier "pdVar6")) (= "=") (cast_expression "(double)iVar15" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (identifier "iVar15"))) (; ";")) (expression_statement "iVar15 = iVar2;" (assignment_expression "iVar15 = iVar2" (identifier "iVar15") (= "=") (identifier "iVar2")) (; ";")) (expression_statement "pdVar6 = pdVar6 + 0xb;" (assignment_expression "pdVar6 = pdVar6 + 0xb" (identifier "pdVar6") (= "=") (binary_expression "pdVar6 + 0xb" (identifier "pdVar6") (+ "+") (number_literal "0xb"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(iVar2 != iVar10)" (( "(") (binary_expression "iVar2 != iVar10" (identifier "iVar2") (!= "!=") (identifier "iVar10")) () ")")) (; ";")) (} "}"))) (expression_statement "(*(code *)PTR_qsort_003a98d4)(iVar22,iVar10,0x58,PTR_LAB_003a893c + 0x4ca0);" (call_expression "(*(code *)PTR_qsort_003a98d4)(iVar22,iVar10,0x58,PTR_LAB_003a893c + 0x4ca0)" (parenthesized_expression "(*(code *)PTR_qsort_003a98d4)" (( "(") (pointer_expression "*(code *)PTR_qsort_003a98d4" (* "*") (cast_expression "(code *)PTR_qsort_003a98d4" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_qsort_003a98d4"))) () ")")) (argument_list "(iVar22,iVar10,0x58,PTR_LAB_003a893c + 0x4ca0)" (( "(") (identifier "iVar22") (, ",") (identifier "iVar10") (, ",") (number_literal "0x58") (, ",") (binary_expression "PTR_LAB_003a893c + 0x4ca0" (identifier "PTR_LAB_003a893c") (+ "+") (number_literal "0x4ca0")) () ")"))) (; ";")) (expression_statement "iVar22 = param_1[9];" (assignment_expression "iVar22 = param_1[9]" (identifier "iVar22") (= "=") (subscript_expression "param_1[9]" (identifier "param_1") ([ "[") (number_literal "9") (] "]"))) (; ";")) (if_statement "if (0 < iVar22) {\n            iVar10 = 0;\n            pdVar6 = (double *)(param_1[10] + 0x48);\n            do {\n              puVar1[(int)*pdVar6] = (ushort)iVar10;\n              iVar10 = iVar10 + 1;\n              pdVar6 = pdVar6 + 0xb;\n            } while (iVar22 != iVar10);\n          }" (if "if") (parenthesized_expression "(0 < iVar22)" (( "(") (binary_expression "0 < iVar22" (number_literal "0") (< "<") (identifier "iVar22")) () ")")) (compound_statement "{\n            iVar10 = 0;\n            pdVar6 = (double *)(param_1[10] + 0x48);\n            do {\n              puVar1[(int)*pdVar6] = (ushort)iVar10;\n              iVar10 = iVar10 + 1;\n              pdVar6 = pdVar6 + 0xb;\n            } while (iVar22 != iVar10);\n          }" ({ "{") (expression_statement "iVar10 = 0;" (assignment_expression "iVar10 = 0" (identifier "iVar10") (= "=") (number_literal "0")) (; ";")) (expression_statement "pdVar6 = (double *)(param_1[10] + 0x48);" (assignment_expression "pdVar6 = (double *)(param_1[10] + 0x48)" (identifier "pdVar6") (= "=") (cast_expression "(double *)(param_1[10] + 0x48)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1[10] + 0x48)" (( "(") (binary_expression "param_1[10] + 0x48" (subscript_expression "param_1[10]" (identifier "param_1") ([ "[") (number_literal "10") (] "]")) (+ "+") (number_literal "0x48")) () ")")))) (; ";")) (do_statement "do {\n              puVar1[(int)*pdVar6] = (ushort)iVar10;\n              iVar10 = iVar10 + 1;\n              pdVar6 = pdVar6 + 0xb;\n            } while (iVar22 != iVar10);" (do "do") (compound_statement "{\n              puVar1[(int)*pdVar6] = (ushort)iVar10;\n              iVar10 = iVar10 + 1;\n              pdVar6 = pdVar6 + 0xb;\n            }" ({ "{") (expression_statement "puVar1[(int)*pdVar6] = (ushort)iVar10;" (assignment_expression "puVar1[(int)*pdVar6] = (ushort)iVar10" (subscript_expression "puVar1[(int)*pdVar6]" (identifier "puVar1") ([ "[") (cast_expression "(int)*pdVar6" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (pointer_expression "*pdVar6" (* "*") (identifier "pdVar6"))) (] "]")) (= "=") (cast_expression "(ushort)iVar10" (( "(") (type_descriptor "ushort" (type_identifier "ushort")) () ")") (identifier "iVar10"))) (; ";")) (expression_statement "iVar10 = iVar10 + 1;" (assignment_expression "iVar10 = iVar10 + 1" (identifier "iVar10") (= "=") (binary_expression "iVar10 + 1" (identifier "iVar10") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pdVar6 = pdVar6 + 0xb;" (assignment_expression "pdVar6 = pdVar6 + 0xb" (identifier "pdVar6") (= "=") (binary_expression "pdVar6 + 0xb" (identifier "pdVar6") (+ "+") (number_literal "0xb"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(iVar22 != iVar10)" (( "(") (binary_expression "iVar22 != iVar10" (identifier "iVar22") (!= "!=") (identifier "iVar10")) () ")")) (; ";")) (} "}"))) (expression_statement "uVar3 = (*(code *)PTR_AcquireAuthenticCacheView_003a8ed4)(param_1,param_2);" (assignment_expression "uVar3 = (*(code *)PTR_AcquireAuthenticCacheView_003a8ed4)(param_1,param_2)" (identifier "uVar3") (= "=") (call_expression "(*(code *)PTR_AcquireAuthenticCacheView_003a8ed4)(param_1,param_2)" (parenthesized_expression "(*(code *)PTR_AcquireAuthenticCacheView_003a8ed4)" (( "(") (pointer_expression "*(code *)PTR_AcquireAuthenticCacheView_003a8ed4" (* "*") (cast_expression "(code *)PTR_AcquireAuthenticCacheView_003a8ed4" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_AcquireAuthenticCacheView_003a8ed4"))) () ")")) (argument_list "(param_1,param_2)" (( "(") (identifier "param_1") (, ",") (identifier "param_2") () ")")))) (; ";")) (if_statement "if (0 < param_1[7]) {\n            iVar22 = 0;\n            uVar33 = (ulonglong)*(uint *)(PTR_LAB_003a88e0 + 0x1a50);\n            do {\n              iVar10 = (*(code *)PTR_GetCacheViewAuthenticPixels_003a964c)\n                                 (uVar3,0,iVar22,param_1[6],1,param_2);\n              if (iVar10 == 0) {\nLAB_00065918:\n                iVar22 = 0;\n                goto LAB_000658cc;\n              }\n              iVar2 = param_1[6];\n              iVar15 = 0;\n              if (0 < iVar2) {\n                iVar16 = param_1[0xb4];\n                iVar7 = param_1[0xb0];\n                iVar20 = param_1[10];\n                iVar19 = *(int *)(iVar16 + 0x40);\n                iVar18 = *(int *)(iVar16 + 0x28);\n                iVar17 = *(int *)(iVar16 + 0x34);\n                pfVar14 = (float *)(iVar10 + *(int *)(iVar16 + 8) * 4);\n                pfVar12 = (float *)(iVar10 + *(int *)(iVar16 + 0x14) * 4);\n                pfVar11 = (float *)(iVar10 + *(int *)(iVar16 + 0x20) * 4);\n                do {\n                  if (iVar19 == 0) {\n                    uVar5 = (uint)*puVar1;\n                  }\n                  else {\n                    pfVar21 = (float *)(iVar10 + *(int *)(iVar16 + 0x44) * 4);\n                    uVar5 = (uint)puVar1[(int)*pfVar21];\n                    *pfVar21 = (float)uVar5;\n                  }\n                  iVar4 = uVar5 * 0x58 + iVar20;\n                  dVar27 = *(double *)(iVar4 + 0x30);\n                  dVar24 = *(double *)(iVar4 + 0x38);\n                  *pfVar14 = (float)*(double *)(iVar4 + 0x28);\n                  *pfVar12 = (float)dVar27;\n                  *pfVar11 = (float)dVar24;\n                  if (iVar18 != 0) {\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x2c) * 4) =\n                         (float)*(double *)(iVar4 + 0x40);\n                  }\n                  if (iVar17 != 0) {\n                    fVar26 = (float)uVar33;\n                    if (*(int *)(iVar4 + 8) != 0) {\n                      fVar26 = (float)*(double *)(iVar4 + 0x48);\n                    }\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x38) * 4) = fVar26;\n                  }\n                  iVar15 = iVar15 + 1;\n                  iVar10 = iVar10 + iVar7 * 4;\n                  pfVar14 = pfVar14 + iVar7;\n                  pfVar12 = pfVar12 + iVar7;\n                  pfVar11 = pfVar11 + iVar7;\n                } while (iVar2 != iVar15);\n              }\n              iVar10 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8)(uVar3,param_2);\n              if (iVar10 == 0) goto LAB_00065918;\n              iVar22 = iVar22 + 1;\n            } while (iVar22 < param_1[7]);\n          }" (if "if") (parenthesized_expression "(0 < param_1[7])" (( "(") (binary_expression "0 < param_1[7]" (number_literal "0") (< "<") (subscript_expression "param_1[7]" (identifier "param_1") ([ "[") (number_literal "7") (] "]"))) () ")")) (compound_statement "{\n            iVar22 = 0;\n            uVar33 = (ulonglong)*(uint *)(PTR_LAB_003a88e0 + 0x1a50);\n            do {\n              iVar10 = (*(code *)PTR_GetCacheViewAuthenticPixels_003a964c)\n                                 (uVar3,0,iVar22,param_1[6],1,param_2);\n              if (iVar10 == 0) {\nLAB_00065918:\n                iVar22 = 0;\n                goto LAB_000658cc;\n              }\n              iVar2 = param_1[6];\n              iVar15 = 0;\n              if (0 < iVar2) {\n                iVar16 = param_1[0xb4];\n                iVar7 = param_1[0xb0];\n                iVar20 = param_1[10];\n                iVar19 = *(int *)(iVar16 + 0x40);\n                iVar18 = *(int *)(iVar16 + 0x28);\n                iVar17 = *(int *)(iVar16 + 0x34);\n                pfVar14 = (float *)(iVar10 + *(int *)(iVar16 + 8) * 4);\n                pfVar12 = (float *)(iVar10 + *(int *)(iVar16 + 0x14) * 4);\n                pfVar11 = (float *)(iVar10 + *(int *)(iVar16 + 0x20) * 4);\n                do {\n                  if (iVar19 == 0) {\n                    uVar5 = (uint)*puVar1;\n                  }\n                  else {\n                    pfVar21 = (float *)(iVar10 + *(int *)(iVar16 + 0x44) * 4);\n                    uVar5 = (uint)puVar1[(int)*pfVar21];\n                    *pfVar21 = (float)uVar5;\n                  }\n                  iVar4 = uVar5 * 0x58 + iVar20;\n                  dVar27 = *(double *)(iVar4 + 0x30);\n                  dVar24 = *(double *)(iVar4 + 0x38);\n                  *pfVar14 = (float)*(double *)(iVar4 + 0x28);\n                  *pfVar12 = (float)dVar27;\n                  *pfVar11 = (float)dVar24;\n                  if (iVar18 != 0) {\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x2c) * 4) =\n                         (float)*(double *)(iVar4 + 0x40);\n                  }\n                  if (iVar17 != 0) {\n                    fVar26 = (float)uVar33;\n                    if (*(int *)(iVar4 + 8) != 0) {\n                      fVar26 = (float)*(double *)(iVar4 + 0x48);\n                    }\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x38) * 4) = fVar26;\n                  }\n                  iVar15 = iVar15 + 1;\n                  iVar10 = iVar10 + iVar7 * 4;\n                  pfVar14 = pfVar14 + iVar7;\n                  pfVar12 = pfVar12 + iVar7;\n                  pfVar11 = pfVar11 + iVar7;\n                } while (iVar2 != iVar15);\n              }\n              iVar10 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8)(uVar3,param_2);\n              if (iVar10 == 0) goto LAB_00065918;\n              iVar22 = iVar22 + 1;\n            } while (iVar22 < param_1[7]);\n          }" ({ "{") (expression_statement "iVar22 = 0;" (assignment_expression "iVar22 = 0" (identifier "iVar22") (= "=") (number_literal "0")) (; ";")) (expression_statement "uVar33 = (ulonglong)*(uint *)(PTR_LAB_003a88e0 + 0x1a50);" (assignment_expression "uVar33 = (ulonglong)*(uint *)(PTR_LAB_003a88e0 + 0x1a50)" (identifier "uVar33") (= "=") (binary_expression "(ulonglong)*(uint *)(PTR_LAB_003a88e0 + 0x1a50)" (parenthesized_expression "(ulonglong)" (( "(") (identifier "ulonglong") () ")")) (* "*") (cast_expression "(uint *)(PTR_LAB_003a88e0 + 0x1a50)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(PTR_LAB_003a88e0 + 0x1a50)" (( "(") (binary_expression "PTR_LAB_003a88e0 + 0x1a50" (identifier "PTR_LAB_003a88e0") (+ "+") (number_literal "0x1a50")) () ")"))))) (; ";")) (do_statement "do {\n              iVar10 = (*(code *)PTR_GetCacheViewAuthenticPixels_003a964c)\n                                 (uVar3,0,iVar22,param_1[6],1,param_2);\n              if (iVar10 == 0) {\nLAB_00065918:\n                iVar22 = 0;\n                goto LAB_000658cc;\n              }\n              iVar2 = param_1[6];\n              iVar15 = 0;\n              if (0 < iVar2) {\n                iVar16 = param_1[0xb4];\n                iVar7 = param_1[0xb0];\n                iVar20 = param_1[10];\n                iVar19 = *(int *)(iVar16 + 0x40);\n                iVar18 = *(int *)(iVar16 + 0x28);\n                iVar17 = *(int *)(iVar16 + 0x34);\n                pfVar14 = (float *)(iVar10 + *(int *)(iVar16 + 8) * 4);\n                pfVar12 = (float *)(iVar10 + *(int *)(iVar16 + 0x14) * 4);\n                pfVar11 = (float *)(iVar10 + *(int *)(iVar16 + 0x20) * 4);\n                do {\n                  if (iVar19 == 0) {\n                    uVar5 = (uint)*puVar1;\n                  }\n                  else {\n                    pfVar21 = (float *)(iVar10 + *(int *)(iVar16 + 0x44) * 4);\n                    uVar5 = (uint)puVar1[(int)*pfVar21];\n                    *pfVar21 = (float)uVar5;\n                  }\n                  iVar4 = uVar5 * 0x58 + iVar20;\n                  dVar27 = *(double *)(iVar4 + 0x30);\n                  dVar24 = *(double *)(iVar4 + 0x38);\n                  *pfVar14 = (float)*(double *)(iVar4 + 0x28);\n                  *pfVar12 = (float)dVar27;\n                  *pfVar11 = (float)dVar24;\n                  if (iVar18 != 0) {\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x2c) * 4) =\n                         (float)*(double *)(iVar4 + 0x40);\n                  }\n                  if (iVar17 != 0) {\n                    fVar26 = (float)uVar33;\n                    if (*(int *)(iVar4 + 8) != 0) {\n                      fVar26 = (float)*(double *)(iVar4 + 0x48);\n                    }\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x38) * 4) = fVar26;\n                  }\n                  iVar15 = iVar15 + 1;\n                  iVar10 = iVar10 + iVar7 * 4;\n                  pfVar14 = pfVar14 + iVar7;\n                  pfVar12 = pfVar12 + iVar7;\n                  pfVar11 = pfVar11 + iVar7;\n                } while (iVar2 != iVar15);\n              }\n              iVar10 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8)(uVar3,param_2);\n              if (iVar10 == 0) goto LAB_00065918;\n              iVar22 = iVar22 + 1;\n            } while (iVar22 < param_1[7]);" (do "do") (compound_statement "{\n              iVar10 = (*(code *)PTR_GetCacheViewAuthenticPixels_003a964c)\n                                 (uVar3,0,iVar22,param_1[6],1,param_2);\n              if (iVar10 == 0) {\nLAB_00065918:\n                iVar22 = 0;\n                goto LAB_000658cc;\n              }\n              iVar2 = param_1[6];\n              iVar15 = 0;\n              if (0 < iVar2) {\n                iVar16 = param_1[0xb4];\n                iVar7 = param_1[0xb0];\n                iVar20 = param_1[10];\n                iVar19 = *(int *)(iVar16 + 0x40);\n                iVar18 = *(int *)(iVar16 + 0x28);\n                iVar17 = *(int *)(iVar16 + 0x34);\n                pfVar14 = (float *)(iVar10 + *(int *)(iVar16 + 8) * 4);\n                pfVar12 = (float *)(iVar10 + *(int *)(iVar16 + 0x14) * 4);\n                pfVar11 = (float *)(iVar10 + *(int *)(iVar16 + 0x20) * 4);\n                do {\n                  if (iVar19 == 0) {\n                    uVar5 = (uint)*puVar1;\n                  }\n                  else {\n                    pfVar21 = (float *)(iVar10 + *(int *)(iVar16 + 0x44) * 4);\n                    uVar5 = (uint)puVar1[(int)*pfVar21];\n                    *pfVar21 = (float)uVar5;\n                  }\n                  iVar4 = uVar5 * 0x58 + iVar20;\n                  dVar27 = *(double *)(iVar4 + 0x30);\n                  dVar24 = *(double *)(iVar4 + 0x38);\n                  *pfVar14 = (float)*(double *)(iVar4 + 0x28);\n                  *pfVar12 = (float)dVar27;\n                  *pfVar11 = (float)dVar24;\n                  if (iVar18 != 0) {\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x2c) * 4) =\n                         (float)*(double *)(iVar4 + 0x40);\n                  }\n                  if (iVar17 != 0) {\n                    fVar26 = (float)uVar33;\n                    if (*(int *)(iVar4 + 8) != 0) {\n                      fVar26 = (float)*(double *)(iVar4 + 0x48);\n                    }\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x38) * 4) = fVar26;\n                  }\n                  iVar15 = iVar15 + 1;\n                  iVar10 = iVar10 + iVar7 * 4;\n                  pfVar14 = pfVar14 + iVar7;\n                  pfVar12 = pfVar12 + iVar7;\n                  pfVar11 = pfVar11 + iVar7;\n                } while (iVar2 != iVar15);\n              }\n              iVar10 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8)(uVar3,param_2);\n              if (iVar10 == 0) goto LAB_00065918;\n              iVar22 = iVar22 + 1;\n            }" ({ "{") (expression_statement "iVar10 = (*(code *)PTR_GetCacheViewAuthenticPixels_003a964c)\n                                 (uVar3,0,iVar22,param_1[6],1,param_2);" (assignment_expression "iVar10 = (*(code *)PTR_GetCacheViewAuthenticPixels_003a964c)\n                                 (uVar3,0,iVar22,param_1[6],1,param_2)" (identifier "iVar10") (= "=") (call_expression "(*(code *)PTR_GetCacheViewAuthenticPixels_003a964c)\n                                 (uVar3,0,iVar22,param_1[6],1,param_2)" (parenthesized_expression "(*(code *)PTR_GetCacheViewAuthenticPixels_003a964c)" (( "(") (pointer_expression "*(code *)PTR_GetCacheViewAuthenticPixels_003a964c" (* "*") (cast_expression "(code *)PTR_GetCacheViewAuthenticPixels_003a964c" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_GetCacheViewAuthenticPixels_003a964c"))) () ")")) (argument_list "(uVar3,0,iVar22,param_1[6],1,param_2)" (( "(") (identifier "uVar3") (, ",") (number_literal "0") (, ",") (identifier "iVar22") (, ",") (subscript_expression "param_1[6]" (identifier "param_1") ([ "[") (number_literal "6") (] "]")) (, ",") (number_literal "1") (, ",") (identifier "param_2") () ")")))) (; ";")) (if_statement "if (iVar10 == 0) {\nLAB_00065918:\n                iVar22 = 0;\n                goto LAB_000658cc;\n              }" (if "if") (parenthesized_expression "(iVar10 == 0)" (( "(") (binary_expression "iVar10 == 0" (identifier "iVar10") (== "==") (number_literal "0")) () ")")) (compound_statement "{\nLAB_00065918:\n                iVar22 = 0;\n                goto LAB_000658cc;\n              }" ({ "{") (labeled_statement "LAB_00065918:\n                iVar22 = 0;" (statement_identifier "LAB_00065918") (: ":") (expression_statement "iVar22 = 0;" (assignment_expression "iVar22 = 0" (identifier "iVar22") (= "=") (number_literal "0")) (; ";"))) (goto_statement "goto LAB_000658cc;" (goto "goto") (statement_identifier "LAB_000658cc") (; ";")) (} "}"))) (expression_statement "iVar2 = param_1[6];" (assignment_expression "iVar2 = param_1[6]" (identifier "iVar2") (= "=") (subscript_expression "param_1[6]" (identifier "param_1") ([ "[") (number_literal "6") (] "]"))) (; ";")) (expression_statement "iVar15 = 0;" (assignment_expression "iVar15 = 0" (identifier "iVar15") (= "=") (number_literal "0")) (; ";")) (if_statement "if (0 < iVar2) {\n                iVar16 = param_1[0xb4];\n                iVar7 = param_1[0xb0];\n                iVar20 = param_1[10];\n                iVar19 = *(int *)(iVar16 + 0x40);\n                iVar18 = *(int *)(iVar16 + 0x28);\n                iVar17 = *(int *)(iVar16 + 0x34);\n                pfVar14 = (float *)(iVar10 + *(int *)(iVar16 + 8) * 4);\n                pfVar12 = (float *)(iVar10 + *(int *)(iVar16 + 0x14) * 4);\n                pfVar11 = (float *)(iVar10 + *(int *)(iVar16 + 0x20) * 4);\n                do {\n                  if (iVar19 == 0) {\n                    uVar5 = (uint)*puVar1;\n                  }\n                  else {\n                    pfVar21 = (float *)(iVar10 + *(int *)(iVar16 + 0x44) * 4);\n                    uVar5 = (uint)puVar1[(int)*pfVar21];\n                    *pfVar21 = (float)uVar5;\n                  }\n                  iVar4 = uVar5 * 0x58 + iVar20;\n                  dVar27 = *(double *)(iVar4 + 0x30);\n                  dVar24 = *(double *)(iVar4 + 0x38);\n                  *pfVar14 = (float)*(double *)(iVar4 + 0x28);\n                  *pfVar12 = (float)dVar27;\n                  *pfVar11 = (float)dVar24;\n                  if (iVar18 != 0) {\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x2c) * 4) =\n                         (float)*(double *)(iVar4 + 0x40);\n                  }\n                  if (iVar17 != 0) {\n                    fVar26 = (float)uVar33;\n                    if (*(int *)(iVar4 + 8) != 0) {\n                      fVar26 = (float)*(double *)(iVar4 + 0x48);\n                    }\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x38) * 4) = fVar26;\n                  }\n                  iVar15 = iVar15 + 1;\n                  iVar10 = iVar10 + iVar7 * 4;\n                  pfVar14 = pfVar14 + iVar7;\n                  pfVar12 = pfVar12 + iVar7;\n                  pfVar11 = pfVar11 + iVar7;\n                } while (iVar2 != iVar15);\n              }" (if "if") (parenthesized_expression "(0 < iVar2)" (( "(") (binary_expression "0 < iVar2" (number_literal "0") (< "<") (identifier "iVar2")) () ")")) (compound_statement "{\n                iVar16 = param_1[0xb4];\n                iVar7 = param_1[0xb0];\n                iVar20 = param_1[10];\n                iVar19 = *(int *)(iVar16 + 0x40);\n                iVar18 = *(int *)(iVar16 + 0x28);\n                iVar17 = *(int *)(iVar16 + 0x34);\n                pfVar14 = (float *)(iVar10 + *(int *)(iVar16 + 8) * 4);\n                pfVar12 = (float *)(iVar10 + *(int *)(iVar16 + 0x14) * 4);\n                pfVar11 = (float *)(iVar10 + *(int *)(iVar16 + 0x20) * 4);\n                do {\n                  if (iVar19 == 0) {\n                    uVar5 = (uint)*puVar1;\n                  }\n                  else {\n                    pfVar21 = (float *)(iVar10 + *(int *)(iVar16 + 0x44) * 4);\n                    uVar5 = (uint)puVar1[(int)*pfVar21];\n                    *pfVar21 = (float)uVar5;\n                  }\n                  iVar4 = uVar5 * 0x58 + iVar20;\n                  dVar27 = *(double *)(iVar4 + 0x30);\n                  dVar24 = *(double *)(iVar4 + 0x38);\n                  *pfVar14 = (float)*(double *)(iVar4 + 0x28);\n                  *pfVar12 = (float)dVar27;\n                  *pfVar11 = (float)dVar24;\n                  if (iVar18 != 0) {\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x2c) * 4) =\n                         (float)*(double *)(iVar4 + 0x40);\n                  }\n                  if (iVar17 != 0) {\n                    fVar26 = (float)uVar33;\n                    if (*(int *)(iVar4 + 8) != 0) {\n                      fVar26 = (float)*(double *)(iVar4 + 0x48);\n                    }\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x38) * 4) = fVar26;\n                  }\n                  iVar15 = iVar15 + 1;\n                  iVar10 = iVar10 + iVar7 * 4;\n                  pfVar14 = pfVar14 + iVar7;\n                  pfVar12 = pfVar12 + iVar7;\n                  pfVar11 = pfVar11 + iVar7;\n                } while (iVar2 != iVar15);\n              }" ({ "{") (expression_statement "iVar16 = param_1[0xb4];" (assignment_expression "iVar16 = param_1[0xb4]" (identifier "iVar16") (= "=") (subscript_expression "param_1[0xb4]" (identifier "param_1") ([ "[") (number_literal "0xb4") (] "]"))) (; ";")) (expression_statement "iVar7 = param_1[0xb0];" (assignment_expression "iVar7 = param_1[0xb0]" (identifier "iVar7") (= "=") (subscript_expression "param_1[0xb0]" (identifier "param_1") ([ "[") (number_literal "0xb0") (] "]"))) (; ";")) (expression_statement "iVar20 = param_1[10];" (assignment_expression "iVar20 = param_1[10]" (identifier "iVar20") (= "=") (subscript_expression "param_1[10]" (identifier "param_1") ([ "[") (number_literal "10") (] "]"))) (; ";")) (expression_statement "iVar19 = *(int *)(iVar16 + 0x40);" (assignment_expression "iVar19 = *(int *)(iVar16 + 0x40)" (identifier "iVar19") (= "=") (pointer_expression "*(int *)(iVar16 + 0x40)" (* "*") (cast_expression "(int *)(iVar16 + 0x40)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar16 + 0x40)" (( "(") (binary_expression "iVar16 + 0x40" (identifier "iVar16") (+ "+") (number_literal "0x40")) () ")"))))) (; ";")) (expression_statement "iVar18 = *(int *)(iVar16 + 0x28);" (assignment_expression "iVar18 = *(int *)(iVar16 + 0x28)" (identifier "iVar18") (= "=") (pointer_expression "*(int *)(iVar16 + 0x28)" (* "*") (cast_expression "(int *)(iVar16 + 0x28)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar16 + 0x28)" (( "(") (binary_expression "iVar16 + 0x28" (identifier "iVar16") (+ "+") (number_literal "0x28")) () ")"))))) (; ";")) (expression_statement "iVar17 = *(int *)(iVar16 + 0x34);" (assignment_expression "iVar17 = *(int *)(iVar16 + 0x34)" (identifier "iVar17") (= "=") (pointer_expression "*(int *)(iVar16 + 0x34)" (* "*") (cast_expression "(int *)(iVar16 + 0x34)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar16 + 0x34)" (( "(") (binary_expression "iVar16 + 0x34" (identifier "iVar16") (+ "+") (number_literal "0x34")) () ")"))))) (; ";")) (expression_statement "pfVar14 = (float *)(iVar10 + *(int *)(iVar16 + 8) * 4);" (assignment_expression "pfVar14 = (float *)(iVar10 + *(int *)(iVar16 + 8) * 4)" (identifier "pfVar14") (= "=") (cast_expression "(float *)(iVar10 + *(int *)(iVar16 + 8) * 4)" (( "(") (type_descriptor "float *" (primitive_type "float") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar10 + *(int *)(iVar16 + 8) * 4)" (( "(") (binary_expression "iVar10 + *(int *)(iVar16 + 8) * 4" (identifier "iVar10") (+ "+") (binary_expression "*(int *)(iVar16 + 8) * 4" (pointer_expression "*(int *)(iVar16 + 8)" (* "*") (cast_expression "(int *)(iVar16 + 8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar16 + 8)" (( "(") (binary_expression "iVar16 + 8" (identifier "iVar16") (+ "+") (number_literal "8")) () ")")))) (* "*") (number_literal "4"))) () ")")))) (; ";")) (expression_statement "pfVar12 = (float *)(iVar10 + *(int *)(iVar16 + 0x14) * 4);" (assignment_expression "pfVar12 = (float *)(iVar10 + *(int *)(iVar16 + 0x14) * 4)" (identifier "pfVar12") (= "=") (cast_expression "(float *)(iVar10 + *(int *)(iVar16 + 0x14) * 4)" (( "(") (type_descriptor "float *" (primitive_type "float") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar10 + *(int *)(iVar16 + 0x14) * 4)" (( "(") (binary_expression "iVar10 + *(int *)(iVar16 + 0x14) * 4" (identifier "iVar10") (+ "+") (binary_expression "*(int *)(iVar16 + 0x14) * 4" (pointer_expression "*(int *)(iVar16 + 0x14)" (* "*") (cast_expression "(int *)(iVar16 + 0x14)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar16 + 0x14)" (( "(") (binary_expression "iVar16 + 0x14" (identifier "iVar16") (+ "+") (number_literal "0x14")) () ")")))) (* "*") (number_literal "4"))) () ")")))) (; ";")) (expression_statement "pfVar11 = (float *)(iVar10 + *(int *)(iVar16 + 0x20) * 4);" (assignment_expression "pfVar11 = (float *)(iVar10 + *(int *)(iVar16 + 0x20) * 4)" (identifier "pfVar11") (= "=") (cast_expression "(float *)(iVar10 + *(int *)(iVar16 + 0x20) * 4)" (( "(") (type_descriptor "float *" (primitive_type "float") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar10 + *(int *)(iVar16 + 0x20) * 4)" (( "(") (binary_expression "iVar10 + *(int *)(iVar16 + 0x20) * 4" (identifier "iVar10") (+ "+") (binary_expression "*(int *)(iVar16 + 0x20) * 4" (pointer_expression "*(int *)(iVar16 + 0x20)" (* "*") (cast_expression "(int *)(iVar16 + 0x20)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar16 + 0x20)" (( "(") (binary_expression "iVar16 + 0x20" (identifier "iVar16") (+ "+") (number_literal "0x20")) () ")")))) (* "*") (number_literal "4"))) () ")")))) (; ";")) (do_statement "do {\n                  if (iVar19 == 0) {\n                    uVar5 = (uint)*puVar1;\n                  }\n                  else {\n                    pfVar21 = (float *)(iVar10 + *(int *)(iVar16 + 0x44) * 4);\n                    uVar5 = (uint)puVar1[(int)*pfVar21];\n                    *pfVar21 = (float)uVar5;\n                  }\n                  iVar4 = uVar5 * 0x58 + iVar20;\n                  dVar27 = *(double *)(iVar4 + 0x30);\n                  dVar24 = *(double *)(iVar4 + 0x38);\n                  *pfVar14 = (float)*(double *)(iVar4 + 0x28);\n                  *pfVar12 = (float)dVar27;\n                  *pfVar11 = (float)dVar24;\n                  if (iVar18 != 0) {\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x2c) * 4) =\n                         (float)*(double *)(iVar4 + 0x40);\n                  }\n                  if (iVar17 != 0) {\n                    fVar26 = (float)uVar33;\n                    if (*(int *)(iVar4 + 8) != 0) {\n                      fVar26 = (float)*(double *)(iVar4 + 0x48);\n                    }\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x38) * 4) = fVar26;\n                  }\n                  iVar15 = iVar15 + 1;\n                  iVar10 = iVar10 + iVar7 * 4;\n                  pfVar14 = pfVar14 + iVar7;\n                  pfVar12 = pfVar12 + iVar7;\n                  pfVar11 = pfVar11 + iVar7;\n                } while (iVar2 != iVar15);" (do "do") (compound_statement "{\n                  if (iVar19 == 0) {\n                    uVar5 = (uint)*puVar1;\n                  }\n                  else {\n                    pfVar21 = (float *)(iVar10 + *(int *)(iVar16 + 0x44) * 4);\n                    uVar5 = (uint)puVar1[(int)*pfVar21];\n                    *pfVar21 = (float)uVar5;\n                  }\n                  iVar4 = uVar5 * 0x58 + iVar20;\n                  dVar27 = *(double *)(iVar4 + 0x30);\n                  dVar24 = *(double *)(iVar4 + 0x38);\n                  *pfVar14 = (float)*(double *)(iVar4 + 0x28);\n                  *pfVar12 = (float)dVar27;\n                  *pfVar11 = (float)dVar24;\n                  if (iVar18 != 0) {\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x2c) * 4) =\n                         (float)*(double *)(iVar4 + 0x40);\n                  }\n                  if (iVar17 != 0) {\n                    fVar26 = (float)uVar33;\n                    if (*(int *)(iVar4 + 8) != 0) {\n                      fVar26 = (float)*(double *)(iVar4 + 0x48);\n                    }\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x38) * 4) = fVar26;\n                  }\n                  iVar15 = iVar15 + 1;\n                  iVar10 = iVar10 + iVar7 * 4;\n                  pfVar14 = pfVar14 + iVar7;\n                  pfVar12 = pfVar12 + iVar7;\n                  pfVar11 = pfVar11 + iVar7;\n                }" ({ "{") (if_statement "if (iVar19 == 0) {\n                    uVar5 = (uint)*puVar1;\n                  }\n                  else {\n                    pfVar21 = (float *)(iVar10 + *(int *)(iVar16 + 0x44) * 4);\n                    uVar5 = (uint)puVar1[(int)*pfVar21];\n                    *pfVar21 = (float)uVar5;\n                  }" (if "if") (parenthesized_expression "(iVar19 == 0)" (( "(") (binary_expression "iVar19 == 0" (identifier "iVar19") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                    uVar5 = (uint)*puVar1;\n                  }" ({ "{") (expression_statement "uVar5 = (uint)*puVar1;" (assignment_expression "uVar5 = (uint)*puVar1" (identifier "uVar5") (= "=") (binary_expression "(uint)*puVar1" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (* "*") (identifier "puVar1"))) (; ";")) (} "}")) (else_clause "else {\n                    pfVar21 = (float *)(iVar10 + *(int *)(iVar16 + 0x44) * 4);\n                    uVar5 = (uint)puVar1[(int)*pfVar21];\n                    *pfVar21 = (float)uVar5;\n                  }" (else "else") (compound_statement "{\n                    pfVar21 = (float *)(iVar10 + *(int *)(iVar16 + 0x44) * 4);\n                    uVar5 = (uint)puVar1[(int)*pfVar21];\n                    *pfVar21 = (float)uVar5;\n                  }" ({ "{") (expression_statement "pfVar21 = (float *)(iVar10 + *(int *)(iVar16 + 0x44) * 4);" (assignment_expression "pfVar21 = (float *)(iVar10 + *(int *)(iVar16 + 0x44) * 4)" (identifier "pfVar21") (= "=") (cast_expression "(float *)(iVar10 + *(int *)(iVar16 + 0x44) * 4)" (( "(") (type_descriptor "float *" (primitive_type "float") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar10 + *(int *)(iVar16 + 0x44) * 4)" (( "(") (binary_expression "iVar10 + *(int *)(iVar16 + 0x44) * 4" (identifier "iVar10") (+ "+") (binary_expression "*(int *)(iVar16 + 0x44) * 4" (pointer_expression "*(int *)(iVar16 + 0x44)" (* "*") (cast_expression "(int *)(iVar16 + 0x44)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar16 + 0x44)" (( "(") (binary_expression "iVar16 + 0x44" (identifier "iVar16") (+ "+") (number_literal "0x44")) () ")")))) (* "*") (number_literal "4"))) () ")")))) (; ";")) (expression_statement "uVar5 = (uint)puVar1[(int)*pfVar21];" (assignment_expression "uVar5 = (uint)puVar1[(int)*pfVar21]" (identifier "uVar5") (= "=") (cast_expression "(uint)puVar1[(int)*pfVar21]" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (subscript_expression "puVar1[(int)*pfVar21]" (identifier "puVar1") ([ "[") (cast_expression "(int)*pfVar21" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (pointer_expression "*pfVar21" (* "*") (identifier "pfVar21"))) (] "]")))) (; ";")) (expression_statement "*pfVar21 = (float)uVar5;" (assignment_expression "*pfVar21 = (float)uVar5" (pointer_expression "*pfVar21" (* "*") (identifier "pfVar21")) (= "=") (cast_expression "(float)uVar5" (( "(") (type_descriptor "float" (primitive_type "float")) () ")") (identifier "uVar5"))) (; ";")) (} "}")))) (expression_statement "iVar4 = uVar5 * 0x58 + iVar20;" (assignment_expression "iVar4 = uVar5 * 0x58 + iVar20" (identifier "iVar4") (= "=") (binary_expression "uVar5 * 0x58 + iVar20" (binary_expression "uVar5 * 0x58" (identifier "uVar5") (* "*") (number_literal "0x58")) (+ "+") (identifier "iVar20"))) (; ";")) (expression_statement "dVar27 = *(double *)(iVar4 + 0x30);" (assignment_expression "dVar27 = *(double *)(iVar4 + 0x30)" (identifier "dVar27") (= "=") (pointer_expression "*(double *)(iVar4 + 0x30)" (* "*") (cast_expression "(double *)(iVar4 + 0x30)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar4 + 0x30)" (( "(") (binary_expression "iVar4 + 0x30" (identifier "iVar4") (+ "+") (number_literal "0x30")) () ")"))))) (; ";")) (expression_statement "dVar24 = *(double *)(iVar4 + 0x38);" (assignment_expression "dVar24 = *(double *)(iVar4 + 0x38)" (identifier "dVar24") (= "=") (pointer_expression "*(double *)(iVar4 + 0x38)" (* "*") (cast_expression "(double *)(iVar4 + 0x38)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar4 + 0x38)" (( "(") (binary_expression "iVar4 + 0x38" (identifier "iVar4") (+ "+") (number_literal "0x38")) () ")"))))) (; ";")) (expression_statement "*pfVar14 = (float)*(double *)(iVar4 + 0x28);" (assignment_expression "*pfVar14 = (float)*(double *)(iVar4 + 0x28)" (pointer_expression "*pfVar14" (* "*") (identifier "pfVar14")) (= "=") (cast_expression "(float)*(double *)(iVar4 + 0x28)" (( "(") (type_descriptor "float" (primitive_type "float")) () ")") (pointer_expression "*(double *)(iVar4 + 0x28)" (* "*") (cast_expression "(double *)(iVar4 + 0x28)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar4 + 0x28)" (( "(") (binary_expression "iVar4 + 0x28" (identifier "iVar4") (+ "+") (number_literal "0x28")) () ")")))))) (; ";")) (expression_statement "*pfVar12 = (float)dVar27;" (assignment_expression "*pfVar12 = (float)dVar27" (pointer_expression "*pfVar12" (* "*") (identifier "pfVar12")) (= "=") (cast_expression "(float)dVar27" (( "(") (type_descriptor "float" (primitive_type "float")) () ")") (identifier "dVar27"))) (; ";")) (expression_statement "*pfVar11 = (float)dVar24;" (assignment_expression "*pfVar11 = (float)dVar24" (pointer_expression "*pfVar11" (* "*") (identifier "pfVar11")) (= "=") (cast_expression "(float)dVar24" (( "(") (type_descriptor "float" (primitive_type "float")) () ")") (identifier "dVar24"))) (; ";")) (if_statement "if (iVar18 != 0) {\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x2c) * 4) =\n                         (float)*(double *)(iVar4 + 0x40);\n                  }" (if "if") (parenthesized_expression "(iVar18 != 0)" (( "(") (binary_expression "iVar18 != 0" (identifier "iVar18") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x2c) * 4) =\n                         (float)*(double *)(iVar4 + 0x40);\n                  }" ({ "{") (expression_statement "*(float *)(iVar10 + *(int *)(iVar16 + 0x2c) * 4) =\n                         (float)*(double *)(iVar4 + 0x40);" (assignment_expression "*(float *)(iVar10 + *(int *)(iVar16 + 0x2c) * 4) =\n                         (float)*(double *)(iVar4 + 0x40)" (pointer_expression "*(float *)(iVar10 + *(int *)(iVar16 + 0x2c) * 4)" (* "*") (cast_expression "(float *)(iVar10 + *(int *)(iVar16 + 0x2c) * 4)" (( "(") (type_descriptor "float *" (primitive_type "float") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar10 + *(int *)(iVar16 + 0x2c) * 4)" (( "(") (binary_expression "iVar10 + *(int *)(iVar16 + 0x2c) * 4" (identifier "iVar10") (+ "+") (binary_expression "*(int *)(iVar16 + 0x2c) * 4" (pointer_expression "*(int *)(iVar16 + 0x2c)" (* "*") (cast_expression "(int *)(iVar16 + 0x2c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar16 + 0x2c)" (( "(") (binary_expression "iVar16 + 0x2c" (identifier "iVar16") (+ "+") (number_literal "0x2c")) () ")")))) (* "*") (number_literal "4"))) () ")")))) (= "=") (cast_expression "(float)*(double *)(iVar4 + 0x40)" (( "(") (type_descriptor "float" (primitive_type "float")) () ")") (pointer_expression "*(double *)(iVar4 + 0x40)" (* "*") (cast_expression "(double *)(iVar4 + 0x40)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar4 + 0x40)" (( "(") (binary_expression "iVar4 + 0x40" (identifier "iVar4") (+ "+") (number_literal "0x40")) () ")")))))) (; ";")) (} "}"))) (if_statement "if (iVar17 != 0) {\n                    fVar26 = (float)uVar33;\n                    if (*(int *)(iVar4 + 8) != 0) {\n                      fVar26 = (float)*(double *)(iVar4 + 0x48);\n                    }\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x38) * 4) = fVar26;\n                  }" (if "if") (parenthesized_expression "(iVar17 != 0)" (( "(") (binary_expression "iVar17 != 0" (identifier "iVar17") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n                    fVar26 = (float)uVar33;\n                    if (*(int *)(iVar4 + 8) != 0) {\n                      fVar26 = (float)*(double *)(iVar4 + 0x48);\n                    }\n                    *(float *)(iVar10 + *(int *)(iVar16 + 0x38) * 4) = fVar26;\n                  }" ({ "{") (expression_statement "fVar26 = (float)uVar33;" (assignment_expression "fVar26 = (float)uVar33" (identifier "fVar26") (= "=") (cast_expression "(float)uVar33" (( "(") (type_descriptor "float" (primitive_type "float")) () ")") (identifier "uVar33"))) (; ";")) (if_statement "if (*(int *)(iVar4 + 8) != 0) {\n                      fVar26 = (float)*(double *)(iVar4 + 0x48);\n                    }" (if "if") (parenthesized_expression "(*(int *)(iVar4 + 8) != 0)" (( "(") (binary_expression "*(int *)(iVar4 + 8) != 0" (pointer_expression "*(int *)(iVar4 + 8)" (* "*") (cast_expression "(int *)(iVar4 + 8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar4 + 8)" (( "(") (binary_expression "iVar4 + 8" (identifier "iVar4") (+ "+") (number_literal "8")) () ")")))) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n                      fVar26 = (float)*(double *)(iVar4 + 0x48);\n                    }" ({ "{") (expression_statement "fVar26 = (float)*(double *)(iVar4 + 0x48);" (assignment_expression "fVar26 = (float)*(double *)(iVar4 + 0x48)" (identifier "fVar26") (= "=") (cast_expression "(float)*(double *)(iVar4 + 0x48)" (( "(") (type_descriptor "float" (primitive_type "float")) () ")") (pointer_expression "*(double *)(iVar4 + 0x48)" (* "*") (cast_expression "(double *)(iVar4 + 0x48)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar4 + 0x48)" (( "(") (binary_expression "iVar4 + 0x48" (identifier "iVar4") (+ "+") (number_literal "0x48")) () ")")))))) (; ";")) (} "}"))) (expression_statement "*(float *)(iVar10 + *(int *)(iVar16 + 0x38) * 4) = fVar26;" (assignment_expression "*(float *)(iVar10 + *(int *)(iVar16 + 0x38) * 4) = fVar26" (pointer_expression "*(float *)(iVar10 + *(int *)(iVar16 + 0x38) * 4)" (* "*") (cast_expression "(float *)(iVar10 + *(int *)(iVar16 + 0x38) * 4)" (( "(") (type_descriptor "float *" (primitive_type "float") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar10 + *(int *)(iVar16 + 0x38) * 4)" (( "(") (binary_expression "iVar10 + *(int *)(iVar16 + 0x38) * 4" (identifier "iVar10") (+ "+") (binary_expression "*(int *)(iVar16 + 0x38) * 4" (pointer_expression "*(int *)(iVar16 + 0x38)" (* "*") (cast_expression "(int *)(iVar16 + 0x38)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar16 + 0x38)" (( "(") (binary_expression "iVar16 + 0x38" (identifier "iVar16") (+ "+") (number_literal "0x38")) () ")")))) (* "*") (number_literal "4"))) () ")")))) (= "=") (identifier "fVar26")) (; ";")) (} "}"))) (expression_statement "iVar15 = iVar15 + 1;" (assignment_expression "iVar15 = iVar15 + 1" (identifier "iVar15") (= "=") (binary_expression "iVar15 + 1" (identifier "iVar15") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "iVar10 = iVar10 + iVar7 * 4;" (assignment_expression "iVar10 = iVar10 + iVar7 * 4" (identifier "iVar10") (= "=") (binary_expression "iVar10 + iVar7 * 4" (identifier "iVar10") (+ "+") (binary_expression "iVar7 * 4" (identifier "iVar7") (* "*") (number_literal "4")))) (; ";")) (expression_statement "pfVar14 = pfVar14 + iVar7;" (assignment_expression "pfVar14 = pfVar14 + iVar7" (identifier "pfVar14") (= "=") (binary_expression "pfVar14 + iVar7" (identifier "pfVar14") (+ "+") (identifier "iVar7"))) (; ";")) (expression_statement "pfVar12 = pfVar12 + iVar7;" (assignment_expression "pfVar12 = pfVar12 + iVar7" (identifier "pfVar12") (= "=") (binary_expression "pfVar12 + iVar7" (identifier "pfVar12") (+ "+") (identifier "iVar7"))) (; ";")) (expression_statement "pfVar11 = pfVar11 + iVar7;" (assignment_expression "pfVar11 = pfVar11 + iVar7" (identifier "pfVar11") (= "=") (binary_expression "pfVar11 + iVar7" (identifier "pfVar11") (+ "+") (identifier "iVar7"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(iVar2 != iVar15)" (( "(") (binary_expression "iVar2 != iVar15" (identifier "iVar2") (!= "!=") (identifier "iVar15")) () ")")) (; ";")) (} "}"))) (expression_statement "iVar10 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8)(uVar3,param_2);" (assignment_expression "iVar10 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8)(uVar3,param_2)" (identifier "iVar10") (= "=") (call_expression "(*(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8)(uVar3,param_2)" (parenthesized_expression "(*(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8)" (( "(") (pointer_expression "*(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8" (* "*") (cast_expression "(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_SyncCacheViewAuthenticPixels_003a94f8"))) () ")")) (argument_list "(uVar3,param_2)" (( "(") (identifier "uVar3") (, ",") (identifier "param_2") () ")")))) (; ";")) (if_statement "if (iVar10 == 0) goto LAB_00065918;" (if "if") (parenthesized_expression "(iVar10 == 0)" (( "(") (binary_expression "iVar10 == 0" (identifier "iVar10") (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_00065918;" (goto "goto") (statement_identifier "LAB_00065918") (; ";"))) (expression_statement "iVar22 = iVar22 + 1;" (assignment_expression "iVar22 = iVar22 + 1" (identifier "iVar22") (= "=") (binary_expression "iVar22 + 1" (identifier "iVar22") (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(iVar22 < param_1[7])" (( "(") (binary_expression "iVar22 < param_1[7]" (identifier "iVar22") (< "<") (subscript_expression "param_1[7]" (identifier "param_1") ([ "[") (number_literal "7") (] "]"))) () ")")) (; ";")) (} "}"))) (expression_statement "iVar22 = 1;" (assignment_expression "iVar22 = 1" (identifier "iVar22") (= "=") (number_literal "1")) (; ";")) (labeled_statement "LAB_000658cc:\n          (*(code *)PTR_DestroyCacheView_003a8ef4)(uVar3);" (statement_identifier "LAB_000658cc") (: ":") (expression_statement "(*(code *)PTR_DestroyCacheView_003a8ef4)(uVar3);" (call_expression "(*(code *)PTR_DestroyCacheView_003a8ef4)(uVar3)" (parenthesized_expression "(*(code *)PTR_DestroyCacheView_003a8ef4)" (( "(") (pointer_expression "*(code *)PTR_DestroyCacheView_003a8ef4" (* "*") (cast_expression "(code *)PTR_DestroyCacheView_003a8ef4" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_DestroyCacheView_003a8ef4"))) () ")")) (argument_list "(uVar3)" (( "(") (identifier "uVar3") () ")"))) (; ";"))) (expression_statement "(*(code *)PTR_RelinquishMagickMemory_003a8fc0)(puVar1);" (call_expression "(*(code *)PTR_RelinquishMagickMemory_003a8fc0)(puVar1)" (parenthesized_expression "(*(code *)PTR_RelinquishMagickMemory_003a8fc0)" (( "(") (pointer_expression "*(code *)PTR_RelinquishMagickMemory_003a8fc0" (* "*") (cast_expression "(code *)PTR_RelinquishMagickMemory_003a8fc0" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_RelinquishMagickMemory_003a8fc0"))) () ")")) (argument_list "(puVar1)" (( "(") (identifier "puVar1") () ")"))) (; ";")) (return_statement "return iVar22;" (return "return") (identifier "iVar22") (; ";")) (} "}"))) (expression_statement "iVar22 = 0;" (assignment_expression "iVar22 = 0" (identifier "iVar22") (= "=") (number_literal "0")) (; ";")) (expression_statement "(*(code *)PTR_ThrowMagickException_003a8f20)\n                  (param_2,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                   PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x147,400,\n                   PTR_LAB_003a88e0 + 0x16f8,PTR_LAB_003a88e0 + 0x3e28,param_1 + 0xd0);" (call_expression "(*(code *)PTR_ThrowMagickException_003a8f20)\n                  (param_2,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                   PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x147,400,\n                   PTR_LAB_003a88e0 + 0x16f8,PTR_LAB_003a88e0 + 0x3e28,param_1 + 0xd0)" (parenthesized_expression "(*(code *)PTR_ThrowMagickException_003a8f20)" (( "(") (pointer_expression "*(code *)PTR_ThrowMagickException_003a8f20" (* "*") (cast_expression "(code *)PTR_ThrowMagickException_003a8f20" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_ThrowMagickException_003a8f20"))) () ")")) (argument_list "(param_2,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,\n                   PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x147,400,\n                   PTR_LAB_003a88e0 + 0x16f8,PTR_LAB_003a88e0 + 0x3e28,param_1 + 0xd0)" (( "(") (identifier "param_2") (, ",") (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88" (identifier "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8") (+ "+") (number_literal "-0x5a88")) (, ",") (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70" (identifier "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8") (+ "+") (number_literal "-0x5a70")) (, ",") (number_literal "0x147") (, ",") (number_literal "400") (, ",") (binary_expression "PTR_LAB_003a88e0 + 0x16f8" (identifier "PTR_LAB_003a88e0") (+ "+") (number_literal "0x16f8")) (, ",") (binary_expression "PTR_LAB_003a88e0 + 0x3e28" (identifier "PTR_LAB_003a88e0") (+ "+") (number_literal "0x3e28")) (, ",") (binary_expression "param_1 + 0xd0" (identifier "param_1") (+ "+") (number_literal "0xd0")) () ")"))) (; ";")) (} "}"))) (return_statement "return iVar22;" (return "return") (identifier "iVar22") (; ";")) (} "}"))) (} "}")))) (expression_statement "piVar8 = (int *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3784);" (assignment_expression "piVar8 = (int *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3784)" (identifier "piVar8") (= "=") (cast_expression "(int *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3784)" (( "(") (type_descriptor "int *" (primitive_type "int") (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 "puVar23 = PTR___assert_fail_003a9608;" (assignment_expression "puVar23 = PTR___assert_fail_003a9608" (identifier "puVar23") (= "=") (identifier "PTR___assert_fail_003a9608")) (; ";")) (expression_statement "(*(code *)PTR___assert_fail_003a9608)\n            (piVar8,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,0x13d,\n             PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a58);" (call_expression "(*(code *)PTR___assert_fail_003a9608)\n            (piVar8,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,0x13d,\n             PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a58)" (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 "(piVar8,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,0x13d,\n             PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a58)" (( "(") (identifier "piVar8") (, ",") (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88" (identifier "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8") (+ "+") (number_literal "-0x5a88")) (, ",") (number_literal "0x13d") (, ",") (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a58" (identifier "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8") (+ "+") (number_literal "-0x5a58")) () ")"))) (; ";")) (expression_statement "iVar10 = (**(code **)(puVar23 + 0x343f4c))();" (assignment_expression "iVar10 = (**(code **)(puVar23 + 0x343f4c))()" (identifier "iVar10") (= "=") (call_expression "(**(code **)(puVar23 + 0x343f4c))()" (parenthesized_expression "(**(code **)(puVar23 + 0x343f4c))" (( "(") (pointer_expression "**(code **)(puVar23 + 0x343f4c)" (* "*") (pointer_expression "*(code **)(puVar23 + 0x343f4c)" (* "*") (cast_expression "(code **)(puVar23 + 0x343f4c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar23 + 0x343f4c)" (( "(") (binary_expression "puVar23 + 0x343f4c" (identifier "puVar23") (+ "+") (number_literal "0x343f4c")) () ")"))))) () ")")) (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "iVar22 = (**(code **)(puVar23 + 0x343b48))();" (assignment_expression "iVar22 = (**(code **)(puVar23 + 0x343b48))()" (identifier "iVar22") (= "=") (call_expression "(**(code **)(puVar23 + 0x343b48))()" (parenthesized_expression "(**(code **)(puVar23 + 0x343b48))" (( "(") (pointer_expression "**(code **)(puVar23 + 0x343b48)" (* "*") (pointer_expression "*(code **)(puVar23 + 0x343b48)" (* "*") (cast_expression "(code **)(puVar23 + 0x343b48)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar23 + 0x343b48)" (( "(") (binary_expression "puVar23 + 0x343b48" (identifier "puVar23") (+ "+") (number_literal "0x343b48")) () ")"))))) () ")")) (argument_list "()" (( "(") () ")")))) (; ";")) (if_statement "if (iVar10 == 0) {\n    trap(7);\n  }" (if "if") (parenthesized_expression "(iVar10 == 0)" (( "(") (binary_expression "iVar10 == 0" (identifier "iVar10") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    trap(7);\n  }" ({ "{") (expression_statement "trap(7);" (call_expression "trap(7)" (identifier "trap") (argument_list "(7)" (( "(") (number_literal "7") () ")"))) (; ";")) (} "}"))) (expression_statement "iVar15 = 0x10000 / iVar10;" (assignment_expression "iVar15 = 0x10000 / iVar10" (identifier "iVar15") (= "=") (binary_expression "0x10000 / iVar10" (number_literal "0x10000") (/ "/") (identifier "iVar10"))) (; ";")) (expression_statement "iVar10 = 0x10000 % iVar10;" (assignment_expression "iVar10 = 0x10000 % iVar10" (identifier "iVar10") (= "=") (binary_expression "0x10000 % iVar10" (number_literal "0x10000") (% "%") (identifier "iVar10"))) (; ";")) (if_statement "if (iVar22 < iVar10) {\n    iVar15 = iVar15 + 1;\n    iVar10 = 0;\n  }" (if "if") (parenthesized_expression "(iVar22 < iVar10)" (( "(") (binary_expression "iVar22 < iVar10" (identifier "iVar22") (< "<") (identifier "iVar10")) () ")")) (compound_statement "{\n    iVar15 = iVar15 + 1;\n    iVar10 = 0;\n  }" ({ "{") (expression_statement "iVar15 = iVar15 + 1;" (assignment_expression "iVar15 = iVar15 + 1" (identifier "iVar15") (= "=") (binary_expression "iVar15 + 1" (identifier "iVar15") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "iVar10 = 0;" (assignment_expression "iVar10 = 0" (identifier "iVar10") (= "=") (number_literal "0")) (; ";")) (} "}"))) (expression_statement "iVar10 = iVar15 * iVar22 + iVar10;" (assignment_expression "iVar10 = iVar15 * iVar22 + iVar10" (identifier "iVar10") (= "=") (binary_expression "iVar15 * iVar22 + iVar10" (binary_expression "iVar15 * iVar22" (identifier "iVar15") (* "*") (identifier "iVar22")) (+ "+") (identifier "iVar10"))) (; ";")) (expression_statement "iVar15 = iVar15 + iVar10;" (assignment_expression "iVar15 = iVar15 + iVar10" (identifier "iVar15") (= "=") (binary_expression "iVar15 + iVar10" (identifier "iVar15") (+ "+") (identifier "iVar10"))) (; ";")) (if_statement "if (iVar10 < iVar15) {\n    iVar2 = iVar10 * 0x18;\n    dVar24 = *(double *)(*(int *)(puVar23 + 0x342f28) + -0x3f48);\n    dVar31 = *(double *)(*(int *)(puVar23 + 0x342f20) + 0x1a58);\n    dVar32 = *(double *)(*(int *)(puVar23 + 0x342f28) + -0x3f40);\n    dVar30 = *(double *)(*(int *)(puVar23 + 0x342f20) + 0x1400);\n    dVar27 = *(double *)(*(int *)(puVar23 + 0x342f28) + -0x3f50);\n    iVar22 = iVar10;\n    pdVar6 = (double *)(piVar8[2] + iVar2);\n    pdVar9 = (double *)(*piVar8 + iVar2);\n    pdVar13 = (double *)(piVar8[1] + iVar2);\n    do {\n      iVar10 = iVar22 + 1;\n      dVar28 = (double)iVar22;\n      *pdVar13 = dVar28;\n      dVar25 = (dVar28 + dVar28) - dVar31;\n      dVar29 = dVar25 * dVar27;\n      *pdVar9 = dVar25 * dVar30;\n      *pdVar6 = dVar29;\n      pdVar13[1] = dVar28;\n      pdVar9[1] = dVar25 * 0.0;\n      pdVar6[1] = dVar25 * dVar24;\n      pdVar13[2] = dVar28;\n      pdVar9[2] = dVar25 * dVar32;\n      pdVar6[2] = dVar29;\n      iVar22 = iVar10;\n      pdVar6 = pdVar6 + 3;\n      pdVar9 = pdVar9 + 3;\n      pdVar13 = pdVar13 + 3;\n    } while (iVar15 != iVar10);\n  }" (if "if") (parenthesized_expression "(iVar10 < iVar15)" (( "(") (binary_expression "iVar10 < iVar15" (identifier "iVar10") (< "<") (identifier "iVar15")) () ")")) (compound_statement "{\n    iVar2 = iVar10 * 0x18;\n    dVar24 = *(double *)(*(int *)(puVar23 + 0x342f28) + -0x3f48);\n    dVar31 = *(double *)(*(int *)(puVar23 + 0x342f20) + 0x1a58);\n    dVar32 = *(double *)(*(int *)(puVar23 + 0x342f28) + -0x3f40);\n    dVar30 = *(double *)(*(int *)(puVar23 + 0x342f20) + 0x1400);\n    dVar27 = *(double *)(*(int *)(puVar23 + 0x342f28) + -0x3f50);\n    iVar22 = iVar10;\n    pdVar6 = (double *)(piVar8[2] + iVar2);\n    pdVar9 = (double *)(*piVar8 + iVar2);\n    pdVar13 = (double *)(piVar8[1] + iVar2);\n    do {\n      iVar10 = iVar22 + 1;\n      dVar28 = (double)iVar22;\n      *pdVar13 = dVar28;\n      dVar25 = (dVar28 + dVar28) - dVar31;\n      dVar29 = dVar25 * dVar27;\n      *pdVar9 = dVar25 * dVar30;\n      *pdVar6 = dVar29;\n      pdVar13[1] = dVar28;\n      pdVar9[1] = dVar25 * 0.0;\n      pdVar6[1] = dVar25 * dVar24;\n      pdVar13[2] = dVar28;\n      pdVar9[2] = dVar25 * dVar32;\n      pdVar6[2] = dVar29;\n      iVar22 = iVar10;\n      pdVar6 = pdVar6 + 3;\n      pdVar9 = pdVar9 + 3;\n      pdVar13 = pdVar13 + 3;\n    } while (iVar15 != iVar10);\n  }" ({ "{") (expression_statement "iVar2 = iVar10 * 0x18;" (assignment_expression "iVar2 = iVar10 * 0x18" (identifier "iVar2") (= "=") (binary_expression "iVar10 * 0x18" (identifier "iVar10") (* "*") (number_literal "0x18"))) (; ";")) (expression_statement "dVar24 = *(double *)(*(int *)(puVar23 + 0x342f28) + -0x3f48);" (assignment_expression "dVar24 = *(double *)(*(int *)(puVar23 + 0x342f28) + -0x3f48)" (identifier "dVar24") (= "=") (pointer_expression "*(double *)(*(int *)(puVar23 + 0x342f28) + -0x3f48)" (* "*") (cast_expression "(double *)(*(int *)(puVar23 + 0x342f28) + -0x3f48)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(puVar23 + 0x342f28) + -0x3f48)" (( "(") (binary_expression "*(int *)(puVar23 + 0x342f28) + -0x3f48" (pointer_expression "*(int *)(puVar23 + 0x342f28)" (* "*") (cast_expression "(int *)(puVar23 + 0x342f28)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar23 + 0x342f28)" (( "(") (binary_expression "puVar23 + 0x342f28" (identifier "puVar23") (+ "+") (number_literal "0x342f28")) () ")")))) (+ "+") (number_literal "-0x3f48")) () ")"))))) (; ";")) (expression_statement "dVar31 = *(double *)(*(int *)(puVar23 + 0x342f20) + 0x1a58);" (assignment_expression "dVar31 = *(double *)(*(int *)(puVar23 + 0x342f20) + 0x1a58)" (identifier "dVar31") (= "=") (pointer_expression "*(double *)(*(int *)(puVar23 + 0x342f20) + 0x1a58)" (* "*") (cast_expression "(double *)(*(int *)(puVar23 + 0x342f20) + 0x1a58)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(puVar23 + 0x342f20) + 0x1a58)" (( "(") (binary_expression "*(int *)(puVar23 + 0x342f20) + 0x1a58" (pointer_expression "*(int *)(puVar23 + 0x342f20)" (* "*") (cast_expression "(int *)(puVar23 + 0x342f20)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar23 + 0x342f20)" (( "(") (binary_expression "puVar23 + 0x342f20" (identifier "puVar23") (+ "+") (number_literal "0x342f20")) () ")")))) (+ "+") (number_literal "0x1a58")) () ")"))))) (; ";")) (expression_statement "dVar32 = *(double *)(*(int *)(puVar23 + 0x342f28) + -0x3f40);" (assignment_expression "dVar32 = *(double *)(*(int *)(puVar23 + 0x342f28) + -0x3f40)" (identifier "dVar32") (= "=") (pointer_expression "*(double *)(*(int *)(puVar23 + 0x342f28) + -0x3f40)" (* "*") (cast_expression "(double *)(*(int *)(puVar23 + 0x342f28) + -0x3f40)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(puVar23 + 0x342f28) + -0x3f40)" (( "(") (binary_expression "*(int *)(puVar23 + 0x342f28) + -0x3f40" (pointer_expression "*(int *)(puVar23 + 0x342f28)" (* "*") (cast_expression "(int *)(puVar23 + 0x342f28)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar23 + 0x342f28)" (( "(") (binary_expression "puVar23 + 0x342f28" (identifier "puVar23") (+ "+") (number_literal "0x342f28")) () ")")))) (+ "+") (number_literal "-0x3f40")) () ")"))))) (; ";")) (expression_statement "dVar30 = *(double *)(*(int *)(puVar23 + 0x342f20) + 0x1400);" (assignment_expression "dVar30 = *(double *)(*(int *)(puVar23 + 0x342f20) + 0x1400)" (identifier "dVar30") (= "=") (pointer_expression "*(double *)(*(int *)(puVar23 + 0x342f20) + 0x1400)" (* "*") (cast_expression "(double *)(*(int *)(puVar23 + 0x342f20) + 0x1400)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(puVar23 + 0x342f20) + 0x1400)" (( "(") (binary_expression "*(int *)(puVar23 + 0x342f20) + 0x1400" (pointer_expression "*(int *)(puVar23 + 0x342f20)" (* "*") (cast_expression "(int *)(puVar23 + 0x342f20)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar23 + 0x342f20)" (( "(") (binary_expression "puVar23 + 0x342f20" (identifier "puVar23") (+ "+") (number_literal "0x342f20")) () ")")))) (+ "+") (number_literal "0x1400")) () ")"))))) (; ";")) (expression_statement "dVar27 = *(double *)(*(int *)(puVar23 + 0x342f28) + -0x3f50);" (assignment_expression "dVar27 = *(double *)(*(int *)(puVar23 + 0x342f28) + -0x3f50)" (identifier "dVar27") (= "=") (pointer_expression "*(double *)(*(int *)(puVar23 + 0x342f28) + -0x3f50)" (* "*") (cast_expression "(double *)(*(int *)(puVar23 + 0x342f28) + -0x3f50)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(puVar23 + 0x342f28) + -0x3f50)" (( "(") (binary_expression "*(int *)(puVar23 + 0x342f28) + -0x3f50" (pointer_expression "*(int *)(puVar23 + 0x342f28)" (* "*") (cast_expression "(int *)(puVar23 + 0x342f28)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar23 + 0x342f28)" (( "(") (binary_expression "puVar23 + 0x342f28" (identifier "puVar23") (+ "+") (number_literal "0x342f28")) () ")")))) (+ "+") (number_literal "-0x3f50")) () ")"))))) (; ";")) (expression_statement "iVar22 = iVar10;" (assignment_expression "iVar22 = iVar10" (identifier "iVar22") (= "=") (identifier "iVar10")) (; ";")) (expression_statement "pdVar6 = (double *)(piVar8[2] + iVar2);" (assignment_expression "pdVar6 = (double *)(piVar8[2] + iVar2)" (identifier "pdVar6") (= "=") (cast_expression "(double *)(piVar8[2] + iVar2)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(piVar8[2] + iVar2)" (( "(") (binary_expression "piVar8[2] + iVar2" (subscript_expression "piVar8[2]" (identifier "piVar8") ([ "[") (number_literal "2") (] "]")) (+ "+") (identifier "iVar2")) () ")")))) (; ";")) (expression_statement "pdVar9 = (double *)(*piVar8 + iVar2);" (assignment_expression "pdVar9 = (double *)(*piVar8 + iVar2)" (identifier "pdVar9") (= "=") (cast_expression "(double *)(*piVar8 + iVar2)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*piVar8 + iVar2)" (( "(") (binary_expression "*piVar8 + iVar2" (pointer_expression "*piVar8" (* "*") (identifier "piVar8")) (+ "+") (identifier "iVar2")) () ")")))) (; ";")) (expression_statement "pdVar13 = (double *)(piVar8[1] + iVar2);" (assignment_expression "pdVar13 = (double *)(piVar8[1] + iVar2)" (identifier "pdVar13") (= "=") (cast_expression "(double *)(piVar8[1] + iVar2)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(piVar8[1] + iVar2)" (( "(") (binary_expression "piVar8[1] + iVar2" (subscript_expression "piVar8[1]" (identifier "piVar8") ([ "[") (number_literal "1") (] "]")) (+ "+") (identifier "iVar2")) () ")")))) (; ";")) (do_statement "do {\n      iVar10 = iVar22 + 1;\n      dVar28 = (double)iVar22;\n      *pdVar13 = dVar28;\n      dVar25 = (dVar28 + dVar28) - dVar31;\n      dVar29 = dVar25 * dVar27;\n      *pdVar9 = dVar25 * dVar30;\n      *pdVar6 = dVar29;\n      pdVar13[1] = dVar28;\n      pdVar9[1] = dVar25 * 0.0;\n      pdVar6[1] = dVar25 * dVar24;\n      pdVar13[2] = dVar28;\n      pdVar9[2] = dVar25 * dVar32;\n      pdVar6[2] = dVar29;\n      iVar22 = iVar10;\n      pdVar6 = pdVar6 + 3;\n      pdVar9 = pdVar9 + 3;\n      pdVar13 = pdVar13 + 3;\n    } while (iVar15 != iVar10);" (do "do") (compound_statement "{\n      iVar10 = iVar22 + 1;\n      dVar28 = (double)iVar22;\n      *pdVar13 = dVar28;\n      dVar25 = (dVar28 + dVar28) - dVar31;\n      dVar29 = dVar25 * dVar27;\n      *pdVar9 = dVar25 * dVar30;\n      *pdVar6 = dVar29;\n      pdVar13[1] = dVar28;\n      pdVar9[1] = dVar25 * 0.0;\n      pdVar6[1] = dVar25 * dVar24;\n      pdVar13[2] = dVar28;\n      pdVar9[2] = dVar25 * dVar32;\n      pdVar6[2] = dVar29;\n      iVar22 = iVar10;\n      pdVar6 = pdVar6 + 3;\n      pdVar9 = pdVar9 + 3;\n      pdVar13 = pdVar13 + 3;\n    }" ({ "{") (expression_statement "iVar10 = iVar22 + 1;" (assignment_expression "iVar10 = iVar22 + 1" (identifier "iVar10") (= "=") (binary_expression "iVar22 + 1" (identifier "iVar22") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "dVar28 = (double)iVar22;" (assignment_expression "dVar28 = (double)iVar22" (identifier "dVar28") (= "=") (cast_expression "(double)iVar22" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (identifier "iVar22"))) (; ";")) (expression_statement "*pdVar13 = dVar28;" (assignment_expression "*pdVar13 = dVar28" (pointer_expression "*pdVar13" (* "*") (identifier "pdVar13")) (= "=") (identifier "dVar28")) (; ";")) (expression_statement "dVar25 = (dVar28 + dVar28) - dVar31;" (assignment_expression "dVar25 = (dVar28 + dVar28) - dVar31" (identifier "dVar25") (= "=") (binary_expression "(dVar28 + dVar28) - dVar31" (parenthesized_expression "(dVar28 + dVar28)" (( "(") (binary_expression "dVar28 + dVar28" (identifier "dVar28") (+ "+") (identifier "dVar28")) () ")")) (- "-") (identifier "dVar31"))) (; ";")) (expression_statement "dVar29 = dVar25 * dVar27;" (assignment_expression "dVar29 = dVar25 * dVar27" (identifier "dVar29") (= "=") (binary_expression "dVar25 * dVar27" (identifier "dVar25") (* "*") (identifier "dVar27"))) (; ";")) (expression_statement "*pdVar9 = dVar25 * dVar30;" (assignment_expression "*pdVar9 = dVar25 * dVar30" (pointer_expression "*pdVar9" (* "*") (identifier "pdVar9")) (= "=") (binary_expression "dVar25 * dVar30" (identifier "dVar25") (* "*") (identifier "dVar30"))) (; ";")) (expression_statement "*pdVar6 = dVar29;" (assignment_expression "*pdVar6 = dVar29" (pointer_expression "*pdVar6" (* "*") (identifier "pdVar6")) (= "=") (identifier "dVar29")) (; ";")) (expression_statement "pdVar13[1] = dVar28;" (assignment_expression "pdVar13[1] = dVar28" (subscript_expression "pdVar13[1]" (identifier "pdVar13") ([ "[") (number_literal "1") (] "]")) (= "=") (identifier "dVar28")) (; ";")) (expression_statement "pdVar9[1] = dVar25 * 0.0;" (assignment_expression "pdVar9[1] = dVar25 * 0.0" (subscript_expression "pdVar9[1]" (identifier "pdVar9") ([ "[") (number_literal "1") (] "]")) (= "=") (binary_expression "dVar25 * 0.0" (identifier "dVar25") (* "*") (number_literal "0.0"))) (; ";")) (expression_statement "pdVar6[1] = dVar25 * dVar24;" (assignment_expression "pdVar6[1] = dVar25 * dVar24" (subscript_expression "pdVar6[1]" (identifier "pdVar6") ([ "[") (number_literal "1") (] "]")) (= "=") (binary_expression "dVar25 * dVar24" (identifier "dVar25") (* "*") (identifier "dVar24"))) (; ";")) (expression_statement "pdVar13[2] = dVar28;" (assignment_expression "pdVar13[2] = dVar28" (subscript_expression "pdVar13[2]" (identifier "pdVar13") ([ "[") (number_literal "2") (] "]")) (= "=") (identifier "dVar28")) (; ";")) (expression_statement "pdVar9[2] = dVar25 * dVar32;" (assignment_expression "pdVar9[2] = dVar25 * dVar32" (subscript_expression "pdVar9[2]" (identifier "pdVar9") ([ "[") (number_literal "2") (] "]")) (= "=") (binary_expression "dVar25 * dVar32" (identifier "dVar25") (* "*") (identifier "dVar32"))) (; ";")) (expression_statement "pdVar6[2] = dVar29;" (assignment_expression "pdVar6[2] = dVar29" (subscript_expression "pdVar6[2]" (identifier "pdVar6") ([ "[") (number_literal "2") (] "]")) (= "=") (identifier "dVar29")) (; ";")) (expression_statement "iVar22 = iVar10;" (assignment_expression "iVar22 = iVar10" (identifier "iVar22") (= "=") (identifier "iVar10")) (; ";")) (expression_statement "pdVar6 = pdVar6 + 3;" (assignment_expression "pdVar6 = pdVar6 + 3" (identifier "pdVar6") (= "=") (binary_expression "pdVar6 + 3" (identifier "pdVar6") (+ "+") (number_literal "3"))) (; ";")) (expression_statement "pdVar9 = pdVar9 + 3;" (assignment_expression "pdVar9 = pdVar9 + 3" (identifier "pdVar9") (= "=") (binary_expression "pdVar9 + 3" (identifier "pdVar9") (+ "+") (number_literal "3"))) (; ";")) (expression_statement "pdVar13 = pdVar13 + 3;" (assignment_expression "pdVar13 = pdVar13 + 3" (identifier "pdVar13") (= "=") (binary_expression "pdVar13 + 3" (identifier "pdVar13") (+ "+") (number_literal "3"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(iVar15 != iVar10)" (( "(") (binary_expression "iVar15 != iVar10" (identifier "iVar15") (!= "!=") (identifier "iVar10")) () ")")) (; ";")) (} "}"))) (return_statement "return iVar10;" (return "return") (identifier "iVar10") (; ";")) (} "}")))

/* 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_2 *var_1,type_3 *exception)

{
  type_4 *var_6;
  size_t var_9;
  type_5 uVar3;
  int var_12;
  type_1 var_25;
  type_6 *var_8;
  size_t var_7;
  type_7 uVar8;
  double *var_34;
  type_8 *pPVar10;
  int *piVar11;
  double *var_35;
  size_t var_10;
  float *var_19;
  float *var_18;
  double *var_36;
  float *var_17;
  type_1 var_37;
  type_9 *pPVar19;
  type_10 var_16;
  type_10 var_15;
  type_10 var_13;
  float *pfVar23;
  type_1 var_24;
  int var_20;
  type_11 *var_21;
  double var_32;
  float fVar29;
  double var_29;
  double var_30;
  double var_27;
  double dVar32;
  double var_31;
  double var_28;
  double var_33;
  type_12 uVar36;
  int var_23;
  
  if (var_1 == (type_2 *)0x0) {
    (*(type_13 *)PTR___assert_fail_003a9608)
              (var_2 + 0xdd0,var_3 + -0x5a88,
               0x13a,var_3 + -0x5a58);
  }
  else {
    if (var_1->debug != var_4) {
      (*(type_13 *)PTR_LogMagickEvent_003a91e0)
                (0x8000,var_3 + -0x5a88,
                 var_3 + -0x5a70,0x13c,
                 var_3 + -0x1fec);
    }
    if (var_1->signature == 0xabacadab) {
      var_24 = var_26;
      if (var_1->storage_class == var_5) {
        var_6 = (type_4 *)(*(type_13 *)PTR_AcquireQuantumMemory_003a950c)(var_1->colors,2);
        if (var_6 != (type_4 *)0x0) {
          var_10 = var_1->colors;
          pPVar10 = var_1->colormap;
          if (0 < (int)var_10) {
            var_7 = 0;
            var_8 = &pPVar10->alpha;
            do {
              var_9 = var_7 + 1;
              *var_8 = (double)(int)var_7;
              var_7 = var_9;
              var_8 = var_8 + 0xb;
            } while (var_9 != var_10);
          }
          (*(type_13 *)PTR_qsort_003a98d4)(pPVar10,var_10,0x58,var_11 + 0x4ca0);
          var_10 = var_1->colors;
          if (0 < (int)var_10) {
            var_7 = 0;
            var_8 = &var_1->colormap->alpha;
            do {
              var_6[(int)*var_8] = (type_4)var_7;
              var_7 = var_7 + 1;
              var_8 = var_8 + 0xb;
            } while (var_10 != var_7);
          }
          uVar3 = (*(type_13 *)PTR_AcquireAuthenticCacheView_003a8ed4)(var_1,exception);
          if (0 < (int)var_1->rows) {
            var_20 = 0;
            uVar36 = (type_12)*(type_7 *)(var_2 + 0x1a50);
            do {
              var_12 = (*(type_13 *)PTR_GetCacheViewAuthenticPixels_003a964c)
                                (uVar3,0,var_20,var_1->columns,1,exception);
              if (var_12 == 0) {
LAB_00065918:
                var_24 = var_4;
                goto LAB_000658cc;
              }
              var_7 = var_1->columns;
              var_10 = 0;
              if (0 < (int)var_7) {
                pPVar19 = var_1->channel_map;
                var_9 = var_1->number_channels;
                pPVar10 = var_1->colormap;
                var_13 = pPVar19[5].traits;
                var_15 = pPVar19[3].traits;
                var_16 = pPVar19[4].traits;
                var_17 = (float *)(var_12 + pPVar19->offset * 4);
                var_18 = (float *)(var_12 + pPVar19[1].offset * 4);
                var_19 = (float *)(var_12 + pPVar19[2].offset * 4);
                do {
                  if (var_13 == var_14) {
                    uVar8 = (type_7)*var_6;
                  }
                  else {
                    pfVar23 = (float *)(var_12 + pPVar19[5].offset * 4);
                    uVar8 = (type_7)var_6[(int)*pfVar23];
                    *pfVar23 = (float)uVar8;
                  }
                  var_30 = pPVar10[uVar8].green;
                  var_32 = pPVar10[uVar8].blue;
                  *var_17 = (float)pPVar10[uVar8].red;
                  *var_18 = (float)var_30;
                  *var_19 = (float)var_32;
                  if (var_15 != var_14) {
                    *(float *)(var_12 + pPVar19[3].offset * 4) = (float)pPVar10[uVar8].black;
                  }
                  if (var_16 != var_14) {
                    fVar29 = (float)uVar36;
                    if (pPVar10[uVar8].alpha_trait != var_14) {
                      fVar29 = (float)pPVar10[uVar8].alpha;
                    }
                    *(float *)(var_12 + pPVar19[4].offset * 4) = fVar29;
                  }
                  var_10 = var_10 + 1;
                  var_12 = var_12 + var_9 * 4;
                  var_17 = var_17 + var_9;
                  var_18 = var_18 + var_9;
                  var_19 = var_19 + var_9;
                } while (var_7 != var_10);
              }
              var_12 = (*(type_13 *)PTR_SyncCacheViewAuthenticPixels_003a94f8)(uVar3,exception);
              if (var_12 == 0) goto LAB_00065918;
              var_20 = var_20 + 1;
            } while (var_20 < (int)var_1->rows);
          }
          var_24 = var_26;
LAB_000658cc:
          (*(type_13 *)PTR_DestroyCacheView_003a8ef4)(uVar3);
          (*(type_13 *)PTR_RelinquishMagickMemory_003a8fc0)(var_6);
          return var_24;
        }
        var_24 = var_4;
        (*(type_13 *)PTR_ThrowMagickException_003a8f20)
                  (exception,var_3 + -0x5a88,
                   var_3 + -0x5a70,0x147,400,
                   var_2 + 0x16f8,var_2 + 0x3e28,var_1->filename);
      }
      return var_24;
    }
  }
  piVar11 = (int *)(var_3 + -0x3784);
  var_21 = PTR___assert_fail_003a9608;
  (*(type_13 *)PTR___assert_fail_003a9608)
            (piVar11,var_3 + -0x5a88,0x13d,
             var_3 + -0x5a58);
  var_20 = (**(type_13 **)(var_21 + 0x343f4c))();
  var_12 = (**(type_13 **)(var_21 + 0x343b48))();
  if (var_20 == 0) {
    var_22(7);
  }
  var_23 = 0x10000 / var_20;
  var_20 = 0x10000 % var_20;
  if (var_12 < var_20) {
    var_23 = var_23 + 1;
    var_20 = 0;
  }
  var_24 = var_23 * var_12 + var_20;
  var_37 = var_23 + var_24;
  if ((int)var_24 < (int)var_37) {
    var_20 = var_24 * 0x18;
    var_32 = *(double *)(*(int *)(var_21 + 0x342f28) + -0x3f48);
    var_28 = *(double *)(*(int *)(var_21 + 0x342f20) + 0x1a58);
    var_33 = *(double *)(*(int *)(var_21 + 0x342f28) + -0x3f40);
    var_31 = *(double *)(*(int *)(var_21 + 0x342f20) + 0x1400);
    var_30 = *(double *)(*(int *)(var_21 + 0x342f28) + -0x3f50);
    var_25 = var_24;
    var_34 = (double *)(piVar11[2] + var_20);
    var_35 = (double *)(*piVar11 + var_20);
    var_36 = (double *)(piVar11[1] + var_20);
    do {
      var_24 = var_25 + var_26;
      var_27 = (double)(int)var_25;
      *var_36 = var_27;
      var_29 = (var_27 + var_27) - var_28;
      dVar32 = var_29 * var_30;
      *var_35 = var_29 * var_31;
      *var_34 = dVar32;
      var_36[1] = var_27;
      var_35[1] = var_29 * 0.0;
      var_34[1] = var_29 * var_32;
      var_36[2] = var_27;
      var_35[2] = var_29 * var_33;
      var_34[2] = dVar32;
      var_25 = var_24;
      var_34 = var_34 + 3;
      var_35 = var_35 + 3;
      var_36 = var_36 + 3;
    } while (var_37 != var_24);
  }
  return var_24;
}


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

int MASKED(int *param_1,undefined4 param_2)

{
  ushort *puVar1;
  int iVar2;
  undefined4 uVar3;
  int iVar4;
  uint uVar5;
  double *pdVar6;
  int iVar7;
  int *piVar8;
  double *pdVar9;
  int iVar10;
  float *pfVar11;
  float *pfVar12;
  double *pdVar13;
  float *pfVar14;
  int iVar15;
  int iVar16;
  int iVar17;
  int iVar18;
  int iVar19;
  int iVar20;
  float *pfVar21;
  int iVar22;
  undefined *puVar23;
  double dVar24;
  float fVar26;
  double dVar25;
  double dVar27;
  double dVar28;
  double dVar29;
  double dVar30;
  double dVar31;
  double dVar32;
  ulonglong uVar33;
  
  if (param_1 == (int *)0x0) {
    (*(code *)PTR___assert_fail_003a9608)
              (PTR_LAB_003a88e0 + 0xdd0,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,
               0x13a,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a58);
  }
  else {
    if (param_1[0xcd4] != 0) {
      (*(code *)PTR_LogMagickEvent_003a91e0)
                (0x8000,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,
                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x13c,
                 PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x1fec);
    }
    if (param_1[0xcdb] == -0x54535255) {
      iVar22 = 1;
      if (*param_1 == 2) {
        puVar1 = (ushort *)(*(code *)PTR_AcquireQuantumMemory_003a950c)(param_1[9],2);
        if (puVar1 != (ushort *)0x0) {
          iVar10 = param_1[9];
          iVar22 = param_1[10];
          if (0 < iVar10) {
            iVar15 = 0;
            pdVar6 = (double *)(iVar22 + 0x48);
            do {
              iVar2 = iVar15 + 1;
              *pdVar6 = (double)iVar15;
              iVar15 = iVar2;
              pdVar6 = pdVar6 + 0xb;
            } while (iVar2 != iVar10);
          }
          (*(code *)PTR_qsort_003a98d4)(iVar22,iVar10,0x58,PTR_LAB_003a893c + 0x4ca0);
          iVar22 = param_1[9];
          if (0 < iVar22) {
            iVar10 = 0;
            pdVar6 = (double *)(param_1[10] + 0x48);
            do {
              puVar1[(int)*pdVar6] = (ushort)iVar10;
              iVar10 = iVar10 + 1;
              pdVar6 = pdVar6 + 0xb;
            } while (iVar22 != iVar10);
          }
          uVar3 = (*(code *)PTR_AcquireAuthenticCacheView_003a8ed4)(param_1,param_2);
          if (0 < param_1[7]) {
            iVar22 = 0;
            uVar33 = (ulonglong)*(uint *)(PTR_LAB_003a88e0 + 0x1a50);
            do {
              iVar10 = (*(code *)PTR_GetCacheViewAuthenticPixels_003a964c)
                                 (uVar3,0,iVar22,param_1[6],1,param_2);
              if (iVar10 == 0) {
LAB_00065918:
                iVar22 = 0;
                goto LAB_000658cc;
              }
              iVar2 = param_1[6];
              iVar15 = 0;
              if (0 < iVar2) {
                iVar16 = param_1[0xb4];
                iVar7 = param_1[0xb0];
                iVar20 = param_1[10];
                iVar19 = *(int *)(iVar16 + 0x40);
                iVar18 = *(int *)(iVar16 + 0x28);
                iVar17 = *(int *)(iVar16 + 0x34);
                pfVar14 = (float *)(iVar10 + *(int *)(iVar16 + 8) * 4);
                pfVar12 = (float *)(iVar10 + *(int *)(iVar16 + 0x14) * 4);
                pfVar11 = (float *)(iVar10 + *(int *)(iVar16 + 0x20) * 4);
                do {
                  if (iVar19 == 0) {
                    uVar5 = (uint)*puVar1;
                  }
                  else {
                    pfVar21 = (float *)(iVar10 + *(int *)(iVar16 + 0x44) * 4);
                    uVar5 = (uint)puVar1[(int)*pfVar21];
                    *pfVar21 = (float)uVar5;
                  }
                  iVar4 = uVar5 * 0x58 + iVar20;
                  dVar27 = *(double *)(iVar4 + 0x30);
                  dVar24 = *(double *)(iVar4 + 0x38);
                  *pfVar14 = (float)*(double *)(iVar4 + 0x28);
                  *pfVar12 = (float)dVar27;
                  *pfVar11 = (float)dVar24;
                  if (iVar18 != 0) {
                    *(float *)(iVar10 + *(int *)(iVar16 + 0x2c) * 4) =
                         (float)*(double *)(iVar4 + 0x40);
                  }
                  if (iVar17 != 0) {
                    fVar26 = (float)uVar33;
                    if (*(int *)(iVar4 + 8) != 0) {
                      fVar26 = (float)*(double *)(iVar4 + 0x48);
                    }
                    *(float *)(iVar10 + *(int *)(iVar16 + 0x38) * 4) = fVar26;
                  }
                  iVar15 = iVar15 + 1;
                  iVar10 = iVar10 + iVar7 * 4;
                  pfVar14 = pfVar14 + iVar7;
                  pfVar12 = pfVar12 + iVar7;
                  pfVar11 = pfVar11 + iVar7;
                } while (iVar2 != iVar15);
              }
              iVar10 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003a94f8)(uVar3,param_2);
              if (iVar10 == 0) goto LAB_00065918;
              iVar22 = iVar22 + 1;
            } while (iVar22 < param_1[7]);
          }
          iVar22 = 1;
LAB_000658cc:
          (*(code *)PTR_DestroyCacheView_003a8ef4)(uVar3);
          (*(code *)PTR_RelinquishMagickMemory_003a8fc0)(puVar1);
          return iVar22;
        }
        iVar22 = 0;
        (*(code *)PTR_ThrowMagickException_003a8f20)
                  (param_2,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,
                   PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a70,0x147,400,
                   PTR_LAB_003a88e0 + 0x16f8,PTR_LAB_003a88e0 + 0x3e28,param_1 + 0xd0);
      }
      return iVar22;
    }
  }
  piVar8 = (int *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3784);
  puVar23 = PTR___assert_fail_003a9608;
  (*(code *)PTR___assert_fail_003a9608)
            (piVar8,PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a88,0x13d,
             PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x5a58);
  iVar10 = (**(code **)(puVar23 + 0x343f4c))();
  iVar22 = (**(code **)(puVar23 + 0x343b48))();
  if (iVar10 == 0) {
    trap(7);
  }
  iVar15 = 0x10000 / iVar10;
  iVar10 = 0x10000 % iVar10;
  if (iVar22 < iVar10) {
    iVar15 = iVar15 + 1;
    iVar10 = 0;
  }
  iVar10 = iVar15 * iVar22 + iVar10;
  iVar15 = iVar15 + iVar10;
  if (iVar10 < iVar15) {
    iVar2 = iVar10 * 0x18;
    dVar24 = *(double *)(*(int *)(puVar23 + 0x342f28) + -0x3f48);
    dVar31 = *(double *)(*(int *)(puVar23 + 0x342f20) + 0x1a58);
    dVar32 = *(double *)(*(int *)(puVar23 + 0x342f28) + -0x3f40);
    dVar30 = *(double *)(*(int *)(puVar23 + 0x342f20) + 0x1400);
    dVar27 = *(double *)(*(int *)(puVar23 + 0x342f28) + -0x3f50);
    iVar22 = iVar10;
    pdVar6 = (double *)(piVar8[2] + iVar2);
    pdVar9 = (double *)(*piVar8 + iVar2);
    pdVar13 = (double *)(piVar8[1] + iVar2);
    do {
      iVar10 = iVar22 + 1;
      dVar28 = (double)iVar22;
      *pdVar13 = dVar28;
      dVar25 = (dVar28 + dVar28) - dVar31;
      dVar29 = dVar25 * dVar27;
      *pdVar9 = dVar25 * dVar30;
      *pdVar6 = dVar29;
      pdVar13[1] = dVar28;
      pdVar9[1] = dVar25 * 0.0;
      pdVar6[1] = dVar25 * dVar24;
      pdVar13[2] = dVar28;
      pdVar9[2] = dVar25 * dVar32;
      pdVar6[2] = dVar29;
      iVar22 = iVar10;
      pdVar6 = pdVar6 + 3;
      pdVar9 = pdVar9 + 3;
      pdVar13 = pdVar13 + 3;
    } while (iVar15 != iVar10);
  }
  return iVar10;
}

