
/* DWARF original prototype: void ColorDecisionListImage._omp_fn.1(anon_struct_28_7_e94a0b20 *
   param_0) */

void __thiscall ColorDecisionListImage__omp_fn_1(void *this)

{
  undefined *puVar1;
  int iVar2;
  int iVar3;
  undefined4 uVar4;
  uint uVar5;
  int iVar6;
  int iVar7;
  float *pfVar8;
  int iVar9;
  int iVar10;
  int *piVar11;
  undefined4 uVar12;
  double dVar13;
  double dVar14;
  double dVar15;
  float fVar16;
  float fVar17;
  float fVar18;
  float fVar19;
  double dVar20;
  double dVar21;
  double dVar22;
  double dVar23;
  int iVar24;
  
                    /* WARNING: Load size is inaccurate */
  iVar9 = *this;
  iVar10 = *(int *)(iVar9 + 0x1c);
  iVar2 = (*(code *)PTR_omp_get_num_threads_003fa924)();
  iVar3 = (*(code *)PTR_omp_get_thread_num_003fa520)();
  puVar1 = PTR_LAB_003f98e0;
  if (iVar2 == 0) {
    trap(7);
  }
  iVar24 = iVar10 / iVar2;
  iVar10 = iVar10 % iVar2;
  if (iVar3 < iVar10) {
    iVar24 = iVar24 + 1;
    iVar10 = 0;
  }
  iVar10 = iVar24 * iVar3 + iVar10;
  iVar24 = iVar24 + iVar10;
  if (iVar10 < iVar24) {
    iVar2 = *(int *)((int)this + 0x10);
    uVar4 = *(undefined4 *)((int)this + 8);
    uVar12 = *(undefined4 *)((int)this + 4);
    dVar20 = *(double *)(PTR_s_ltiple_images_003f98e8 + -0x77c0);
    dVar13 = *(double *)(PTR_LAB_003f98e0 + 0x43d0);
    dVar21 = *(double *)(PTR_LAB_003f98e0 + 0x43e0);
    do {
      if (*(int *)((int)this + 0x14) != 0) {
        iVar3 = (*(code *)PTR_GetCacheViewAuthenticPixels_003fa664)
                          (uVar4,0,iVar10,*(undefined4 *)(iVar9 + 0x18),1,uVar12);
        if (iVar3 == 0) {
          *(undefined4 *)((int)this + 0x14) = 0;
        }
        else {
          iVar6 = 0;
          if (0 < *(int *)(iVar9 + 0x18)) {
            fVar19 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x7750);
            fVar18 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x774c);
            fVar17 = *(float *)(PTR_LAB_003f98e0 + 0x4aa8);
            dVar23 = *(double *)(puVar1 + 0x43d0);
            dVar22 = *(double *)(puVar1 + 0x43e0);
            do {
              iVar7 = *(int *)(iVar9 + 0x2d0);
              pfVar8 = (float *)(iVar3 + *(int *)(iVar7 + 8) * 4);
              fVar16 = *pfVar8;
              dVar14 = (double)*(float *)(iVar3 + *(int *)(iVar7 + 0x14) * 4) * dVar20 +
                       (double)(fVar16 * fVar19) +
                       (double)(*(float *)(iVar3 + *(int *)(iVar7 + 0x20) * 4) * fVar18);
              if (fVar16 < fVar17) {
                iVar7 = 0;
                if (NAN(fVar16)) goto LAB_000cb260;
                iVar7 = 0;
                if (0.0 < fVar16) {
                  dVar15 = (double)fVar16 + dVar23;
                  if (dVar15 < dVar22) {
                    iVar7 = (int)dVar15;
                  }
                  else {
                    iVar7 = (int)(dVar15 - dVar22);
                  }
                  goto LAB_000cb260;
                }
              }
              else {
                iVar7 = 0xffff;
LAB_000cb260:
                iVar7 = iVar7 * 0x58;
              }
              *pfVar8 = (float)((*(double *)(iVar7 + iVar2 + 0x28) - dVar14) *
                                *(double *)(*(int *)((int)this + 0xc) + 0x48) + dVar14);
              pfVar8 = (float *)(iVar3 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4);
              fVar16 = *pfVar8;
              if (fVar16 < fVar17) {
                if (NAN(fVar16)) {
                  iVar7 = 0;
                }
                else if (0.0 < fVar16) {
                  dVar15 = (double)fVar16 + dVar23;
                  if (dVar15 < dVar22) {
                    iVar7 = (int)dVar15;
                  }
                  else {
                    iVar7 = (int)(dVar15 - dVar22);
                  }
                }
                else {
                  iVar7 = 0;
                }
              }
              else {
                iVar7 = 0xffff;
              }
              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar2 + 0x30) - dVar14) *
                                *(double *)(*(int *)((int)this + 0xc) + 0x48) + dVar14);
              pfVar8 = (float *)(iVar3 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4);
              fVar16 = *pfVar8;
              if (fVar16 < fVar17) {
                if (NAN(fVar16)) {
                  iVar7 = 0;
                }
                else if (0.0 < fVar16) {
                  dVar15 = (double)fVar16 + dVar13;
                  if (dVar15 < dVar21) {
                    iVar7 = (int)dVar15;
                  }
                  else {
                    iVar7 = (int)(dVar15 - dVar21);
                  }
                }
                else {
                  iVar7 = 0;
                }
              }
              else {
                iVar7 = 0xffff;
              }
              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar2 + 0x38) - dVar14) *
                                *(double *)(*(int *)((int)this + 0xc) + 0x48) + dVar14);
              iVar3 = iVar3 + *(int *)(iVar9 + 0x2c0) * 4;
              iVar6 = iVar6 + 1;
            } while (iVar6 < *(int *)(iVar9 + 0x18));
          }
          iVar3 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003fa510)(uVar4,uVar12);
          if (iVar3 == 0) {
            *(undefined4 *)((int)this + 0x14) = 0;
          }
          if (*(int *)(iVar9 + 0x328) != 0) {
            piVar11 = *(int **)((int)this + 0x18);
            (*(code *)PTR_GOMP_atomic_start_003fa2fc)();
            uVar5 = piVar11[1] + 1;
            *piVar11 = (uint)(uVar5 < (uint)piVar11[1]) + *piVar11;
            piVar11[1] = uVar5;
            (*(code *)PTR_GOMP_atomic_end_003fa450)();
            iVar3 = (*(code *)PTR_SetImageProgress_003f9ccc)
                              (iVar9,PTR_s_ltiple_images_003f98e8 + -0x7ed0,
                               **(undefined4 **)((int)this + 0x18),
                               (*(undefined4 **)((int)this + 0x18))[1],0,
                               *(undefined4 *)(iVar9 + 0x1c));
            if (iVar3 == 0) {
              *(undefined4 *)((int)this + 0x14) = 0;
            }
          }
        }
      }
      iVar10 = iVar10 + 1;
    } while (iVar24 != iVar10);
  }
  return;
}



void FUN_000cb0b0(int *param_1)

{
  undefined *puVar1;
  int iVar2;
  int iVar3;
  int iVar4;
  uint uVar5;
  int iVar6;
  int iVar7;
  float *pfVar8;
  int iVar9;
  int iVar10;
  int *piVar11;
  int iVar12;
  double dVar13;
  double dVar14;
  double dVar15;
  float fVar16;
  float fVar17;
  float fVar18;
  float fVar19;
  double dVar20;
  double dVar21;
  double dVar22;
  double dVar23;
  int iVar24;
  
  iVar9 = *param_1;
  iVar10 = *(int *)(iVar9 + 0x1c);
  iVar2 = (*(code *)PTR_omp_get_num_threads_003fa924)();
  iVar3 = (*(code *)PTR_omp_get_thread_num_003fa520)();
  puVar1 = PTR_LAB_003f98e0;
  if (iVar2 == 0) {
    trap(7);
  }
  iVar24 = iVar10 / iVar2;
  iVar10 = iVar10 % iVar2;
  if (iVar3 < iVar10) {
    iVar24 = iVar24 + 1;
    iVar10 = 0;
  }
  iVar10 = iVar24 * iVar3 + iVar10;
  iVar24 = iVar24 + iVar10;
  if (iVar10 < iVar24) {
    iVar3 = param_1[4];
    iVar2 = param_1[2];
    iVar12 = param_1[1];
    dVar20 = *(double *)(PTR_s_ltiple_images_003f98e8 + -0x77c0);
    dVar13 = *(double *)(PTR_LAB_003f98e0 + 0x43d0);
    dVar21 = *(double *)(PTR_LAB_003f98e0 + 0x43e0);
    do {
      if (param_1[5] != 0) {
        iVar4 = (*(code *)PTR_GetCacheViewAuthenticPixels_003fa664)
                          (iVar2,0,iVar10,*(undefined4 *)(iVar9 + 0x18),1,iVar12);
        if (iVar4 == 0) {
          param_1[5] = 0;
        }
        else {
          iVar6 = 0;
          if (0 < *(int *)(iVar9 + 0x18)) {
            fVar19 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x7750);
            fVar18 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x774c);
            fVar17 = *(float *)(PTR_LAB_003f98e0 + 0x4aa8);
            dVar23 = *(double *)(puVar1 + 0x43d0);
            dVar22 = *(double *)(puVar1 + 0x43e0);
            do {
              iVar7 = *(int *)(iVar9 + 0x2d0);
              pfVar8 = (float *)(iVar4 + *(int *)(iVar7 + 8) * 4);
              fVar16 = *pfVar8;
              dVar14 = (double)*(float *)(iVar4 + *(int *)(iVar7 + 0x14) * 4) * dVar20 +
                       (double)(fVar16 * fVar19) +
                       (double)(*(float *)(iVar4 + *(int *)(iVar7 + 0x20) * 4) * fVar18);
              if (fVar16 < fVar17) {
                iVar7 = 0;
                if (NAN(fVar16)) goto LAB_000cb260;
                iVar7 = 0;
                if (0.0 < fVar16) {
                  dVar15 = (double)fVar16 + dVar23;
                  if (dVar15 < dVar22) {
                    iVar7 = (int)dVar15;
                  }
                  else {
                    iVar7 = (int)(dVar15 - dVar22);
                  }
                  goto LAB_000cb260;
                }
              }
              else {
                iVar7 = 0xffff;
LAB_000cb260:
                iVar7 = iVar7 * 0x58;
              }
              *pfVar8 = (float)((*(double *)(iVar7 + iVar3 + 0x28) - dVar14) *
                                *(double *)(param_1[3] + 0x48) + dVar14);
              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4);
              fVar16 = *pfVar8;
              if (fVar16 < fVar17) {
                if (NAN(fVar16)) {
                  iVar7 = 0;
                }
                else if (0.0 < fVar16) {
                  dVar15 = (double)fVar16 + dVar23;
                  if (dVar15 < dVar22) {
                    iVar7 = (int)dVar15;
                  }
                  else {
                    iVar7 = (int)(dVar15 - dVar22);
                  }
                }
                else {
                  iVar7 = 0;
                }
              }
              else {
                iVar7 = 0xffff;
              }
              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x30) - dVar14) *
                                *(double *)(param_1[3] + 0x48) + dVar14);
              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4);
              fVar16 = *pfVar8;
              if (fVar16 < fVar17) {
                if (NAN(fVar16)) {
                  iVar7 = 0;
                }
                else if (0.0 < fVar16) {
                  dVar15 = (double)fVar16 + dVar13;
                  if (dVar15 < dVar21) {
                    iVar7 = (int)dVar15;
                  }
                  else {
                    iVar7 = (int)(dVar15 - dVar21);
                  }
                }
                else {
                  iVar7 = 0;
                }
              }
              else {
                iVar7 = 0xffff;
              }
              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x38) - dVar14) *
                                *(double *)(param_1[3] + 0x48) + dVar14);
              iVar4 = iVar4 + *(int *)(iVar9 + 0x2c0) * 4;
              iVar6 = iVar6 + 1;
            } while (iVar6 < *(int *)(iVar9 + 0x18));
          }
          iVar4 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003fa510)(iVar2,iVar12);
          if (iVar4 == 0) {
            param_1[5] = 0;
          }
          if (*(int *)(iVar9 + 0x328) != 0) {
            piVar11 = (int *)param_1[6];
            (*(code *)PTR_GOMP_atomic_start_003fa2fc)();
            uVar5 = piVar11[1] + 1;
            *piVar11 = (uint)(uVar5 < (uint)piVar11[1]) + *piVar11;
            piVar11[1] = uVar5;
            (*(code *)PTR_GOMP_atomic_end_003fa450)();
            iVar4 = (*(code *)PTR_SetImageProgress_003f9ccc)
                              (iVar9,PTR_s_ltiple_images_003f98e8 + -0x7ed0,
                               *(undefined4 *)param_1[6],((undefined4 *)param_1[6])[1],0,
                               *(undefined4 *)(iVar9 + 0x1c));
            if (iVar4 == 0) {
              param_1[5] = 0;
            }
          }
        }
      }
      iVar10 = iVar10 + 1;
    } while (iVar24 != iVar10);
  }
  return;
}


lui gp,0x33
addiu gp,gp,0x6800
addu gp,gp,t9
addiu sp,sp,-0x80
sw ra,0x4c(sp)
sw s8,0x48(sp)
sw s7,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)
sw s0,0x28(sp)
sdc1 f30,0x78(sp)
sdc1 f28,0x70(sp)
sdc1 f26,0x68(sp)
sdc1 f24,0x60(sp)
sdc1 f22,0x58(sp)
sdc1 f20,0x50(sp)
sw gp,0x18(sp)
or s1,a0,zero
lw s0,0x0(a0)
lw s3,0x1c(s0)
lw t9,-0x6f8c(gp)
jalr t9
_nop
lw gp,0x18(sp)
or s2,v0,zero
lw t9,-0x7390(gp)
jalr t9
_nop
lw gp,0x18(sp)
teq s2,zero
div s3,s2
mfhi s2
mflo s4
slt v1,v0,s2
bne v1,zero,0x000cb514
_or a0,s2,zero
mul v1,s4,v0
addu s3,v1,a0
addu s4,s4,s3
slt v0,s3,s4
beq v0,zero,0x000cb520
_lw s6,-0x7fd0(gp)
lw s2,0x10(s1)
lw v0,0x8(s1)
sw v0,0x24(sp)
lw s8,0x4(s1)
lw v0,-0x7fc8(gp)
ldc1 f20,-0x77c0(v0)
lw s5,-0x7fd0(gp)
ldc1 f0,0x43d0(s6)
mov.D f26,f0
b 0x000cb48c
_ldc1 f22,0x43e0(s5)
or a1,s8,zero
lw a0,0x24(sp)
lw t9,-0x73a0(gp)
jalr t9
_nop
lw gp,0x18(sp)
beq v0,zero,0x000cb240
_nop
lw v0,0x328(s0)
beq v0,zero,0x000cb480
_lw t9,-0x75b4(gp)
lw s7,0x18(s1)
jalr t9
_nop
lw gp,0x18(sp)
lw a0,0x0(s7)
lw v0,0x4(s7)
addiu v1,v0,0x1
sltu v0,v1,v0
addu v0,v0,a0
sw v0,0x0(s7)
sw v1,0x4(s7)
lw t9,-0x7460(gp)
jalr t9
_nop
lw gp,0x18(sp)
lw v0,0x18(s1)
lw a3,0x4(v0)
lw a2,0x0(v0)
lw v0,0x1c(s0)
sw v0,0x14(sp)
sw zero,0x10(sp)
lw a1,-0x7fc8(gp)
addiu a1,a1,-0x7ed0
or a0,s0,zero
lw t9,-0x7be4(gp)
jalr t9
_nop
lw gp,0x18(sp)
bne v0,zero,0x000cb480
_nop
b 0x000cb480
_sw zero,0x14(s1)
b 0x000cb1b4
_sw zero,0x14(s1)
sub.D D f2,f2,f24
trunc.w.D f2,f2
mfc1 v1,f2
b 0x000cb260
_or v1,v1,a3
ori v1,zero,0xffff
mul a0,v1,a1
addu v1,a0,s2
ldc1 f2,0x28(v1)
sub.D D f2,f2,f0
madd.D f2,f0,f2,f4
cvt.s.D f2,f2
swc1 f2,0x0(t1)
lw v1,0xc(s1)
ldc1 f4,0x48(v1)
lw v1,0x2d0(s0)
lw v1,0x14(v1)
sll v1,v1,0x2
addu a0,v0,v1
lwc1 f2,0x0(a0)
c.le.S f10,f2
bc1t 0x4,0x000cb2f4
_c.un.S f2,f2
bc1t 0x5,0x000cb370
_nop
c.le.S f2,f6
bc1t 0x6,0x000cb378
_nop
cvt.d.S f2,f2
add.D f2,f2,f30
c.le.D f18,f2
bc1t 0x7,0x000cb2e0
_nop
trunc.w.D f2,f2
b 0x000cb2f8
_mfc1 v1,f2
sub.D D f2,f2,f18
trunc.w.D f2,f2
mfc1 v1,f2
b 0x000cb2f8
_or v1,v1,a3
ori v1,zero,0xffff
mul t0,v1,a1
addu v1,t0,s2
ldc1 f2,0x30(v1)
sub.D D f2,f2,f0
madd.D f2,f0,f2,f4
cvt.s.D f2,f2
swc1 f2,0x0(a0)
lw v1,0xc(s1)
ldc1 f4,0x48(v1)
lw v1,0x2d0(s0)
lw a0,0x20(v1)
sll a0,a0,0x2
addu a0,v0,a0
lwc1 f2,0x0(a0)
c.le.S f8,f2
bc1t 0x000cb394
_c.un.S f2,f2
bc1t 0x1,0x000cb46c
_nop
c.le.S f2,f6
bc1t 0x2,0x000cb474
_nop
cvt.d.S f2,f2
add.D f2,f2,f26
c.le.D f22,f2
bc1t 0x3,0x000cb380
_nop
trunc.w.D f2,f2
b 0x000cb398
_mfc1 v1,f2
b 0x000cb2f8
_or v1,zero,zero
b 0x000cb2f8
_or v1,zero,zero
sub.D D f2,f2,f22
trunc.w.D f2,f2
mfc1 v1,f2
b 0x000cb398
_or v1,v1,a3
ori v1,zero,0xffff
mul t0,v1,a1
addu v1,t0,s2
ldc1 f2,0x38(v1)
sub.D D f2,f2,f0
madd.D f0,f0,f2,f4
cvt.s.D f0,f0
swc1 f0,0x0(a0)
lw v1,0x2c0(s0)
sll v1,v1,0x2
addu v0,v0,v1
addiu a2,a2,0x1
lw v1,0x18(s0)
slt v1,a2,v1
beq v1,zero,0x000cb194
_nop
lw t0,0x2d0(s0)
lw t1,0x8(t0)
sll t1,t1,0x2
addu t1,v0,t1
lwc1 f2,0x0(t1)
lw a0,0x14(t0)
sll a0,a0,0x2
addu a0,v0,a0
lwc1 f4,0x0(a0)
cvt.d.S f4,f4
mul.S f0,f2,f16
cvt.d.S f0,f0
madd.D f4,f0,f4,f20
lw a0,0x20(t0)
sll a0,a0,0x2
addu a0,v0,a0
lwc1 f0,0x0(a0)
mul.S f0,f0,f14
cvt.d.S f0,f0
add.D f0,f4,f0
lw a0,0xc(s1)
c.le.S f12,f2
bc1t 0x000cb25c
_ldc1 f4,0x48(a0)
c.un.S f2,f2
bc1t 0x1,0x000cb260
_or v1,zero,zero
c.le.S f2,f6
bc1t 0x2,0x000cb264
_mul a0,v1,a1
cvt.d.S f2,f2
add.D f2,f2,f28
c.le.D f24,f2
bc1t 0x3,0x000cb248
_nop
trunc.w.D f2,f2
b 0x000cb260
_mfc1 v1,f2
b 0x000cb398
_or v1,zero,zero
b 0x000cb398
_or v1,zero,zero
sw zero,0x14(s1)
addiu s3,s3,0x1
beq s4,s3,0x000cb524
_lw ra,0x4c(sp)
lw v0,0x14(s1)
beq v0,zero,0x000cb480
_li v0,0x1
lw a3,0x18(s0)
sw s8,0x14(sp)
sw v0,0x10(sp)
or a2,s3,zero
or a1,zero,zero
lw a0,0x24(sp)
lw t9,-0x724c(gp)
jalr t9
_nop
lw gp,0x18(sp)
beq v0,zero,0x000cb47c
_nop
lw v1,0x18(s0)
blez v1,0x000cb194
_or a2,zero,zero
lw v1,-0x7fc8(gp)
lwc1 f16,-0x7750(v1)
lw v1,-0x7fc8(gp)
lwc1 f14,-0x774c(v1)
lw v1,-0x7fd0(gp)
lwc1 f12,0x4aa8(v1)
mtc1 zero,f6
ldc1 f28,0x43d0(s6)
ldc1 f24,0x43e0(s5)
lui a3,0x8000
li a1,0x58
mov.S f10,f12
mov.D f30,f28
mov.D f18,f24
b 0x000cb3d4
_mov.S f8,f12
addiu s4,s4,0x1
b 0x000cb150
_or a0,zero,zero
lw ra,0x4c(sp)
lw s8,0x48(sp)
lw s7,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 f30,0x78(sp)
ldc1 f28,0x70(sp)
ldc1 f26,0x68(sp)
ldc1 f24,0x60(sp)
ldc1 f22,0x58(sp)
ldc1 f20,0x50(sp)
jr ra
_addiu sp,sp,0x80
(translation_unit "void FUN_000cb0b0(int *param_1)\n\n{\n  undefined *puVar1;\n  int iVar2;\n  int iVar3;\n  int iVar4;\n  uint uVar5;\n  int iVar6;\n  int iVar7;\n  float *pfVar8;\n  int iVar9;\n  int iVar10;\n  int *piVar11;\n  int iVar12;\n  double dVar13;\n  double dVar14;\n  double dVar15;\n  float fVar16;\n  float fVar17;\n  float fVar18;\n  float fVar19;\n  double dVar20;\n  double dVar21;\n  double dVar22;\n  double dVar23;\n  int iVar24;\n  \n  iVar9 = *param_1;\n  iVar10 = *(int *)(iVar9 + 0x1c);\n  iVar2 = (*(code *)PTR_omp_get_num_threads_003fa924)();\n  iVar3 = (*(code *)PTR_omp_get_thread_num_003fa520)();\n  puVar1 = PTR_LAB_003f98e0;\n  if (iVar2 == 0) {\n    trap(7);\n  }\n  iVar24 = iVar10 / iVar2;\n  iVar10 = iVar10 % iVar2;\n  if (iVar3 < iVar10) {\n    iVar24 = iVar24 + 1;\n    iVar10 = 0;\n  }\n  iVar10 = iVar24 * iVar3 + iVar10;\n  iVar24 = iVar24 + iVar10;\n  if (iVar10 < iVar24) {\n    iVar3 = param_1[4];\n    iVar2 = param_1[2];\n    iVar12 = param_1[1];\n    dVar20 = *(double *)(PTR_s_ltiple_images_003f98e8 + -0x77c0);\n    dVar13 = *(double *)(PTR_LAB_003f98e0 + 0x43d0);\n    dVar21 = *(double *)(PTR_LAB_003f98e0 + 0x43e0);\n    do {\n      if (param_1[5] != 0) {\n        iVar4 = (*(code *)PTR_GetCacheViewAuthenticPixels_003fa664)\n                          (iVar2,0,iVar10,*(undefined4 *)(iVar9 + 0x18),1,iVar12);\n        if (iVar4 == 0) {\n          param_1[5] = 0;\n        }\n        else {\n          iVar6 = 0;\n          if (0 < *(int *)(iVar9 + 0x18)) {\n            fVar19 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x7750);\n            fVar18 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x774c);\n            fVar17 = *(float *)(PTR_LAB_003f98e0 + 0x4aa8);\n            dVar23 = *(double *)(puVar1 + 0x43d0);\n            dVar22 = *(double *)(puVar1 + 0x43e0);\n            do {\n              iVar7 = *(int *)(iVar9 + 0x2d0);\n              pfVar8 = (float *)(iVar4 + *(int *)(iVar7 + 8) * 4);\n              fVar16 = *pfVar8;\n              dVar14 = (double)*(float *)(iVar4 + *(int *)(iVar7 + 0x14) * 4) * dVar20 +\n                       (double)(fVar16 * fVar19) +\n                       (double)(*(float *)(iVar4 + *(int *)(iVar7 + 0x20) * 4) * fVar18);\n              if (fVar16 < fVar17) {\n                iVar7 = 0;\n                if (NAN(fVar16)) goto LAB_000cb260;\n                iVar7 = 0;\n                if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                  goto LAB_000cb260;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\nLAB_000cb260:\n                iVar7 = iVar7 * 0x58;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 + iVar3 + 0x28) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x30) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar13;\n                  if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x38) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              iVar4 = iVar4 + *(int *)(iVar9 + 0x2c0) * 4;\n              iVar6 = iVar6 + 1;\n            } while (iVar6 < *(int *)(iVar9 + 0x18));\n          }\n          iVar4 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003fa510)(iVar2,iVar12);\n          if (iVar4 == 0) {\n            param_1[5] = 0;\n          }\n          if (*(int *)(iVar9 + 0x328) != 0) {\n            piVar11 = (int *)param_1[6];\n            (*(code *)PTR_GOMP_atomic_start_003fa2fc)();\n            uVar5 = piVar11[1] + 1;\n            *piVar11 = (uint)(uVar5 < (uint)piVar11[1]) + *piVar11;\n            piVar11[1] = uVar5;\n            (*(code *)PTR_GOMP_atomic_end_003fa450)();\n            iVar4 = (*(code *)PTR_SetImageProgress_003f9ccc)\n                              (iVar9,PTR_s_ltiple_images_003f98e8 + -0x7ed0,\n                               *(undefined4 *)param_1[6],((undefined4 *)param_1[6])[1],0,\n                               *(undefined4 *)(iVar9 + 0x1c));\n            if (iVar4 == 0) {\n              param_1[5] = 0;\n            }\n          }\n        }\n      }\n      iVar10 = iVar10 + 1;\n    } while (iVar24 != iVar10);\n  }\n  return;\n}\n\n" (function_definition "void FUN_000cb0b0(int *param_1)\n\n{\n  undefined *puVar1;\n  int iVar2;\n  int iVar3;\n  int iVar4;\n  uint uVar5;\n  int iVar6;\n  int iVar7;\n  float *pfVar8;\n  int iVar9;\n  int iVar10;\n  int *piVar11;\n  int iVar12;\n  double dVar13;\n  double dVar14;\n  double dVar15;\n  float fVar16;\n  float fVar17;\n  float fVar18;\n  float fVar19;\n  double dVar20;\n  double dVar21;\n  double dVar22;\n  double dVar23;\n  int iVar24;\n  \n  iVar9 = *param_1;\n  iVar10 = *(int *)(iVar9 + 0x1c);\n  iVar2 = (*(code *)PTR_omp_get_num_threads_003fa924)();\n  iVar3 = (*(code *)PTR_omp_get_thread_num_003fa520)();\n  puVar1 = PTR_LAB_003f98e0;\n  if (iVar2 == 0) {\n    trap(7);\n  }\n  iVar24 = iVar10 / iVar2;\n  iVar10 = iVar10 % iVar2;\n  if (iVar3 < iVar10) {\n    iVar24 = iVar24 + 1;\n    iVar10 = 0;\n  }\n  iVar10 = iVar24 * iVar3 + iVar10;\n  iVar24 = iVar24 + iVar10;\n  if (iVar10 < iVar24) {\n    iVar3 = param_1[4];\n    iVar2 = param_1[2];\n    iVar12 = param_1[1];\n    dVar20 = *(double *)(PTR_s_ltiple_images_003f98e8 + -0x77c0);\n    dVar13 = *(double *)(PTR_LAB_003f98e0 + 0x43d0);\n    dVar21 = *(double *)(PTR_LAB_003f98e0 + 0x43e0);\n    do {\n      if (param_1[5] != 0) {\n        iVar4 = (*(code *)PTR_GetCacheViewAuthenticPixels_003fa664)\n                          (iVar2,0,iVar10,*(undefined4 *)(iVar9 + 0x18),1,iVar12);\n        if (iVar4 == 0) {\n          param_1[5] = 0;\n        }\n        else {\n          iVar6 = 0;\n          if (0 < *(int *)(iVar9 + 0x18)) {\n            fVar19 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x7750);\n            fVar18 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x774c);\n            fVar17 = *(float *)(PTR_LAB_003f98e0 + 0x4aa8);\n            dVar23 = *(double *)(puVar1 + 0x43d0);\n            dVar22 = *(double *)(puVar1 + 0x43e0);\n            do {\n              iVar7 = *(int *)(iVar9 + 0x2d0);\n              pfVar8 = (float *)(iVar4 + *(int *)(iVar7 + 8) * 4);\n              fVar16 = *pfVar8;\n              dVar14 = (double)*(float *)(iVar4 + *(int *)(iVar7 + 0x14) * 4) * dVar20 +\n                       (double)(fVar16 * fVar19) +\n                       (double)(*(float *)(iVar4 + *(int *)(iVar7 + 0x20) * 4) * fVar18);\n              if (fVar16 < fVar17) {\n                iVar7 = 0;\n                if (NAN(fVar16)) goto LAB_000cb260;\n                iVar7 = 0;\n                if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                  goto LAB_000cb260;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\nLAB_000cb260:\n                iVar7 = iVar7 * 0x58;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 + iVar3 + 0x28) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x30) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar13;\n                  if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x38) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              iVar4 = iVar4 + *(int *)(iVar9 + 0x2c0) * 4;\n              iVar6 = iVar6 + 1;\n            } while (iVar6 < *(int *)(iVar9 + 0x18));\n          }\n          iVar4 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003fa510)(iVar2,iVar12);\n          if (iVar4 == 0) {\n            param_1[5] = 0;\n          }\n          if (*(int *)(iVar9 + 0x328) != 0) {\n            piVar11 = (int *)param_1[6];\n            (*(code *)PTR_GOMP_atomic_start_003fa2fc)();\n            uVar5 = piVar11[1] + 1;\n            *piVar11 = (uint)(uVar5 < (uint)piVar11[1]) + *piVar11;\n            piVar11[1] = uVar5;\n            (*(code *)PTR_GOMP_atomic_end_003fa450)();\n            iVar4 = (*(code *)PTR_SetImageProgress_003f9ccc)\n                              (iVar9,PTR_s_ltiple_images_003f98e8 + -0x7ed0,\n                               *(undefined4 *)param_1[6],((undefined4 *)param_1[6])[1],0,\n                               *(undefined4 *)(iVar9 + 0x1c));\n            if (iVar4 == 0) {\n              param_1[5] = 0;\n            }\n          }\n        }\n      }\n      iVar10 = iVar10 + 1;\n    } while (iVar24 != iVar10);\n  }\n  return;\n}" primitive_type (function_declarator "FUN_000cb0b0(int *param_1)" identifier (parameter_list "(int *param_1)" ( (parameter_declaration "int *param_1" primitive_type (pointer_declarator "*param_1" * identifier)) ))) (compound_statement "{\n  undefined *puVar1;\n  int iVar2;\n  int iVar3;\n  int iVar4;\n  uint uVar5;\n  int iVar6;\n  int iVar7;\n  float *pfVar8;\n  int iVar9;\n  int iVar10;\n  int *piVar11;\n  int iVar12;\n  double dVar13;\n  double dVar14;\n  double dVar15;\n  float fVar16;\n  float fVar17;\n  float fVar18;\n  float fVar19;\n  double dVar20;\n  double dVar21;\n  double dVar22;\n  double dVar23;\n  int iVar24;\n  \n  iVar9 = *param_1;\n  iVar10 = *(int *)(iVar9 + 0x1c);\n  iVar2 = (*(code *)PTR_omp_get_num_threads_003fa924)();\n  iVar3 = (*(code *)PTR_omp_get_thread_num_003fa520)();\n  puVar1 = PTR_LAB_003f98e0;\n  if (iVar2 == 0) {\n    trap(7);\n  }\n  iVar24 = iVar10 / iVar2;\n  iVar10 = iVar10 % iVar2;\n  if (iVar3 < iVar10) {\n    iVar24 = iVar24 + 1;\n    iVar10 = 0;\n  }\n  iVar10 = iVar24 * iVar3 + iVar10;\n  iVar24 = iVar24 + iVar10;\n  if (iVar10 < iVar24) {\n    iVar3 = param_1[4];\n    iVar2 = param_1[2];\n    iVar12 = param_1[1];\n    dVar20 = *(double *)(PTR_s_ltiple_images_003f98e8 + -0x77c0);\n    dVar13 = *(double *)(PTR_LAB_003f98e0 + 0x43d0);\n    dVar21 = *(double *)(PTR_LAB_003f98e0 + 0x43e0);\n    do {\n      if (param_1[5] != 0) {\n        iVar4 = (*(code *)PTR_GetCacheViewAuthenticPixels_003fa664)\n                          (iVar2,0,iVar10,*(undefined4 *)(iVar9 + 0x18),1,iVar12);\n        if (iVar4 == 0) {\n          param_1[5] = 0;\n        }\n        else {\n          iVar6 = 0;\n          if (0 < *(int *)(iVar9 + 0x18)) {\n            fVar19 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x7750);\n            fVar18 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x774c);\n            fVar17 = *(float *)(PTR_LAB_003f98e0 + 0x4aa8);\n            dVar23 = *(double *)(puVar1 + 0x43d0);\n            dVar22 = *(double *)(puVar1 + 0x43e0);\n            do {\n              iVar7 = *(int *)(iVar9 + 0x2d0);\n              pfVar8 = (float *)(iVar4 + *(int *)(iVar7 + 8) * 4);\n              fVar16 = *pfVar8;\n              dVar14 = (double)*(float *)(iVar4 + *(int *)(iVar7 + 0x14) * 4) * dVar20 +\n                       (double)(fVar16 * fVar19) +\n                       (double)(*(float *)(iVar4 + *(int *)(iVar7 + 0x20) * 4) * fVar18);\n              if (fVar16 < fVar17) {\n                iVar7 = 0;\n                if (NAN(fVar16)) goto LAB_000cb260;\n                iVar7 = 0;\n                if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                  goto LAB_000cb260;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\nLAB_000cb260:\n                iVar7 = iVar7 * 0x58;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 + iVar3 + 0x28) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x30) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar13;\n                  if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x38) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              iVar4 = iVar4 + *(int *)(iVar9 + 0x2c0) * 4;\n              iVar6 = iVar6 + 1;\n            } while (iVar6 < *(int *)(iVar9 + 0x18));\n          }\n          iVar4 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003fa510)(iVar2,iVar12);\n          if (iVar4 == 0) {\n            param_1[5] = 0;\n          }\n          if (*(int *)(iVar9 + 0x328) != 0) {\n            piVar11 = (int *)param_1[6];\n            (*(code *)PTR_GOMP_atomic_start_003fa2fc)();\n            uVar5 = piVar11[1] + 1;\n            *piVar11 = (uint)(uVar5 < (uint)piVar11[1]) + *piVar11;\n            piVar11[1] = uVar5;\n            (*(code *)PTR_GOMP_atomic_end_003fa450)();\n            iVar4 = (*(code *)PTR_SetImageProgress_003f9ccc)\n                              (iVar9,PTR_s_ltiple_images_003f98e8 + -0x7ed0,\n                               *(undefined4 *)param_1[6],((undefined4 *)param_1[6])[1],0,\n                               *(undefined4 *)(iVar9 + 0x1c));\n            if (iVar4 == 0) {\n              param_1[5] = 0;\n            }\n          }\n        }\n      }\n      iVar10 = iVar10 + 1;\n    } while (iVar24 != iVar10);\n  }\n  return;\n}" { (declaration "undefined *puVar1;" type_identifier (pointer_declarator "*puVar1" * identifier) ;) (declaration "int iVar2;" primitive_type identifier ;) (declaration "int iVar3;" primitive_type identifier ;) (declaration "int iVar4;" primitive_type identifier ;) (declaration "uint uVar5;" type_identifier identifier ;) (declaration "int iVar6;" primitive_type identifier ;) (declaration "int iVar7;" primitive_type identifier ;) (declaration "float *pfVar8;" primitive_type (pointer_declarator "*pfVar8" * identifier) ;) (declaration "int iVar9;" primitive_type identifier ;) (declaration "int iVar10;" primitive_type identifier ;) (declaration "int *piVar11;" primitive_type (pointer_declarator "*piVar11" * identifier) ;) (declaration "int iVar12;" primitive_type identifier ;) (declaration "double dVar13;" primitive_type identifier ;) (declaration "double dVar14;" primitive_type identifier ;) (declaration "double dVar15;" primitive_type identifier ;) (declaration "float fVar16;" primitive_type identifier ;) (declaration "float fVar17;" primitive_type identifier ;) (declaration "float fVar18;" primitive_type identifier ;) (declaration "float fVar19;" primitive_type identifier ;) (declaration "double dVar20;" primitive_type identifier ;) (declaration "double dVar21;" primitive_type identifier ;) (declaration "double dVar22;" primitive_type identifier ;) (declaration "double dVar23;" primitive_type identifier ;) (declaration "int iVar24;" primitive_type identifier ;) (expression_statement "iVar9 = *param_1;" (assignment_expression "iVar9 = *param_1" identifier = (pointer_expression "*param_1" * identifier)) ;) (expression_statement "iVar10 = *(int *)(iVar9 + 0x1c);" (assignment_expression "iVar10 = *(int *)(iVar9 + 0x1c)" identifier = (pointer_expression "*(int *)(iVar9 + 0x1c)" * (cast_expression "(int *)(iVar9 + 0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + 0x1c)" ( (binary_expression "iVar9 + 0x1c" identifier + number_literal) ))))) ;) (expression_statement "iVar2 = (*(code *)PTR_omp_get_num_threads_003fa924)();" (assignment_expression "iVar2 = (*(code *)PTR_omp_get_num_threads_003fa924)()" identifier = (call_expression "(*(code *)PTR_omp_get_num_threads_003fa924)()" (parenthesized_expression "(*(code *)PTR_omp_get_num_threads_003fa924)" ( (pointer_expression "*(code *)PTR_omp_get_num_threads_003fa924" * (cast_expression "(code *)PTR_omp_get_num_threads_003fa924" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( )))) ;) (expression_statement "iVar3 = (*(code *)PTR_omp_get_thread_num_003fa520)();" (assignment_expression "iVar3 = (*(code *)PTR_omp_get_thread_num_003fa520)()" identifier = (call_expression "(*(code *)PTR_omp_get_thread_num_003fa520)()" (parenthesized_expression "(*(code *)PTR_omp_get_thread_num_003fa520)" ( (pointer_expression "*(code *)PTR_omp_get_thread_num_003fa520" * (cast_expression "(code *)PTR_omp_get_thread_num_003fa520" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( )))) ;) (expression_statement "puVar1 = PTR_LAB_003f98e0;" (assignment_expression "puVar1 = PTR_LAB_003f98e0" identifier = identifier) ;) (if_statement "if (iVar2 == 0) {\n    trap(7);\n  }" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 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 "iVar24 = iVar10 / iVar2;" (assignment_expression "iVar24 = iVar10 / iVar2" identifier = (binary_expression "iVar10 / iVar2" identifier / identifier)) ;) (expression_statement "iVar10 = iVar10 % iVar2;" (assignment_expression "iVar10 = iVar10 % iVar2" identifier = (binary_expression "iVar10 % iVar2" identifier % identifier)) ;) (if_statement "if (iVar3 < iVar10) {\n    iVar24 = iVar24 + 1;\n    iVar10 = 0;\n  }" if (parenthesized_expression "(iVar3 < iVar10)" ( (binary_expression "iVar3 < iVar10" identifier < identifier) )) (compound_statement "{\n    iVar24 = iVar24 + 1;\n    iVar10 = 0;\n  }" { (expression_statement "iVar24 = iVar24 + 1;" (assignment_expression "iVar24 = iVar24 + 1" identifier = (binary_expression "iVar24 + 1" identifier + number_literal)) ;) (expression_statement "iVar10 = 0;" (assignment_expression "iVar10 = 0" identifier = number_literal) ;) })) (expression_statement "iVar10 = iVar24 * iVar3 + iVar10;" (assignment_expression "iVar10 = iVar24 * iVar3 + iVar10" identifier = (binary_expression "iVar24 * iVar3 + iVar10" (binary_expression "iVar24 * iVar3" identifier * identifier) + identifier)) ;) (expression_statement "iVar24 = iVar24 + iVar10;" (assignment_expression "iVar24 = iVar24 + iVar10" identifier = (binary_expression "iVar24 + iVar10" identifier + identifier)) ;) (if_statement "if (iVar10 < iVar24) {\n    iVar3 = param_1[4];\n    iVar2 = param_1[2];\n    iVar12 = param_1[1];\n    dVar20 = *(double *)(PTR_s_ltiple_images_003f98e8 + -0x77c0);\n    dVar13 = *(double *)(PTR_LAB_003f98e0 + 0x43d0);\n    dVar21 = *(double *)(PTR_LAB_003f98e0 + 0x43e0);\n    do {\n      if (param_1[5] != 0) {\n        iVar4 = (*(code *)PTR_GetCacheViewAuthenticPixels_003fa664)\n                          (iVar2,0,iVar10,*(undefined4 *)(iVar9 + 0x18),1,iVar12);\n        if (iVar4 == 0) {\n          param_1[5] = 0;\n        }\n        else {\n          iVar6 = 0;\n          if (0 < *(int *)(iVar9 + 0x18)) {\n            fVar19 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x7750);\n            fVar18 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x774c);\n            fVar17 = *(float *)(PTR_LAB_003f98e0 + 0x4aa8);\n            dVar23 = *(double *)(puVar1 + 0x43d0);\n            dVar22 = *(double *)(puVar1 + 0x43e0);\n            do {\n              iVar7 = *(int *)(iVar9 + 0x2d0);\n              pfVar8 = (float *)(iVar4 + *(int *)(iVar7 + 8) * 4);\n              fVar16 = *pfVar8;\n              dVar14 = (double)*(float *)(iVar4 + *(int *)(iVar7 + 0x14) * 4) * dVar20 +\n                       (double)(fVar16 * fVar19) +\n                       (double)(*(float *)(iVar4 + *(int *)(iVar7 + 0x20) * 4) * fVar18);\n              if (fVar16 < fVar17) {\n                iVar7 = 0;\n                if (NAN(fVar16)) goto LAB_000cb260;\n                iVar7 = 0;\n                if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                  goto LAB_000cb260;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\nLAB_000cb260:\n                iVar7 = iVar7 * 0x58;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 + iVar3 + 0x28) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x30) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar13;\n                  if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x38) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              iVar4 = iVar4 + *(int *)(iVar9 + 0x2c0) * 4;\n              iVar6 = iVar6 + 1;\n            } while (iVar6 < *(int *)(iVar9 + 0x18));\n          }\n          iVar4 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003fa510)(iVar2,iVar12);\n          if (iVar4 == 0) {\n            param_1[5] = 0;\n          }\n          if (*(int *)(iVar9 + 0x328) != 0) {\n            piVar11 = (int *)param_1[6];\n            (*(code *)PTR_GOMP_atomic_start_003fa2fc)();\n            uVar5 = piVar11[1] + 1;\n            *piVar11 = (uint)(uVar5 < (uint)piVar11[1]) + *piVar11;\n            piVar11[1] = uVar5;\n            (*(code *)PTR_GOMP_atomic_end_003fa450)();\n            iVar4 = (*(code *)PTR_SetImageProgress_003f9ccc)\n                              (iVar9,PTR_s_ltiple_images_003f98e8 + -0x7ed0,\n                               *(undefined4 *)param_1[6],((undefined4 *)param_1[6])[1],0,\n                               *(undefined4 *)(iVar9 + 0x1c));\n            if (iVar4 == 0) {\n              param_1[5] = 0;\n            }\n          }\n        }\n      }\n      iVar10 = iVar10 + 1;\n    } while (iVar24 != iVar10);\n  }" if (parenthesized_expression "(iVar10 < iVar24)" ( (binary_expression "iVar10 < iVar24" identifier < identifier) )) (compound_statement "{\n    iVar3 = param_1[4];\n    iVar2 = param_1[2];\n    iVar12 = param_1[1];\n    dVar20 = *(double *)(PTR_s_ltiple_images_003f98e8 + -0x77c0);\n    dVar13 = *(double *)(PTR_LAB_003f98e0 + 0x43d0);\n    dVar21 = *(double *)(PTR_LAB_003f98e0 + 0x43e0);\n    do {\n      if (param_1[5] != 0) {\n        iVar4 = (*(code *)PTR_GetCacheViewAuthenticPixels_003fa664)\n                          (iVar2,0,iVar10,*(undefined4 *)(iVar9 + 0x18),1,iVar12);\n        if (iVar4 == 0) {\n          param_1[5] = 0;\n        }\n        else {\n          iVar6 = 0;\n          if (0 < *(int *)(iVar9 + 0x18)) {\n            fVar19 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x7750);\n            fVar18 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x774c);\n            fVar17 = *(float *)(PTR_LAB_003f98e0 + 0x4aa8);\n            dVar23 = *(double *)(puVar1 + 0x43d0);\n            dVar22 = *(double *)(puVar1 + 0x43e0);\n            do {\n              iVar7 = *(int *)(iVar9 + 0x2d0);\n              pfVar8 = (float *)(iVar4 + *(int *)(iVar7 + 8) * 4);\n              fVar16 = *pfVar8;\n              dVar14 = (double)*(float *)(iVar4 + *(int *)(iVar7 + 0x14) * 4) * dVar20 +\n                       (double)(fVar16 * fVar19) +\n                       (double)(*(float *)(iVar4 + *(int *)(iVar7 + 0x20) * 4) * fVar18);\n              if (fVar16 < fVar17) {\n                iVar7 = 0;\n                if (NAN(fVar16)) goto LAB_000cb260;\n                iVar7 = 0;\n                if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                  goto LAB_000cb260;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\nLAB_000cb260:\n                iVar7 = iVar7 * 0x58;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 + iVar3 + 0x28) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x30) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar13;\n                  if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x38) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              iVar4 = iVar4 + *(int *)(iVar9 + 0x2c0) * 4;\n              iVar6 = iVar6 + 1;\n            } while (iVar6 < *(int *)(iVar9 + 0x18));\n          }\n          iVar4 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003fa510)(iVar2,iVar12);\n          if (iVar4 == 0) {\n            param_1[5] = 0;\n          }\n          if (*(int *)(iVar9 + 0x328) != 0) {\n            piVar11 = (int *)param_1[6];\n            (*(code *)PTR_GOMP_atomic_start_003fa2fc)();\n            uVar5 = piVar11[1] + 1;\n            *piVar11 = (uint)(uVar5 < (uint)piVar11[1]) + *piVar11;\n            piVar11[1] = uVar5;\n            (*(code *)PTR_GOMP_atomic_end_003fa450)();\n            iVar4 = (*(code *)PTR_SetImageProgress_003f9ccc)\n                              (iVar9,PTR_s_ltiple_images_003f98e8 + -0x7ed0,\n                               *(undefined4 *)param_1[6],((undefined4 *)param_1[6])[1],0,\n                               *(undefined4 *)(iVar9 + 0x1c));\n            if (iVar4 == 0) {\n              param_1[5] = 0;\n            }\n          }\n        }\n      }\n      iVar10 = iVar10 + 1;\n    } while (iVar24 != iVar10);\n  }" { (expression_statement "iVar3 = param_1[4];" (assignment_expression "iVar3 = param_1[4]" identifier = (subscript_expression "param_1[4]" identifier [ number_literal ])) ;) (expression_statement "iVar2 = param_1[2];" (assignment_expression "iVar2 = param_1[2]" identifier = (subscript_expression "param_1[2]" identifier [ number_literal ])) ;) (expression_statement "iVar12 = param_1[1];" (assignment_expression "iVar12 = param_1[1]" identifier = (subscript_expression "param_1[1]" identifier [ number_literal ])) ;) (expression_statement "dVar20 = *(double *)(PTR_s_ltiple_images_003f98e8 + -0x77c0);" (assignment_expression "dVar20 = *(double *)(PTR_s_ltiple_images_003f98e8 + -0x77c0)" identifier = (pointer_expression "*(double *)(PTR_s_ltiple_images_003f98e8 + -0x77c0)" * (cast_expression "(double *)(PTR_s_ltiple_images_003f98e8 + -0x77c0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_s_ltiple_images_003f98e8 + -0x77c0)" ( (binary_expression "PTR_s_ltiple_images_003f98e8 + -0x77c0" identifier + number_literal) ))))) ;) (expression_statement "dVar13 = *(double *)(PTR_LAB_003f98e0 + 0x43d0);" (assignment_expression "dVar13 = *(double *)(PTR_LAB_003f98e0 + 0x43d0)" identifier = (pointer_expression "*(double *)(PTR_LAB_003f98e0 + 0x43d0)" * (cast_expression "(double *)(PTR_LAB_003f98e0 + 0x43d0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_003f98e0 + 0x43d0)" ( (binary_expression "PTR_LAB_003f98e0 + 0x43d0" identifier + number_literal) ))))) ;) (expression_statement "dVar21 = *(double *)(PTR_LAB_003f98e0 + 0x43e0);" (assignment_expression "dVar21 = *(double *)(PTR_LAB_003f98e0 + 0x43e0)" identifier = (pointer_expression "*(double *)(PTR_LAB_003f98e0 + 0x43e0)" * (cast_expression "(double *)(PTR_LAB_003f98e0 + 0x43e0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_003f98e0 + 0x43e0)" ( (binary_expression "PTR_LAB_003f98e0 + 0x43e0" identifier + number_literal) ))))) ;) (do_statement "do {\n      if (param_1[5] != 0) {\n        iVar4 = (*(code *)PTR_GetCacheViewAuthenticPixels_003fa664)\n                          (iVar2,0,iVar10,*(undefined4 *)(iVar9 + 0x18),1,iVar12);\n        if (iVar4 == 0) {\n          param_1[5] = 0;\n        }\n        else {\n          iVar6 = 0;\n          if (0 < *(int *)(iVar9 + 0x18)) {\n            fVar19 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x7750);\n            fVar18 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x774c);\n            fVar17 = *(float *)(PTR_LAB_003f98e0 + 0x4aa8);\n            dVar23 = *(double *)(puVar1 + 0x43d0);\n            dVar22 = *(double *)(puVar1 + 0x43e0);\n            do {\n              iVar7 = *(int *)(iVar9 + 0x2d0);\n              pfVar8 = (float *)(iVar4 + *(int *)(iVar7 + 8) * 4);\n              fVar16 = *pfVar8;\n              dVar14 = (double)*(float *)(iVar4 + *(int *)(iVar7 + 0x14) * 4) * dVar20 +\n                       (double)(fVar16 * fVar19) +\n                       (double)(*(float *)(iVar4 + *(int *)(iVar7 + 0x20) * 4) * fVar18);\n              if (fVar16 < fVar17) {\n                iVar7 = 0;\n                if (NAN(fVar16)) goto LAB_000cb260;\n                iVar7 = 0;\n                if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                  goto LAB_000cb260;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\nLAB_000cb260:\n                iVar7 = iVar7 * 0x58;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 + iVar3 + 0x28) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x30) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar13;\n                  if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x38) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              iVar4 = iVar4 + *(int *)(iVar9 + 0x2c0) * 4;\n              iVar6 = iVar6 + 1;\n            } while (iVar6 < *(int *)(iVar9 + 0x18));\n          }\n          iVar4 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003fa510)(iVar2,iVar12);\n          if (iVar4 == 0) {\n            param_1[5] = 0;\n          }\n          if (*(int *)(iVar9 + 0x328) != 0) {\n            piVar11 = (int *)param_1[6];\n            (*(code *)PTR_GOMP_atomic_start_003fa2fc)();\n            uVar5 = piVar11[1] + 1;\n            *piVar11 = (uint)(uVar5 < (uint)piVar11[1]) + *piVar11;\n            piVar11[1] = uVar5;\n            (*(code *)PTR_GOMP_atomic_end_003fa450)();\n            iVar4 = (*(code *)PTR_SetImageProgress_003f9ccc)\n                              (iVar9,PTR_s_ltiple_images_003f98e8 + -0x7ed0,\n                               *(undefined4 *)param_1[6],((undefined4 *)param_1[6])[1],0,\n                               *(undefined4 *)(iVar9 + 0x1c));\n            if (iVar4 == 0) {\n              param_1[5] = 0;\n            }\n          }\n        }\n      }\n      iVar10 = iVar10 + 1;\n    } while (iVar24 != iVar10);" do (compound_statement "{\n      if (param_1[5] != 0) {\n        iVar4 = (*(code *)PTR_GetCacheViewAuthenticPixels_003fa664)\n                          (iVar2,0,iVar10,*(undefined4 *)(iVar9 + 0x18),1,iVar12);\n        if (iVar4 == 0) {\n          param_1[5] = 0;\n        }\n        else {\n          iVar6 = 0;\n          if (0 < *(int *)(iVar9 + 0x18)) {\n            fVar19 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x7750);\n            fVar18 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x774c);\n            fVar17 = *(float *)(PTR_LAB_003f98e0 + 0x4aa8);\n            dVar23 = *(double *)(puVar1 + 0x43d0);\n            dVar22 = *(double *)(puVar1 + 0x43e0);\n            do {\n              iVar7 = *(int *)(iVar9 + 0x2d0);\n              pfVar8 = (float *)(iVar4 + *(int *)(iVar7 + 8) * 4);\n              fVar16 = *pfVar8;\n              dVar14 = (double)*(float *)(iVar4 + *(int *)(iVar7 + 0x14) * 4) * dVar20 +\n                       (double)(fVar16 * fVar19) +\n                       (double)(*(float *)(iVar4 + *(int *)(iVar7 + 0x20) * 4) * fVar18);\n              if (fVar16 < fVar17) {\n                iVar7 = 0;\n                if (NAN(fVar16)) goto LAB_000cb260;\n                iVar7 = 0;\n                if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                  goto LAB_000cb260;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\nLAB_000cb260:\n                iVar7 = iVar7 * 0x58;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 + iVar3 + 0x28) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x30) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar13;\n                  if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x38) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              iVar4 = iVar4 + *(int *)(iVar9 + 0x2c0) * 4;\n              iVar6 = iVar6 + 1;\n            } while (iVar6 < *(int *)(iVar9 + 0x18));\n          }\n          iVar4 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003fa510)(iVar2,iVar12);\n          if (iVar4 == 0) {\n            param_1[5] = 0;\n          }\n          if (*(int *)(iVar9 + 0x328) != 0) {\n            piVar11 = (int *)param_1[6];\n            (*(code *)PTR_GOMP_atomic_start_003fa2fc)();\n            uVar5 = piVar11[1] + 1;\n            *piVar11 = (uint)(uVar5 < (uint)piVar11[1]) + *piVar11;\n            piVar11[1] = uVar5;\n            (*(code *)PTR_GOMP_atomic_end_003fa450)();\n            iVar4 = (*(code *)PTR_SetImageProgress_003f9ccc)\n                              (iVar9,PTR_s_ltiple_images_003f98e8 + -0x7ed0,\n                               *(undefined4 *)param_1[6],((undefined4 *)param_1[6])[1],0,\n                               *(undefined4 *)(iVar9 + 0x1c));\n            if (iVar4 == 0) {\n              param_1[5] = 0;\n            }\n          }\n        }\n      }\n      iVar10 = iVar10 + 1;\n    }" { (if_statement "if (param_1[5] != 0) {\n        iVar4 = (*(code *)PTR_GetCacheViewAuthenticPixels_003fa664)\n                          (iVar2,0,iVar10,*(undefined4 *)(iVar9 + 0x18),1,iVar12);\n        if (iVar4 == 0) {\n          param_1[5] = 0;\n        }\n        else {\n          iVar6 = 0;\n          if (0 < *(int *)(iVar9 + 0x18)) {\n            fVar19 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x7750);\n            fVar18 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x774c);\n            fVar17 = *(float *)(PTR_LAB_003f98e0 + 0x4aa8);\n            dVar23 = *(double *)(puVar1 + 0x43d0);\n            dVar22 = *(double *)(puVar1 + 0x43e0);\n            do {\n              iVar7 = *(int *)(iVar9 + 0x2d0);\n              pfVar8 = (float *)(iVar4 + *(int *)(iVar7 + 8) * 4);\n              fVar16 = *pfVar8;\n              dVar14 = (double)*(float *)(iVar4 + *(int *)(iVar7 + 0x14) * 4) * dVar20 +\n                       (double)(fVar16 * fVar19) +\n                       (double)(*(float *)(iVar4 + *(int *)(iVar7 + 0x20) * 4) * fVar18);\n              if (fVar16 < fVar17) {\n                iVar7 = 0;\n                if (NAN(fVar16)) goto LAB_000cb260;\n                iVar7 = 0;\n                if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                  goto LAB_000cb260;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\nLAB_000cb260:\n                iVar7 = iVar7 * 0x58;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 + iVar3 + 0x28) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x30) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar13;\n                  if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x38) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              iVar4 = iVar4 + *(int *)(iVar9 + 0x2c0) * 4;\n              iVar6 = iVar6 + 1;\n            } while (iVar6 < *(int *)(iVar9 + 0x18));\n          }\n          iVar4 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003fa510)(iVar2,iVar12);\n          if (iVar4 == 0) {\n            param_1[5] = 0;\n          }\n          if (*(int *)(iVar9 + 0x328) != 0) {\n            piVar11 = (int *)param_1[6];\n            (*(code *)PTR_GOMP_atomic_start_003fa2fc)();\n            uVar5 = piVar11[1] + 1;\n            *piVar11 = (uint)(uVar5 < (uint)piVar11[1]) + *piVar11;\n            piVar11[1] = uVar5;\n            (*(code *)PTR_GOMP_atomic_end_003fa450)();\n            iVar4 = (*(code *)PTR_SetImageProgress_003f9ccc)\n                              (iVar9,PTR_s_ltiple_images_003f98e8 + -0x7ed0,\n                               *(undefined4 *)param_1[6],((undefined4 *)param_1[6])[1],0,\n                               *(undefined4 *)(iVar9 + 0x1c));\n            if (iVar4 == 0) {\n              param_1[5] = 0;\n            }\n          }\n        }\n      }" if (parenthesized_expression "(param_1[5] != 0)" ( (binary_expression "param_1[5] != 0" (subscript_expression "param_1[5]" identifier [ number_literal ]) != number_literal) )) (compound_statement "{\n        iVar4 = (*(code *)PTR_GetCacheViewAuthenticPixels_003fa664)\n                          (iVar2,0,iVar10,*(undefined4 *)(iVar9 + 0x18),1,iVar12);\n        if (iVar4 == 0) {\n          param_1[5] = 0;\n        }\n        else {\n          iVar6 = 0;\n          if (0 < *(int *)(iVar9 + 0x18)) {\n            fVar19 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x7750);\n            fVar18 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x774c);\n            fVar17 = *(float *)(PTR_LAB_003f98e0 + 0x4aa8);\n            dVar23 = *(double *)(puVar1 + 0x43d0);\n            dVar22 = *(double *)(puVar1 + 0x43e0);\n            do {\n              iVar7 = *(int *)(iVar9 + 0x2d0);\n              pfVar8 = (float *)(iVar4 + *(int *)(iVar7 + 8) * 4);\n              fVar16 = *pfVar8;\n              dVar14 = (double)*(float *)(iVar4 + *(int *)(iVar7 + 0x14) * 4) * dVar20 +\n                       (double)(fVar16 * fVar19) +\n                       (double)(*(float *)(iVar4 + *(int *)(iVar7 + 0x20) * 4) * fVar18);\n              if (fVar16 < fVar17) {\n                iVar7 = 0;\n                if (NAN(fVar16)) goto LAB_000cb260;\n                iVar7 = 0;\n                if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                  goto LAB_000cb260;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\nLAB_000cb260:\n                iVar7 = iVar7 * 0x58;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 + iVar3 + 0x28) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x30) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar13;\n                  if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x38) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              iVar4 = iVar4 + *(int *)(iVar9 + 0x2c0) * 4;\n              iVar6 = iVar6 + 1;\n            } while (iVar6 < *(int *)(iVar9 + 0x18));\n          }\n          iVar4 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003fa510)(iVar2,iVar12);\n          if (iVar4 == 0) {\n            param_1[5] = 0;\n          }\n          if (*(int *)(iVar9 + 0x328) != 0) {\n            piVar11 = (int *)param_1[6];\n            (*(code *)PTR_GOMP_atomic_start_003fa2fc)();\n            uVar5 = piVar11[1] + 1;\n            *piVar11 = (uint)(uVar5 < (uint)piVar11[1]) + *piVar11;\n            piVar11[1] = uVar5;\n            (*(code *)PTR_GOMP_atomic_end_003fa450)();\n            iVar4 = (*(code *)PTR_SetImageProgress_003f9ccc)\n                              (iVar9,PTR_s_ltiple_images_003f98e8 + -0x7ed0,\n                               *(undefined4 *)param_1[6],((undefined4 *)param_1[6])[1],0,\n                               *(undefined4 *)(iVar9 + 0x1c));\n            if (iVar4 == 0) {\n              param_1[5] = 0;\n            }\n          }\n        }\n      }" { (expression_statement "iVar4 = (*(code *)PTR_GetCacheViewAuthenticPixels_003fa664)\n                          (iVar2,0,iVar10,*(undefined4 *)(iVar9 + 0x18),1,iVar12);" (assignment_expression "iVar4 = (*(code *)PTR_GetCacheViewAuthenticPixels_003fa664)\n                          (iVar2,0,iVar10,*(undefined4 *)(iVar9 + 0x18),1,iVar12)" identifier = (call_expression "(*(code *)PTR_GetCacheViewAuthenticPixels_003fa664)\n                          (iVar2,0,iVar10,*(undefined4 *)(iVar9 + 0x18),1,iVar12)" (parenthesized_expression "(*(code *)PTR_GetCacheViewAuthenticPixels_003fa664)" ( (pointer_expression "*(code *)PTR_GetCacheViewAuthenticPixels_003fa664" * (cast_expression "(code *)PTR_GetCacheViewAuthenticPixels_003fa664" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar2,0,iVar10,*(undefined4 *)(iVar9 + 0x18),1,iVar12)" ( identifier , number_literal , identifier , (pointer_expression "*(undefined4 *)(iVar9 + 0x18)" * (cast_expression "(undefined4 *)(iVar9 + 0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + 0x18)" ( (binary_expression "iVar9 + 0x18" identifier + number_literal) )))) , number_literal , identifier )))) ;) (if_statement "if (iVar4 == 0) {\n          param_1[5] = 0;\n        }\n        else {\n          iVar6 = 0;\n          if (0 < *(int *)(iVar9 + 0x18)) {\n            fVar19 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x7750);\n            fVar18 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x774c);\n            fVar17 = *(float *)(PTR_LAB_003f98e0 + 0x4aa8);\n            dVar23 = *(double *)(puVar1 + 0x43d0);\n            dVar22 = *(double *)(puVar1 + 0x43e0);\n            do {\n              iVar7 = *(int *)(iVar9 + 0x2d0);\n              pfVar8 = (float *)(iVar4 + *(int *)(iVar7 + 8) * 4);\n              fVar16 = *pfVar8;\n              dVar14 = (double)*(float *)(iVar4 + *(int *)(iVar7 + 0x14) * 4) * dVar20 +\n                       (double)(fVar16 * fVar19) +\n                       (double)(*(float *)(iVar4 + *(int *)(iVar7 + 0x20) * 4) * fVar18);\n              if (fVar16 < fVar17) {\n                iVar7 = 0;\n                if (NAN(fVar16)) goto LAB_000cb260;\n                iVar7 = 0;\n                if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                  goto LAB_000cb260;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\nLAB_000cb260:\n                iVar7 = iVar7 * 0x58;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 + iVar3 + 0x28) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x30) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar13;\n                  if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x38) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              iVar4 = iVar4 + *(int *)(iVar9 + 0x2c0) * 4;\n              iVar6 = iVar6 + 1;\n            } while (iVar6 < *(int *)(iVar9 + 0x18));\n          }\n          iVar4 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003fa510)(iVar2,iVar12);\n          if (iVar4 == 0) {\n            param_1[5] = 0;\n          }\n          if (*(int *)(iVar9 + 0x328) != 0) {\n            piVar11 = (int *)param_1[6];\n            (*(code *)PTR_GOMP_atomic_start_003fa2fc)();\n            uVar5 = piVar11[1] + 1;\n            *piVar11 = (uint)(uVar5 < (uint)piVar11[1]) + *piVar11;\n            piVar11[1] = uVar5;\n            (*(code *)PTR_GOMP_atomic_end_003fa450)();\n            iVar4 = (*(code *)PTR_SetImageProgress_003f9ccc)\n                              (iVar9,PTR_s_ltiple_images_003f98e8 + -0x7ed0,\n                               *(undefined4 *)param_1[6],((undefined4 *)param_1[6])[1],0,\n                               *(undefined4 *)(iVar9 + 0x1c));\n            if (iVar4 == 0) {\n              param_1[5] = 0;\n            }\n          }\n        }" if (parenthesized_expression "(iVar4 == 0)" ( (binary_expression "iVar4 == 0" identifier == number_literal) )) (compound_statement "{\n          param_1[5] = 0;\n        }" { (expression_statement "param_1[5] = 0;" (assignment_expression "param_1[5] = 0" (subscript_expression "param_1[5]" identifier [ number_literal ]) = number_literal) ;) }) (else_clause "else {\n          iVar6 = 0;\n          if (0 < *(int *)(iVar9 + 0x18)) {\n            fVar19 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x7750);\n            fVar18 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x774c);\n            fVar17 = *(float *)(PTR_LAB_003f98e0 + 0x4aa8);\n            dVar23 = *(double *)(puVar1 + 0x43d0);\n            dVar22 = *(double *)(puVar1 + 0x43e0);\n            do {\n              iVar7 = *(int *)(iVar9 + 0x2d0);\n              pfVar8 = (float *)(iVar4 + *(int *)(iVar7 + 8) * 4);\n              fVar16 = *pfVar8;\n              dVar14 = (double)*(float *)(iVar4 + *(int *)(iVar7 + 0x14) * 4) * dVar20 +\n                       (double)(fVar16 * fVar19) +\n                       (double)(*(float *)(iVar4 + *(int *)(iVar7 + 0x20) * 4) * fVar18);\n              if (fVar16 < fVar17) {\n                iVar7 = 0;\n                if (NAN(fVar16)) goto LAB_000cb260;\n                iVar7 = 0;\n                if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                  goto LAB_000cb260;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\nLAB_000cb260:\n                iVar7 = iVar7 * 0x58;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 + iVar3 + 0x28) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x30) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar13;\n                  if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x38) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              iVar4 = iVar4 + *(int *)(iVar9 + 0x2c0) * 4;\n              iVar6 = iVar6 + 1;\n            } while (iVar6 < *(int *)(iVar9 + 0x18));\n          }\n          iVar4 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003fa510)(iVar2,iVar12);\n          if (iVar4 == 0) {\n            param_1[5] = 0;\n          }\n          if (*(int *)(iVar9 + 0x328) != 0) {\n            piVar11 = (int *)param_1[6];\n            (*(code *)PTR_GOMP_atomic_start_003fa2fc)();\n            uVar5 = piVar11[1] + 1;\n            *piVar11 = (uint)(uVar5 < (uint)piVar11[1]) + *piVar11;\n            piVar11[1] = uVar5;\n            (*(code *)PTR_GOMP_atomic_end_003fa450)();\n            iVar4 = (*(code *)PTR_SetImageProgress_003f9ccc)\n                              (iVar9,PTR_s_ltiple_images_003f98e8 + -0x7ed0,\n                               *(undefined4 *)param_1[6],((undefined4 *)param_1[6])[1],0,\n                               *(undefined4 *)(iVar9 + 0x1c));\n            if (iVar4 == 0) {\n              param_1[5] = 0;\n            }\n          }\n        }" else (compound_statement "{\n          iVar6 = 0;\n          if (0 < *(int *)(iVar9 + 0x18)) {\n            fVar19 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x7750);\n            fVar18 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x774c);\n            fVar17 = *(float *)(PTR_LAB_003f98e0 + 0x4aa8);\n            dVar23 = *(double *)(puVar1 + 0x43d0);\n            dVar22 = *(double *)(puVar1 + 0x43e0);\n            do {\n              iVar7 = *(int *)(iVar9 + 0x2d0);\n              pfVar8 = (float *)(iVar4 + *(int *)(iVar7 + 8) * 4);\n              fVar16 = *pfVar8;\n              dVar14 = (double)*(float *)(iVar4 + *(int *)(iVar7 + 0x14) * 4) * dVar20 +\n                       (double)(fVar16 * fVar19) +\n                       (double)(*(float *)(iVar4 + *(int *)(iVar7 + 0x20) * 4) * fVar18);\n              if (fVar16 < fVar17) {\n                iVar7 = 0;\n                if (NAN(fVar16)) goto LAB_000cb260;\n                iVar7 = 0;\n                if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                  goto LAB_000cb260;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\nLAB_000cb260:\n                iVar7 = iVar7 * 0x58;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 + iVar3 + 0x28) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x30) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar13;\n                  if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x38) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              iVar4 = iVar4 + *(int *)(iVar9 + 0x2c0) * 4;\n              iVar6 = iVar6 + 1;\n            } while (iVar6 < *(int *)(iVar9 + 0x18));\n          }\n          iVar4 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003fa510)(iVar2,iVar12);\n          if (iVar4 == 0) {\n            param_1[5] = 0;\n          }\n          if (*(int *)(iVar9 + 0x328) != 0) {\n            piVar11 = (int *)param_1[6];\n            (*(code *)PTR_GOMP_atomic_start_003fa2fc)();\n            uVar5 = piVar11[1] + 1;\n            *piVar11 = (uint)(uVar5 < (uint)piVar11[1]) + *piVar11;\n            piVar11[1] = uVar5;\n            (*(code *)PTR_GOMP_atomic_end_003fa450)();\n            iVar4 = (*(code *)PTR_SetImageProgress_003f9ccc)\n                              (iVar9,PTR_s_ltiple_images_003f98e8 + -0x7ed0,\n                               *(undefined4 *)param_1[6],((undefined4 *)param_1[6])[1],0,\n                               *(undefined4 *)(iVar9 + 0x1c));\n            if (iVar4 == 0) {\n              param_1[5] = 0;\n            }\n          }\n        }" { (expression_statement "iVar6 = 0;" (assignment_expression "iVar6 = 0" identifier = number_literal) ;) (if_statement "if (0 < *(int *)(iVar9 + 0x18)) {\n            fVar19 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x7750);\n            fVar18 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x774c);\n            fVar17 = *(float *)(PTR_LAB_003f98e0 + 0x4aa8);\n            dVar23 = *(double *)(puVar1 + 0x43d0);\n            dVar22 = *(double *)(puVar1 + 0x43e0);\n            do {\n              iVar7 = *(int *)(iVar9 + 0x2d0);\n              pfVar8 = (float *)(iVar4 + *(int *)(iVar7 + 8) * 4);\n              fVar16 = *pfVar8;\n              dVar14 = (double)*(float *)(iVar4 + *(int *)(iVar7 + 0x14) * 4) * dVar20 +\n                       (double)(fVar16 * fVar19) +\n                       (double)(*(float *)(iVar4 + *(int *)(iVar7 + 0x20) * 4) * fVar18);\n              if (fVar16 < fVar17) {\n                iVar7 = 0;\n                if (NAN(fVar16)) goto LAB_000cb260;\n                iVar7 = 0;\n                if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                  goto LAB_000cb260;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\nLAB_000cb260:\n                iVar7 = iVar7 * 0x58;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 + iVar3 + 0x28) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x30) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar13;\n                  if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x38) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              iVar4 = iVar4 + *(int *)(iVar9 + 0x2c0) * 4;\n              iVar6 = iVar6 + 1;\n            } while (iVar6 < *(int *)(iVar9 + 0x18));\n          }" if (parenthesized_expression "(0 < *(int *)(iVar9 + 0x18))" ( (binary_expression "0 < *(int *)(iVar9 + 0x18)" number_literal < (pointer_expression "*(int *)(iVar9 + 0x18)" * (cast_expression "(int *)(iVar9 + 0x18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + 0x18)" ( (binary_expression "iVar9 + 0x18" identifier + number_literal) ))))) )) (compound_statement "{\n            fVar19 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x7750);\n            fVar18 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x774c);\n            fVar17 = *(float *)(PTR_LAB_003f98e0 + 0x4aa8);\n            dVar23 = *(double *)(puVar1 + 0x43d0);\n            dVar22 = *(double *)(puVar1 + 0x43e0);\n            do {\n              iVar7 = *(int *)(iVar9 + 0x2d0);\n              pfVar8 = (float *)(iVar4 + *(int *)(iVar7 + 8) * 4);\n              fVar16 = *pfVar8;\n              dVar14 = (double)*(float *)(iVar4 + *(int *)(iVar7 + 0x14) * 4) * dVar20 +\n                       (double)(fVar16 * fVar19) +\n                       (double)(*(float *)(iVar4 + *(int *)(iVar7 + 0x20) * 4) * fVar18);\n              if (fVar16 < fVar17) {\n                iVar7 = 0;\n                if (NAN(fVar16)) goto LAB_000cb260;\n                iVar7 = 0;\n                if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                  goto LAB_000cb260;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\nLAB_000cb260:\n                iVar7 = iVar7 * 0x58;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 + iVar3 + 0x28) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x30) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar13;\n                  if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x38) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              iVar4 = iVar4 + *(int *)(iVar9 + 0x2c0) * 4;\n              iVar6 = iVar6 + 1;\n            } while (iVar6 < *(int *)(iVar9 + 0x18));\n          }" { (expression_statement "fVar19 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x7750);" (assignment_expression "fVar19 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x7750)" identifier = (pointer_expression "*(float *)(PTR_s_ltiple_images_003f98e8 + -0x7750)" * (cast_expression "(float *)(PTR_s_ltiple_images_003f98e8 + -0x7750)" ( (type_descriptor "float *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_s_ltiple_images_003f98e8 + -0x7750)" ( (binary_expression "PTR_s_ltiple_images_003f98e8 + -0x7750" identifier + number_literal) ))))) ;) (expression_statement "fVar18 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x774c);" (assignment_expression "fVar18 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x774c)" identifier = (pointer_expression "*(float *)(PTR_s_ltiple_images_003f98e8 + -0x774c)" * (cast_expression "(float *)(PTR_s_ltiple_images_003f98e8 + -0x774c)" ( (type_descriptor "float *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_s_ltiple_images_003f98e8 + -0x774c)" ( (binary_expression "PTR_s_ltiple_images_003f98e8 + -0x774c" identifier + number_literal) ))))) ;) (expression_statement "fVar17 = *(float *)(PTR_LAB_003f98e0 + 0x4aa8);" (assignment_expression "fVar17 = *(float *)(PTR_LAB_003f98e0 + 0x4aa8)" identifier = (pointer_expression "*(float *)(PTR_LAB_003f98e0 + 0x4aa8)" * (cast_expression "(float *)(PTR_LAB_003f98e0 + 0x4aa8)" ( (type_descriptor "float *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_003f98e0 + 0x4aa8)" ( (binary_expression "PTR_LAB_003f98e0 + 0x4aa8" identifier + number_literal) ))))) ;) (expression_statement "dVar23 = *(double *)(puVar1 + 0x43d0);" (assignment_expression "dVar23 = *(double *)(puVar1 + 0x43d0)" identifier = (pointer_expression "*(double *)(puVar1 + 0x43d0)" * (cast_expression "(double *)(puVar1 + 0x43d0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar1 + 0x43d0)" ( (binary_expression "puVar1 + 0x43d0" identifier + number_literal) ))))) ;) (expression_statement "dVar22 = *(double *)(puVar1 + 0x43e0);" (assignment_expression "dVar22 = *(double *)(puVar1 + 0x43e0)" identifier = (pointer_expression "*(double *)(puVar1 + 0x43e0)" * (cast_expression "(double *)(puVar1 + 0x43e0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar1 + 0x43e0)" ( (binary_expression "puVar1 + 0x43e0" identifier + number_literal) ))))) ;) (do_statement "do {\n              iVar7 = *(int *)(iVar9 + 0x2d0);\n              pfVar8 = (float *)(iVar4 + *(int *)(iVar7 + 8) * 4);\n              fVar16 = *pfVar8;\n              dVar14 = (double)*(float *)(iVar4 + *(int *)(iVar7 + 0x14) * 4) * dVar20 +\n                       (double)(fVar16 * fVar19) +\n                       (double)(*(float *)(iVar4 + *(int *)(iVar7 + 0x20) * 4) * fVar18);\n              if (fVar16 < fVar17) {\n                iVar7 = 0;\n                if (NAN(fVar16)) goto LAB_000cb260;\n                iVar7 = 0;\n                if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                  goto LAB_000cb260;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\nLAB_000cb260:\n                iVar7 = iVar7 * 0x58;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 + iVar3 + 0x28) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x30) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar13;\n                  if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x38) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              iVar4 = iVar4 + *(int *)(iVar9 + 0x2c0) * 4;\n              iVar6 = iVar6 + 1;\n            } while (iVar6 < *(int *)(iVar9 + 0x18));" do (compound_statement "{\n              iVar7 = *(int *)(iVar9 + 0x2d0);\n              pfVar8 = (float *)(iVar4 + *(int *)(iVar7 + 8) * 4);\n              fVar16 = *pfVar8;\n              dVar14 = (double)*(float *)(iVar4 + *(int *)(iVar7 + 0x14) * 4) * dVar20 +\n                       (double)(fVar16 * fVar19) +\n                       (double)(*(float *)(iVar4 + *(int *)(iVar7 + 0x20) * 4) * fVar18);\n              if (fVar16 < fVar17) {\n                iVar7 = 0;\n                if (NAN(fVar16)) goto LAB_000cb260;\n                iVar7 = 0;\n                if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                  goto LAB_000cb260;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\nLAB_000cb260:\n                iVar7 = iVar7 * 0x58;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 + iVar3 + 0x28) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x30) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar13;\n                  if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x38) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              iVar4 = iVar4 + *(int *)(iVar9 + 0x2c0) * 4;\n              iVar6 = iVar6 + 1;\n            }" { (expression_statement "iVar7 = *(int *)(iVar9 + 0x2d0);" (assignment_expression "iVar7 = *(int *)(iVar9 + 0x2d0)" identifier = (pointer_expression "*(int *)(iVar9 + 0x2d0)" * (cast_expression "(int *)(iVar9 + 0x2d0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + 0x2d0)" ( (binary_expression "iVar9 + 0x2d0" identifier + number_literal) ))))) ;) (expression_statement "pfVar8 = (float *)(iVar4 + *(int *)(iVar7 + 8) * 4);" (assignment_expression "pfVar8 = (float *)(iVar4 + *(int *)(iVar7 + 8) * 4)" identifier = (cast_expression "(float *)(iVar4 + *(int *)(iVar7 + 8) * 4)" ( (type_descriptor "float *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar4 + *(int *)(iVar7 + 8) * 4)" ( (binary_expression "iVar4 + *(int *)(iVar7 + 8) * 4" identifier + (binary_expression "*(int *)(iVar7 + 8) * 4" (pointer_expression "*(int *)(iVar7 + 8)" * (cast_expression "(int *)(iVar7 + 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar7 + 8)" ( (binary_expression "iVar7 + 8" identifier + number_literal) )))) * number_literal)) )))) ;) (expression_statement "fVar16 = *pfVar8;" (assignment_expression "fVar16 = *pfVar8" identifier = (pointer_expression "*pfVar8" * identifier)) ;) (expression_statement "dVar14 = (double)*(float *)(iVar4 + *(int *)(iVar7 + 0x14) * 4) * dVar20 +\n                       (double)(fVar16 * fVar19) +\n                       (double)(*(float *)(iVar4 + *(int *)(iVar7 + 0x20) * 4) * fVar18);" (assignment_expression "dVar14 = (double)*(float *)(iVar4 + *(int *)(iVar7 + 0x14) * 4) * dVar20 +\n                       (double)(fVar16 * fVar19) +\n                       (double)(*(float *)(iVar4 + *(int *)(iVar7 + 0x20) * 4) * fVar18)" identifier = (binary_expression "(double)*(float *)(iVar4 + *(int *)(iVar7 + 0x14) * 4) * dVar20 +\n                       (double)(fVar16 * fVar19) +\n                       (double)(*(float *)(iVar4 + *(int *)(iVar7 + 0x20) * 4) * fVar18)" (binary_expression "(double)*(float *)(iVar4 + *(int *)(iVar7 + 0x14) * 4) * dVar20 +\n                       (double)(fVar16 * fVar19)" (binary_expression "(double)*(float *)(iVar4 + *(int *)(iVar7 + 0x14) * 4) * dVar20" (cast_expression "(double)*(float *)(iVar4 + *(int *)(iVar7 + 0x14) * 4)" ( (type_descriptor "double" primitive_type) ) (pointer_expression "*(float *)(iVar4 + *(int *)(iVar7 + 0x14) * 4)" * (cast_expression "(float *)(iVar4 + *(int *)(iVar7 + 0x14) * 4)" ( (type_descriptor "float *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar4 + *(int *)(iVar7 + 0x14) * 4)" ( (binary_expression "iVar4 + *(int *)(iVar7 + 0x14) * 4" identifier + (binary_expression "*(int *)(iVar7 + 0x14) * 4" (pointer_expression "*(int *)(iVar7 + 0x14)" * (cast_expression "(int *)(iVar7 + 0x14)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar7 + 0x14)" ( (binary_expression "iVar7 + 0x14" identifier + number_literal) )))) * number_literal)) ))))) * identifier) + (cast_expression "(double)(fVar16 * fVar19)" ( (type_descriptor "double" primitive_type) ) (parenthesized_expression "(fVar16 * fVar19)" ( (binary_expression "fVar16 * fVar19" identifier * identifier) )))) + (cast_expression "(double)(*(float *)(iVar4 + *(int *)(iVar7 + 0x20) * 4) * fVar18)" ( (type_descriptor "double" primitive_type) ) (parenthesized_expression "(*(float *)(iVar4 + *(int *)(iVar7 + 0x20) * 4) * fVar18)" ( (binary_expression "*(float *)(iVar4 + *(int *)(iVar7 + 0x20) * 4) * fVar18" (pointer_expression "*(float *)(iVar4 + *(int *)(iVar7 + 0x20) * 4)" * (cast_expression "(float *)(iVar4 + *(int *)(iVar7 + 0x20) * 4)" ( (type_descriptor "float *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar4 + *(int *)(iVar7 + 0x20) * 4)" ( (binary_expression "iVar4 + *(int *)(iVar7 + 0x20) * 4" identifier + (binary_expression "*(int *)(iVar7 + 0x20) * 4" (pointer_expression "*(int *)(iVar7 + 0x20)" * (cast_expression "(int *)(iVar7 + 0x20)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar7 + 0x20)" ( (binary_expression "iVar7 + 0x20" identifier + number_literal) )))) * number_literal)) )))) * identifier) ))))) ;) (if_statement "if (fVar16 < fVar17) {\n                iVar7 = 0;\n                if (NAN(fVar16)) goto LAB_000cb260;\n                iVar7 = 0;\n                if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                  goto LAB_000cb260;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\nLAB_000cb260:\n                iVar7 = iVar7 * 0x58;\n              }" if (parenthesized_expression "(fVar16 < fVar17)" ( (binary_expression "fVar16 < fVar17" identifier < identifier) )) (compound_statement "{\n                iVar7 = 0;\n                if (NAN(fVar16)) goto LAB_000cb260;\n                iVar7 = 0;\n                if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                  goto LAB_000cb260;\n                }\n              }" { (expression_statement "iVar7 = 0;" (assignment_expression "iVar7 = 0" identifier = number_literal) ;) (if_statement "if (NAN(fVar16)) goto LAB_000cb260;" if (parenthesized_expression "(NAN(fVar16))" ( (call_expression "NAN(fVar16)" identifier (argument_list "(fVar16)" ( identifier ))) )) (goto_statement "goto LAB_000cb260;" goto statement_identifier ;)) (expression_statement "iVar7 = 0;" (assignment_expression "iVar7 = 0" identifier = number_literal) ;) (if_statement "if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                  goto LAB_000cb260;\n                }" if (parenthesized_expression "(0.0 < fVar16)" ( (binary_expression "0.0 < fVar16" number_literal < identifier) )) (compound_statement "{\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                  goto LAB_000cb260;\n                }" { (expression_statement "dVar15 = (double)fVar16 + dVar23;" (assignment_expression "dVar15 = (double)fVar16 + dVar23" identifier = (binary_expression "(double)fVar16 + dVar23" (cast_expression "(double)fVar16" ( (type_descriptor "double" primitive_type) ) identifier) + identifier)) ;) (if_statement "if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }" if (parenthesized_expression "(dVar15 < dVar22)" ( (binary_expression "dVar15 < dVar22" identifier < identifier) )) (compound_statement "{\n                    iVar7 = (int)dVar15;\n                  }" { (expression_statement "iVar7 = (int)dVar15;" (assignment_expression "iVar7 = (int)dVar15" identifier = (cast_expression "(int)dVar15" ( (type_descriptor "int" primitive_type) ) identifier)) ;) }) (else_clause "else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }" else (compound_statement "{\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }" { (expression_statement "iVar7 = (int)(dVar15 - dVar22);" (assignment_expression "iVar7 = (int)(dVar15 - dVar22)" identifier = (cast_expression "(int)(dVar15 - dVar22)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(dVar15 - dVar22)" ( (binary_expression "dVar15 - dVar22" identifier - identifier) )))) ;) }))) (goto_statement "goto LAB_000cb260;" goto statement_identifier ;) })) }) (else_clause "else {\n                iVar7 = 0xffff;\nLAB_000cb260:\n                iVar7 = iVar7 * 0x58;\n              }" else (compound_statement "{\n                iVar7 = 0xffff;\nLAB_000cb260:\n                iVar7 = iVar7 * 0x58;\n              }" { (expression_statement "iVar7 = 0xffff;" (assignment_expression "iVar7 = 0xffff" identifier = number_literal) ;) (labeled_statement "LAB_000cb260:\n                iVar7 = iVar7 * 0x58;" statement_identifier : (expression_statement "iVar7 = iVar7 * 0x58;" (assignment_expression "iVar7 = iVar7 * 0x58" identifier = (binary_expression "iVar7 * 0x58" identifier * number_literal)) ;)) }))) (expression_statement "*pfVar8 = (float)((*(double *)(iVar7 + iVar3 + 0x28) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);" (assignment_expression "*pfVar8 = (float)((*(double *)(iVar7 + iVar3 + 0x28) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14)" (pointer_expression "*pfVar8" * identifier) = (cast_expression "(float)((*(double *)(iVar7 + iVar3 + 0x28) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14)" ( (type_descriptor "float" primitive_type) ) (parenthesized_expression "((*(double *)(iVar7 + iVar3 + 0x28) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14)" ( (binary_expression "(*(double *)(iVar7 + iVar3 + 0x28) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14" (binary_expression "(*(double *)(iVar7 + iVar3 + 0x28) - dVar14) *\n                                *(double *)(param_1[3] + 0x48)" (parenthesized_expression "(*(double *)(iVar7 + iVar3 + 0x28) - dVar14)" ( (binary_expression "*(double *)(iVar7 + iVar3 + 0x28) - dVar14" (pointer_expression "*(double *)(iVar7 + iVar3 + 0x28)" * (cast_expression "(double *)(iVar7 + iVar3 + 0x28)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar7 + iVar3 + 0x28)" ( (binary_expression "iVar7 + iVar3 + 0x28" (binary_expression "iVar7 + iVar3" identifier + identifier) + number_literal) )))) - identifier) )) * (pointer_expression "*(double *)(param_1[3] + 0x48)" * (cast_expression "(double *)(param_1[3] + 0x48)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1[3] + 0x48)" ( (binary_expression "param_1[3] + 0x48" (subscript_expression "param_1[3]" identifier [ number_literal ]) + number_literal) ))))) + identifier) )))) ;) (expression_statement "pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4);" (assignment_expression "pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4)" identifier = (cast_expression "(float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4)" ( (type_descriptor "float *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4)" ( (binary_expression "iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4" identifier + (binary_expression "*(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4" (pointer_expression "*(int *)(*(int *)(iVar9 + 0x2d0) + 0x14)" * (cast_expression "(int *)(*(int *)(iVar9 + 0x2d0) + 0x14)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(iVar9 + 0x2d0) + 0x14)" ( (binary_expression "*(int *)(iVar9 + 0x2d0) + 0x14" (pointer_expression "*(int *)(iVar9 + 0x2d0)" * (cast_expression "(int *)(iVar9 + 0x2d0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + 0x2d0)" ( (binary_expression "iVar9 + 0x2d0" identifier + number_literal) )))) + number_literal) )))) * number_literal)) )))) ;) (expression_statement "fVar16 = *pfVar8;" (assignment_expression "fVar16 = *pfVar8" identifier = (pointer_expression "*pfVar8" * identifier)) ;) (if_statement "if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }" if (parenthesized_expression "(fVar16 < fVar17)" ( (binary_expression "fVar16 < fVar17" identifier < identifier) )) (compound_statement "{\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }" { (if_statement "if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }" if (parenthesized_expression "(NAN(fVar16))" ( (call_expression "NAN(fVar16)" identifier (argument_list "(fVar16)" ( identifier ))) )) (compound_statement "{\n                  iVar7 = 0;\n                }" { (expression_statement "iVar7 = 0;" (assignment_expression "iVar7 = 0" identifier = number_literal) ;) }) (else_clause "else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }" else (if_statement "if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }" if (parenthesized_expression "(0.0 < fVar16)" ( (binary_expression "0.0 < fVar16" number_literal < identifier) )) (compound_statement "{\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                }" { (expression_statement "dVar15 = (double)fVar16 + dVar23;" (assignment_expression "dVar15 = (double)fVar16 + dVar23" identifier = (binary_expression "(double)fVar16 + dVar23" (cast_expression "(double)fVar16" ( (type_descriptor "double" primitive_type) ) identifier) + identifier)) ;) (if_statement "if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }" if (parenthesized_expression "(dVar15 < dVar22)" ( (binary_expression "dVar15 < dVar22" identifier < identifier) )) (compound_statement "{\n                    iVar7 = (int)dVar15;\n                  }" { (expression_statement "iVar7 = (int)dVar15;" (assignment_expression "iVar7 = (int)dVar15" identifier = (cast_expression "(int)dVar15" ( (type_descriptor "int" primitive_type) ) identifier)) ;) }) (else_clause "else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }" else (compound_statement "{\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }" { (expression_statement "iVar7 = (int)(dVar15 - dVar22);" (assignment_expression "iVar7 = (int)(dVar15 - dVar22)" identifier = (cast_expression "(int)(dVar15 - dVar22)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(dVar15 - dVar22)" ( (binary_expression "dVar15 - dVar22" identifier - identifier) )))) ;) }))) }) (else_clause "else {\n                  iVar7 = 0;\n                }" else (compound_statement "{\n                  iVar7 = 0;\n                }" { (expression_statement "iVar7 = 0;" (assignment_expression "iVar7 = 0" identifier = number_literal) ;) }))))) }) (else_clause "else {\n                iVar7 = 0xffff;\n              }" else (compound_statement "{\n                iVar7 = 0xffff;\n              }" { (expression_statement "iVar7 = 0xffff;" (assignment_expression "iVar7 = 0xffff" identifier = number_literal) ;) }))) (expression_statement "*pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x30) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);" (assignment_expression "*pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x30) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14)" (pointer_expression "*pfVar8" * identifier) = (cast_expression "(float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x30) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14)" ( (type_descriptor "float" primitive_type) ) (parenthesized_expression "((*(double *)(iVar7 * 0x58 + iVar3 + 0x30) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14)" ( (binary_expression "(*(double *)(iVar7 * 0x58 + iVar3 + 0x30) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14" (binary_expression "(*(double *)(iVar7 * 0x58 + iVar3 + 0x30) - dVar14) *\n                                *(double *)(param_1[3] + 0x48)" (parenthesized_expression "(*(double *)(iVar7 * 0x58 + iVar3 + 0x30) - dVar14)" ( (binary_expression "*(double *)(iVar7 * 0x58 + iVar3 + 0x30) - dVar14" (pointer_expression "*(double *)(iVar7 * 0x58 + iVar3 + 0x30)" * (cast_expression "(double *)(iVar7 * 0x58 + iVar3 + 0x30)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar7 * 0x58 + iVar3 + 0x30)" ( (binary_expression "iVar7 * 0x58 + iVar3 + 0x30" (binary_expression "iVar7 * 0x58 + iVar3" (binary_expression "iVar7 * 0x58" identifier * number_literal) + identifier) + number_literal) )))) - identifier) )) * (pointer_expression "*(double *)(param_1[3] + 0x48)" * (cast_expression "(double *)(param_1[3] + 0x48)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1[3] + 0x48)" ( (binary_expression "param_1[3] + 0x48" (subscript_expression "param_1[3]" identifier [ number_literal ]) + number_literal) ))))) + identifier) )))) ;) (expression_statement "pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4);" (assignment_expression "pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4)" identifier = (cast_expression "(float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4)" ( (type_descriptor "float *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4)" ( (binary_expression "iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4" identifier + (binary_expression "*(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4" (pointer_expression "*(int *)(*(int *)(iVar9 + 0x2d0) + 0x20)" * (cast_expression "(int *)(*(int *)(iVar9 + 0x2d0) + 0x20)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(iVar9 + 0x2d0) + 0x20)" ( (binary_expression "*(int *)(iVar9 + 0x2d0) + 0x20" (pointer_expression "*(int *)(iVar9 + 0x2d0)" * (cast_expression "(int *)(iVar9 + 0x2d0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + 0x2d0)" ( (binary_expression "iVar9 + 0x2d0" identifier + number_literal) )))) + number_literal) )))) * number_literal)) )))) ;) (expression_statement "fVar16 = *pfVar8;" (assignment_expression "fVar16 = *pfVar8" identifier = (pointer_expression "*pfVar8" * identifier)) ;) (if_statement "if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar13;\n                  if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }" if (parenthesized_expression "(fVar16 < fVar17)" ( (binary_expression "fVar16 < fVar17" identifier < identifier) )) (compound_statement "{\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar13;\n                  if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }" { (if_statement "if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar13;\n                  if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }" if (parenthesized_expression "(NAN(fVar16))" ( (call_expression "NAN(fVar16)" identifier (argument_list "(fVar16)" ( identifier ))) )) (compound_statement "{\n                  iVar7 = 0;\n                }" { (expression_statement "iVar7 = 0;" (assignment_expression "iVar7 = 0" identifier = number_literal) ;) }) (else_clause "else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar13;\n                  if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }" else (if_statement "if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar13;\n                  if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }" if (parenthesized_expression "(0.0 < fVar16)" ( (binary_expression "0.0 < fVar16" number_literal < identifier) )) (compound_statement "{\n                  dVar15 = (double)fVar16 + dVar13;\n                  if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }\n                }" { (expression_statement "dVar15 = (double)fVar16 + dVar13;" (assignment_expression "dVar15 = (double)fVar16 + dVar13" identifier = (binary_expression "(double)fVar16 + dVar13" (cast_expression "(double)fVar16" ( (type_descriptor "double" primitive_type) ) identifier) + identifier)) ;) (if_statement "if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }" if (parenthesized_expression "(dVar15 < dVar21)" ( (binary_expression "dVar15 < dVar21" identifier < identifier) )) (compound_statement "{\n                    iVar7 = (int)dVar15;\n                  }" { (expression_statement "iVar7 = (int)dVar15;" (assignment_expression "iVar7 = (int)dVar15" identifier = (cast_expression "(int)dVar15" ( (type_descriptor "int" primitive_type) ) identifier)) ;) }) (else_clause "else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }" else (compound_statement "{\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }" { (expression_statement "iVar7 = (int)(dVar15 - dVar21);" (assignment_expression "iVar7 = (int)(dVar15 - dVar21)" identifier = (cast_expression "(int)(dVar15 - dVar21)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(dVar15 - dVar21)" ( (binary_expression "dVar15 - dVar21" identifier - identifier) )))) ;) }))) }) (else_clause "else {\n                  iVar7 = 0;\n                }" else (compound_statement "{\n                  iVar7 = 0;\n                }" { (expression_statement "iVar7 = 0;" (assignment_expression "iVar7 = 0" identifier = number_literal) ;) }))))) }) (else_clause "else {\n                iVar7 = 0xffff;\n              }" else (compound_statement "{\n                iVar7 = 0xffff;\n              }" { (expression_statement "iVar7 = 0xffff;" (assignment_expression "iVar7 = 0xffff" identifier = number_literal) ;) }))) (expression_statement "*pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x38) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);" (assignment_expression "*pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x38) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14)" (pointer_expression "*pfVar8" * identifier) = (cast_expression "(float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x38) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14)" ( (type_descriptor "float" primitive_type) ) (parenthesized_expression "((*(double *)(iVar7 * 0x58 + iVar3 + 0x38) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14)" ( (binary_expression "(*(double *)(iVar7 * 0x58 + iVar3 + 0x38) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14" (binary_expression "(*(double *)(iVar7 * 0x58 + iVar3 + 0x38) - dVar14) *\n                                *(double *)(param_1[3] + 0x48)" (parenthesized_expression "(*(double *)(iVar7 * 0x58 + iVar3 + 0x38) - dVar14)" ( (binary_expression "*(double *)(iVar7 * 0x58 + iVar3 + 0x38) - dVar14" (pointer_expression "*(double *)(iVar7 * 0x58 + iVar3 + 0x38)" * (cast_expression "(double *)(iVar7 * 0x58 + iVar3 + 0x38)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar7 * 0x58 + iVar3 + 0x38)" ( (binary_expression "iVar7 * 0x58 + iVar3 + 0x38" (binary_expression "iVar7 * 0x58 + iVar3" (binary_expression "iVar7 * 0x58" identifier * number_literal) + identifier) + number_literal) )))) - identifier) )) * (pointer_expression "*(double *)(param_1[3] + 0x48)" * (cast_expression "(double *)(param_1[3] + 0x48)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1[3] + 0x48)" ( (binary_expression "param_1[3] + 0x48" (subscript_expression "param_1[3]" identifier [ number_literal ]) + number_literal) ))))) + identifier) )))) ;) (expression_statement "iVar4 = iVar4 + *(int *)(iVar9 + 0x2c0) * 4;" (assignment_expression "iVar4 = iVar4 + *(int *)(iVar9 + 0x2c0) * 4" identifier = (binary_expression "iVar4 + *(int *)(iVar9 + 0x2c0) * 4" identifier + (binary_expression "*(int *)(iVar9 + 0x2c0) * 4" (pointer_expression "*(int *)(iVar9 + 0x2c0)" * (cast_expression "(int *)(iVar9 + 0x2c0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + 0x2c0)" ( (binary_expression "iVar9 + 0x2c0" identifier + number_literal) )))) * number_literal))) ;) (expression_statement "iVar6 = iVar6 + 1;" (assignment_expression "iVar6 = iVar6 + 1" identifier = (binary_expression "iVar6 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(iVar6 < *(int *)(iVar9 + 0x18))" ( (binary_expression "iVar6 < *(int *)(iVar9 + 0x18)" identifier < (pointer_expression "*(int *)(iVar9 + 0x18)" * (cast_expression "(int *)(iVar9 + 0x18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + 0x18)" ( (binary_expression "iVar9 + 0x18" identifier + number_literal) ))))) )) ;) })) (expression_statement "iVar4 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003fa510)(iVar2,iVar12);" (assignment_expression "iVar4 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003fa510)(iVar2,iVar12)" identifier = (call_expression "(*(code *)PTR_SyncCacheViewAuthenticPixels_003fa510)(iVar2,iVar12)" (parenthesized_expression "(*(code *)PTR_SyncCacheViewAuthenticPixels_003fa510)" ( (pointer_expression "*(code *)PTR_SyncCacheViewAuthenticPixels_003fa510" * (cast_expression "(code *)PTR_SyncCacheViewAuthenticPixels_003fa510" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar2,iVar12)" ( identifier , identifier )))) ;) (if_statement "if (iVar4 == 0) {\n            param_1[5] = 0;\n          }" if (parenthesized_expression "(iVar4 == 0)" ( (binary_expression "iVar4 == 0" identifier == number_literal) )) (compound_statement "{\n            param_1[5] = 0;\n          }" { (expression_statement "param_1[5] = 0;" (assignment_expression "param_1[5] = 0" (subscript_expression "param_1[5]" identifier [ number_literal ]) = number_literal) ;) })) (if_statement "if (*(int *)(iVar9 + 0x328) != 0) {\n            piVar11 = (int *)param_1[6];\n            (*(code *)PTR_GOMP_atomic_start_003fa2fc)();\n            uVar5 = piVar11[1] + 1;\n            *piVar11 = (uint)(uVar5 < (uint)piVar11[1]) + *piVar11;\n            piVar11[1] = uVar5;\n            (*(code *)PTR_GOMP_atomic_end_003fa450)();\n            iVar4 = (*(code *)PTR_SetImageProgress_003f9ccc)\n                              (iVar9,PTR_s_ltiple_images_003f98e8 + -0x7ed0,\n                               *(undefined4 *)param_1[6],((undefined4 *)param_1[6])[1],0,\n                               *(undefined4 *)(iVar9 + 0x1c));\n            if (iVar4 == 0) {\n              param_1[5] = 0;\n            }\n          }" if (parenthesized_expression "(*(int *)(iVar9 + 0x328) != 0)" ( (binary_expression "*(int *)(iVar9 + 0x328) != 0" (pointer_expression "*(int *)(iVar9 + 0x328)" * (cast_expression "(int *)(iVar9 + 0x328)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + 0x328)" ( (binary_expression "iVar9 + 0x328" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n            piVar11 = (int *)param_1[6];\n            (*(code *)PTR_GOMP_atomic_start_003fa2fc)();\n            uVar5 = piVar11[1] + 1;\n            *piVar11 = (uint)(uVar5 < (uint)piVar11[1]) + *piVar11;\n            piVar11[1] = uVar5;\n            (*(code *)PTR_GOMP_atomic_end_003fa450)();\n            iVar4 = (*(code *)PTR_SetImageProgress_003f9ccc)\n                              (iVar9,PTR_s_ltiple_images_003f98e8 + -0x7ed0,\n                               *(undefined4 *)param_1[6],((undefined4 *)param_1[6])[1],0,\n                               *(undefined4 *)(iVar9 + 0x1c));\n            if (iVar4 == 0) {\n              param_1[5] = 0;\n            }\n          }" { (expression_statement "piVar11 = (int *)param_1[6];" (assignment_expression "piVar11 = (int *)param_1[6]" identifier = (cast_expression "(int *)param_1[6]" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "param_1[6]" identifier [ number_literal ]))) ;) (expression_statement "(*(code *)PTR_GOMP_atomic_start_003fa2fc)();" (call_expression "(*(code *)PTR_GOMP_atomic_start_003fa2fc)()" (parenthesized_expression "(*(code *)PTR_GOMP_atomic_start_003fa2fc)" ( (pointer_expression "*(code *)PTR_GOMP_atomic_start_003fa2fc" * (cast_expression "(code *)PTR_GOMP_atomic_start_003fa2fc" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))) ;) (expression_statement "uVar5 = piVar11[1] + 1;" (assignment_expression "uVar5 = piVar11[1] + 1" identifier = (binary_expression "piVar11[1] + 1" (subscript_expression "piVar11[1]" identifier [ number_literal ]) + number_literal)) ;) (expression_statement "*piVar11 = (uint)(uVar5 < (uint)piVar11[1]) + *piVar11;" (assignment_expression "*piVar11 = (uint)(uVar5 < (uint)piVar11[1]) + *piVar11" (pointer_expression "*piVar11" * identifier) = (binary_expression "(uint)(uVar5 < (uint)piVar11[1]) + *piVar11" (call_expression "(uint)(uVar5 < (uint)piVar11[1])" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar5 < (uint)piVar11[1])" ( (binary_expression "uVar5 < (uint)piVar11[1]" identifier < (cast_expression "(uint)piVar11[1]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "piVar11[1]" identifier [ number_literal ]))) ))) + (pointer_expression "*piVar11" * identifier))) ;) (expression_statement "piVar11[1] = uVar5;" (assignment_expression "piVar11[1] = uVar5" (subscript_expression "piVar11[1]" identifier [ number_literal ]) = identifier) ;) (expression_statement "(*(code *)PTR_GOMP_atomic_end_003fa450)();" (call_expression "(*(code *)PTR_GOMP_atomic_end_003fa450)()" (parenthesized_expression "(*(code *)PTR_GOMP_atomic_end_003fa450)" ( (pointer_expression "*(code *)PTR_GOMP_atomic_end_003fa450" * (cast_expression "(code *)PTR_GOMP_atomic_end_003fa450" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))) ;) (expression_statement "iVar4 = (*(code *)PTR_SetImageProgress_003f9ccc)\n                              (iVar9,PTR_s_ltiple_images_003f98e8 + -0x7ed0,\n                               *(undefined4 *)param_1[6],((undefined4 *)param_1[6])[1],0,\n                               *(undefined4 *)(iVar9 + 0x1c));" (assignment_expression "iVar4 = (*(code *)PTR_SetImageProgress_003f9ccc)\n                              (iVar9,PTR_s_ltiple_images_003f98e8 + -0x7ed0,\n                               *(undefined4 *)param_1[6],((undefined4 *)param_1[6])[1],0,\n                               *(undefined4 *)(iVar9 + 0x1c))" identifier = (call_expression "(*(code *)PTR_SetImageProgress_003f9ccc)\n                              (iVar9,PTR_s_ltiple_images_003f98e8 + -0x7ed0,\n                               *(undefined4 *)param_1[6],((undefined4 *)param_1[6])[1],0,\n                               *(undefined4 *)(iVar9 + 0x1c))" (parenthesized_expression "(*(code *)PTR_SetImageProgress_003f9ccc)" ( (pointer_expression "*(code *)PTR_SetImageProgress_003f9ccc" * (cast_expression "(code *)PTR_SetImageProgress_003f9ccc" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar9,PTR_s_ltiple_images_003f98e8 + -0x7ed0,\n                               *(undefined4 *)param_1[6],((undefined4 *)param_1[6])[1],0,\n                               *(undefined4 *)(iVar9 + 0x1c))" ( identifier , (binary_expression "PTR_s_ltiple_images_003f98e8 + -0x7ed0" identifier + number_literal) , (pointer_expression "*(undefined4 *)param_1[6]" * (cast_expression "(undefined4 *)param_1[6]" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "param_1[6]" identifier [ number_literal ]))) , (subscript_expression "((undefined4 *)param_1[6])[1]" (parenthesized_expression "((undefined4 *)param_1[6])" ( (cast_expression "(undefined4 *)param_1[6]" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "param_1[6]" identifier [ number_literal ])) )) [ number_literal ]) , number_literal , (pointer_expression "*(undefined4 *)(iVar9 + 0x1c)" * (cast_expression "(undefined4 *)(iVar9 + 0x1c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + 0x1c)" ( (binary_expression "iVar9 + 0x1c" identifier + number_literal) )))) )))) ;) (if_statement "if (iVar4 == 0) {\n              param_1[5] = 0;\n            }" if (parenthesized_expression "(iVar4 == 0)" ( (binary_expression "iVar4 == 0" identifier == number_literal) )) (compound_statement "{\n              param_1[5] = 0;\n            }" { (expression_statement "param_1[5] = 0;" (assignment_expression "param_1[5] = 0" (subscript_expression "param_1[5]" identifier [ number_literal ]) = number_literal) ;) })) })) }))) })) (expression_statement "iVar10 = iVar10 + 1;" (assignment_expression "iVar10 = iVar10 + 1" identifier = (binary_expression "iVar10 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(iVar24 != iVar10)" ( (binary_expression "iVar24 != iVar10" identifier != identifier) )) ;) })) (return_statement "return;" return ;) })))
(translation_unit "/* DWARF original prototype: void ColorDecisionListImage._omp_fn.1(anon_struct_28_7_e94a0b20 *\n   param_0) */\n\nvoid __thiscall ColorDecisionListImage__omp_fn_1(void *this)\n\n{\n  undefined *puVar1;\n  int iVar2;\n  int iVar3;\n  undefined4 uVar4;\n  uint uVar5;\n  int iVar6;\n  int iVar7;\n  float *pfVar8;\n  int iVar9;\n  int iVar10;\n  int *piVar11;\n  undefined4 uVar12;\n  double dVar13;\n  double dVar14;\n  double dVar15;\n  float fVar16;\n  float fVar17;\n  float fVar18;\n  float fVar19;\n  double dVar20;\n  double dVar21;\n  double dVar22;\n  double dVar23;\n  int iVar24;\n  \n                    /* WARNING: Load size is inaccurate */\n  iVar9 = *this;\n  iVar10 = *(int *)(iVar9 + 0x1c);\n  iVar2 = (*(code *)PTR_omp_get_num_threads_003fa924)();\n  iVar3 = (*(code *)PTR_omp_get_thread_num_003fa520)();\n  puVar1 = PTR_LAB_003f98e0;\n  if (iVar2 == 0) {\n    trap(7);\n  }\n  iVar24 = iVar10 / iVar2;\n  iVar10 = iVar10 % iVar2;\n  if (iVar3 < iVar10) {\n    iVar24 = iVar24 + 1;\n    iVar10 = 0;\n  }\n  iVar10 = iVar24 * iVar3 + iVar10;\n  iVar24 = iVar24 + iVar10;\n  if (iVar10 < iVar24) {\n    iVar2 = *(int *)((int)this + 0x10);\n    uVar4 = *(undefined4 *)((int)this + 8);\n    uVar12 = *(undefined4 *)((int)this + 4);\n    dVar20 = *(double *)(PTR_s_ltiple_images_003f98e8 + -0x77c0);\n    dVar13 = *(double *)(PTR_LAB_003f98e0 + 0x43d0);\n    dVar21 = *(double *)(PTR_LAB_003f98e0 + 0x43e0);\n    do {\n      if (*(int *)((int)this + 0x14) != 0) {\n        iVar3 = (*(code *)PTR_GetCacheViewAuthenticPixels_003fa664)\n                          (uVar4,0,iVar10,*(undefined4 *)(iVar9 + 0x18),1,uVar12);\n        if (iVar3 == 0) {\n          *(undefined4 *)((int)this + 0x14) = 0;\n        }\n        else {\n          iVar6 = 0;\n          if (0 < *(int *)(iVar9 + 0x18)) {\n            fVar19 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x7750);\n            fVar18 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x774c);\n            fVar17 = *(float *)(PTR_LAB_003f98e0 + 0x4aa8);\n            dVar23 = *(double *)(puVar1 + 0x43d0);\n            dVar22 = *(double *)(puVar1 + 0x43e0);\n            do {\n              iVar7 = *(int *)(iVar9 + 0x2d0);\n              pfVar8 = (float *)(iVar3 + *(int *)(iVar7 + 8) * 4);\n              fVar16 = *pfVar8;\n              dVar14 = (double)*(float *)(iVar3 + *(int *)(iVar7 + 0x14) * 4) * dVar20 +\n                       (double)(fVar16 * fVar19) +\n                       (double)(*(float *)(iVar3 + *(int *)(iVar7 + 0x20) * 4) * fVar18);\n              if (fVar16 < fVar17) {\n                iVar7 = 0;\n                if (NAN(fVar16)) goto LAB_000cb260;\n                iVar7 = 0;\n                if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                  goto LAB_000cb260;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\nLAB_000cb260:\n                iVar7 = iVar7 * 0x58;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 + iVar2 + 0x28) - dVar14) *\n                                *(double *)(*(int *)((int)this + 0xc) + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar3 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar2 + 0x30) - dVar14) *\n                                *(double *)(*(int *)((int)this + 0xc) + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar3 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar13;\n                  if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar2 + 0x38) - dVar14) *\n                                *(double *)(*(int *)((int)this + 0xc) + 0x48) + dVar14);\n              iVar3 = iVar3 + *(int *)(iVar9 + 0x2c0) * 4;\n              iVar6 = iVar6 + 1;\n            } while (iVar6 < *(int *)(iVar9 + 0x18));\n          }\n          iVar3 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003fa510)(uVar4,uVar12);\n          if (iVar3 == 0) {\n            *(undefined4 *)((int)this + 0x14) = 0;\n          }\n          if (*(int *)(iVar9 + 0x328) != 0) {\n            piVar11 = *(int **)((int)this + 0x18);\n            (*(code *)PTR_GOMP_atomic_start_003fa2fc)();\n            uVar5 = piVar11[1] + 1;\n            *piVar11 = (uint)(uVar5 < (uint)piVar11[1]) + *piVar11;\n            piVar11[1] = uVar5;\n            (*(code *)PTR_GOMP_atomic_end_003fa450)();\n            iVar3 = (*(code *)PTR_SetImageProgress_003f9ccc)\n                              (iVar9,PTR_s_ltiple_images_003f98e8 + -0x7ed0,\n                               **(undefined4 **)((int)this + 0x18),\n                               (*(undefined4 **)((int)this + 0x18))[1],0,\n                               *(undefined4 *)(iVar9 + 0x1c));\n            if (iVar3 == 0) {\n              *(undefined4 *)((int)this + 0x14) = 0;\n            }\n          }\n        }\n      }\n      iVar10 = iVar10 + 1;\n    } while (iVar24 != iVar10);\n  }\n  return;\n}\n\n" comment (function_definition "void __thiscall ColorDecisionListImage__omp_fn_1(void *this)\n\n{\n  undefined *puVar1;\n  int iVar2;\n  int iVar3;\n  undefined4 uVar4;\n  uint uVar5;\n  int iVar6;\n  int iVar7;\n  float *pfVar8;\n  int iVar9;\n  int iVar10;\n  int *piVar11;\n  undefined4 uVar12;\n  double dVar13;\n  double dVar14;\n  double dVar15;\n  float fVar16;\n  float fVar17;\n  float fVar18;\n  float fVar19;\n  double dVar20;\n  double dVar21;\n  double dVar22;\n  double dVar23;\n  int iVar24;\n  \n                    /* WARNING: Load size is inaccurate */\n  iVar9 = *this;\n  iVar10 = *(int *)(iVar9 + 0x1c);\n  iVar2 = (*(code *)PTR_omp_get_num_threads_003fa924)();\n  iVar3 = (*(code *)PTR_omp_get_thread_num_003fa520)();\n  puVar1 = PTR_LAB_003f98e0;\n  if (iVar2 == 0) {\n    trap(7);\n  }\n  iVar24 = iVar10 / iVar2;\n  iVar10 = iVar10 % iVar2;\n  if (iVar3 < iVar10) {\n    iVar24 = iVar24 + 1;\n    iVar10 = 0;\n  }\n  iVar10 = iVar24 * iVar3 + iVar10;\n  iVar24 = iVar24 + iVar10;\n  if (iVar10 < iVar24) {\n    iVar2 = *(int *)((int)this + 0x10);\n    uVar4 = *(undefined4 *)((int)this + 8);\n    uVar12 = *(undefined4 *)((int)this + 4);\n    dVar20 = *(double *)(PTR_s_ltiple_images_003f98e8 + -0x77c0);\n    dVar13 = *(double *)(PTR_LAB_003f98e0 + 0x43d0);\n    dVar21 = *(double *)(PTR_LAB_003f98e0 + 0x43e0);\n    do {\n      if (*(int *)((int)this + 0x14) != 0) {\n        iVar3 = (*(code *)PTR_GetCacheViewAuthenticPixels_003fa664)\n                          (uVar4,0,iVar10,*(undefined4 *)(iVar9 + 0x18),1,uVar12);\n        if (iVar3 == 0) {\n          *(undefined4 *)((int)this + 0x14) = 0;\n        }\n        else {\n          iVar6 = 0;\n          if (0 < *(int *)(iVar9 + 0x18)) {\n            fVar19 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x7750);\n            fVar18 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x774c);\n            fVar17 = *(float *)(PTR_LAB_003f98e0 + 0x4aa8);\n            dVar23 = *(double *)(puVar1 + 0x43d0);\n            dVar22 = *(double *)(puVar1 + 0x43e0);\n            do {\n              iVar7 = *(int *)(iVar9 + 0x2d0);\n              pfVar8 = (float *)(iVar3 + *(int *)(iVar7 + 8) * 4);\n              fVar16 = *pfVar8;\n              dVar14 = (double)*(float *)(iVar3 + *(int *)(iVar7 + 0x14) * 4) * dVar20 +\n                       (double)(fVar16 * fVar19) +\n                       (double)(*(float *)(iVar3 + *(int *)(iVar7 + 0x20) * 4) * fVar18);\n              if (fVar16 < fVar17) {\n                iVar7 = 0;\n                if (NAN(fVar16)) goto LAB_000cb260;\n                iVar7 = 0;\n                if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                  goto LAB_000cb260;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\nLAB_000cb260:\n                iVar7 = iVar7 * 0x58;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 + iVar2 + 0x28) - dVar14) *\n                                *(double *)(*(int *)((int)this + 0xc) + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar3 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar2 + 0x30) - dVar14) *\n                                *(double *)(*(int *)((int)this + 0xc) + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar3 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar13;\n                  if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar2 + 0x38) - dVar14) *\n                                *(double *)(*(int *)((int)this + 0xc) + 0x48) + dVar14);\n              iVar3 = iVar3 + *(int *)(iVar9 + 0x2c0) * 4;\n              iVar6 = iVar6 + 1;\n            } while (iVar6 < *(int *)(iVar9 + 0x18));\n          }\n          iVar3 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003fa510)(uVar4,uVar12);\n          if (iVar3 == 0) {\n            *(undefined4 *)((int)this + 0x14) = 0;\n          }\n          if (*(int *)(iVar9 + 0x328) != 0) {\n            piVar11 = *(int **)((int)this + 0x18);\n            (*(code *)PTR_GOMP_atomic_start_003fa2fc)();\n            uVar5 = piVar11[1] + 1;\n            *piVar11 = (uint)(uVar5 < (uint)piVar11[1]) + *piVar11;\n            piVar11[1] = uVar5;\n            (*(code *)PTR_GOMP_atomic_end_003fa450)();\n            iVar3 = (*(code *)PTR_SetImageProgress_003f9ccc)\n                              (iVar9,PTR_s_ltiple_images_003f98e8 + -0x7ed0,\n                               **(undefined4 **)((int)this + 0x18),\n                               (*(undefined4 **)((int)this + 0x18))[1],0,\n                               *(undefined4 *)(iVar9 + 0x1c));\n            if (iVar3 == 0) {\n              *(undefined4 *)((int)this + 0x14) = 0;\n            }\n          }\n        }\n      }\n      iVar10 = iVar10 + 1;\n    } while (iVar24 != iVar10);\n  }\n  return;\n}" primitive_type (ms_call_modifier "__thiscall" __thiscall) (function_declarator "ColorDecisionListImage__omp_fn_1(void *this)" identifier (parameter_list "(void *this)" ( (parameter_declaration "void *this" primitive_type (pointer_declarator "*this" * identifier)) ))) (compound_statement "{\n  undefined *puVar1;\n  int iVar2;\n  int iVar3;\n  undefined4 uVar4;\n  uint uVar5;\n  int iVar6;\n  int iVar7;\n  float *pfVar8;\n  int iVar9;\n  int iVar10;\n  int *piVar11;\n  undefined4 uVar12;\n  double dVar13;\n  double dVar14;\n  double dVar15;\n  float fVar16;\n  float fVar17;\n  float fVar18;\n  float fVar19;\n  double dVar20;\n  double dVar21;\n  double dVar22;\n  double dVar23;\n  int iVar24;\n  \n                    /* WARNING: Load size is inaccurate */\n  iVar9 = *this;\n  iVar10 = *(int *)(iVar9 + 0x1c);\n  iVar2 = (*(code *)PTR_omp_get_num_threads_003fa924)();\n  iVar3 = (*(code *)PTR_omp_get_thread_num_003fa520)();\n  puVar1 = PTR_LAB_003f98e0;\n  if (iVar2 == 0) {\n    trap(7);\n  }\n  iVar24 = iVar10 / iVar2;\n  iVar10 = iVar10 % iVar2;\n  if (iVar3 < iVar10) {\n    iVar24 = iVar24 + 1;\n    iVar10 = 0;\n  }\n  iVar10 = iVar24 * iVar3 + iVar10;\n  iVar24 = iVar24 + iVar10;\n  if (iVar10 < iVar24) {\n    iVar2 = *(int *)((int)this + 0x10);\n    uVar4 = *(undefined4 *)((int)this + 8);\n    uVar12 = *(undefined4 *)((int)this + 4);\n    dVar20 = *(double *)(PTR_s_ltiple_images_003f98e8 + -0x77c0);\n    dVar13 = *(double *)(PTR_LAB_003f98e0 + 0x43d0);\n    dVar21 = *(double *)(PTR_LAB_003f98e0 + 0x43e0);\n    do {\n      if (*(int *)((int)this + 0x14) != 0) {\n        iVar3 = (*(code *)PTR_GetCacheViewAuthenticPixels_003fa664)\n                          (uVar4,0,iVar10,*(undefined4 *)(iVar9 + 0x18),1,uVar12);\n        if (iVar3 == 0) {\n          *(undefined4 *)((int)this + 0x14) = 0;\n        }\n        else {\n          iVar6 = 0;\n          if (0 < *(int *)(iVar9 + 0x18)) {\n            fVar19 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x7750);\n            fVar18 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x774c);\n            fVar17 = *(float *)(PTR_LAB_003f98e0 + 0x4aa8);\n            dVar23 = *(double *)(puVar1 + 0x43d0);\n            dVar22 = *(double *)(puVar1 + 0x43e0);\n            do {\n              iVar7 = *(int *)(iVar9 + 0x2d0);\n              pfVar8 = (float *)(iVar3 + *(int *)(iVar7 + 8) * 4);\n              fVar16 = *pfVar8;\n              dVar14 = (double)*(float *)(iVar3 + *(int *)(iVar7 + 0x14) * 4) * dVar20 +\n                       (double)(fVar16 * fVar19) +\n                       (double)(*(float *)(iVar3 + *(int *)(iVar7 + 0x20) * 4) * fVar18);\n              if (fVar16 < fVar17) {\n                iVar7 = 0;\n                if (NAN(fVar16)) goto LAB_000cb260;\n                iVar7 = 0;\n                if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                  goto LAB_000cb260;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\nLAB_000cb260:\n                iVar7 = iVar7 * 0x58;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 + iVar2 + 0x28) - dVar14) *\n                                *(double *)(*(int *)((int)this + 0xc) + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar3 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar2 + 0x30) - dVar14) *\n                                *(double *)(*(int *)((int)this + 0xc) + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar3 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar13;\n                  if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar2 + 0x38) - dVar14) *\n                                *(double *)(*(int *)((int)this + 0xc) + 0x48) + dVar14);\n              iVar3 = iVar3 + *(int *)(iVar9 + 0x2c0) * 4;\n              iVar6 = iVar6 + 1;\n            } while (iVar6 < *(int *)(iVar9 + 0x18));\n          }\n          iVar3 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003fa510)(uVar4,uVar12);\n          if (iVar3 == 0) {\n            *(undefined4 *)((int)this + 0x14) = 0;\n          }\n          if (*(int *)(iVar9 + 0x328) != 0) {\n            piVar11 = *(int **)((int)this + 0x18);\n            (*(code *)PTR_GOMP_atomic_start_003fa2fc)();\n            uVar5 = piVar11[1] + 1;\n            *piVar11 = (uint)(uVar5 < (uint)piVar11[1]) + *piVar11;\n            piVar11[1] = uVar5;\n            (*(code *)PTR_GOMP_atomic_end_003fa450)();\n            iVar3 = (*(code *)PTR_SetImageProgress_003f9ccc)\n                              (iVar9,PTR_s_ltiple_images_003f98e8 + -0x7ed0,\n                               **(undefined4 **)((int)this + 0x18),\n                               (*(undefined4 **)((int)this + 0x18))[1],0,\n                               *(undefined4 *)(iVar9 + 0x1c));\n            if (iVar3 == 0) {\n              *(undefined4 *)((int)this + 0x14) = 0;\n            }\n          }\n        }\n      }\n      iVar10 = iVar10 + 1;\n    } while (iVar24 != iVar10);\n  }\n  return;\n}" { (declaration "undefined *puVar1;" type_identifier (pointer_declarator "*puVar1" * identifier) ;) (declaration "int iVar2;" primitive_type identifier ;) (declaration "int iVar3;" primitive_type identifier ;) (declaration "undefined4 uVar4;" type_identifier identifier ;) (declaration "uint uVar5;" type_identifier identifier ;) (declaration "int iVar6;" primitive_type identifier ;) (declaration "int iVar7;" primitive_type identifier ;) (declaration "float *pfVar8;" primitive_type (pointer_declarator "*pfVar8" * identifier) ;) (declaration "int iVar9;" primitive_type identifier ;) (declaration "int iVar10;" primitive_type identifier ;) (declaration "int *piVar11;" primitive_type (pointer_declarator "*piVar11" * identifier) ;) (declaration "undefined4 uVar12;" type_identifier identifier ;) (declaration "double dVar13;" primitive_type identifier ;) (declaration "double dVar14;" primitive_type identifier ;) (declaration "double dVar15;" primitive_type identifier ;) (declaration "float fVar16;" primitive_type identifier ;) (declaration "float fVar17;" primitive_type identifier ;) (declaration "float fVar18;" primitive_type identifier ;) (declaration "float fVar19;" primitive_type identifier ;) (declaration "double dVar20;" primitive_type identifier ;) (declaration "double dVar21;" primitive_type identifier ;) (declaration "double dVar22;" primitive_type identifier ;) (declaration "double dVar23;" primitive_type identifier ;) (declaration "int iVar24;" primitive_type identifier ;) comment (expression_statement "iVar9 = *this;" (assignment_expression "iVar9 = *this" identifier = (pointer_expression "*this" * identifier)) ;) (expression_statement "iVar10 = *(int *)(iVar9 + 0x1c);" (assignment_expression "iVar10 = *(int *)(iVar9 + 0x1c)" identifier = (pointer_expression "*(int *)(iVar9 + 0x1c)" * (cast_expression "(int *)(iVar9 + 0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + 0x1c)" ( (binary_expression "iVar9 + 0x1c" identifier + number_literal) ))))) ;) (expression_statement "iVar2 = (*(code *)PTR_omp_get_num_threads_003fa924)();" (assignment_expression "iVar2 = (*(code *)PTR_omp_get_num_threads_003fa924)()" identifier = (call_expression "(*(code *)PTR_omp_get_num_threads_003fa924)()" (parenthesized_expression "(*(code *)PTR_omp_get_num_threads_003fa924)" ( (pointer_expression "*(code *)PTR_omp_get_num_threads_003fa924" * (cast_expression "(code *)PTR_omp_get_num_threads_003fa924" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( )))) ;) (expression_statement "iVar3 = (*(code *)PTR_omp_get_thread_num_003fa520)();" (assignment_expression "iVar3 = (*(code *)PTR_omp_get_thread_num_003fa520)()" identifier = (call_expression "(*(code *)PTR_omp_get_thread_num_003fa520)()" (parenthesized_expression "(*(code *)PTR_omp_get_thread_num_003fa520)" ( (pointer_expression "*(code *)PTR_omp_get_thread_num_003fa520" * (cast_expression "(code *)PTR_omp_get_thread_num_003fa520" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( )))) ;) (expression_statement "puVar1 = PTR_LAB_003f98e0;" (assignment_expression "puVar1 = PTR_LAB_003f98e0" identifier = identifier) ;) (if_statement "if (iVar2 == 0) {\n    trap(7);\n  }" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 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 "iVar24 = iVar10 / iVar2;" (assignment_expression "iVar24 = iVar10 / iVar2" identifier = (binary_expression "iVar10 / iVar2" identifier / identifier)) ;) (expression_statement "iVar10 = iVar10 % iVar2;" (assignment_expression "iVar10 = iVar10 % iVar2" identifier = (binary_expression "iVar10 % iVar2" identifier % identifier)) ;) (if_statement "if (iVar3 < iVar10) {\n    iVar24 = iVar24 + 1;\n    iVar10 = 0;\n  }" if (parenthesized_expression "(iVar3 < iVar10)" ( (binary_expression "iVar3 < iVar10" identifier < identifier) )) (compound_statement "{\n    iVar24 = iVar24 + 1;\n    iVar10 = 0;\n  }" { (expression_statement "iVar24 = iVar24 + 1;" (assignment_expression "iVar24 = iVar24 + 1" identifier = (binary_expression "iVar24 + 1" identifier + number_literal)) ;) (expression_statement "iVar10 = 0;" (assignment_expression "iVar10 = 0" identifier = number_literal) ;) })) (expression_statement "iVar10 = iVar24 * iVar3 + iVar10;" (assignment_expression "iVar10 = iVar24 * iVar3 + iVar10" identifier = (binary_expression "iVar24 * iVar3 + iVar10" (binary_expression "iVar24 * iVar3" identifier * identifier) + identifier)) ;) (expression_statement "iVar24 = iVar24 + iVar10;" (assignment_expression "iVar24 = iVar24 + iVar10" identifier = (binary_expression "iVar24 + iVar10" identifier + identifier)) ;) (if_statement "if (iVar10 < iVar24) {\n    iVar2 = *(int *)((int)this + 0x10);\n    uVar4 = *(undefined4 *)((int)this + 8);\n    uVar12 = *(undefined4 *)((int)this + 4);\n    dVar20 = *(double *)(PTR_s_ltiple_images_003f98e8 + -0x77c0);\n    dVar13 = *(double *)(PTR_LAB_003f98e0 + 0x43d0);\n    dVar21 = *(double *)(PTR_LAB_003f98e0 + 0x43e0);\n    do {\n      if (*(int *)((int)this + 0x14) != 0) {\n        iVar3 = (*(code *)PTR_GetCacheViewAuthenticPixels_003fa664)\n                          (uVar4,0,iVar10,*(undefined4 *)(iVar9 + 0x18),1,uVar12);\n        if (iVar3 == 0) {\n          *(undefined4 *)((int)this + 0x14) = 0;\n        }\n        else {\n          iVar6 = 0;\n          if (0 < *(int *)(iVar9 + 0x18)) {\n            fVar19 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x7750);\n            fVar18 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x774c);\n            fVar17 = *(float *)(PTR_LAB_003f98e0 + 0x4aa8);\n            dVar23 = *(double *)(puVar1 + 0x43d0);\n            dVar22 = *(double *)(puVar1 + 0x43e0);\n            do {\n              iVar7 = *(int *)(iVar9 + 0x2d0);\n              pfVar8 = (float *)(iVar3 + *(int *)(iVar7 + 8) * 4);\n              fVar16 = *pfVar8;\n              dVar14 = (double)*(float *)(iVar3 + *(int *)(iVar7 + 0x14) * 4) * dVar20 +\n                       (double)(fVar16 * fVar19) +\n                       (double)(*(float *)(iVar3 + *(int *)(iVar7 + 0x20) * 4) * fVar18);\n              if (fVar16 < fVar17) {\n                iVar7 = 0;\n                if (NAN(fVar16)) goto LAB_000cb260;\n                iVar7 = 0;\n                if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                  goto LAB_000cb260;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\nLAB_000cb260:\n                iVar7 = iVar7 * 0x58;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 + iVar2 + 0x28) - dVar14) *\n                                *(double *)(*(int *)((int)this + 0xc) + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar3 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar2 + 0x30) - dVar14) *\n                                *(double *)(*(int *)((int)this + 0xc) + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar3 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar13;\n                  if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar2 + 0x38) - dVar14) *\n                                *(double *)(*(int *)((int)this + 0xc) + 0x48) + dVar14);\n              iVar3 = iVar3 + *(int *)(iVar9 + 0x2c0) * 4;\n              iVar6 = iVar6 + 1;\n            } while (iVar6 < *(int *)(iVar9 + 0x18));\n          }\n          iVar3 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003fa510)(uVar4,uVar12);\n          if (iVar3 == 0) {\n            *(undefined4 *)((int)this + 0x14) = 0;\n          }\n          if (*(int *)(iVar9 + 0x328) != 0) {\n            piVar11 = *(int **)((int)this + 0x18);\n            (*(code *)PTR_GOMP_atomic_start_003fa2fc)();\n            uVar5 = piVar11[1] + 1;\n            *piVar11 = (uint)(uVar5 < (uint)piVar11[1]) + *piVar11;\n            piVar11[1] = uVar5;\n            (*(code *)PTR_GOMP_atomic_end_003fa450)();\n            iVar3 = (*(code *)PTR_SetImageProgress_003f9ccc)\n                              (iVar9,PTR_s_ltiple_images_003f98e8 + -0x7ed0,\n                               **(undefined4 **)((int)this + 0x18),\n                               (*(undefined4 **)((int)this + 0x18))[1],0,\n                               *(undefined4 *)(iVar9 + 0x1c));\n            if (iVar3 == 0) {\n              *(undefined4 *)((int)this + 0x14) = 0;\n            }\n          }\n        }\n      }\n      iVar10 = iVar10 + 1;\n    } while (iVar24 != iVar10);\n  }" if (parenthesized_expression "(iVar10 < iVar24)" ( (binary_expression "iVar10 < iVar24" identifier < identifier) )) (compound_statement "{\n    iVar2 = *(int *)((int)this + 0x10);\n    uVar4 = *(undefined4 *)((int)this + 8);\n    uVar12 = *(undefined4 *)((int)this + 4);\n    dVar20 = *(double *)(PTR_s_ltiple_images_003f98e8 + -0x77c0);\n    dVar13 = *(double *)(PTR_LAB_003f98e0 + 0x43d0);\n    dVar21 = *(double *)(PTR_LAB_003f98e0 + 0x43e0);\n    do {\n      if (*(int *)((int)this + 0x14) != 0) {\n        iVar3 = (*(code *)PTR_GetCacheViewAuthenticPixels_003fa664)\n                          (uVar4,0,iVar10,*(undefined4 *)(iVar9 + 0x18),1,uVar12);\n        if (iVar3 == 0) {\n          *(undefined4 *)((int)this + 0x14) = 0;\n        }\n        else {\n          iVar6 = 0;\n          if (0 < *(int *)(iVar9 + 0x18)) {\n            fVar19 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x7750);\n            fVar18 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x774c);\n            fVar17 = *(float *)(PTR_LAB_003f98e0 + 0x4aa8);\n            dVar23 = *(double *)(puVar1 + 0x43d0);\n            dVar22 = *(double *)(puVar1 + 0x43e0);\n            do {\n              iVar7 = *(int *)(iVar9 + 0x2d0);\n              pfVar8 = (float *)(iVar3 + *(int *)(iVar7 + 8) * 4);\n              fVar16 = *pfVar8;\n              dVar14 = (double)*(float *)(iVar3 + *(int *)(iVar7 + 0x14) * 4) * dVar20 +\n                       (double)(fVar16 * fVar19) +\n                       (double)(*(float *)(iVar3 + *(int *)(iVar7 + 0x20) * 4) * fVar18);\n              if (fVar16 < fVar17) {\n                iVar7 = 0;\n                if (NAN(fVar16)) goto LAB_000cb260;\n                iVar7 = 0;\n                if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                  goto LAB_000cb260;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\nLAB_000cb260:\n                iVar7 = iVar7 * 0x58;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 + iVar2 + 0x28) - dVar14) *\n                                *(double *)(*(int *)((int)this + 0xc) + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar3 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar2 + 0x30) - dVar14) *\n                                *(double *)(*(int *)((int)this + 0xc) + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar3 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar13;\n                  if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar2 + 0x38) - dVar14) *\n                                *(double *)(*(int *)((int)this + 0xc) + 0x48) + dVar14);\n              iVar3 = iVar3 + *(int *)(iVar9 + 0x2c0) * 4;\n              iVar6 = iVar6 + 1;\n            } while (iVar6 < *(int *)(iVar9 + 0x18));\n          }\n          iVar3 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003fa510)(uVar4,uVar12);\n          if (iVar3 == 0) {\n            *(undefined4 *)((int)this + 0x14) = 0;\n          }\n          if (*(int *)(iVar9 + 0x328) != 0) {\n            piVar11 = *(int **)((int)this + 0x18);\n            (*(code *)PTR_GOMP_atomic_start_003fa2fc)();\n            uVar5 = piVar11[1] + 1;\n            *piVar11 = (uint)(uVar5 < (uint)piVar11[1]) + *piVar11;\n            piVar11[1] = uVar5;\n            (*(code *)PTR_GOMP_atomic_end_003fa450)();\n            iVar3 = (*(code *)PTR_SetImageProgress_003f9ccc)\n                              (iVar9,PTR_s_ltiple_images_003f98e8 + -0x7ed0,\n                               **(undefined4 **)((int)this + 0x18),\n                               (*(undefined4 **)((int)this + 0x18))[1],0,\n                               *(undefined4 *)(iVar9 + 0x1c));\n            if (iVar3 == 0) {\n              *(undefined4 *)((int)this + 0x14) = 0;\n            }\n          }\n        }\n      }\n      iVar10 = iVar10 + 1;\n    } while (iVar24 != iVar10);\n  }" { (expression_statement "iVar2 = *(int *)((int)this + 0x10);" (assignment_expression "iVar2 = *(int *)((int)this + 0x10)" identifier = (pointer_expression "*(int *)((int)this + 0x10)" * (cast_expression "(int *)((int)this + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)this + 0x10)" ( (binary_expression "(int)this + 0x10" (cast_expression "(int)this" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) ;) (expression_statement "uVar4 = *(undefined4 *)((int)this + 8);" (assignment_expression "uVar4 = *(undefined4 *)((int)this + 8)" identifier = (pointer_expression "*(undefined4 *)((int)this + 8)" * (cast_expression "(undefined4 *)((int)this + 8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)this + 8)" ( (binary_expression "(int)this + 8" (cast_expression "(int)this" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) ;) (expression_statement "uVar12 = *(undefined4 *)((int)this + 4);" (assignment_expression "uVar12 = *(undefined4 *)((int)this + 4)" identifier = (pointer_expression "*(undefined4 *)((int)this + 4)" * (cast_expression "(undefined4 *)((int)this + 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)this + 4)" ( (binary_expression "(int)this + 4" (cast_expression "(int)this" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) ;) (expression_statement "dVar20 = *(double *)(PTR_s_ltiple_images_003f98e8 + -0x77c0);" (assignment_expression "dVar20 = *(double *)(PTR_s_ltiple_images_003f98e8 + -0x77c0)" identifier = (pointer_expression "*(double *)(PTR_s_ltiple_images_003f98e8 + -0x77c0)" * (cast_expression "(double *)(PTR_s_ltiple_images_003f98e8 + -0x77c0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_s_ltiple_images_003f98e8 + -0x77c0)" ( (binary_expression "PTR_s_ltiple_images_003f98e8 + -0x77c0" identifier + number_literal) ))))) ;) (expression_statement "dVar13 = *(double *)(PTR_LAB_003f98e0 + 0x43d0);" (assignment_expression "dVar13 = *(double *)(PTR_LAB_003f98e0 + 0x43d0)" identifier = (pointer_expression "*(double *)(PTR_LAB_003f98e0 + 0x43d0)" * (cast_expression "(double *)(PTR_LAB_003f98e0 + 0x43d0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_003f98e0 + 0x43d0)" ( (binary_expression "PTR_LAB_003f98e0 + 0x43d0" identifier + number_literal) ))))) ;) (expression_statement "dVar21 = *(double *)(PTR_LAB_003f98e0 + 0x43e0);" (assignment_expression "dVar21 = *(double *)(PTR_LAB_003f98e0 + 0x43e0)" identifier = (pointer_expression "*(double *)(PTR_LAB_003f98e0 + 0x43e0)" * (cast_expression "(double *)(PTR_LAB_003f98e0 + 0x43e0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_003f98e0 + 0x43e0)" ( (binary_expression "PTR_LAB_003f98e0 + 0x43e0" identifier + number_literal) ))))) ;) (do_statement "do {\n      if (*(int *)((int)this + 0x14) != 0) {\n        iVar3 = (*(code *)PTR_GetCacheViewAuthenticPixels_003fa664)\n                          (uVar4,0,iVar10,*(undefined4 *)(iVar9 + 0x18),1,uVar12);\n        if (iVar3 == 0) {\n          *(undefined4 *)((int)this + 0x14) = 0;\n        }\n        else {\n          iVar6 = 0;\n          if (0 < *(int *)(iVar9 + 0x18)) {\n            fVar19 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x7750);\n            fVar18 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x774c);\n            fVar17 = *(float *)(PTR_LAB_003f98e0 + 0x4aa8);\n            dVar23 = *(double *)(puVar1 + 0x43d0);\n            dVar22 = *(double *)(puVar1 + 0x43e0);\n            do {\n              iVar7 = *(int *)(iVar9 + 0x2d0);\n              pfVar8 = (float *)(iVar3 + *(int *)(iVar7 + 8) * 4);\n              fVar16 = *pfVar8;\n              dVar14 = (double)*(float *)(iVar3 + *(int *)(iVar7 + 0x14) * 4) * dVar20 +\n                       (double)(fVar16 * fVar19) +\n                       (double)(*(float *)(iVar3 + *(int *)(iVar7 + 0x20) * 4) * fVar18);\n              if (fVar16 < fVar17) {\n                iVar7 = 0;\n                if (NAN(fVar16)) goto LAB_000cb260;\n                iVar7 = 0;\n                if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                  goto LAB_000cb260;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\nLAB_000cb260:\n                iVar7 = iVar7 * 0x58;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 + iVar2 + 0x28) - dVar14) *\n                                *(double *)(*(int *)((int)this + 0xc) + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar3 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar2 + 0x30) - dVar14) *\n                                *(double *)(*(int *)((int)this + 0xc) + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar3 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar13;\n                  if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar2 + 0x38) - dVar14) *\n                                *(double *)(*(int *)((int)this + 0xc) + 0x48) + dVar14);\n              iVar3 = iVar3 + *(int *)(iVar9 + 0x2c0) * 4;\n              iVar6 = iVar6 + 1;\n            } while (iVar6 < *(int *)(iVar9 + 0x18));\n          }\n          iVar3 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003fa510)(uVar4,uVar12);\n          if (iVar3 == 0) {\n            *(undefined4 *)((int)this + 0x14) = 0;\n          }\n          if (*(int *)(iVar9 + 0x328) != 0) {\n            piVar11 = *(int **)((int)this + 0x18);\n            (*(code *)PTR_GOMP_atomic_start_003fa2fc)();\n            uVar5 = piVar11[1] + 1;\n            *piVar11 = (uint)(uVar5 < (uint)piVar11[1]) + *piVar11;\n            piVar11[1] = uVar5;\n            (*(code *)PTR_GOMP_atomic_end_003fa450)();\n            iVar3 = (*(code *)PTR_SetImageProgress_003f9ccc)\n                              (iVar9,PTR_s_ltiple_images_003f98e8 + -0x7ed0,\n                               **(undefined4 **)((int)this + 0x18),\n                               (*(undefined4 **)((int)this + 0x18))[1],0,\n                               *(undefined4 *)(iVar9 + 0x1c));\n            if (iVar3 == 0) {\n              *(undefined4 *)((int)this + 0x14) = 0;\n            }\n          }\n        }\n      }\n      iVar10 = iVar10 + 1;\n    } while (iVar24 != iVar10);" do (compound_statement "{\n      if (*(int *)((int)this + 0x14) != 0) {\n        iVar3 = (*(code *)PTR_GetCacheViewAuthenticPixels_003fa664)\n                          (uVar4,0,iVar10,*(undefined4 *)(iVar9 + 0x18),1,uVar12);\n        if (iVar3 == 0) {\n          *(undefined4 *)((int)this + 0x14) = 0;\n        }\n        else {\n          iVar6 = 0;\n          if (0 < *(int *)(iVar9 + 0x18)) {\n            fVar19 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x7750);\n            fVar18 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x774c);\n            fVar17 = *(float *)(PTR_LAB_003f98e0 + 0x4aa8);\n            dVar23 = *(double *)(puVar1 + 0x43d0);\n            dVar22 = *(double *)(puVar1 + 0x43e0);\n            do {\n              iVar7 = *(int *)(iVar9 + 0x2d0);\n              pfVar8 = (float *)(iVar3 + *(int *)(iVar7 + 8) * 4);\n              fVar16 = *pfVar8;\n              dVar14 = (double)*(float *)(iVar3 + *(int *)(iVar7 + 0x14) * 4) * dVar20 +\n                       (double)(fVar16 * fVar19) +\n                       (double)(*(float *)(iVar3 + *(int *)(iVar7 + 0x20) * 4) * fVar18);\n              if (fVar16 < fVar17) {\n                iVar7 = 0;\n                if (NAN(fVar16)) goto LAB_000cb260;\n                iVar7 = 0;\n                if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                  goto LAB_000cb260;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\nLAB_000cb260:\n                iVar7 = iVar7 * 0x58;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 + iVar2 + 0x28) - dVar14) *\n                                *(double *)(*(int *)((int)this + 0xc) + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar3 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar2 + 0x30) - dVar14) *\n                                *(double *)(*(int *)((int)this + 0xc) + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar3 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar13;\n                  if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar2 + 0x38) - dVar14) *\n                                *(double *)(*(int *)((int)this + 0xc) + 0x48) + dVar14);\n              iVar3 = iVar3 + *(int *)(iVar9 + 0x2c0) * 4;\n              iVar6 = iVar6 + 1;\n            } while (iVar6 < *(int *)(iVar9 + 0x18));\n          }\n          iVar3 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003fa510)(uVar4,uVar12);\n          if (iVar3 == 0) {\n            *(undefined4 *)((int)this + 0x14) = 0;\n          }\n          if (*(int *)(iVar9 + 0x328) != 0) {\n            piVar11 = *(int **)((int)this + 0x18);\n            (*(code *)PTR_GOMP_atomic_start_003fa2fc)();\n            uVar5 = piVar11[1] + 1;\n            *piVar11 = (uint)(uVar5 < (uint)piVar11[1]) + *piVar11;\n            piVar11[1] = uVar5;\n            (*(code *)PTR_GOMP_atomic_end_003fa450)();\n            iVar3 = (*(code *)PTR_SetImageProgress_003f9ccc)\n                              (iVar9,PTR_s_ltiple_images_003f98e8 + -0x7ed0,\n                               **(undefined4 **)((int)this + 0x18),\n                               (*(undefined4 **)((int)this + 0x18))[1],0,\n                               *(undefined4 *)(iVar9 + 0x1c));\n            if (iVar3 == 0) {\n              *(undefined4 *)((int)this + 0x14) = 0;\n            }\n          }\n        }\n      }\n      iVar10 = iVar10 + 1;\n    }" { (if_statement "if (*(int *)((int)this + 0x14) != 0) {\n        iVar3 = (*(code *)PTR_GetCacheViewAuthenticPixels_003fa664)\n                          (uVar4,0,iVar10,*(undefined4 *)(iVar9 + 0x18),1,uVar12);\n        if (iVar3 == 0) {\n          *(undefined4 *)((int)this + 0x14) = 0;\n        }\n        else {\n          iVar6 = 0;\n          if (0 < *(int *)(iVar9 + 0x18)) {\n            fVar19 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x7750);\n            fVar18 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x774c);\n            fVar17 = *(float *)(PTR_LAB_003f98e0 + 0x4aa8);\n            dVar23 = *(double *)(puVar1 + 0x43d0);\n            dVar22 = *(double *)(puVar1 + 0x43e0);\n            do {\n              iVar7 = *(int *)(iVar9 + 0x2d0);\n              pfVar8 = (float *)(iVar3 + *(int *)(iVar7 + 8) * 4);\n              fVar16 = *pfVar8;\n              dVar14 = (double)*(float *)(iVar3 + *(int *)(iVar7 + 0x14) * 4) * dVar20 +\n                       (double)(fVar16 * fVar19) +\n                       (double)(*(float *)(iVar3 + *(int *)(iVar7 + 0x20) * 4) * fVar18);\n              if (fVar16 < fVar17) {\n                iVar7 = 0;\n                if (NAN(fVar16)) goto LAB_000cb260;\n                iVar7 = 0;\n                if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                  goto LAB_000cb260;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\nLAB_000cb260:\n                iVar7 = iVar7 * 0x58;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 + iVar2 + 0x28) - dVar14) *\n                                *(double *)(*(int *)((int)this + 0xc) + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar3 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar2 + 0x30) - dVar14) *\n                                *(double *)(*(int *)((int)this + 0xc) + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar3 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar13;\n                  if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar2 + 0x38) - dVar14) *\n                                *(double *)(*(int *)((int)this + 0xc) + 0x48) + dVar14);\n              iVar3 = iVar3 + *(int *)(iVar9 + 0x2c0) * 4;\n              iVar6 = iVar6 + 1;\n            } while (iVar6 < *(int *)(iVar9 + 0x18));\n          }\n          iVar3 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003fa510)(uVar4,uVar12);\n          if (iVar3 == 0) {\n            *(undefined4 *)((int)this + 0x14) = 0;\n          }\n          if (*(int *)(iVar9 + 0x328) != 0) {\n            piVar11 = *(int **)((int)this + 0x18);\n            (*(code *)PTR_GOMP_atomic_start_003fa2fc)();\n            uVar5 = piVar11[1] + 1;\n            *piVar11 = (uint)(uVar5 < (uint)piVar11[1]) + *piVar11;\n            piVar11[1] = uVar5;\n            (*(code *)PTR_GOMP_atomic_end_003fa450)();\n            iVar3 = (*(code *)PTR_SetImageProgress_003f9ccc)\n                              (iVar9,PTR_s_ltiple_images_003f98e8 + -0x7ed0,\n                               **(undefined4 **)((int)this + 0x18),\n                               (*(undefined4 **)((int)this + 0x18))[1],0,\n                               *(undefined4 *)(iVar9 + 0x1c));\n            if (iVar3 == 0) {\n              *(undefined4 *)((int)this + 0x14) = 0;\n            }\n          }\n        }\n      }" if (parenthesized_expression "(*(int *)((int)this + 0x14) != 0)" ( (binary_expression "*(int *)((int)this + 0x14) != 0" (pointer_expression "*(int *)((int)this + 0x14)" * (cast_expression "(int *)((int)this + 0x14)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)this + 0x14)" ( (binary_expression "(int)this + 0x14" (cast_expression "(int)this" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) != number_literal) )) (compound_statement "{\n        iVar3 = (*(code *)PTR_GetCacheViewAuthenticPixels_003fa664)\n                          (uVar4,0,iVar10,*(undefined4 *)(iVar9 + 0x18),1,uVar12);\n        if (iVar3 == 0) {\n          *(undefined4 *)((int)this + 0x14) = 0;\n        }\n        else {\n          iVar6 = 0;\n          if (0 < *(int *)(iVar9 + 0x18)) {\n            fVar19 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x7750);\n            fVar18 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x774c);\n            fVar17 = *(float *)(PTR_LAB_003f98e0 + 0x4aa8);\n            dVar23 = *(double *)(puVar1 + 0x43d0);\n            dVar22 = *(double *)(puVar1 + 0x43e0);\n            do {\n              iVar7 = *(int *)(iVar9 + 0x2d0);\n              pfVar8 = (float *)(iVar3 + *(int *)(iVar7 + 8) * 4);\n              fVar16 = *pfVar8;\n              dVar14 = (double)*(float *)(iVar3 + *(int *)(iVar7 + 0x14) * 4) * dVar20 +\n                       (double)(fVar16 * fVar19) +\n                       (double)(*(float *)(iVar3 + *(int *)(iVar7 + 0x20) * 4) * fVar18);\n              if (fVar16 < fVar17) {\n                iVar7 = 0;\n                if (NAN(fVar16)) goto LAB_000cb260;\n                iVar7 = 0;\n                if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                  goto LAB_000cb260;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\nLAB_000cb260:\n                iVar7 = iVar7 * 0x58;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 + iVar2 + 0x28) - dVar14) *\n                                *(double *)(*(int *)((int)this + 0xc) + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar3 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar2 + 0x30) - dVar14) *\n                                *(double *)(*(int *)((int)this + 0xc) + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar3 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar13;\n                  if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar2 + 0x38) - dVar14) *\n                                *(double *)(*(int *)((int)this + 0xc) + 0x48) + dVar14);\n              iVar3 = iVar3 + *(int *)(iVar9 + 0x2c0) * 4;\n              iVar6 = iVar6 + 1;\n            } while (iVar6 < *(int *)(iVar9 + 0x18));\n          }\n          iVar3 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003fa510)(uVar4,uVar12);\n          if (iVar3 == 0) {\n            *(undefined4 *)((int)this + 0x14) = 0;\n          }\n          if (*(int *)(iVar9 + 0x328) != 0) {\n            piVar11 = *(int **)((int)this + 0x18);\n            (*(code *)PTR_GOMP_atomic_start_003fa2fc)();\n            uVar5 = piVar11[1] + 1;\n            *piVar11 = (uint)(uVar5 < (uint)piVar11[1]) + *piVar11;\n            piVar11[1] = uVar5;\n            (*(code *)PTR_GOMP_atomic_end_003fa450)();\n            iVar3 = (*(code *)PTR_SetImageProgress_003f9ccc)\n                              (iVar9,PTR_s_ltiple_images_003f98e8 + -0x7ed0,\n                               **(undefined4 **)((int)this + 0x18),\n                               (*(undefined4 **)((int)this + 0x18))[1],0,\n                               *(undefined4 *)(iVar9 + 0x1c));\n            if (iVar3 == 0) {\n              *(undefined4 *)((int)this + 0x14) = 0;\n            }\n          }\n        }\n      }" { (expression_statement "iVar3 = (*(code *)PTR_GetCacheViewAuthenticPixels_003fa664)\n                          (uVar4,0,iVar10,*(undefined4 *)(iVar9 + 0x18),1,uVar12);" (assignment_expression "iVar3 = (*(code *)PTR_GetCacheViewAuthenticPixels_003fa664)\n                          (uVar4,0,iVar10,*(undefined4 *)(iVar9 + 0x18),1,uVar12)" identifier = (call_expression "(*(code *)PTR_GetCacheViewAuthenticPixels_003fa664)\n                          (uVar4,0,iVar10,*(undefined4 *)(iVar9 + 0x18),1,uVar12)" (parenthesized_expression "(*(code *)PTR_GetCacheViewAuthenticPixels_003fa664)" ( (pointer_expression "*(code *)PTR_GetCacheViewAuthenticPixels_003fa664" * (cast_expression "(code *)PTR_GetCacheViewAuthenticPixels_003fa664" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(uVar4,0,iVar10,*(undefined4 *)(iVar9 + 0x18),1,uVar12)" ( identifier , number_literal , identifier , (pointer_expression "*(undefined4 *)(iVar9 + 0x18)" * (cast_expression "(undefined4 *)(iVar9 + 0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + 0x18)" ( (binary_expression "iVar9 + 0x18" identifier + number_literal) )))) , number_literal , identifier )))) ;) (if_statement "if (iVar3 == 0) {\n          *(undefined4 *)((int)this + 0x14) = 0;\n        }\n        else {\n          iVar6 = 0;\n          if (0 < *(int *)(iVar9 + 0x18)) {\n            fVar19 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x7750);\n            fVar18 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x774c);\n            fVar17 = *(float *)(PTR_LAB_003f98e0 + 0x4aa8);\n            dVar23 = *(double *)(puVar1 + 0x43d0);\n            dVar22 = *(double *)(puVar1 + 0x43e0);\n            do {\n              iVar7 = *(int *)(iVar9 + 0x2d0);\n              pfVar8 = (float *)(iVar3 + *(int *)(iVar7 + 8) * 4);\n              fVar16 = *pfVar8;\n              dVar14 = (double)*(float *)(iVar3 + *(int *)(iVar7 + 0x14) * 4) * dVar20 +\n                       (double)(fVar16 * fVar19) +\n                       (double)(*(float *)(iVar3 + *(int *)(iVar7 + 0x20) * 4) * fVar18);\n              if (fVar16 < fVar17) {\n                iVar7 = 0;\n                if (NAN(fVar16)) goto LAB_000cb260;\n                iVar7 = 0;\n                if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                  goto LAB_000cb260;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\nLAB_000cb260:\n                iVar7 = iVar7 * 0x58;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 + iVar2 + 0x28) - dVar14) *\n                                *(double *)(*(int *)((int)this + 0xc) + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar3 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar2 + 0x30) - dVar14) *\n                                *(double *)(*(int *)((int)this + 0xc) + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar3 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar13;\n                  if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar2 + 0x38) - dVar14) *\n                                *(double *)(*(int *)((int)this + 0xc) + 0x48) + dVar14);\n              iVar3 = iVar3 + *(int *)(iVar9 + 0x2c0) * 4;\n              iVar6 = iVar6 + 1;\n            } while (iVar6 < *(int *)(iVar9 + 0x18));\n          }\n          iVar3 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003fa510)(uVar4,uVar12);\n          if (iVar3 == 0) {\n            *(undefined4 *)((int)this + 0x14) = 0;\n          }\n          if (*(int *)(iVar9 + 0x328) != 0) {\n            piVar11 = *(int **)((int)this + 0x18);\n            (*(code *)PTR_GOMP_atomic_start_003fa2fc)();\n            uVar5 = piVar11[1] + 1;\n            *piVar11 = (uint)(uVar5 < (uint)piVar11[1]) + *piVar11;\n            piVar11[1] = uVar5;\n            (*(code *)PTR_GOMP_atomic_end_003fa450)();\n            iVar3 = (*(code *)PTR_SetImageProgress_003f9ccc)\n                              (iVar9,PTR_s_ltiple_images_003f98e8 + -0x7ed0,\n                               **(undefined4 **)((int)this + 0x18),\n                               (*(undefined4 **)((int)this + 0x18))[1],0,\n                               *(undefined4 *)(iVar9 + 0x1c));\n            if (iVar3 == 0) {\n              *(undefined4 *)((int)this + 0x14) = 0;\n            }\n          }\n        }" if (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) (compound_statement "{\n          *(undefined4 *)((int)this + 0x14) = 0;\n        }" { (expression_statement "*(undefined4 *)((int)this + 0x14) = 0;" (assignment_expression "*(undefined4 *)((int)this + 0x14) = 0" (pointer_expression "*(undefined4 *)((int)this + 0x14)" * (cast_expression "(undefined4 *)((int)this + 0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)this + 0x14)" ( (binary_expression "(int)this + 0x14" (cast_expression "(int)this" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = number_literal) ;) }) (else_clause "else {\n          iVar6 = 0;\n          if (0 < *(int *)(iVar9 + 0x18)) {\n            fVar19 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x7750);\n            fVar18 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x774c);\n            fVar17 = *(float *)(PTR_LAB_003f98e0 + 0x4aa8);\n            dVar23 = *(double *)(puVar1 + 0x43d0);\n            dVar22 = *(double *)(puVar1 + 0x43e0);\n            do {\n              iVar7 = *(int *)(iVar9 + 0x2d0);\n              pfVar8 = (float *)(iVar3 + *(int *)(iVar7 + 8) * 4);\n              fVar16 = *pfVar8;\n              dVar14 = (double)*(float *)(iVar3 + *(int *)(iVar7 + 0x14) * 4) * dVar20 +\n                       (double)(fVar16 * fVar19) +\n                       (double)(*(float *)(iVar3 + *(int *)(iVar7 + 0x20) * 4) * fVar18);\n              if (fVar16 < fVar17) {\n                iVar7 = 0;\n                if (NAN(fVar16)) goto LAB_000cb260;\n                iVar7 = 0;\n                if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                  goto LAB_000cb260;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\nLAB_000cb260:\n                iVar7 = iVar7 * 0x58;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 + iVar2 + 0x28) - dVar14) *\n                                *(double *)(*(int *)((int)this + 0xc) + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar3 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar2 + 0x30) - dVar14) *\n                                *(double *)(*(int *)((int)this + 0xc) + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar3 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar13;\n                  if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar2 + 0x38) - dVar14) *\n                                *(double *)(*(int *)((int)this + 0xc) + 0x48) + dVar14);\n              iVar3 = iVar3 + *(int *)(iVar9 + 0x2c0) * 4;\n              iVar6 = iVar6 + 1;\n            } while (iVar6 < *(int *)(iVar9 + 0x18));\n          }\n          iVar3 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003fa510)(uVar4,uVar12);\n          if (iVar3 == 0) {\n            *(undefined4 *)((int)this + 0x14) = 0;\n          }\n          if (*(int *)(iVar9 + 0x328) != 0) {\n            piVar11 = *(int **)((int)this + 0x18);\n            (*(code *)PTR_GOMP_atomic_start_003fa2fc)();\n            uVar5 = piVar11[1] + 1;\n            *piVar11 = (uint)(uVar5 < (uint)piVar11[1]) + *piVar11;\n            piVar11[1] = uVar5;\n            (*(code *)PTR_GOMP_atomic_end_003fa450)();\n            iVar3 = (*(code *)PTR_SetImageProgress_003f9ccc)\n                              (iVar9,PTR_s_ltiple_images_003f98e8 + -0x7ed0,\n                               **(undefined4 **)((int)this + 0x18),\n                               (*(undefined4 **)((int)this + 0x18))[1],0,\n                               *(undefined4 *)(iVar9 + 0x1c));\n            if (iVar3 == 0) {\n              *(undefined4 *)((int)this + 0x14) = 0;\n            }\n          }\n        }" else (compound_statement "{\n          iVar6 = 0;\n          if (0 < *(int *)(iVar9 + 0x18)) {\n            fVar19 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x7750);\n            fVar18 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x774c);\n            fVar17 = *(float *)(PTR_LAB_003f98e0 + 0x4aa8);\n            dVar23 = *(double *)(puVar1 + 0x43d0);\n            dVar22 = *(double *)(puVar1 + 0x43e0);\n            do {\n              iVar7 = *(int *)(iVar9 + 0x2d0);\n              pfVar8 = (float *)(iVar3 + *(int *)(iVar7 + 8) * 4);\n              fVar16 = *pfVar8;\n              dVar14 = (double)*(float *)(iVar3 + *(int *)(iVar7 + 0x14) * 4) * dVar20 +\n                       (double)(fVar16 * fVar19) +\n                       (double)(*(float *)(iVar3 + *(int *)(iVar7 + 0x20) * 4) * fVar18);\n              if (fVar16 < fVar17) {\n                iVar7 = 0;\n                if (NAN(fVar16)) goto LAB_000cb260;\n                iVar7 = 0;\n                if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                  goto LAB_000cb260;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\nLAB_000cb260:\n                iVar7 = iVar7 * 0x58;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 + iVar2 + 0x28) - dVar14) *\n                                *(double *)(*(int *)((int)this + 0xc) + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar3 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar2 + 0x30) - dVar14) *\n                                *(double *)(*(int *)((int)this + 0xc) + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar3 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar13;\n                  if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar2 + 0x38) - dVar14) *\n                                *(double *)(*(int *)((int)this + 0xc) + 0x48) + dVar14);\n              iVar3 = iVar3 + *(int *)(iVar9 + 0x2c0) * 4;\n              iVar6 = iVar6 + 1;\n            } while (iVar6 < *(int *)(iVar9 + 0x18));\n          }\n          iVar3 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003fa510)(uVar4,uVar12);\n          if (iVar3 == 0) {\n            *(undefined4 *)((int)this + 0x14) = 0;\n          }\n          if (*(int *)(iVar9 + 0x328) != 0) {\n            piVar11 = *(int **)((int)this + 0x18);\n            (*(code *)PTR_GOMP_atomic_start_003fa2fc)();\n            uVar5 = piVar11[1] + 1;\n            *piVar11 = (uint)(uVar5 < (uint)piVar11[1]) + *piVar11;\n            piVar11[1] = uVar5;\n            (*(code *)PTR_GOMP_atomic_end_003fa450)();\n            iVar3 = (*(code *)PTR_SetImageProgress_003f9ccc)\n                              (iVar9,PTR_s_ltiple_images_003f98e8 + -0x7ed0,\n                               **(undefined4 **)((int)this + 0x18),\n                               (*(undefined4 **)((int)this + 0x18))[1],0,\n                               *(undefined4 *)(iVar9 + 0x1c));\n            if (iVar3 == 0) {\n              *(undefined4 *)((int)this + 0x14) = 0;\n            }\n          }\n        }" { (expression_statement "iVar6 = 0;" (assignment_expression "iVar6 = 0" identifier = number_literal) ;) (if_statement "if (0 < *(int *)(iVar9 + 0x18)) {\n            fVar19 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x7750);\n            fVar18 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x774c);\n            fVar17 = *(float *)(PTR_LAB_003f98e0 + 0x4aa8);\n            dVar23 = *(double *)(puVar1 + 0x43d0);\n            dVar22 = *(double *)(puVar1 + 0x43e0);\n            do {\n              iVar7 = *(int *)(iVar9 + 0x2d0);\n              pfVar8 = (float *)(iVar3 + *(int *)(iVar7 + 8) * 4);\n              fVar16 = *pfVar8;\n              dVar14 = (double)*(float *)(iVar3 + *(int *)(iVar7 + 0x14) * 4) * dVar20 +\n                       (double)(fVar16 * fVar19) +\n                       (double)(*(float *)(iVar3 + *(int *)(iVar7 + 0x20) * 4) * fVar18);\n              if (fVar16 < fVar17) {\n                iVar7 = 0;\n                if (NAN(fVar16)) goto LAB_000cb260;\n                iVar7 = 0;\n                if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                  goto LAB_000cb260;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\nLAB_000cb260:\n                iVar7 = iVar7 * 0x58;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 + iVar2 + 0x28) - dVar14) *\n                                *(double *)(*(int *)((int)this + 0xc) + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar3 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar2 + 0x30) - dVar14) *\n                                *(double *)(*(int *)((int)this + 0xc) + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar3 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar13;\n                  if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar2 + 0x38) - dVar14) *\n                                *(double *)(*(int *)((int)this + 0xc) + 0x48) + dVar14);\n              iVar3 = iVar3 + *(int *)(iVar9 + 0x2c0) * 4;\n              iVar6 = iVar6 + 1;\n            } while (iVar6 < *(int *)(iVar9 + 0x18));\n          }" if (parenthesized_expression "(0 < *(int *)(iVar9 + 0x18))" ( (binary_expression "0 < *(int *)(iVar9 + 0x18)" number_literal < (pointer_expression "*(int *)(iVar9 + 0x18)" * (cast_expression "(int *)(iVar9 + 0x18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + 0x18)" ( (binary_expression "iVar9 + 0x18" identifier + number_literal) ))))) )) (compound_statement "{\n            fVar19 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x7750);\n            fVar18 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x774c);\n            fVar17 = *(float *)(PTR_LAB_003f98e0 + 0x4aa8);\n            dVar23 = *(double *)(puVar1 + 0x43d0);\n            dVar22 = *(double *)(puVar1 + 0x43e0);\n            do {\n              iVar7 = *(int *)(iVar9 + 0x2d0);\n              pfVar8 = (float *)(iVar3 + *(int *)(iVar7 + 8) * 4);\n              fVar16 = *pfVar8;\n              dVar14 = (double)*(float *)(iVar3 + *(int *)(iVar7 + 0x14) * 4) * dVar20 +\n                       (double)(fVar16 * fVar19) +\n                       (double)(*(float *)(iVar3 + *(int *)(iVar7 + 0x20) * 4) * fVar18);\n              if (fVar16 < fVar17) {\n                iVar7 = 0;\n                if (NAN(fVar16)) goto LAB_000cb260;\n                iVar7 = 0;\n                if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                  goto LAB_000cb260;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\nLAB_000cb260:\n                iVar7 = iVar7 * 0x58;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 + iVar2 + 0x28) - dVar14) *\n                                *(double *)(*(int *)((int)this + 0xc) + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar3 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar2 + 0x30) - dVar14) *\n                                *(double *)(*(int *)((int)this + 0xc) + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar3 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar13;\n                  if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar2 + 0x38) - dVar14) *\n                                *(double *)(*(int *)((int)this + 0xc) + 0x48) + dVar14);\n              iVar3 = iVar3 + *(int *)(iVar9 + 0x2c0) * 4;\n              iVar6 = iVar6 + 1;\n            } while (iVar6 < *(int *)(iVar9 + 0x18));\n          }" { (expression_statement "fVar19 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x7750);" (assignment_expression "fVar19 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x7750)" identifier = (pointer_expression "*(float *)(PTR_s_ltiple_images_003f98e8 + -0x7750)" * (cast_expression "(float *)(PTR_s_ltiple_images_003f98e8 + -0x7750)" ( (type_descriptor "float *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_s_ltiple_images_003f98e8 + -0x7750)" ( (binary_expression "PTR_s_ltiple_images_003f98e8 + -0x7750" identifier + number_literal) ))))) ;) (expression_statement "fVar18 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x774c);" (assignment_expression "fVar18 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x774c)" identifier = (pointer_expression "*(float *)(PTR_s_ltiple_images_003f98e8 + -0x774c)" * (cast_expression "(float *)(PTR_s_ltiple_images_003f98e8 + -0x774c)" ( (type_descriptor "float *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_s_ltiple_images_003f98e8 + -0x774c)" ( (binary_expression "PTR_s_ltiple_images_003f98e8 + -0x774c" identifier + number_literal) ))))) ;) (expression_statement "fVar17 = *(float *)(PTR_LAB_003f98e0 + 0x4aa8);" (assignment_expression "fVar17 = *(float *)(PTR_LAB_003f98e0 + 0x4aa8)" identifier = (pointer_expression "*(float *)(PTR_LAB_003f98e0 + 0x4aa8)" * (cast_expression "(float *)(PTR_LAB_003f98e0 + 0x4aa8)" ( (type_descriptor "float *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_003f98e0 + 0x4aa8)" ( (binary_expression "PTR_LAB_003f98e0 + 0x4aa8" identifier + number_literal) ))))) ;) (expression_statement "dVar23 = *(double *)(puVar1 + 0x43d0);" (assignment_expression "dVar23 = *(double *)(puVar1 + 0x43d0)" identifier = (pointer_expression "*(double *)(puVar1 + 0x43d0)" * (cast_expression "(double *)(puVar1 + 0x43d0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar1 + 0x43d0)" ( (binary_expression "puVar1 + 0x43d0" identifier + number_literal) ))))) ;) (expression_statement "dVar22 = *(double *)(puVar1 + 0x43e0);" (assignment_expression "dVar22 = *(double *)(puVar1 + 0x43e0)" identifier = (pointer_expression "*(double *)(puVar1 + 0x43e0)" * (cast_expression "(double *)(puVar1 + 0x43e0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar1 + 0x43e0)" ( (binary_expression "puVar1 + 0x43e0" identifier + number_literal) ))))) ;) (do_statement "do {\n              iVar7 = *(int *)(iVar9 + 0x2d0);\n              pfVar8 = (float *)(iVar3 + *(int *)(iVar7 + 8) * 4);\n              fVar16 = *pfVar8;\n              dVar14 = (double)*(float *)(iVar3 + *(int *)(iVar7 + 0x14) * 4) * dVar20 +\n                       (double)(fVar16 * fVar19) +\n                       (double)(*(float *)(iVar3 + *(int *)(iVar7 + 0x20) * 4) * fVar18);\n              if (fVar16 < fVar17) {\n                iVar7 = 0;\n                if (NAN(fVar16)) goto LAB_000cb260;\n                iVar7 = 0;\n                if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                  goto LAB_000cb260;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\nLAB_000cb260:\n                iVar7 = iVar7 * 0x58;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 + iVar2 + 0x28) - dVar14) *\n                                *(double *)(*(int *)((int)this + 0xc) + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar3 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar2 + 0x30) - dVar14) *\n                                *(double *)(*(int *)((int)this + 0xc) + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar3 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar13;\n                  if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar2 + 0x38) - dVar14) *\n                                *(double *)(*(int *)((int)this + 0xc) + 0x48) + dVar14);\n              iVar3 = iVar3 + *(int *)(iVar9 + 0x2c0) * 4;\n              iVar6 = iVar6 + 1;\n            } while (iVar6 < *(int *)(iVar9 + 0x18));" do (compound_statement "{\n              iVar7 = *(int *)(iVar9 + 0x2d0);\n              pfVar8 = (float *)(iVar3 + *(int *)(iVar7 + 8) * 4);\n              fVar16 = *pfVar8;\n              dVar14 = (double)*(float *)(iVar3 + *(int *)(iVar7 + 0x14) * 4) * dVar20 +\n                       (double)(fVar16 * fVar19) +\n                       (double)(*(float *)(iVar3 + *(int *)(iVar7 + 0x20) * 4) * fVar18);\n              if (fVar16 < fVar17) {\n                iVar7 = 0;\n                if (NAN(fVar16)) goto LAB_000cb260;\n                iVar7 = 0;\n                if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                  goto LAB_000cb260;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\nLAB_000cb260:\n                iVar7 = iVar7 * 0x58;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 + iVar2 + 0x28) - dVar14) *\n                                *(double *)(*(int *)((int)this + 0xc) + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar3 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar2 + 0x30) - dVar14) *\n                                *(double *)(*(int *)((int)this + 0xc) + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar3 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar13;\n                  if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar2 + 0x38) - dVar14) *\n                                *(double *)(*(int *)((int)this + 0xc) + 0x48) + dVar14);\n              iVar3 = iVar3 + *(int *)(iVar9 + 0x2c0) * 4;\n              iVar6 = iVar6 + 1;\n            }" { (expression_statement "iVar7 = *(int *)(iVar9 + 0x2d0);" (assignment_expression "iVar7 = *(int *)(iVar9 + 0x2d0)" identifier = (pointer_expression "*(int *)(iVar9 + 0x2d0)" * (cast_expression "(int *)(iVar9 + 0x2d0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + 0x2d0)" ( (binary_expression "iVar9 + 0x2d0" identifier + number_literal) ))))) ;) (expression_statement "pfVar8 = (float *)(iVar3 + *(int *)(iVar7 + 8) * 4);" (assignment_expression "pfVar8 = (float *)(iVar3 + *(int *)(iVar7 + 8) * 4)" identifier = (cast_expression "(float *)(iVar3 + *(int *)(iVar7 + 8) * 4)" ( (type_descriptor "float *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + *(int *)(iVar7 + 8) * 4)" ( (binary_expression "iVar3 + *(int *)(iVar7 + 8) * 4" identifier + (binary_expression "*(int *)(iVar7 + 8) * 4" (pointer_expression "*(int *)(iVar7 + 8)" * (cast_expression "(int *)(iVar7 + 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar7 + 8)" ( (binary_expression "iVar7 + 8" identifier + number_literal) )))) * number_literal)) )))) ;) (expression_statement "fVar16 = *pfVar8;" (assignment_expression "fVar16 = *pfVar8" identifier = (pointer_expression "*pfVar8" * identifier)) ;) (expression_statement "dVar14 = (double)*(float *)(iVar3 + *(int *)(iVar7 + 0x14) * 4) * dVar20 +\n                       (double)(fVar16 * fVar19) +\n                       (double)(*(float *)(iVar3 + *(int *)(iVar7 + 0x20) * 4) * fVar18);" (assignment_expression "dVar14 = (double)*(float *)(iVar3 + *(int *)(iVar7 + 0x14) * 4) * dVar20 +\n                       (double)(fVar16 * fVar19) +\n                       (double)(*(float *)(iVar3 + *(int *)(iVar7 + 0x20) * 4) * fVar18)" identifier = (binary_expression "(double)*(float *)(iVar3 + *(int *)(iVar7 + 0x14) * 4) * dVar20 +\n                       (double)(fVar16 * fVar19) +\n                       (double)(*(float *)(iVar3 + *(int *)(iVar7 + 0x20) * 4) * fVar18)" (binary_expression "(double)*(float *)(iVar3 + *(int *)(iVar7 + 0x14) * 4) * dVar20 +\n                       (double)(fVar16 * fVar19)" (binary_expression "(double)*(float *)(iVar3 + *(int *)(iVar7 + 0x14) * 4) * dVar20" (cast_expression "(double)*(float *)(iVar3 + *(int *)(iVar7 + 0x14) * 4)" ( (type_descriptor "double" primitive_type) ) (pointer_expression "*(float *)(iVar3 + *(int *)(iVar7 + 0x14) * 4)" * (cast_expression "(float *)(iVar3 + *(int *)(iVar7 + 0x14) * 4)" ( (type_descriptor "float *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + *(int *)(iVar7 + 0x14) * 4)" ( (binary_expression "iVar3 + *(int *)(iVar7 + 0x14) * 4" identifier + (binary_expression "*(int *)(iVar7 + 0x14) * 4" (pointer_expression "*(int *)(iVar7 + 0x14)" * (cast_expression "(int *)(iVar7 + 0x14)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar7 + 0x14)" ( (binary_expression "iVar7 + 0x14" identifier + number_literal) )))) * number_literal)) ))))) * identifier) + (cast_expression "(double)(fVar16 * fVar19)" ( (type_descriptor "double" primitive_type) ) (parenthesized_expression "(fVar16 * fVar19)" ( (binary_expression "fVar16 * fVar19" identifier * identifier) )))) + (cast_expression "(double)(*(float *)(iVar3 + *(int *)(iVar7 + 0x20) * 4) * fVar18)" ( (type_descriptor "double" primitive_type) ) (parenthesized_expression "(*(float *)(iVar3 + *(int *)(iVar7 + 0x20) * 4) * fVar18)" ( (binary_expression "*(float *)(iVar3 + *(int *)(iVar7 + 0x20) * 4) * fVar18" (pointer_expression "*(float *)(iVar3 + *(int *)(iVar7 + 0x20) * 4)" * (cast_expression "(float *)(iVar3 + *(int *)(iVar7 + 0x20) * 4)" ( (type_descriptor "float *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + *(int *)(iVar7 + 0x20) * 4)" ( (binary_expression "iVar3 + *(int *)(iVar7 + 0x20) * 4" identifier + (binary_expression "*(int *)(iVar7 + 0x20) * 4" (pointer_expression "*(int *)(iVar7 + 0x20)" * (cast_expression "(int *)(iVar7 + 0x20)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar7 + 0x20)" ( (binary_expression "iVar7 + 0x20" identifier + number_literal) )))) * number_literal)) )))) * identifier) ))))) ;) (if_statement "if (fVar16 < fVar17) {\n                iVar7 = 0;\n                if (NAN(fVar16)) goto LAB_000cb260;\n                iVar7 = 0;\n                if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                  goto LAB_000cb260;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\nLAB_000cb260:\n                iVar7 = iVar7 * 0x58;\n              }" if (parenthesized_expression "(fVar16 < fVar17)" ( (binary_expression "fVar16 < fVar17" identifier < identifier) )) (compound_statement "{\n                iVar7 = 0;\n                if (NAN(fVar16)) goto LAB_000cb260;\n                iVar7 = 0;\n                if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                  goto LAB_000cb260;\n                }\n              }" { (expression_statement "iVar7 = 0;" (assignment_expression "iVar7 = 0" identifier = number_literal) ;) (if_statement "if (NAN(fVar16)) goto LAB_000cb260;" if (parenthesized_expression "(NAN(fVar16))" ( (call_expression "NAN(fVar16)" identifier (argument_list "(fVar16)" ( identifier ))) )) (goto_statement "goto LAB_000cb260;" goto statement_identifier ;)) (expression_statement "iVar7 = 0;" (assignment_expression "iVar7 = 0" identifier = number_literal) ;) (if_statement "if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                  goto LAB_000cb260;\n                }" if (parenthesized_expression "(0.0 < fVar16)" ( (binary_expression "0.0 < fVar16" number_literal < identifier) )) (compound_statement "{\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                  goto LAB_000cb260;\n                }" { (expression_statement "dVar15 = (double)fVar16 + dVar23;" (assignment_expression "dVar15 = (double)fVar16 + dVar23" identifier = (binary_expression "(double)fVar16 + dVar23" (cast_expression "(double)fVar16" ( (type_descriptor "double" primitive_type) ) identifier) + identifier)) ;) (if_statement "if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }" if (parenthesized_expression "(dVar15 < dVar22)" ( (binary_expression "dVar15 < dVar22" identifier < identifier) )) (compound_statement "{\n                    iVar7 = (int)dVar15;\n                  }" { (expression_statement "iVar7 = (int)dVar15;" (assignment_expression "iVar7 = (int)dVar15" identifier = (cast_expression "(int)dVar15" ( (type_descriptor "int" primitive_type) ) identifier)) ;) }) (else_clause "else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }" else (compound_statement "{\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }" { (expression_statement "iVar7 = (int)(dVar15 - dVar22);" (assignment_expression "iVar7 = (int)(dVar15 - dVar22)" identifier = (cast_expression "(int)(dVar15 - dVar22)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(dVar15 - dVar22)" ( (binary_expression "dVar15 - dVar22" identifier - identifier) )))) ;) }))) (goto_statement "goto LAB_000cb260;" goto statement_identifier ;) })) }) (else_clause "else {\n                iVar7 = 0xffff;\nLAB_000cb260:\n                iVar7 = iVar7 * 0x58;\n              }" else (compound_statement "{\n                iVar7 = 0xffff;\nLAB_000cb260:\n                iVar7 = iVar7 * 0x58;\n              }" { (expression_statement "iVar7 = 0xffff;" (assignment_expression "iVar7 = 0xffff" identifier = number_literal) ;) (labeled_statement "LAB_000cb260:\n                iVar7 = iVar7 * 0x58;" statement_identifier : (expression_statement "iVar7 = iVar7 * 0x58;" (assignment_expression "iVar7 = iVar7 * 0x58" identifier = (binary_expression "iVar7 * 0x58" identifier * number_literal)) ;)) }))) (expression_statement "*pfVar8 = (float)((*(double *)(iVar7 + iVar2 + 0x28) - dVar14) *\n                                *(double *)(*(int *)((int)this + 0xc) + 0x48) + dVar14);" (assignment_expression "*pfVar8 = (float)((*(double *)(iVar7 + iVar2 + 0x28) - dVar14) *\n                                *(double *)(*(int *)((int)this + 0xc) + 0x48) + dVar14)" (pointer_expression "*pfVar8" * identifier) = (cast_expression "(float)((*(double *)(iVar7 + iVar2 + 0x28) - dVar14) *\n                                *(double *)(*(int *)((int)this + 0xc) + 0x48) + dVar14)" ( (type_descriptor "float" primitive_type) ) (parenthesized_expression "((*(double *)(iVar7 + iVar2 + 0x28) - dVar14) *\n                                *(double *)(*(int *)((int)this + 0xc) + 0x48) + dVar14)" ( (binary_expression "(*(double *)(iVar7 + iVar2 + 0x28) - dVar14) *\n                                *(double *)(*(int *)((int)this + 0xc) + 0x48) + dVar14" (binary_expression "(*(double *)(iVar7 + iVar2 + 0x28) - dVar14) *\n                                *(double *)(*(int *)((int)this + 0xc) + 0x48)" (parenthesized_expression "(*(double *)(iVar7 + iVar2 + 0x28) - dVar14)" ( (binary_expression "*(double *)(iVar7 + iVar2 + 0x28) - dVar14" (pointer_expression "*(double *)(iVar7 + iVar2 + 0x28)" * (cast_expression "(double *)(iVar7 + iVar2 + 0x28)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar7 + iVar2 + 0x28)" ( (binary_expression "iVar7 + iVar2 + 0x28" (binary_expression "iVar7 + iVar2" identifier + identifier) + number_literal) )))) - identifier) )) * (pointer_expression "*(double *)(*(int *)((int)this + 0xc) + 0x48)" * (cast_expression "(double *)(*(int *)((int)this + 0xc) + 0x48)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)((int)this + 0xc) + 0x48)" ( (binary_expression "*(int *)((int)this + 0xc) + 0x48" (pointer_expression "*(int *)((int)this + 0xc)" * (cast_expression "(int *)((int)this + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)this + 0xc)" ( (binary_expression "(int)this + 0xc" (cast_expression "(int)this" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) + number_literal) ))))) + identifier) )))) ;) (expression_statement "pfVar8 = (float *)(iVar3 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4);" (assignment_expression "pfVar8 = (float *)(iVar3 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4)" identifier = (cast_expression "(float *)(iVar3 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4)" ( (type_descriptor "float *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4)" ( (binary_expression "iVar3 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4" identifier + (binary_expression "*(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4" (pointer_expression "*(int *)(*(int *)(iVar9 + 0x2d0) + 0x14)" * (cast_expression "(int *)(*(int *)(iVar9 + 0x2d0) + 0x14)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(iVar9 + 0x2d0) + 0x14)" ( (binary_expression "*(int *)(iVar9 + 0x2d0) + 0x14" (pointer_expression "*(int *)(iVar9 + 0x2d0)" * (cast_expression "(int *)(iVar9 + 0x2d0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + 0x2d0)" ( (binary_expression "iVar9 + 0x2d0" identifier + number_literal) )))) + number_literal) )))) * number_literal)) )))) ;) (expression_statement "fVar16 = *pfVar8;" (assignment_expression "fVar16 = *pfVar8" identifier = (pointer_expression "*pfVar8" * identifier)) ;) (if_statement "if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }" if (parenthesized_expression "(fVar16 < fVar17)" ( (binary_expression "fVar16 < fVar17" identifier < identifier) )) (compound_statement "{\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }" { (if_statement "if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }" if (parenthesized_expression "(NAN(fVar16))" ( (call_expression "NAN(fVar16)" identifier (argument_list "(fVar16)" ( identifier ))) )) (compound_statement "{\n                  iVar7 = 0;\n                }" { (expression_statement "iVar7 = 0;" (assignment_expression "iVar7 = 0" identifier = number_literal) ;) }) (else_clause "else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }" else (if_statement "if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }" if (parenthesized_expression "(0.0 < fVar16)" ( (binary_expression "0.0 < fVar16" number_literal < identifier) )) (compound_statement "{\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                }" { (expression_statement "dVar15 = (double)fVar16 + dVar23;" (assignment_expression "dVar15 = (double)fVar16 + dVar23" identifier = (binary_expression "(double)fVar16 + dVar23" (cast_expression "(double)fVar16" ( (type_descriptor "double" primitive_type) ) identifier) + identifier)) ;) (if_statement "if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }" if (parenthesized_expression "(dVar15 < dVar22)" ( (binary_expression "dVar15 < dVar22" identifier < identifier) )) (compound_statement "{\n                    iVar7 = (int)dVar15;\n                  }" { (expression_statement "iVar7 = (int)dVar15;" (assignment_expression "iVar7 = (int)dVar15" identifier = (cast_expression "(int)dVar15" ( (type_descriptor "int" primitive_type) ) identifier)) ;) }) (else_clause "else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }" else (compound_statement "{\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }" { (expression_statement "iVar7 = (int)(dVar15 - dVar22);" (assignment_expression "iVar7 = (int)(dVar15 - dVar22)" identifier = (cast_expression "(int)(dVar15 - dVar22)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(dVar15 - dVar22)" ( (binary_expression "dVar15 - dVar22" identifier - identifier) )))) ;) }))) }) (else_clause "else {\n                  iVar7 = 0;\n                }" else (compound_statement "{\n                  iVar7 = 0;\n                }" { (expression_statement "iVar7 = 0;" (assignment_expression "iVar7 = 0" identifier = number_literal) ;) }))))) }) (else_clause "else {\n                iVar7 = 0xffff;\n              }" else (compound_statement "{\n                iVar7 = 0xffff;\n              }" { (expression_statement "iVar7 = 0xffff;" (assignment_expression "iVar7 = 0xffff" identifier = number_literal) ;) }))) (expression_statement "*pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar2 + 0x30) - dVar14) *\n                                *(double *)(*(int *)((int)this + 0xc) + 0x48) + dVar14);" (assignment_expression "*pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar2 + 0x30) - dVar14) *\n                                *(double *)(*(int *)((int)this + 0xc) + 0x48) + dVar14)" (pointer_expression "*pfVar8" * identifier) = (cast_expression "(float)((*(double *)(iVar7 * 0x58 + iVar2 + 0x30) - dVar14) *\n                                *(double *)(*(int *)((int)this + 0xc) + 0x48) + dVar14)" ( (type_descriptor "float" primitive_type) ) (parenthesized_expression "((*(double *)(iVar7 * 0x58 + iVar2 + 0x30) - dVar14) *\n                                *(double *)(*(int *)((int)this + 0xc) + 0x48) + dVar14)" ( (binary_expression "(*(double *)(iVar7 * 0x58 + iVar2 + 0x30) - dVar14) *\n                                *(double *)(*(int *)((int)this + 0xc) + 0x48) + dVar14" (binary_expression "(*(double *)(iVar7 * 0x58 + iVar2 + 0x30) - dVar14) *\n                                *(double *)(*(int *)((int)this + 0xc) + 0x48)" (parenthesized_expression "(*(double *)(iVar7 * 0x58 + iVar2 + 0x30) - dVar14)" ( (binary_expression "*(double *)(iVar7 * 0x58 + iVar2 + 0x30) - dVar14" (pointer_expression "*(double *)(iVar7 * 0x58 + iVar2 + 0x30)" * (cast_expression "(double *)(iVar7 * 0x58 + iVar2 + 0x30)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar7 * 0x58 + iVar2 + 0x30)" ( (binary_expression "iVar7 * 0x58 + iVar2 + 0x30" (binary_expression "iVar7 * 0x58 + iVar2" (binary_expression "iVar7 * 0x58" identifier * number_literal) + identifier) + number_literal) )))) - identifier) )) * (pointer_expression "*(double *)(*(int *)((int)this + 0xc) + 0x48)" * (cast_expression "(double *)(*(int *)((int)this + 0xc) + 0x48)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)((int)this + 0xc) + 0x48)" ( (binary_expression "*(int *)((int)this + 0xc) + 0x48" (pointer_expression "*(int *)((int)this + 0xc)" * (cast_expression "(int *)((int)this + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)this + 0xc)" ( (binary_expression "(int)this + 0xc" (cast_expression "(int)this" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) + number_literal) ))))) + identifier) )))) ;) (expression_statement "pfVar8 = (float *)(iVar3 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4);" (assignment_expression "pfVar8 = (float *)(iVar3 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4)" identifier = (cast_expression "(float *)(iVar3 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4)" ( (type_descriptor "float *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4)" ( (binary_expression "iVar3 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4" identifier + (binary_expression "*(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4" (pointer_expression "*(int *)(*(int *)(iVar9 + 0x2d0) + 0x20)" * (cast_expression "(int *)(*(int *)(iVar9 + 0x2d0) + 0x20)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(iVar9 + 0x2d0) + 0x20)" ( (binary_expression "*(int *)(iVar9 + 0x2d0) + 0x20" (pointer_expression "*(int *)(iVar9 + 0x2d0)" * (cast_expression "(int *)(iVar9 + 0x2d0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + 0x2d0)" ( (binary_expression "iVar9 + 0x2d0" identifier + number_literal) )))) + number_literal) )))) * number_literal)) )))) ;) (expression_statement "fVar16 = *pfVar8;" (assignment_expression "fVar16 = *pfVar8" identifier = (pointer_expression "*pfVar8" * identifier)) ;) (if_statement "if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar13;\n                  if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }" if (parenthesized_expression "(fVar16 < fVar17)" ( (binary_expression "fVar16 < fVar17" identifier < identifier) )) (compound_statement "{\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar13;\n                  if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }" { (if_statement "if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar13;\n                  if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }" if (parenthesized_expression "(NAN(fVar16))" ( (call_expression "NAN(fVar16)" identifier (argument_list "(fVar16)" ( identifier ))) )) (compound_statement "{\n                  iVar7 = 0;\n                }" { (expression_statement "iVar7 = 0;" (assignment_expression "iVar7 = 0" identifier = number_literal) ;) }) (else_clause "else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar13;\n                  if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }" else (if_statement "if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar13;\n                  if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }" if (parenthesized_expression "(0.0 < fVar16)" ( (binary_expression "0.0 < fVar16" number_literal < identifier) )) (compound_statement "{\n                  dVar15 = (double)fVar16 + dVar13;\n                  if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }\n                }" { (expression_statement "dVar15 = (double)fVar16 + dVar13;" (assignment_expression "dVar15 = (double)fVar16 + dVar13" identifier = (binary_expression "(double)fVar16 + dVar13" (cast_expression "(double)fVar16" ( (type_descriptor "double" primitive_type) ) identifier) + identifier)) ;) (if_statement "if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }" if (parenthesized_expression "(dVar15 < dVar21)" ( (binary_expression "dVar15 < dVar21" identifier < identifier) )) (compound_statement "{\n                    iVar7 = (int)dVar15;\n                  }" { (expression_statement "iVar7 = (int)dVar15;" (assignment_expression "iVar7 = (int)dVar15" identifier = (cast_expression "(int)dVar15" ( (type_descriptor "int" primitive_type) ) identifier)) ;) }) (else_clause "else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }" else (compound_statement "{\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }" { (expression_statement "iVar7 = (int)(dVar15 - dVar21);" (assignment_expression "iVar7 = (int)(dVar15 - dVar21)" identifier = (cast_expression "(int)(dVar15 - dVar21)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(dVar15 - dVar21)" ( (binary_expression "dVar15 - dVar21" identifier - identifier) )))) ;) }))) }) (else_clause "else {\n                  iVar7 = 0;\n                }" else (compound_statement "{\n                  iVar7 = 0;\n                }" { (expression_statement "iVar7 = 0;" (assignment_expression "iVar7 = 0" identifier = number_literal) ;) }))))) }) (else_clause "else {\n                iVar7 = 0xffff;\n              }" else (compound_statement "{\n                iVar7 = 0xffff;\n              }" { (expression_statement "iVar7 = 0xffff;" (assignment_expression "iVar7 = 0xffff" identifier = number_literal) ;) }))) (expression_statement "*pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar2 + 0x38) - dVar14) *\n                                *(double *)(*(int *)((int)this + 0xc) + 0x48) + dVar14);" (assignment_expression "*pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar2 + 0x38) - dVar14) *\n                                *(double *)(*(int *)((int)this + 0xc) + 0x48) + dVar14)" (pointer_expression "*pfVar8" * identifier) = (cast_expression "(float)((*(double *)(iVar7 * 0x58 + iVar2 + 0x38) - dVar14) *\n                                *(double *)(*(int *)((int)this + 0xc) + 0x48) + dVar14)" ( (type_descriptor "float" primitive_type) ) (parenthesized_expression "((*(double *)(iVar7 * 0x58 + iVar2 + 0x38) - dVar14) *\n                                *(double *)(*(int *)((int)this + 0xc) + 0x48) + dVar14)" ( (binary_expression "(*(double *)(iVar7 * 0x58 + iVar2 + 0x38) - dVar14) *\n                                *(double *)(*(int *)((int)this + 0xc) + 0x48) + dVar14" (binary_expression "(*(double *)(iVar7 * 0x58 + iVar2 + 0x38) - dVar14) *\n                                *(double *)(*(int *)((int)this + 0xc) + 0x48)" (parenthesized_expression "(*(double *)(iVar7 * 0x58 + iVar2 + 0x38) - dVar14)" ( (binary_expression "*(double *)(iVar7 * 0x58 + iVar2 + 0x38) - dVar14" (pointer_expression "*(double *)(iVar7 * 0x58 + iVar2 + 0x38)" * (cast_expression "(double *)(iVar7 * 0x58 + iVar2 + 0x38)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar7 * 0x58 + iVar2 + 0x38)" ( (binary_expression "iVar7 * 0x58 + iVar2 + 0x38" (binary_expression "iVar7 * 0x58 + iVar2" (binary_expression "iVar7 * 0x58" identifier * number_literal) + identifier) + number_literal) )))) - identifier) )) * (pointer_expression "*(double *)(*(int *)((int)this + 0xc) + 0x48)" * (cast_expression "(double *)(*(int *)((int)this + 0xc) + 0x48)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)((int)this + 0xc) + 0x48)" ( (binary_expression "*(int *)((int)this + 0xc) + 0x48" (pointer_expression "*(int *)((int)this + 0xc)" * (cast_expression "(int *)((int)this + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)this + 0xc)" ( (binary_expression "(int)this + 0xc" (cast_expression "(int)this" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) + number_literal) ))))) + identifier) )))) ;) (expression_statement "iVar3 = iVar3 + *(int *)(iVar9 + 0x2c0) * 4;" (assignment_expression "iVar3 = iVar3 + *(int *)(iVar9 + 0x2c0) * 4" identifier = (binary_expression "iVar3 + *(int *)(iVar9 + 0x2c0) * 4" identifier + (binary_expression "*(int *)(iVar9 + 0x2c0) * 4" (pointer_expression "*(int *)(iVar9 + 0x2c0)" * (cast_expression "(int *)(iVar9 + 0x2c0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + 0x2c0)" ( (binary_expression "iVar9 + 0x2c0" identifier + number_literal) )))) * number_literal))) ;) (expression_statement "iVar6 = iVar6 + 1;" (assignment_expression "iVar6 = iVar6 + 1" identifier = (binary_expression "iVar6 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(iVar6 < *(int *)(iVar9 + 0x18))" ( (binary_expression "iVar6 < *(int *)(iVar9 + 0x18)" identifier < (pointer_expression "*(int *)(iVar9 + 0x18)" * (cast_expression "(int *)(iVar9 + 0x18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + 0x18)" ( (binary_expression "iVar9 + 0x18" identifier + number_literal) ))))) )) ;) })) (expression_statement "iVar3 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003fa510)(uVar4,uVar12);" (assignment_expression "iVar3 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003fa510)(uVar4,uVar12)" identifier = (call_expression "(*(code *)PTR_SyncCacheViewAuthenticPixels_003fa510)(uVar4,uVar12)" (parenthesized_expression "(*(code *)PTR_SyncCacheViewAuthenticPixels_003fa510)" ( (pointer_expression "*(code *)PTR_SyncCacheViewAuthenticPixels_003fa510" * (cast_expression "(code *)PTR_SyncCacheViewAuthenticPixels_003fa510" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(uVar4,uVar12)" ( identifier , identifier )))) ;) (if_statement "if (iVar3 == 0) {\n            *(undefined4 *)((int)this + 0x14) = 0;\n          }" if (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) (compound_statement "{\n            *(undefined4 *)((int)this + 0x14) = 0;\n          }" { (expression_statement "*(undefined4 *)((int)this + 0x14) = 0;" (assignment_expression "*(undefined4 *)((int)this + 0x14) = 0" (pointer_expression "*(undefined4 *)((int)this + 0x14)" * (cast_expression "(undefined4 *)((int)this + 0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)this + 0x14)" ( (binary_expression "(int)this + 0x14" (cast_expression "(int)this" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = number_literal) ;) })) (if_statement "if (*(int *)(iVar9 + 0x328) != 0) {\n            piVar11 = *(int **)((int)this + 0x18);\n            (*(code *)PTR_GOMP_atomic_start_003fa2fc)();\n            uVar5 = piVar11[1] + 1;\n            *piVar11 = (uint)(uVar5 < (uint)piVar11[1]) + *piVar11;\n            piVar11[1] = uVar5;\n            (*(code *)PTR_GOMP_atomic_end_003fa450)();\n            iVar3 = (*(code *)PTR_SetImageProgress_003f9ccc)\n                              (iVar9,PTR_s_ltiple_images_003f98e8 + -0x7ed0,\n                               **(undefined4 **)((int)this + 0x18),\n                               (*(undefined4 **)((int)this + 0x18))[1],0,\n                               *(undefined4 *)(iVar9 + 0x1c));\n            if (iVar3 == 0) {\n              *(undefined4 *)((int)this + 0x14) = 0;\n            }\n          }" if (parenthesized_expression "(*(int *)(iVar9 + 0x328) != 0)" ( (binary_expression "*(int *)(iVar9 + 0x328) != 0" (pointer_expression "*(int *)(iVar9 + 0x328)" * (cast_expression "(int *)(iVar9 + 0x328)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + 0x328)" ( (binary_expression "iVar9 + 0x328" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n            piVar11 = *(int **)((int)this + 0x18);\n            (*(code *)PTR_GOMP_atomic_start_003fa2fc)();\n            uVar5 = piVar11[1] + 1;\n            *piVar11 = (uint)(uVar5 < (uint)piVar11[1]) + *piVar11;\n            piVar11[1] = uVar5;\n            (*(code *)PTR_GOMP_atomic_end_003fa450)();\n            iVar3 = (*(code *)PTR_SetImageProgress_003f9ccc)\n                              (iVar9,PTR_s_ltiple_images_003f98e8 + -0x7ed0,\n                               **(undefined4 **)((int)this + 0x18),\n                               (*(undefined4 **)((int)this + 0x18))[1],0,\n                               *(undefined4 *)(iVar9 + 0x1c));\n            if (iVar3 == 0) {\n              *(undefined4 *)((int)this + 0x14) = 0;\n            }\n          }" { (expression_statement "piVar11 = *(int **)((int)this + 0x18);" (assignment_expression "piVar11 = *(int **)((int)this + 0x18)" identifier = (pointer_expression "*(int **)((int)this + 0x18)" * (cast_expression "(int **)((int)this + 0x18)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)this + 0x18)" ( (binary_expression "(int)this + 0x18" (cast_expression "(int)this" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) ;) (expression_statement "(*(code *)PTR_GOMP_atomic_start_003fa2fc)();" (call_expression "(*(code *)PTR_GOMP_atomic_start_003fa2fc)()" (parenthesized_expression "(*(code *)PTR_GOMP_atomic_start_003fa2fc)" ( (pointer_expression "*(code *)PTR_GOMP_atomic_start_003fa2fc" * (cast_expression "(code *)PTR_GOMP_atomic_start_003fa2fc" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))) ;) (expression_statement "uVar5 = piVar11[1] + 1;" (assignment_expression "uVar5 = piVar11[1] + 1" identifier = (binary_expression "piVar11[1] + 1" (subscript_expression "piVar11[1]" identifier [ number_literal ]) + number_literal)) ;) (expression_statement "*piVar11 = (uint)(uVar5 < (uint)piVar11[1]) + *piVar11;" (assignment_expression "*piVar11 = (uint)(uVar5 < (uint)piVar11[1]) + *piVar11" (pointer_expression "*piVar11" * identifier) = (binary_expression "(uint)(uVar5 < (uint)piVar11[1]) + *piVar11" (call_expression "(uint)(uVar5 < (uint)piVar11[1])" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar5 < (uint)piVar11[1])" ( (binary_expression "uVar5 < (uint)piVar11[1]" identifier < (cast_expression "(uint)piVar11[1]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "piVar11[1]" identifier [ number_literal ]))) ))) + (pointer_expression "*piVar11" * identifier))) ;) (expression_statement "piVar11[1] = uVar5;" (assignment_expression "piVar11[1] = uVar5" (subscript_expression "piVar11[1]" identifier [ number_literal ]) = identifier) ;) (expression_statement "(*(code *)PTR_GOMP_atomic_end_003fa450)();" (call_expression "(*(code *)PTR_GOMP_atomic_end_003fa450)()" (parenthesized_expression "(*(code *)PTR_GOMP_atomic_end_003fa450)" ( (pointer_expression "*(code *)PTR_GOMP_atomic_end_003fa450" * (cast_expression "(code *)PTR_GOMP_atomic_end_003fa450" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))) ;) (expression_statement "iVar3 = (*(code *)PTR_SetImageProgress_003f9ccc)\n                              (iVar9,PTR_s_ltiple_images_003f98e8 + -0x7ed0,\n                               **(undefined4 **)((int)this + 0x18),\n                               (*(undefined4 **)((int)this + 0x18))[1],0,\n                               *(undefined4 *)(iVar9 + 0x1c));" (assignment_expression "iVar3 = (*(code *)PTR_SetImageProgress_003f9ccc)\n                              (iVar9,PTR_s_ltiple_images_003f98e8 + -0x7ed0,\n                               **(undefined4 **)((int)this + 0x18),\n                               (*(undefined4 **)((int)this + 0x18))[1],0,\n                               *(undefined4 *)(iVar9 + 0x1c))" identifier = (call_expression "(*(code *)PTR_SetImageProgress_003f9ccc)\n                              (iVar9,PTR_s_ltiple_images_003f98e8 + -0x7ed0,\n                               **(undefined4 **)((int)this + 0x18),\n                               (*(undefined4 **)((int)this + 0x18))[1],0,\n                               *(undefined4 *)(iVar9 + 0x1c))" (parenthesized_expression "(*(code *)PTR_SetImageProgress_003f9ccc)" ( (pointer_expression "*(code *)PTR_SetImageProgress_003f9ccc" * (cast_expression "(code *)PTR_SetImageProgress_003f9ccc" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar9,PTR_s_ltiple_images_003f98e8 + -0x7ed0,\n                               **(undefined4 **)((int)this + 0x18),\n                               (*(undefined4 **)((int)this + 0x18))[1],0,\n                               *(undefined4 *)(iVar9 + 0x1c))" ( identifier , (binary_expression "PTR_s_ltiple_images_003f98e8 + -0x7ed0" identifier + number_literal) , (pointer_expression "**(undefined4 **)((int)this + 0x18)" * (pointer_expression "*(undefined4 **)((int)this + 0x18)" * (cast_expression "(undefined4 **)((int)this + 0x18)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)this + 0x18)" ( (binary_expression "(int)this + 0x18" (cast_expression "(int)this" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) , (subscript_expression "(*(undefined4 **)((int)this + 0x18))[1]" (parenthesized_expression "(*(undefined4 **)((int)this + 0x18))" ( (pointer_expression "*(undefined4 **)((int)this + 0x18)" * (cast_expression "(undefined4 **)((int)this + 0x18)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)this + 0x18)" ( (binary_expression "(int)this + 0x18" (cast_expression "(int)this" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) )) [ number_literal ]) , number_literal , (pointer_expression "*(undefined4 *)(iVar9 + 0x1c)" * (cast_expression "(undefined4 *)(iVar9 + 0x1c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + 0x1c)" ( (binary_expression "iVar9 + 0x1c" identifier + number_literal) )))) )))) ;) (if_statement "if (iVar3 == 0) {\n              *(undefined4 *)((int)this + 0x14) = 0;\n            }" if (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) (compound_statement "{\n              *(undefined4 *)((int)this + 0x14) = 0;\n            }" { (expression_statement "*(undefined4 *)((int)this + 0x14) = 0;" (assignment_expression "*(undefined4 *)((int)this + 0x14) = 0" (pointer_expression "*(undefined4 *)((int)this + 0x14)" * (cast_expression "(undefined4 *)((int)this + 0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)this + 0x14)" ( (binary_expression "(int)this + 0x14" (cast_expression "(int)this" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = number_literal) ;) })) })) }))) })) (expression_statement "iVar10 = iVar10 + 1;" (assignment_expression "iVar10 = iVar10 + 1" identifier = (binary_expression "iVar10 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(iVar24 != iVar10)" ( (binary_expression "iVar24 != iVar10" identifier != identifier) )) ;) })) (return_statement "return;" return ;) })))
(translation_unit "void FUN_000cb0b0(int *param_1)\n\n{\n  undefined *puVar1;\n  int iVar2;\n  int iVar3;\n  int iVar4;\n  uint uVar5;\n  int iVar6;\n  int iVar7;\n  float *pfVar8;\n  int iVar9;\n  int iVar10;\n  int *piVar11;\n  int iVar12;\n  double dVar13;\n  double dVar14;\n  double dVar15;\n  float fVar16;\n  float fVar17;\n  float fVar18;\n  float fVar19;\n  double dVar20;\n  double dVar21;\n  double dVar22;\n  double dVar23;\n  int iVar24;\n  \n  iVar9 = *param_1;\n  iVar10 = *(int *)(iVar9 + 0x1c);\n  iVar2 = (*(code *)PTR_omp_get_num_threads_003fa924)();\n  iVar3 = (*(code *)PTR_omp_get_thread_num_003fa520)();\n  puVar1 = PTR_LAB_003f98e0;\n  if (iVar2 == 0) {\n    trap(7);\n  }\n  iVar24 = iVar10 / iVar2;\n  iVar10 = iVar10 % iVar2;\n  if (iVar3 < iVar10) {\n    iVar24 = iVar24 + 1;\n    iVar10 = 0;\n  }\n  iVar10 = iVar24 * iVar3 + iVar10;\n  iVar24 = iVar24 + iVar10;\n  if (iVar10 < iVar24) {\n    iVar3 = param_1[4];\n    iVar2 = param_1[2];\n    iVar12 = param_1[1];\n    dVar20 = *(double *)(PTR_s_ltiple_images_003f98e8 + -0x77c0);\n    dVar13 = *(double *)(PTR_LAB_003f98e0 + 0x43d0);\n    dVar21 = *(double *)(PTR_LAB_003f98e0 + 0x43e0);\n    do {\n      if (param_1[5] != 0) {\n        iVar4 = (*(code *)PTR_GetCacheViewAuthenticPixels_003fa664)\n                          (iVar2,0,iVar10,*(undefined4 *)(iVar9 + 0x18),1,iVar12);\n        if (iVar4 == 0) {\n          param_1[5] = 0;\n        }\n        else {\n          iVar6 = 0;\n          if (0 < *(int *)(iVar9 + 0x18)) {\n            fVar19 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x7750);\n            fVar18 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x774c);\n            fVar17 = *(float *)(PTR_LAB_003f98e0 + 0x4aa8);\n            dVar23 = *(double *)(puVar1 + 0x43d0);\n            dVar22 = *(double *)(puVar1 + 0x43e0);\n            do {\n              iVar7 = *(int *)(iVar9 + 0x2d0);\n              pfVar8 = (float *)(iVar4 + *(int *)(iVar7 + 8) * 4);\n              fVar16 = *pfVar8;\n              dVar14 = (double)*(float *)(iVar4 + *(int *)(iVar7 + 0x14) * 4) * dVar20 +\n                       (double)(fVar16 * fVar19) +\n                       (double)(*(float *)(iVar4 + *(int *)(iVar7 + 0x20) * 4) * fVar18);\n              if (fVar16 < fVar17) {\n                iVar7 = 0;\n                if (NAN(fVar16)) goto LAB_000cb260;\n                iVar7 = 0;\n                if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                  goto LAB_000cb260;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\nLAB_000cb260:\n                iVar7 = iVar7 * 0x58;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 + iVar3 + 0x28) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x30) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar13;\n                  if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x38) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              iVar4 = iVar4 + *(int *)(iVar9 + 0x2c0) * 4;\n              iVar6 = iVar6 + 1;\n            } while (iVar6 < *(int *)(iVar9 + 0x18));\n          }\n          iVar4 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003fa510)(iVar2,iVar12);\n          if (iVar4 == 0) {\n            param_1[5] = 0;\n          }\n          if (*(int *)(iVar9 + 0x328) != 0) {\n            piVar11 = (int *)param_1[6];\n            (*(code *)PTR_GOMP_atomic_start_003fa2fc)();\n            uVar5 = piVar11[1] + 1;\n            *piVar11 = (uint)(uVar5 < (uint)piVar11[1]) + *piVar11;\n            piVar11[1] = uVar5;\n            (*(code *)PTR_GOMP_atomic_end_003fa450)();\n            iVar4 = (*(code *)PTR_SetImageProgress_003f9ccc)\n                              (iVar9,PTR_s_ltiple_images_003f98e8 + -0x7ed0,\n                               *(undefined4 *)param_1[6],((undefined4 *)param_1[6])[1],0,\n                               *(undefined4 *)(iVar9 + 0x1c));\n            if (iVar4 == 0) {\n              param_1[5] = 0;\n            }\n          }\n        }\n      }\n      iVar10 = iVar10 + 1;\n    } while (iVar24 != iVar10);\n  }\n  return;\n}\n\n" (function_definition "void FUN_000cb0b0(int *param_1)\n\n{\n  undefined *puVar1;\n  int iVar2;\n  int iVar3;\n  int iVar4;\n  uint uVar5;\n  int iVar6;\n  int iVar7;\n  float *pfVar8;\n  int iVar9;\n  int iVar10;\n  int *piVar11;\n  int iVar12;\n  double dVar13;\n  double dVar14;\n  double dVar15;\n  float fVar16;\n  float fVar17;\n  float fVar18;\n  float fVar19;\n  double dVar20;\n  double dVar21;\n  double dVar22;\n  double dVar23;\n  int iVar24;\n  \n  iVar9 = *param_1;\n  iVar10 = *(int *)(iVar9 + 0x1c);\n  iVar2 = (*(code *)PTR_omp_get_num_threads_003fa924)();\n  iVar3 = (*(code *)PTR_omp_get_thread_num_003fa520)();\n  puVar1 = PTR_LAB_003f98e0;\n  if (iVar2 == 0) {\n    trap(7);\n  }\n  iVar24 = iVar10 / iVar2;\n  iVar10 = iVar10 % iVar2;\n  if (iVar3 < iVar10) {\n    iVar24 = iVar24 + 1;\n    iVar10 = 0;\n  }\n  iVar10 = iVar24 * iVar3 + iVar10;\n  iVar24 = iVar24 + iVar10;\n  if (iVar10 < iVar24) {\n    iVar3 = param_1[4];\n    iVar2 = param_1[2];\n    iVar12 = param_1[1];\n    dVar20 = *(double *)(PTR_s_ltiple_images_003f98e8 + -0x77c0);\n    dVar13 = *(double *)(PTR_LAB_003f98e0 + 0x43d0);\n    dVar21 = *(double *)(PTR_LAB_003f98e0 + 0x43e0);\n    do {\n      if (param_1[5] != 0) {\n        iVar4 = (*(code *)PTR_GetCacheViewAuthenticPixels_003fa664)\n                          (iVar2,0,iVar10,*(undefined4 *)(iVar9 + 0x18),1,iVar12);\n        if (iVar4 == 0) {\n          param_1[5] = 0;\n        }\n        else {\n          iVar6 = 0;\n          if (0 < *(int *)(iVar9 + 0x18)) {\n            fVar19 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x7750);\n            fVar18 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x774c);\n            fVar17 = *(float *)(PTR_LAB_003f98e0 + 0x4aa8);\n            dVar23 = *(double *)(puVar1 + 0x43d0);\n            dVar22 = *(double *)(puVar1 + 0x43e0);\n            do {\n              iVar7 = *(int *)(iVar9 + 0x2d0);\n              pfVar8 = (float *)(iVar4 + *(int *)(iVar7 + 8) * 4);\n              fVar16 = *pfVar8;\n              dVar14 = (double)*(float *)(iVar4 + *(int *)(iVar7 + 0x14) * 4) * dVar20 +\n                       (double)(fVar16 * fVar19) +\n                       (double)(*(float *)(iVar4 + *(int *)(iVar7 + 0x20) * 4) * fVar18);\n              if (fVar16 < fVar17) {\n                iVar7 = 0;\n                if (NAN(fVar16)) goto LAB_000cb260;\n                iVar7 = 0;\n                if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                  goto LAB_000cb260;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\nLAB_000cb260:\n                iVar7 = iVar7 * 0x58;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 + iVar3 + 0x28) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x30) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar13;\n                  if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x38) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              iVar4 = iVar4 + *(int *)(iVar9 + 0x2c0) * 4;\n              iVar6 = iVar6 + 1;\n            } while (iVar6 < *(int *)(iVar9 + 0x18));\n          }\n          iVar4 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003fa510)(iVar2,iVar12);\n          if (iVar4 == 0) {\n            param_1[5] = 0;\n          }\n          if (*(int *)(iVar9 + 0x328) != 0) {\n            piVar11 = (int *)param_1[6];\n            (*(code *)PTR_GOMP_atomic_start_003fa2fc)();\n            uVar5 = piVar11[1] + 1;\n            *piVar11 = (uint)(uVar5 < (uint)piVar11[1]) + *piVar11;\n            piVar11[1] = uVar5;\n            (*(code *)PTR_GOMP_atomic_end_003fa450)();\n            iVar4 = (*(code *)PTR_SetImageProgress_003f9ccc)\n                              (iVar9,PTR_s_ltiple_images_003f98e8 + -0x7ed0,\n                               *(undefined4 *)param_1[6],((undefined4 *)param_1[6])[1],0,\n                               *(undefined4 *)(iVar9 + 0x1c));\n            if (iVar4 == 0) {\n              param_1[5] = 0;\n            }\n          }\n        }\n      }\n      iVar10 = iVar10 + 1;\n    } while (iVar24 != iVar10);\n  }\n  return;\n}" primitive_type (function_declarator "FUN_000cb0b0(int *param_1)" identifier (parameter_list "(int *param_1)" ( (parameter_declaration "int *param_1" primitive_type (pointer_declarator "*param_1" * identifier)) ))) (compound_statement "{\n  undefined *puVar1;\n  int iVar2;\n  int iVar3;\n  int iVar4;\n  uint uVar5;\n  int iVar6;\n  int iVar7;\n  float *pfVar8;\n  int iVar9;\n  int iVar10;\n  int *piVar11;\n  int iVar12;\n  double dVar13;\n  double dVar14;\n  double dVar15;\n  float fVar16;\n  float fVar17;\n  float fVar18;\n  float fVar19;\n  double dVar20;\n  double dVar21;\n  double dVar22;\n  double dVar23;\n  int iVar24;\n  \n  iVar9 = *param_1;\n  iVar10 = *(int *)(iVar9 + 0x1c);\n  iVar2 = (*(code *)PTR_omp_get_num_threads_003fa924)();\n  iVar3 = (*(code *)PTR_omp_get_thread_num_003fa520)();\n  puVar1 = PTR_LAB_003f98e0;\n  if (iVar2 == 0) {\n    trap(7);\n  }\n  iVar24 = iVar10 / iVar2;\n  iVar10 = iVar10 % iVar2;\n  if (iVar3 < iVar10) {\n    iVar24 = iVar24 + 1;\n    iVar10 = 0;\n  }\n  iVar10 = iVar24 * iVar3 + iVar10;\n  iVar24 = iVar24 + iVar10;\n  if (iVar10 < iVar24) {\n    iVar3 = param_1[4];\n    iVar2 = param_1[2];\n    iVar12 = param_1[1];\n    dVar20 = *(double *)(PTR_s_ltiple_images_003f98e8 + -0x77c0);\n    dVar13 = *(double *)(PTR_LAB_003f98e0 + 0x43d0);\n    dVar21 = *(double *)(PTR_LAB_003f98e0 + 0x43e0);\n    do {\n      if (param_1[5] != 0) {\n        iVar4 = (*(code *)PTR_GetCacheViewAuthenticPixels_003fa664)\n                          (iVar2,0,iVar10,*(undefined4 *)(iVar9 + 0x18),1,iVar12);\n        if (iVar4 == 0) {\n          param_1[5] = 0;\n        }\n        else {\n          iVar6 = 0;\n          if (0 < *(int *)(iVar9 + 0x18)) {\n            fVar19 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x7750);\n            fVar18 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x774c);\n            fVar17 = *(float *)(PTR_LAB_003f98e0 + 0x4aa8);\n            dVar23 = *(double *)(puVar1 + 0x43d0);\n            dVar22 = *(double *)(puVar1 + 0x43e0);\n            do {\n              iVar7 = *(int *)(iVar9 + 0x2d0);\n              pfVar8 = (float *)(iVar4 + *(int *)(iVar7 + 8) * 4);\n              fVar16 = *pfVar8;\n              dVar14 = (double)*(float *)(iVar4 + *(int *)(iVar7 + 0x14) * 4) * dVar20 +\n                       (double)(fVar16 * fVar19) +\n                       (double)(*(float *)(iVar4 + *(int *)(iVar7 + 0x20) * 4) * fVar18);\n              if (fVar16 < fVar17) {\n                iVar7 = 0;\n                if (NAN(fVar16)) goto LAB_000cb260;\n                iVar7 = 0;\n                if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                  goto LAB_000cb260;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\nLAB_000cb260:\n                iVar7 = iVar7 * 0x58;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 + iVar3 + 0x28) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x30) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar13;\n                  if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x38) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              iVar4 = iVar4 + *(int *)(iVar9 + 0x2c0) * 4;\n              iVar6 = iVar6 + 1;\n            } while (iVar6 < *(int *)(iVar9 + 0x18));\n          }\n          iVar4 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003fa510)(iVar2,iVar12);\n          if (iVar4 == 0) {\n            param_1[5] = 0;\n          }\n          if (*(int *)(iVar9 + 0x328) != 0) {\n            piVar11 = (int *)param_1[6];\n            (*(code *)PTR_GOMP_atomic_start_003fa2fc)();\n            uVar5 = piVar11[1] + 1;\n            *piVar11 = (uint)(uVar5 < (uint)piVar11[1]) + *piVar11;\n            piVar11[1] = uVar5;\n            (*(code *)PTR_GOMP_atomic_end_003fa450)();\n            iVar4 = (*(code *)PTR_SetImageProgress_003f9ccc)\n                              (iVar9,PTR_s_ltiple_images_003f98e8 + -0x7ed0,\n                               *(undefined4 *)param_1[6],((undefined4 *)param_1[6])[1],0,\n                               *(undefined4 *)(iVar9 + 0x1c));\n            if (iVar4 == 0) {\n              param_1[5] = 0;\n            }\n          }\n        }\n      }\n      iVar10 = iVar10 + 1;\n    } while (iVar24 != iVar10);\n  }\n  return;\n}" { (declaration "undefined *puVar1;" type_identifier (pointer_declarator "*puVar1" * identifier) ;) (declaration "int iVar2;" primitive_type identifier ;) (declaration "int iVar3;" primitive_type identifier ;) (declaration "int iVar4;" primitive_type identifier ;) (declaration "uint uVar5;" type_identifier identifier ;) (declaration "int iVar6;" primitive_type identifier ;) (declaration "int iVar7;" primitive_type identifier ;) (declaration "float *pfVar8;" primitive_type (pointer_declarator "*pfVar8" * identifier) ;) (declaration "int iVar9;" primitive_type identifier ;) (declaration "int iVar10;" primitive_type identifier ;) (declaration "int *piVar11;" primitive_type (pointer_declarator "*piVar11" * identifier) ;) (declaration "int iVar12;" primitive_type identifier ;) (declaration "double dVar13;" primitive_type identifier ;) (declaration "double dVar14;" primitive_type identifier ;) (declaration "double dVar15;" primitive_type identifier ;) (declaration "float fVar16;" primitive_type identifier ;) (declaration "float fVar17;" primitive_type identifier ;) (declaration "float fVar18;" primitive_type identifier ;) (declaration "float fVar19;" primitive_type identifier ;) (declaration "double dVar20;" primitive_type identifier ;) (declaration "double dVar21;" primitive_type identifier ;) (declaration "double dVar22;" primitive_type identifier ;) (declaration "double dVar23;" primitive_type identifier ;) (declaration "int iVar24;" primitive_type identifier ;) (expression_statement "iVar9 = *param_1;" (assignment_expression "iVar9 = *param_1" identifier = (pointer_expression "*param_1" * identifier)) ;) (expression_statement "iVar10 = *(int *)(iVar9 + 0x1c);" (assignment_expression "iVar10 = *(int *)(iVar9 + 0x1c)" identifier = (pointer_expression "*(int *)(iVar9 + 0x1c)" * (cast_expression "(int *)(iVar9 + 0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + 0x1c)" ( (binary_expression "iVar9 + 0x1c" identifier + number_literal) ))))) ;) (expression_statement "iVar2 = (*(code *)PTR_omp_get_num_threads_003fa924)();" (assignment_expression "iVar2 = (*(code *)PTR_omp_get_num_threads_003fa924)()" identifier = (call_expression "(*(code *)PTR_omp_get_num_threads_003fa924)()" (parenthesized_expression "(*(code *)PTR_omp_get_num_threads_003fa924)" ( (pointer_expression "*(code *)PTR_omp_get_num_threads_003fa924" * (cast_expression "(code *)PTR_omp_get_num_threads_003fa924" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( )))) ;) (expression_statement "iVar3 = (*(code *)PTR_omp_get_thread_num_003fa520)();" (assignment_expression "iVar3 = (*(code *)PTR_omp_get_thread_num_003fa520)()" identifier = (call_expression "(*(code *)PTR_omp_get_thread_num_003fa520)()" (parenthesized_expression "(*(code *)PTR_omp_get_thread_num_003fa520)" ( (pointer_expression "*(code *)PTR_omp_get_thread_num_003fa520" * (cast_expression "(code *)PTR_omp_get_thread_num_003fa520" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( )))) ;) (expression_statement "puVar1 = PTR_LAB_003f98e0;" (assignment_expression "puVar1 = PTR_LAB_003f98e0" identifier = identifier) ;) (if_statement "if (iVar2 == 0) {\n    trap(7);\n  }" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 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 "iVar24 = iVar10 / iVar2;" (assignment_expression "iVar24 = iVar10 / iVar2" identifier = (binary_expression "iVar10 / iVar2" identifier / identifier)) ;) (expression_statement "iVar10 = iVar10 % iVar2;" (assignment_expression "iVar10 = iVar10 % iVar2" identifier = (binary_expression "iVar10 % iVar2" identifier % identifier)) ;) (if_statement "if (iVar3 < iVar10) {\n    iVar24 = iVar24 + 1;\n    iVar10 = 0;\n  }" if (parenthesized_expression "(iVar3 < iVar10)" ( (binary_expression "iVar3 < iVar10" identifier < identifier) )) (compound_statement "{\n    iVar24 = iVar24 + 1;\n    iVar10 = 0;\n  }" { (expression_statement "iVar24 = iVar24 + 1;" (assignment_expression "iVar24 = iVar24 + 1" identifier = (binary_expression "iVar24 + 1" identifier + number_literal)) ;) (expression_statement "iVar10 = 0;" (assignment_expression "iVar10 = 0" identifier = number_literal) ;) })) (expression_statement "iVar10 = iVar24 * iVar3 + iVar10;" (assignment_expression "iVar10 = iVar24 * iVar3 + iVar10" identifier = (binary_expression "iVar24 * iVar3 + iVar10" (binary_expression "iVar24 * iVar3" identifier * identifier) + identifier)) ;) (expression_statement "iVar24 = iVar24 + iVar10;" (assignment_expression "iVar24 = iVar24 + iVar10" identifier = (binary_expression "iVar24 + iVar10" identifier + identifier)) ;) (if_statement "if (iVar10 < iVar24) {\n    iVar3 = param_1[4];\n    iVar2 = param_1[2];\n    iVar12 = param_1[1];\n    dVar20 = *(double *)(PTR_s_ltiple_images_003f98e8 + -0x77c0);\n    dVar13 = *(double *)(PTR_LAB_003f98e0 + 0x43d0);\n    dVar21 = *(double *)(PTR_LAB_003f98e0 + 0x43e0);\n    do {\n      if (param_1[5] != 0) {\n        iVar4 = (*(code *)PTR_GetCacheViewAuthenticPixels_003fa664)\n                          (iVar2,0,iVar10,*(undefined4 *)(iVar9 + 0x18),1,iVar12);\n        if (iVar4 == 0) {\n          param_1[5] = 0;\n        }\n        else {\n          iVar6 = 0;\n          if (0 < *(int *)(iVar9 + 0x18)) {\n            fVar19 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x7750);\n            fVar18 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x774c);\n            fVar17 = *(float *)(PTR_LAB_003f98e0 + 0x4aa8);\n            dVar23 = *(double *)(puVar1 + 0x43d0);\n            dVar22 = *(double *)(puVar1 + 0x43e0);\n            do {\n              iVar7 = *(int *)(iVar9 + 0x2d0);\n              pfVar8 = (float *)(iVar4 + *(int *)(iVar7 + 8) * 4);\n              fVar16 = *pfVar8;\n              dVar14 = (double)*(float *)(iVar4 + *(int *)(iVar7 + 0x14) * 4) * dVar20 +\n                       (double)(fVar16 * fVar19) +\n                       (double)(*(float *)(iVar4 + *(int *)(iVar7 + 0x20) * 4) * fVar18);\n              if (fVar16 < fVar17) {\n                iVar7 = 0;\n                if (NAN(fVar16)) goto LAB_000cb260;\n                iVar7 = 0;\n                if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                  goto LAB_000cb260;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\nLAB_000cb260:\n                iVar7 = iVar7 * 0x58;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 + iVar3 + 0x28) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x30) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar13;\n                  if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x38) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              iVar4 = iVar4 + *(int *)(iVar9 + 0x2c0) * 4;\n              iVar6 = iVar6 + 1;\n            } while (iVar6 < *(int *)(iVar9 + 0x18));\n          }\n          iVar4 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003fa510)(iVar2,iVar12);\n          if (iVar4 == 0) {\n            param_1[5] = 0;\n          }\n          if (*(int *)(iVar9 + 0x328) != 0) {\n            piVar11 = (int *)param_1[6];\n            (*(code *)PTR_GOMP_atomic_start_003fa2fc)();\n            uVar5 = piVar11[1] + 1;\n            *piVar11 = (uint)(uVar5 < (uint)piVar11[1]) + *piVar11;\n            piVar11[1] = uVar5;\n            (*(code *)PTR_GOMP_atomic_end_003fa450)();\n            iVar4 = (*(code *)PTR_SetImageProgress_003f9ccc)\n                              (iVar9,PTR_s_ltiple_images_003f98e8 + -0x7ed0,\n                               *(undefined4 *)param_1[6],((undefined4 *)param_1[6])[1],0,\n                               *(undefined4 *)(iVar9 + 0x1c));\n            if (iVar4 == 0) {\n              param_1[5] = 0;\n            }\n          }\n        }\n      }\n      iVar10 = iVar10 + 1;\n    } while (iVar24 != iVar10);\n  }" if (parenthesized_expression "(iVar10 < iVar24)" ( (binary_expression "iVar10 < iVar24" identifier < identifier) )) (compound_statement "{\n    iVar3 = param_1[4];\n    iVar2 = param_1[2];\n    iVar12 = param_1[1];\n    dVar20 = *(double *)(PTR_s_ltiple_images_003f98e8 + -0x77c0);\n    dVar13 = *(double *)(PTR_LAB_003f98e0 + 0x43d0);\n    dVar21 = *(double *)(PTR_LAB_003f98e0 + 0x43e0);\n    do {\n      if (param_1[5] != 0) {\n        iVar4 = (*(code *)PTR_GetCacheViewAuthenticPixels_003fa664)\n                          (iVar2,0,iVar10,*(undefined4 *)(iVar9 + 0x18),1,iVar12);\n        if (iVar4 == 0) {\n          param_1[5] = 0;\n        }\n        else {\n          iVar6 = 0;\n          if (0 < *(int *)(iVar9 + 0x18)) {\n            fVar19 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x7750);\n            fVar18 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x774c);\n            fVar17 = *(float *)(PTR_LAB_003f98e0 + 0x4aa8);\n            dVar23 = *(double *)(puVar1 + 0x43d0);\n            dVar22 = *(double *)(puVar1 + 0x43e0);\n            do {\n              iVar7 = *(int *)(iVar9 + 0x2d0);\n              pfVar8 = (float *)(iVar4 + *(int *)(iVar7 + 8) * 4);\n              fVar16 = *pfVar8;\n              dVar14 = (double)*(float *)(iVar4 + *(int *)(iVar7 + 0x14) * 4) * dVar20 +\n                       (double)(fVar16 * fVar19) +\n                       (double)(*(float *)(iVar4 + *(int *)(iVar7 + 0x20) * 4) * fVar18);\n              if (fVar16 < fVar17) {\n                iVar7 = 0;\n                if (NAN(fVar16)) goto LAB_000cb260;\n                iVar7 = 0;\n                if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                  goto LAB_000cb260;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\nLAB_000cb260:\n                iVar7 = iVar7 * 0x58;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 + iVar3 + 0x28) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x30) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar13;\n                  if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x38) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              iVar4 = iVar4 + *(int *)(iVar9 + 0x2c0) * 4;\n              iVar6 = iVar6 + 1;\n            } while (iVar6 < *(int *)(iVar9 + 0x18));\n          }\n          iVar4 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003fa510)(iVar2,iVar12);\n          if (iVar4 == 0) {\n            param_1[5] = 0;\n          }\n          if (*(int *)(iVar9 + 0x328) != 0) {\n            piVar11 = (int *)param_1[6];\n            (*(code *)PTR_GOMP_atomic_start_003fa2fc)();\n            uVar5 = piVar11[1] + 1;\n            *piVar11 = (uint)(uVar5 < (uint)piVar11[1]) + *piVar11;\n            piVar11[1] = uVar5;\n            (*(code *)PTR_GOMP_atomic_end_003fa450)();\n            iVar4 = (*(code *)PTR_SetImageProgress_003f9ccc)\n                              (iVar9,PTR_s_ltiple_images_003f98e8 + -0x7ed0,\n                               *(undefined4 *)param_1[6],((undefined4 *)param_1[6])[1],0,\n                               *(undefined4 *)(iVar9 + 0x1c));\n            if (iVar4 == 0) {\n              param_1[5] = 0;\n            }\n          }\n        }\n      }\n      iVar10 = iVar10 + 1;\n    } while (iVar24 != iVar10);\n  }" { (expression_statement "iVar3 = param_1[4];" (assignment_expression "iVar3 = param_1[4]" identifier = (subscript_expression "param_1[4]" identifier [ number_literal ])) ;) (expression_statement "iVar2 = param_1[2];" (assignment_expression "iVar2 = param_1[2]" identifier = (subscript_expression "param_1[2]" identifier [ number_literal ])) ;) (expression_statement "iVar12 = param_1[1];" (assignment_expression "iVar12 = param_1[1]" identifier = (subscript_expression "param_1[1]" identifier [ number_literal ])) ;) (expression_statement "dVar20 = *(double *)(PTR_s_ltiple_images_003f98e8 + -0x77c0);" (assignment_expression "dVar20 = *(double *)(PTR_s_ltiple_images_003f98e8 + -0x77c0)" identifier = (pointer_expression "*(double *)(PTR_s_ltiple_images_003f98e8 + -0x77c0)" * (cast_expression "(double *)(PTR_s_ltiple_images_003f98e8 + -0x77c0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_s_ltiple_images_003f98e8 + -0x77c0)" ( (binary_expression "PTR_s_ltiple_images_003f98e8 + -0x77c0" identifier + number_literal) ))))) ;) (expression_statement "dVar13 = *(double *)(PTR_LAB_003f98e0 + 0x43d0);" (assignment_expression "dVar13 = *(double *)(PTR_LAB_003f98e0 + 0x43d0)" identifier = (pointer_expression "*(double *)(PTR_LAB_003f98e0 + 0x43d0)" * (cast_expression "(double *)(PTR_LAB_003f98e0 + 0x43d0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_003f98e0 + 0x43d0)" ( (binary_expression "PTR_LAB_003f98e0 + 0x43d0" identifier + number_literal) ))))) ;) (expression_statement "dVar21 = *(double *)(PTR_LAB_003f98e0 + 0x43e0);" (assignment_expression "dVar21 = *(double *)(PTR_LAB_003f98e0 + 0x43e0)" identifier = (pointer_expression "*(double *)(PTR_LAB_003f98e0 + 0x43e0)" * (cast_expression "(double *)(PTR_LAB_003f98e0 + 0x43e0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_003f98e0 + 0x43e0)" ( (binary_expression "PTR_LAB_003f98e0 + 0x43e0" identifier + number_literal) ))))) ;) (do_statement "do {\n      if (param_1[5] != 0) {\n        iVar4 = (*(code *)PTR_GetCacheViewAuthenticPixels_003fa664)\n                          (iVar2,0,iVar10,*(undefined4 *)(iVar9 + 0x18),1,iVar12);\n        if (iVar4 == 0) {\n          param_1[5] = 0;\n        }\n        else {\n          iVar6 = 0;\n          if (0 < *(int *)(iVar9 + 0x18)) {\n            fVar19 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x7750);\n            fVar18 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x774c);\n            fVar17 = *(float *)(PTR_LAB_003f98e0 + 0x4aa8);\n            dVar23 = *(double *)(puVar1 + 0x43d0);\n            dVar22 = *(double *)(puVar1 + 0x43e0);\n            do {\n              iVar7 = *(int *)(iVar9 + 0x2d0);\n              pfVar8 = (float *)(iVar4 + *(int *)(iVar7 + 8) * 4);\n              fVar16 = *pfVar8;\n              dVar14 = (double)*(float *)(iVar4 + *(int *)(iVar7 + 0x14) * 4) * dVar20 +\n                       (double)(fVar16 * fVar19) +\n                       (double)(*(float *)(iVar4 + *(int *)(iVar7 + 0x20) * 4) * fVar18);\n              if (fVar16 < fVar17) {\n                iVar7 = 0;\n                if (NAN(fVar16)) goto LAB_000cb260;\n                iVar7 = 0;\n                if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                  goto LAB_000cb260;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\nLAB_000cb260:\n                iVar7 = iVar7 * 0x58;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 + iVar3 + 0x28) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x30) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar13;\n                  if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x38) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              iVar4 = iVar4 + *(int *)(iVar9 + 0x2c0) * 4;\n              iVar6 = iVar6 + 1;\n            } while (iVar6 < *(int *)(iVar9 + 0x18));\n          }\n          iVar4 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003fa510)(iVar2,iVar12);\n          if (iVar4 == 0) {\n            param_1[5] = 0;\n          }\n          if (*(int *)(iVar9 + 0x328) != 0) {\n            piVar11 = (int *)param_1[6];\n            (*(code *)PTR_GOMP_atomic_start_003fa2fc)();\n            uVar5 = piVar11[1] + 1;\n            *piVar11 = (uint)(uVar5 < (uint)piVar11[1]) + *piVar11;\n            piVar11[1] = uVar5;\n            (*(code *)PTR_GOMP_atomic_end_003fa450)();\n            iVar4 = (*(code *)PTR_SetImageProgress_003f9ccc)\n                              (iVar9,PTR_s_ltiple_images_003f98e8 + -0x7ed0,\n                               *(undefined4 *)param_1[6],((undefined4 *)param_1[6])[1],0,\n                               *(undefined4 *)(iVar9 + 0x1c));\n            if (iVar4 == 0) {\n              param_1[5] = 0;\n            }\n          }\n        }\n      }\n      iVar10 = iVar10 + 1;\n    } while (iVar24 != iVar10);" do (compound_statement "{\n      if (param_1[5] != 0) {\n        iVar4 = (*(code *)PTR_GetCacheViewAuthenticPixels_003fa664)\n                          (iVar2,0,iVar10,*(undefined4 *)(iVar9 + 0x18),1,iVar12);\n        if (iVar4 == 0) {\n          param_1[5] = 0;\n        }\n        else {\n          iVar6 = 0;\n          if (0 < *(int *)(iVar9 + 0x18)) {\n            fVar19 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x7750);\n            fVar18 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x774c);\n            fVar17 = *(float *)(PTR_LAB_003f98e0 + 0x4aa8);\n            dVar23 = *(double *)(puVar1 + 0x43d0);\n            dVar22 = *(double *)(puVar1 + 0x43e0);\n            do {\n              iVar7 = *(int *)(iVar9 + 0x2d0);\n              pfVar8 = (float *)(iVar4 + *(int *)(iVar7 + 8) * 4);\n              fVar16 = *pfVar8;\n              dVar14 = (double)*(float *)(iVar4 + *(int *)(iVar7 + 0x14) * 4) * dVar20 +\n                       (double)(fVar16 * fVar19) +\n                       (double)(*(float *)(iVar4 + *(int *)(iVar7 + 0x20) * 4) * fVar18);\n              if (fVar16 < fVar17) {\n                iVar7 = 0;\n                if (NAN(fVar16)) goto LAB_000cb260;\n                iVar7 = 0;\n                if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                  goto LAB_000cb260;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\nLAB_000cb260:\n                iVar7 = iVar7 * 0x58;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 + iVar3 + 0x28) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x30) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar13;\n                  if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x38) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              iVar4 = iVar4 + *(int *)(iVar9 + 0x2c0) * 4;\n              iVar6 = iVar6 + 1;\n            } while (iVar6 < *(int *)(iVar9 + 0x18));\n          }\n          iVar4 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003fa510)(iVar2,iVar12);\n          if (iVar4 == 0) {\n            param_1[5] = 0;\n          }\n          if (*(int *)(iVar9 + 0x328) != 0) {\n            piVar11 = (int *)param_1[6];\n            (*(code *)PTR_GOMP_atomic_start_003fa2fc)();\n            uVar5 = piVar11[1] + 1;\n            *piVar11 = (uint)(uVar5 < (uint)piVar11[1]) + *piVar11;\n            piVar11[1] = uVar5;\n            (*(code *)PTR_GOMP_atomic_end_003fa450)();\n            iVar4 = (*(code *)PTR_SetImageProgress_003f9ccc)\n                              (iVar9,PTR_s_ltiple_images_003f98e8 + -0x7ed0,\n                               *(undefined4 *)param_1[6],((undefined4 *)param_1[6])[1],0,\n                               *(undefined4 *)(iVar9 + 0x1c));\n            if (iVar4 == 0) {\n              param_1[5] = 0;\n            }\n          }\n        }\n      }\n      iVar10 = iVar10 + 1;\n    }" { (if_statement "if (param_1[5] != 0) {\n        iVar4 = (*(code *)PTR_GetCacheViewAuthenticPixels_003fa664)\n                          (iVar2,0,iVar10,*(undefined4 *)(iVar9 + 0x18),1,iVar12);\n        if (iVar4 == 0) {\n          param_1[5] = 0;\n        }\n        else {\n          iVar6 = 0;\n          if (0 < *(int *)(iVar9 + 0x18)) {\n            fVar19 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x7750);\n            fVar18 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x774c);\n            fVar17 = *(float *)(PTR_LAB_003f98e0 + 0x4aa8);\n            dVar23 = *(double *)(puVar1 + 0x43d0);\n            dVar22 = *(double *)(puVar1 + 0x43e0);\n            do {\n              iVar7 = *(int *)(iVar9 + 0x2d0);\n              pfVar8 = (float *)(iVar4 + *(int *)(iVar7 + 8) * 4);\n              fVar16 = *pfVar8;\n              dVar14 = (double)*(float *)(iVar4 + *(int *)(iVar7 + 0x14) * 4) * dVar20 +\n                       (double)(fVar16 * fVar19) +\n                       (double)(*(float *)(iVar4 + *(int *)(iVar7 + 0x20) * 4) * fVar18);\n              if (fVar16 < fVar17) {\n                iVar7 = 0;\n                if (NAN(fVar16)) goto LAB_000cb260;\n                iVar7 = 0;\n                if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                  goto LAB_000cb260;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\nLAB_000cb260:\n                iVar7 = iVar7 * 0x58;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 + iVar3 + 0x28) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x30) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar13;\n                  if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x38) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              iVar4 = iVar4 + *(int *)(iVar9 + 0x2c0) * 4;\n              iVar6 = iVar6 + 1;\n            } while (iVar6 < *(int *)(iVar9 + 0x18));\n          }\n          iVar4 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003fa510)(iVar2,iVar12);\n          if (iVar4 == 0) {\n            param_1[5] = 0;\n          }\n          if (*(int *)(iVar9 + 0x328) != 0) {\n            piVar11 = (int *)param_1[6];\n            (*(code *)PTR_GOMP_atomic_start_003fa2fc)();\n            uVar5 = piVar11[1] + 1;\n            *piVar11 = (uint)(uVar5 < (uint)piVar11[1]) + *piVar11;\n            piVar11[1] = uVar5;\n            (*(code *)PTR_GOMP_atomic_end_003fa450)();\n            iVar4 = (*(code *)PTR_SetImageProgress_003f9ccc)\n                              (iVar9,PTR_s_ltiple_images_003f98e8 + -0x7ed0,\n                               *(undefined4 *)param_1[6],((undefined4 *)param_1[6])[1],0,\n                               *(undefined4 *)(iVar9 + 0x1c));\n            if (iVar4 == 0) {\n              param_1[5] = 0;\n            }\n          }\n        }\n      }" if (parenthesized_expression "(param_1[5] != 0)" ( (binary_expression "param_1[5] != 0" (subscript_expression "param_1[5]" identifier [ number_literal ]) != number_literal) )) (compound_statement "{\n        iVar4 = (*(code *)PTR_GetCacheViewAuthenticPixels_003fa664)\n                          (iVar2,0,iVar10,*(undefined4 *)(iVar9 + 0x18),1,iVar12);\n        if (iVar4 == 0) {\n          param_1[5] = 0;\n        }\n        else {\n          iVar6 = 0;\n          if (0 < *(int *)(iVar9 + 0x18)) {\n            fVar19 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x7750);\n            fVar18 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x774c);\n            fVar17 = *(float *)(PTR_LAB_003f98e0 + 0x4aa8);\n            dVar23 = *(double *)(puVar1 + 0x43d0);\n            dVar22 = *(double *)(puVar1 + 0x43e0);\n            do {\n              iVar7 = *(int *)(iVar9 + 0x2d0);\n              pfVar8 = (float *)(iVar4 + *(int *)(iVar7 + 8) * 4);\n              fVar16 = *pfVar8;\n              dVar14 = (double)*(float *)(iVar4 + *(int *)(iVar7 + 0x14) * 4) * dVar20 +\n                       (double)(fVar16 * fVar19) +\n                       (double)(*(float *)(iVar4 + *(int *)(iVar7 + 0x20) * 4) * fVar18);\n              if (fVar16 < fVar17) {\n                iVar7 = 0;\n                if (NAN(fVar16)) goto LAB_000cb260;\n                iVar7 = 0;\n                if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                  goto LAB_000cb260;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\nLAB_000cb260:\n                iVar7 = iVar7 * 0x58;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 + iVar3 + 0x28) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x30) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar13;\n                  if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x38) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              iVar4 = iVar4 + *(int *)(iVar9 + 0x2c0) * 4;\n              iVar6 = iVar6 + 1;\n            } while (iVar6 < *(int *)(iVar9 + 0x18));\n          }\n          iVar4 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003fa510)(iVar2,iVar12);\n          if (iVar4 == 0) {\n            param_1[5] = 0;\n          }\n          if (*(int *)(iVar9 + 0x328) != 0) {\n            piVar11 = (int *)param_1[6];\n            (*(code *)PTR_GOMP_atomic_start_003fa2fc)();\n            uVar5 = piVar11[1] + 1;\n            *piVar11 = (uint)(uVar5 < (uint)piVar11[1]) + *piVar11;\n            piVar11[1] = uVar5;\n            (*(code *)PTR_GOMP_atomic_end_003fa450)();\n            iVar4 = (*(code *)PTR_SetImageProgress_003f9ccc)\n                              (iVar9,PTR_s_ltiple_images_003f98e8 + -0x7ed0,\n                               *(undefined4 *)param_1[6],((undefined4 *)param_1[6])[1],0,\n                               *(undefined4 *)(iVar9 + 0x1c));\n            if (iVar4 == 0) {\n              param_1[5] = 0;\n            }\n          }\n        }\n      }" { (expression_statement "iVar4 = (*(code *)PTR_GetCacheViewAuthenticPixels_003fa664)\n                          (iVar2,0,iVar10,*(undefined4 *)(iVar9 + 0x18),1,iVar12);" (assignment_expression "iVar4 = (*(code *)PTR_GetCacheViewAuthenticPixels_003fa664)\n                          (iVar2,0,iVar10,*(undefined4 *)(iVar9 + 0x18),1,iVar12)" identifier = (call_expression "(*(code *)PTR_GetCacheViewAuthenticPixels_003fa664)\n                          (iVar2,0,iVar10,*(undefined4 *)(iVar9 + 0x18),1,iVar12)" (parenthesized_expression "(*(code *)PTR_GetCacheViewAuthenticPixels_003fa664)" ( (pointer_expression "*(code *)PTR_GetCacheViewAuthenticPixels_003fa664" * (cast_expression "(code *)PTR_GetCacheViewAuthenticPixels_003fa664" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar2,0,iVar10,*(undefined4 *)(iVar9 + 0x18),1,iVar12)" ( identifier , number_literal , identifier , (pointer_expression "*(undefined4 *)(iVar9 + 0x18)" * (cast_expression "(undefined4 *)(iVar9 + 0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + 0x18)" ( (binary_expression "iVar9 + 0x18" identifier + number_literal) )))) , number_literal , identifier )))) ;) (if_statement "if (iVar4 == 0) {\n          param_1[5] = 0;\n        }\n        else {\n          iVar6 = 0;\n          if (0 < *(int *)(iVar9 + 0x18)) {\n            fVar19 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x7750);\n            fVar18 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x774c);\n            fVar17 = *(float *)(PTR_LAB_003f98e0 + 0x4aa8);\n            dVar23 = *(double *)(puVar1 + 0x43d0);\n            dVar22 = *(double *)(puVar1 + 0x43e0);\n            do {\n              iVar7 = *(int *)(iVar9 + 0x2d0);\n              pfVar8 = (float *)(iVar4 + *(int *)(iVar7 + 8) * 4);\n              fVar16 = *pfVar8;\n              dVar14 = (double)*(float *)(iVar4 + *(int *)(iVar7 + 0x14) * 4) * dVar20 +\n                       (double)(fVar16 * fVar19) +\n                       (double)(*(float *)(iVar4 + *(int *)(iVar7 + 0x20) * 4) * fVar18);\n              if (fVar16 < fVar17) {\n                iVar7 = 0;\n                if (NAN(fVar16)) goto LAB_000cb260;\n                iVar7 = 0;\n                if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                  goto LAB_000cb260;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\nLAB_000cb260:\n                iVar7 = iVar7 * 0x58;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 + iVar3 + 0x28) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x30) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar13;\n                  if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x38) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              iVar4 = iVar4 + *(int *)(iVar9 + 0x2c0) * 4;\n              iVar6 = iVar6 + 1;\n            } while (iVar6 < *(int *)(iVar9 + 0x18));\n          }\n          iVar4 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003fa510)(iVar2,iVar12);\n          if (iVar4 == 0) {\n            param_1[5] = 0;\n          }\n          if (*(int *)(iVar9 + 0x328) != 0) {\n            piVar11 = (int *)param_1[6];\n            (*(code *)PTR_GOMP_atomic_start_003fa2fc)();\n            uVar5 = piVar11[1] + 1;\n            *piVar11 = (uint)(uVar5 < (uint)piVar11[1]) + *piVar11;\n            piVar11[1] = uVar5;\n            (*(code *)PTR_GOMP_atomic_end_003fa450)();\n            iVar4 = (*(code *)PTR_SetImageProgress_003f9ccc)\n                              (iVar9,PTR_s_ltiple_images_003f98e8 + -0x7ed0,\n                               *(undefined4 *)param_1[6],((undefined4 *)param_1[6])[1],0,\n                               *(undefined4 *)(iVar9 + 0x1c));\n            if (iVar4 == 0) {\n              param_1[5] = 0;\n            }\n          }\n        }" if (parenthesized_expression "(iVar4 == 0)" ( (binary_expression "iVar4 == 0" identifier == number_literal) )) (compound_statement "{\n          param_1[5] = 0;\n        }" { (expression_statement "param_1[5] = 0;" (assignment_expression "param_1[5] = 0" (subscript_expression "param_1[5]" identifier [ number_literal ]) = number_literal) ;) }) (else_clause "else {\n          iVar6 = 0;\n          if (0 < *(int *)(iVar9 + 0x18)) {\n            fVar19 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x7750);\n            fVar18 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x774c);\n            fVar17 = *(float *)(PTR_LAB_003f98e0 + 0x4aa8);\n            dVar23 = *(double *)(puVar1 + 0x43d0);\n            dVar22 = *(double *)(puVar1 + 0x43e0);\n            do {\n              iVar7 = *(int *)(iVar9 + 0x2d0);\n              pfVar8 = (float *)(iVar4 + *(int *)(iVar7 + 8) * 4);\n              fVar16 = *pfVar8;\n              dVar14 = (double)*(float *)(iVar4 + *(int *)(iVar7 + 0x14) * 4) * dVar20 +\n                       (double)(fVar16 * fVar19) +\n                       (double)(*(float *)(iVar4 + *(int *)(iVar7 + 0x20) * 4) * fVar18);\n              if (fVar16 < fVar17) {\n                iVar7 = 0;\n                if (NAN(fVar16)) goto LAB_000cb260;\n                iVar7 = 0;\n                if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                  goto LAB_000cb260;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\nLAB_000cb260:\n                iVar7 = iVar7 * 0x58;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 + iVar3 + 0x28) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x30) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar13;\n                  if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x38) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              iVar4 = iVar4 + *(int *)(iVar9 + 0x2c0) * 4;\n              iVar6 = iVar6 + 1;\n            } while (iVar6 < *(int *)(iVar9 + 0x18));\n          }\n          iVar4 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003fa510)(iVar2,iVar12);\n          if (iVar4 == 0) {\n            param_1[5] = 0;\n          }\n          if (*(int *)(iVar9 + 0x328) != 0) {\n            piVar11 = (int *)param_1[6];\n            (*(code *)PTR_GOMP_atomic_start_003fa2fc)();\n            uVar5 = piVar11[1] + 1;\n            *piVar11 = (uint)(uVar5 < (uint)piVar11[1]) + *piVar11;\n            piVar11[1] = uVar5;\n            (*(code *)PTR_GOMP_atomic_end_003fa450)();\n            iVar4 = (*(code *)PTR_SetImageProgress_003f9ccc)\n                              (iVar9,PTR_s_ltiple_images_003f98e8 + -0x7ed0,\n                               *(undefined4 *)param_1[6],((undefined4 *)param_1[6])[1],0,\n                               *(undefined4 *)(iVar9 + 0x1c));\n            if (iVar4 == 0) {\n              param_1[5] = 0;\n            }\n          }\n        }" else (compound_statement "{\n          iVar6 = 0;\n          if (0 < *(int *)(iVar9 + 0x18)) {\n            fVar19 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x7750);\n            fVar18 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x774c);\n            fVar17 = *(float *)(PTR_LAB_003f98e0 + 0x4aa8);\n            dVar23 = *(double *)(puVar1 + 0x43d0);\n            dVar22 = *(double *)(puVar1 + 0x43e0);\n            do {\n              iVar7 = *(int *)(iVar9 + 0x2d0);\n              pfVar8 = (float *)(iVar4 + *(int *)(iVar7 + 8) * 4);\n              fVar16 = *pfVar8;\n              dVar14 = (double)*(float *)(iVar4 + *(int *)(iVar7 + 0x14) * 4) * dVar20 +\n                       (double)(fVar16 * fVar19) +\n                       (double)(*(float *)(iVar4 + *(int *)(iVar7 + 0x20) * 4) * fVar18);\n              if (fVar16 < fVar17) {\n                iVar7 = 0;\n                if (NAN(fVar16)) goto LAB_000cb260;\n                iVar7 = 0;\n                if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                  goto LAB_000cb260;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\nLAB_000cb260:\n                iVar7 = iVar7 * 0x58;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 + iVar3 + 0x28) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x30) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar13;\n                  if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x38) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              iVar4 = iVar4 + *(int *)(iVar9 + 0x2c0) * 4;\n              iVar6 = iVar6 + 1;\n            } while (iVar6 < *(int *)(iVar9 + 0x18));\n          }\n          iVar4 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003fa510)(iVar2,iVar12);\n          if (iVar4 == 0) {\n            param_1[5] = 0;\n          }\n          if (*(int *)(iVar9 + 0x328) != 0) {\n            piVar11 = (int *)param_1[6];\n            (*(code *)PTR_GOMP_atomic_start_003fa2fc)();\n            uVar5 = piVar11[1] + 1;\n            *piVar11 = (uint)(uVar5 < (uint)piVar11[1]) + *piVar11;\n            piVar11[1] = uVar5;\n            (*(code *)PTR_GOMP_atomic_end_003fa450)();\n            iVar4 = (*(code *)PTR_SetImageProgress_003f9ccc)\n                              (iVar9,PTR_s_ltiple_images_003f98e8 + -0x7ed0,\n                               *(undefined4 *)param_1[6],((undefined4 *)param_1[6])[1],0,\n                               *(undefined4 *)(iVar9 + 0x1c));\n            if (iVar4 == 0) {\n              param_1[5] = 0;\n            }\n          }\n        }" { (expression_statement "iVar6 = 0;" (assignment_expression "iVar6 = 0" identifier = number_literal) ;) (if_statement "if (0 < *(int *)(iVar9 + 0x18)) {\n            fVar19 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x7750);\n            fVar18 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x774c);\n            fVar17 = *(float *)(PTR_LAB_003f98e0 + 0x4aa8);\n            dVar23 = *(double *)(puVar1 + 0x43d0);\n            dVar22 = *(double *)(puVar1 + 0x43e0);\n            do {\n              iVar7 = *(int *)(iVar9 + 0x2d0);\n              pfVar8 = (float *)(iVar4 + *(int *)(iVar7 + 8) * 4);\n              fVar16 = *pfVar8;\n              dVar14 = (double)*(float *)(iVar4 + *(int *)(iVar7 + 0x14) * 4) * dVar20 +\n                       (double)(fVar16 * fVar19) +\n                       (double)(*(float *)(iVar4 + *(int *)(iVar7 + 0x20) * 4) * fVar18);\n              if (fVar16 < fVar17) {\n                iVar7 = 0;\n                if (NAN(fVar16)) goto LAB_000cb260;\n                iVar7 = 0;\n                if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                  goto LAB_000cb260;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\nLAB_000cb260:\n                iVar7 = iVar7 * 0x58;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 + iVar3 + 0x28) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x30) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar13;\n                  if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x38) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              iVar4 = iVar4 + *(int *)(iVar9 + 0x2c0) * 4;\n              iVar6 = iVar6 + 1;\n            } while (iVar6 < *(int *)(iVar9 + 0x18));\n          }" if (parenthesized_expression "(0 < *(int *)(iVar9 + 0x18))" ( (binary_expression "0 < *(int *)(iVar9 + 0x18)" number_literal < (pointer_expression "*(int *)(iVar9 + 0x18)" * (cast_expression "(int *)(iVar9 + 0x18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + 0x18)" ( (binary_expression "iVar9 + 0x18" identifier + number_literal) ))))) )) (compound_statement "{\n            fVar19 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x7750);\n            fVar18 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x774c);\n            fVar17 = *(float *)(PTR_LAB_003f98e0 + 0x4aa8);\n            dVar23 = *(double *)(puVar1 + 0x43d0);\n            dVar22 = *(double *)(puVar1 + 0x43e0);\n            do {\n              iVar7 = *(int *)(iVar9 + 0x2d0);\n              pfVar8 = (float *)(iVar4 + *(int *)(iVar7 + 8) * 4);\n              fVar16 = *pfVar8;\n              dVar14 = (double)*(float *)(iVar4 + *(int *)(iVar7 + 0x14) * 4) * dVar20 +\n                       (double)(fVar16 * fVar19) +\n                       (double)(*(float *)(iVar4 + *(int *)(iVar7 + 0x20) * 4) * fVar18);\n              if (fVar16 < fVar17) {\n                iVar7 = 0;\n                if (NAN(fVar16)) goto LAB_000cb260;\n                iVar7 = 0;\n                if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                  goto LAB_000cb260;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\nLAB_000cb260:\n                iVar7 = iVar7 * 0x58;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 + iVar3 + 0x28) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x30) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar13;\n                  if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x38) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              iVar4 = iVar4 + *(int *)(iVar9 + 0x2c0) * 4;\n              iVar6 = iVar6 + 1;\n            } while (iVar6 < *(int *)(iVar9 + 0x18));\n          }" { (expression_statement "fVar19 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x7750);" (assignment_expression "fVar19 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x7750)" identifier = (pointer_expression "*(float *)(PTR_s_ltiple_images_003f98e8 + -0x7750)" * (cast_expression "(float *)(PTR_s_ltiple_images_003f98e8 + -0x7750)" ( (type_descriptor "float *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_s_ltiple_images_003f98e8 + -0x7750)" ( (binary_expression "PTR_s_ltiple_images_003f98e8 + -0x7750" identifier + number_literal) ))))) ;) (expression_statement "fVar18 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x774c);" (assignment_expression "fVar18 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x774c)" identifier = (pointer_expression "*(float *)(PTR_s_ltiple_images_003f98e8 + -0x774c)" * (cast_expression "(float *)(PTR_s_ltiple_images_003f98e8 + -0x774c)" ( (type_descriptor "float *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_s_ltiple_images_003f98e8 + -0x774c)" ( (binary_expression "PTR_s_ltiple_images_003f98e8 + -0x774c" identifier + number_literal) ))))) ;) (expression_statement "fVar17 = *(float *)(PTR_LAB_003f98e0 + 0x4aa8);" (assignment_expression "fVar17 = *(float *)(PTR_LAB_003f98e0 + 0x4aa8)" identifier = (pointer_expression "*(float *)(PTR_LAB_003f98e0 + 0x4aa8)" * (cast_expression "(float *)(PTR_LAB_003f98e0 + 0x4aa8)" ( (type_descriptor "float *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_003f98e0 + 0x4aa8)" ( (binary_expression "PTR_LAB_003f98e0 + 0x4aa8" identifier + number_literal) ))))) ;) (expression_statement "dVar23 = *(double *)(puVar1 + 0x43d0);" (assignment_expression "dVar23 = *(double *)(puVar1 + 0x43d0)" identifier = (pointer_expression "*(double *)(puVar1 + 0x43d0)" * (cast_expression "(double *)(puVar1 + 0x43d0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar1 + 0x43d0)" ( (binary_expression "puVar1 + 0x43d0" identifier + number_literal) ))))) ;) (expression_statement "dVar22 = *(double *)(puVar1 + 0x43e0);" (assignment_expression "dVar22 = *(double *)(puVar1 + 0x43e0)" identifier = (pointer_expression "*(double *)(puVar1 + 0x43e0)" * (cast_expression "(double *)(puVar1 + 0x43e0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar1 + 0x43e0)" ( (binary_expression "puVar1 + 0x43e0" identifier + number_literal) ))))) ;) (do_statement "do {\n              iVar7 = *(int *)(iVar9 + 0x2d0);\n              pfVar8 = (float *)(iVar4 + *(int *)(iVar7 + 8) * 4);\n              fVar16 = *pfVar8;\n              dVar14 = (double)*(float *)(iVar4 + *(int *)(iVar7 + 0x14) * 4) * dVar20 +\n                       (double)(fVar16 * fVar19) +\n                       (double)(*(float *)(iVar4 + *(int *)(iVar7 + 0x20) * 4) * fVar18);\n              if (fVar16 < fVar17) {\n                iVar7 = 0;\n                if (NAN(fVar16)) goto LAB_000cb260;\n                iVar7 = 0;\n                if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                  goto LAB_000cb260;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\nLAB_000cb260:\n                iVar7 = iVar7 * 0x58;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 + iVar3 + 0x28) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x30) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar13;\n                  if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x38) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              iVar4 = iVar4 + *(int *)(iVar9 + 0x2c0) * 4;\n              iVar6 = iVar6 + 1;\n            } while (iVar6 < *(int *)(iVar9 + 0x18));" do (compound_statement "{\n              iVar7 = *(int *)(iVar9 + 0x2d0);\n              pfVar8 = (float *)(iVar4 + *(int *)(iVar7 + 8) * 4);\n              fVar16 = *pfVar8;\n              dVar14 = (double)*(float *)(iVar4 + *(int *)(iVar7 + 0x14) * 4) * dVar20 +\n                       (double)(fVar16 * fVar19) +\n                       (double)(*(float *)(iVar4 + *(int *)(iVar7 + 0x20) * 4) * fVar18);\n              if (fVar16 < fVar17) {\n                iVar7 = 0;\n                if (NAN(fVar16)) goto LAB_000cb260;\n                iVar7 = 0;\n                if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                  goto LAB_000cb260;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\nLAB_000cb260:\n                iVar7 = iVar7 * 0x58;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 + iVar3 + 0x28) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x30) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar13;\n                  if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x38) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              iVar4 = iVar4 + *(int *)(iVar9 + 0x2c0) * 4;\n              iVar6 = iVar6 + 1;\n            }" { (expression_statement "iVar7 = *(int *)(iVar9 + 0x2d0);" (assignment_expression "iVar7 = *(int *)(iVar9 + 0x2d0)" identifier = (pointer_expression "*(int *)(iVar9 + 0x2d0)" * (cast_expression "(int *)(iVar9 + 0x2d0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + 0x2d0)" ( (binary_expression "iVar9 + 0x2d0" identifier + number_literal) ))))) ;) (expression_statement "pfVar8 = (float *)(iVar4 + *(int *)(iVar7 + 8) * 4);" (assignment_expression "pfVar8 = (float *)(iVar4 + *(int *)(iVar7 + 8) * 4)" identifier = (cast_expression "(float *)(iVar4 + *(int *)(iVar7 + 8) * 4)" ( (type_descriptor "float *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar4 + *(int *)(iVar7 + 8) * 4)" ( (binary_expression "iVar4 + *(int *)(iVar7 + 8) * 4" identifier + (binary_expression "*(int *)(iVar7 + 8) * 4" (pointer_expression "*(int *)(iVar7 + 8)" * (cast_expression "(int *)(iVar7 + 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar7 + 8)" ( (binary_expression "iVar7 + 8" identifier + number_literal) )))) * number_literal)) )))) ;) (expression_statement "fVar16 = *pfVar8;" (assignment_expression "fVar16 = *pfVar8" identifier = (pointer_expression "*pfVar8" * identifier)) ;) (expression_statement "dVar14 = (double)*(float *)(iVar4 + *(int *)(iVar7 + 0x14) * 4) * dVar20 +\n                       (double)(fVar16 * fVar19) +\n                       (double)(*(float *)(iVar4 + *(int *)(iVar7 + 0x20) * 4) * fVar18);" (assignment_expression "dVar14 = (double)*(float *)(iVar4 + *(int *)(iVar7 + 0x14) * 4) * dVar20 +\n                       (double)(fVar16 * fVar19) +\n                       (double)(*(float *)(iVar4 + *(int *)(iVar7 + 0x20) * 4) * fVar18)" identifier = (binary_expression "(double)*(float *)(iVar4 + *(int *)(iVar7 + 0x14) * 4) * dVar20 +\n                       (double)(fVar16 * fVar19) +\n                       (double)(*(float *)(iVar4 + *(int *)(iVar7 + 0x20) * 4) * fVar18)" (binary_expression "(double)*(float *)(iVar4 + *(int *)(iVar7 + 0x14) * 4) * dVar20 +\n                       (double)(fVar16 * fVar19)" (binary_expression "(double)*(float *)(iVar4 + *(int *)(iVar7 + 0x14) * 4) * dVar20" (cast_expression "(double)*(float *)(iVar4 + *(int *)(iVar7 + 0x14) * 4)" ( (type_descriptor "double" primitive_type) ) (pointer_expression "*(float *)(iVar4 + *(int *)(iVar7 + 0x14) * 4)" * (cast_expression "(float *)(iVar4 + *(int *)(iVar7 + 0x14) * 4)" ( (type_descriptor "float *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar4 + *(int *)(iVar7 + 0x14) * 4)" ( (binary_expression "iVar4 + *(int *)(iVar7 + 0x14) * 4" identifier + (binary_expression "*(int *)(iVar7 + 0x14) * 4" (pointer_expression "*(int *)(iVar7 + 0x14)" * (cast_expression "(int *)(iVar7 + 0x14)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar7 + 0x14)" ( (binary_expression "iVar7 + 0x14" identifier + number_literal) )))) * number_literal)) ))))) * identifier) + (cast_expression "(double)(fVar16 * fVar19)" ( (type_descriptor "double" primitive_type) ) (parenthesized_expression "(fVar16 * fVar19)" ( (binary_expression "fVar16 * fVar19" identifier * identifier) )))) + (cast_expression "(double)(*(float *)(iVar4 + *(int *)(iVar7 + 0x20) * 4) * fVar18)" ( (type_descriptor "double" primitive_type) ) (parenthesized_expression "(*(float *)(iVar4 + *(int *)(iVar7 + 0x20) * 4) * fVar18)" ( (binary_expression "*(float *)(iVar4 + *(int *)(iVar7 + 0x20) * 4) * fVar18" (pointer_expression "*(float *)(iVar4 + *(int *)(iVar7 + 0x20) * 4)" * (cast_expression "(float *)(iVar4 + *(int *)(iVar7 + 0x20) * 4)" ( (type_descriptor "float *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar4 + *(int *)(iVar7 + 0x20) * 4)" ( (binary_expression "iVar4 + *(int *)(iVar7 + 0x20) * 4" identifier + (binary_expression "*(int *)(iVar7 + 0x20) * 4" (pointer_expression "*(int *)(iVar7 + 0x20)" * (cast_expression "(int *)(iVar7 + 0x20)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar7 + 0x20)" ( (binary_expression "iVar7 + 0x20" identifier + number_literal) )))) * number_literal)) )))) * identifier) ))))) ;) (if_statement "if (fVar16 < fVar17) {\n                iVar7 = 0;\n                if (NAN(fVar16)) goto LAB_000cb260;\n                iVar7 = 0;\n                if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                  goto LAB_000cb260;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\nLAB_000cb260:\n                iVar7 = iVar7 * 0x58;\n              }" if (parenthesized_expression "(fVar16 < fVar17)" ( (binary_expression "fVar16 < fVar17" identifier < identifier) )) (compound_statement "{\n                iVar7 = 0;\n                if (NAN(fVar16)) goto LAB_000cb260;\n                iVar7 = 0;\n                if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                  goto LAB_000cb260;\n                }\n              }" { (expression_statement "iVar7 = 0;" (assignment_expression "iVar7 = 0" identifier = number_literal) ;) (if_statement "if (NAN(fVar16)) goto LAB_000cb260;" if (parenthesized_expression "(NAN(fVar16))" ( (call_expression "NAN(fVar16)" identifier (argument_list "(fVar16)" ( identifier ))) )) (goto_statement "goto LAB_000cb260;" goto statement_identifier ;)) (expression_statement "iVar7 = 0;" (assignment_expression "iVar7 = 0" identifier = number_literal) ;) (if_statement "if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                  goto LAB_000cb260;\n                }" if (parenthesized_expression "(0.0 < fVar16)" ( (binary_expression "0.0 < fVar16" number_literal < identifier) )) (compound_statement "{\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                  goto LAB_000cb260;\n                }" { (expression_statement "dVar15 = (double)fVar16 + dVar23;" (assignment_expression "dVar15 = (double)fVar16 + dVar23" identifier = (binary_expression "(double)fVar16 + dVar23" (cast_expression "(double)fVar16" ( (type_descriptor "double" primitive_type) ) identifier) + identifier)) ;) (if_statement "if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }" if (parenthesized_expression "(dVar15 < dVar22)" ( (binary_expression "dVar15 < dVar22" identifier < identifier) )) (compound_statement "{\n                    iVar7 = (int)dVar15;\n                  }" { (expression_statement "iVar7 = (int)dVar15;" (assignment_expression "iVar7 = (int)dVar15" identifier = (cast_expression "(int)dVar15" ( (type_descriptor "int" primitive_type) ) identifier)) ;) }) (else_clause "else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }" else (compound_statement "{\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }" { (expression_statement "iVar7 = (int)(dVar15 - dVar22);" (assignment_expression "iVar7 = (int)(dVar15 - dVar22)" identifier = (cast_expression "(int)(dVar15 - dVar22)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(dVar15 - dVar22)" ( (binary_expression "dVar15 - dVar22" identifier - identifier) )))) ;) }))) (goto_statement "goto LAB_000cb260;" goto statement_identifier ;) })) }) (else_clause "else {\n                iVar7 = 0xffff;\nLAB_000cb260:\n                iVar7 = iVar7 * 0x58;\n              }" else (compound_statement "{\n                iVar7 = 0xffff;\nLAB_000cb260:\n                iVar7 = iVar7 * 0x58;\n              }" { (expression_statement "iVar7 = 0xffff;" (assignment_expression "iVar7 = 0xffff" identifier = number_literal) ;) (labeled_statement "LAB_000cb260:\n                iVar7 = iVar7 * 0x58;" statement_identifier : (expression_statement "iVar7 = iVar7 * 0x58;" (assignment_expression "iVar7 = iVar7 * 0x58" identifier = (binary_expression "iVar7 * 0x58" identifier * number_literal)) ;)) }))) (expression_statement "*pfVar8 = (float)((*(double *)(iVar7 + iVar3 + 0x28) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);" (assignment_expression "*pfVar8 = (float)((*(double *)(iVar7 + iVar3 + 0x28) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14)" (pointer_expression "*pfVar8" * identifier) = (cast_expression "(float)((*(double *)(iVar7 + iVar3 + 0x28) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14)" ( (type_descriptor "float" primitive_type) ) (parenthesized_expression "((*(double *)(iVar7 + iVar3 + 0x28) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14)" ( (binary_expression "(*(double *)(iVar7 + iVar3 + 0x28) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14" (binary_expression "(*(double *)(iVar7 + iVar3 + 0x28) - dVar14) *\n                                *(double *)(param_1[3] + 0x48)" (parenthesized_expression "(*(double *)(iVar7 + iVar3 + 0x28) - dVar14)" ( (binary_expression "*(double *)(iVar7 + iVar3 + 0x28) - dVar14" (pointer_expression "*(double *)(iVar7 + iVar3 + 0x28)" * (cast_expression "(double *)(iVar7 + iVar3 + 0x28)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar7 + iVar3 + 0x28)" ( (binary_expression "iVar7 + iVar3 + 0x28" (binary_expression "iVar7 + iVar3" identifier + identifier) + number_literal) )))) - identifier) )) * (pointer_expression "*(double *)(param_1[3] + 0x48)" * (cast_expression "(double *)(param_1[3] + 0x48)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1[3] + 0x48)" ( (binary_expression "param_1[3] + 0x48" (subscript_expression "param_1[3]" identifier [ number_literal ]) + number_literal) ))))) + identifier) )))) ;) (expression_statement "pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4);" (assignment_expression "pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4)" identifier = (cast_expression "(float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4)" ( (type_descriptor "float *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4)" ( (binary_expression "iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4" identifier + (binary_expression "*(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4" (pointer_expression "*(int *)(*(int *)(iVar9 + 0x2d0) + 0x14)" * (cast_expression "(int *)(*(int *)(iVar9 + 0x2d0) + 0x14)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(iVar9 + 0x2d0) + 0x14)" ( (binary_expression "*(int *)(iVar9 + 0x2d0) + 0x14" (pointer_expression "*(int *)(iVar9 + 0x2d0)" * (cast_expression "(int *)(iVar9 + 0x2d0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + 0x2d0)" ( (binary_expression "iVar9 + 0x2d0" identifier + number_literal) )))) + number_literal) )))) * number_literal)) )))) ;) (expression_statement "fVar16 = *pfVar8;" (assignment_expression "fVar16 = *pfVar8" identifier = (pointer_expression "*pfVar8" * identifier)) ;) (if_statement "if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }" if (parenthesized_expression "(fVar16 < fVar17)" ( (binary_expression "fVar16 < fVar17" identifier < identifier) )) (compound_statement "{\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }" { (if_statement "if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }" if (parenthesized_expression "(NAN(fVar16))" ( (call_expression "NAN(fVar16)" identifier (argument_list "(fVar16)" ( identifier ))) )) (compound_statement "{\n                  iVar7 = 0;\n                }" { (expression_statement "iVar7 = 0;" (assignment_expression "iVar7 = 0" identifier = number_literal) ;) }) (else_clause "else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }" else (if_statement "if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }" if (parenthesized_expression "(0.0 < fVar16)" ( (binary_expression "0.0 < fVar16" number_literal < identifier) )) (compound_statement "{\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                }" { (expression_statement "dVar15 = (double)fVar16 + dVar23;" (assignment_expression "dVar15 = (double)fVar16 + dVar23" identifier = (binary_expression "(double)fVar16 + dVar23" (cast_expression "(double)fVar16" ( (type_descriptor "double" primitive_type) ) identifier) + identifier)) ;) (if_statement "if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }" if (parenthesized_expression "(dVar15 < dVar22)" ( (binary_expression "dVar15 < dVar22" identifier < identifier) )) (compound_statement "{\n                    iVar7 = (int)dVar15;\n                  }" { (expression_statement "iVar7 = (int)dVar15;" (assignment_expression "iVar7 = (int)dVar15" identifier = (cast_expression "(int)dVar15" ( (type_descriptor "int" primitive_type) ) identifier)) ;) }) (else_clause "else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }" else (compound_statement "{\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }" { (expression_statement "iVar7 = (int)(dVar15 - dVar22);" (assignment_expression "iVar7 = (int)(dVar15 - dVar22)" identifier = (cast_expression "(int)(dVar15 - dVar22)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(dVar15 - dVar22)" ( (binary_expression "dVar15 - dVar22" identifier - identifier) )))) ;) }))) }) (else_clause "else {\n                  iVar7 = 0;\n                }" else (compound_statement "{\n                  iVar7 = 0;\n                }" { (expression_statement "iVar7 = 0;" (assignment_expression "iVar7 = 0" identifier = number_literal) ;) }))))) }) (else_clause "else {\n                iVar7 = 0xffff;\n              }" else (compound_statement "{\n                iVar7 = 0xffff;\n              }" { (expression_statement "iVar7 = 0xffff;" (assignment_expression "iVar7 = 0xffff" identifier = number_literal) ;) }))) (expression_statement "*pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x30) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);" (assignment_expression "*pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x30) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14)" (pointer_expression "*pfVar8" * identifier) = (cast_expression "(float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x30) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14)" ( (type_descriptor "float" primitive_type) ) (parenthesized_expression "((*(double *)(iVar7 * 0x58 + iVar3 + 0x30) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14)" ( (binary_expression "(*(double *)(iVar7 * 0x58 + iVar3 + 0x30) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14" (binary_expression "(*(double *)(iVar7 * 0x58 + iVar3 + 0x30) - dVar14) *\n                                *(double *)(param_1[3] + 0x48)" (parenthesized_expression "(*(double *)(iVar7 * 0x58 + iVar3 + 0x30) - dVar14)" ( (binary_expression "*(double *)(iVar7 * 0x58 + iVar3 + 0x30) - dVar14" (pointer_expression "*(double *)(iVar7 * 0x58 + iVar3 + 0x30)" * (cast_expression "(double *)(iVar7 * 0x58 + iVar3 + 0x30)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar7 * 0x58 + iVar3 + 0x30)" ( (binary_expression "iVar7 * 0x58 + iVar3 + 0x30" (binary_expression "iVar7 * 0x58 + iVar3" (binary_expression "iVar7 * 0x58" identifier * number_literal) + identifier) + number_literal) )))) - identifier) )) * (pointer_expression "*(double *)(param_1[3] + 0x48)" * (cast_expression "(double *)(param_1[3] + 0x48)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1[3] + 0x48)" ( (binary_expression "param_1[3] + 0x48" (subscript_expression "param_1[3]" identifier [ number_literal ]) + number_literal) ))))) + identifier) )))) ;) (expression_statement "pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4);" (assignment_expression "pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4)" identifier = (cast_expression "(float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4)" ( (type_descriptor "float *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4)" ( (binary_expression "iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4" identifier + (binary_expression "*(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4" (pointer_expression "*(int *)(*(int *)(iVar9 + 0x2d0) + 0x20)" * (cast_expression "(int *)(*(int *)(iVar9 + 0x2d0) + 0x20)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(iVar9 + 0x2d0) + 0x20)" ( (binary_expression "*(int *)(iVar9 + 0x2d0) + 0x20" (pointer_expression "*(int *)(iVar9 + 0x2d0)" * (cast_expression "(int *)(iVar9 + 0x2d0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + 0x2d0)" ( (binary_expression "iVar9 + 0x2d0" identifier + number_literal) )))) + number_literal) )))) * number_literal)) )))) ;) (expression_statement "fVar16 = *pfVar8;" (assignment_expression "fVar16 = *pfVar8" identifier = (pointer_expression "*pfVar8" * identifier)) ;) (if_statement "if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar13;\n                  if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }" if (parenthesized_expression "(fVar16 < fVar17)" ( (binary_expression "fVar16 < fVar17" identifier < identifier) )) (compound_statement "{\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar13;\n                  if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }" { (if_statement "if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar13;\n                  if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }" if (parenthesized_expression "(NAN(fVar16))" ( (call_expression "NAN(fVar16)" identifier (argument_list "(fVar16)" ( identifier ))) )) (compound_statement "{\n                  iVar7 = 0;\n                }" { (expression_statement "iVar7 = 0;" (assignment_expression "iVar7 = 0" identifier = number_literal) ;) }) (else_clause "else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar13;\n                  if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }" else (if_statement "if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar13;\n                  if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }" if (parenthesized_expression "(0.0 < fVar16)" ( (binary_expression "0.0 < fVar16" number_literal < identifier) )) (compound_statement "{\n                  dVar15 = (double)fVar16 + dVar13;\n                  if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }\n                }" { (expression_statement "dVar15 = (double)fVar16 + dVar13;" (assignment_expression "dVar15 = (double)fVar16 + dVar13" identifier = (binary_expression "(double)fVar16 + dVar13" (cast_expression "(double)fVar16" ( (type_descriptor "double" primitive_type) ) identifier) + identifier)) ;) (if_statement "if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }" if (parenthesized_expression "(dVar15 < dVar21)" ( (binary_expression "dVar15 < dVar21" identifier < identifier) )) (compound_statement "{\n                    iVar7 = (int)dVar15;\n                  }" { (expression_statement "iVar7 = (int)dVar15;" (assignment_expression "iVar7 = (int)dVar15" identifier = (cast_expression "(int)dVar15" ( (type_descriptor "int" primitive_type) ) identifier)) ;) }) (else_clause "else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }" else (compound_statement "{\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }" { (expression_statement "iVar7 = (int)(dVar15 - dVar21);" (assignment_expression "iVar7 = (int)(dVar15 - dVar21)" identifier = (cast_expression "(int)(dVar15 - dVar21)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(dVar15 - dVar21)" ( (binary_expression "dVar15 - dVar21" identifier - identifier) )))) ;) }))) }) (else_clause "else {\n                  iVar7 = 0;\n                }" else (compound_statement "{\n                  iVar7 = 0;\n                }" { (expression_statement "iVar7 = 0;" (assignment_expression "iVar7 = 0" identifier = number_literal) ;) }))))) }) (else_clause "else {\n                iVar7 = 0xffff;\n              }" else (compound_statement "{\n                iVar7 = 0xffff;\n              }" { (expression_statement "iVar7 = 0xffff;" (assignment_expression "iVar7 = 0xffff" identifier = number_literal) ;) }))) (expression_statement "*pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x38) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);" (assignment_expression "*pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x38) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14)" (pointer_expression "*pfVar8" * identifier) = (cast_expression "(float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x38) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14)" ( (type_descriptor "float" primitive_type) ) (parenthesized_expression "((*(double *)(iVar7 * 0x58 + iVar3 + 0x38) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14)" ( (binary_expression "(*(double *)(iVar7 * 0x58 + iVar3 + 0x38) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14" (binary_expression "(*(double *)(iVar7 * 0x58 + iVar3 + 0x38) - dVar14) *\n                                *(double *)(param_1[3] + 0x48)" (parenthesized_expression "(*(double *)(iVar7 * 0x58 + iVar3 + 0x38) - dVar14)" ( (binary_expression "*(double *)(iVar7 * 0x58 + iVar3 + 0x38) - dVar14" (pointer_expression "*(double *)(iVar7 * 0x58 + iVar3 + 0x38)" * (cast_expression "(double *)(iVar7 * 0x58 + iVar3 + 0x38)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar7 * 0x58 + iVar3 + 0x38)" ( (binary_expression "iVar7 * 0x58 + iVar3 + 0x38" (binary_expression "iVar7 * 0x58 + iVar3" (binary_expression "iVar7 * 0x58" identifier * number_literal) + identifier) + number_literal) )))) - identifier) )) * (pointer_expression "*(double *)(param_1[3] + 0x48)" * (cast_expression "(double *)(param_1[3] + 0x48)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1[3] + 0x48)" ( (binary_expression "param_1[3] + 0x48" (subscript_expression "param_1[3]" identifier [ number_literal ]) + number_literal) ))))) + identifier) )))) ;) (expression_statement "iVar4 = iVar4 + *(int *)(iVar9 + 0x2c0) * 4;" (assignment_expression "iVar4 = iVar4 + *(int *)(iVar9 + 0x2c0) * 4" identifier = (binary_expression "iVar4 + *(int *)(iVar9 + 0x2c0) * 4" identifier + (binary_expression "*(int *)(iVar9 + 0x2c0) * 4" (pointer_expression "*(int *)(iVar9 + 0x2c0)" * (cast_expression "(int *)(iVar9 + 0x2c0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + 0x2c0)" ( (binary_expression "iVar9 + 0x2c0" identifier + number_literal) )))) * number_literal))) ;) (expression_statement "iVar6 = iVar6 + 1;" (assignment_expression "iVar6 = iVar6 + 1" identifier = (binary_expression "iVar6 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(iVar6 < *(int *)(iVar9 + 0x18))" ( (binary_expression "iVar6 < *(int *)(iVar9 + 0x18)" identifier < (pointer_expression "*(int *)(iVar9 + 0x18)" * (cast_expression "(int *)(iVar9 + 0x18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + 0x18)" ( (binary_expression "iVar9 + 0x18" identifier + number_literal) ))))) )) ;) })) (expression_statement "iVar4 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003fa510)(iVar2,iVar12);" (assignment_expression "iVar4 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003fa510)(iVar2,iVar12)" identifier = (call_expression "(*(code *)PTR_SyncCacheViewAuthenticPixels_003fa510)(iVar2,iVar12)" (parenthesized_expression "(*(code *)PTR_SyncCacheViewAuthenticPixels_003fa510)" ( (pointer_expression "*(code *)PTR_SyncCacheViewAuthenticPixels_003fa510" * (cast_expression "(code *)PTR_SyncCacheViewAuthenticPixels_003fa510" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar2,iVar12)" ( identifier , identifier )))) ;) (if_statement "if (iVar4 == 0) {\n            param_1[5] = 0;\n          }" if (parenthesized_expression "(iVar4 == 0)" ( (binary_expression "iVar4 == 0" identifier == number_literal) )) (compound_statement "{\n            param_1[5] = 0;\n          }" { (expression_statement "param_1[5] = 0;" (assignment_expression "param_1[5] = 0" (subscript_expression "param_1[5]" identifier [ number_literal ]) = number_literal) ;) })) (if_statement "if (*(int *)(iVar9 + 0x328) != 0) {\n            piVar11 = (int *)param_1[6];\n            (*(code *)PTR_GOMP_atomic_start_003fa2fc)();\n            uVar5 = piVar11[1] + 1;\n            *piVar11 = (uint)(uVar5 < (uint)piVar11[1]) + *piVar11;\n            piVar11[1] = uVar5;\n            (*(code *)PTR_GOMP_atomic_end_003fa450)();\n            iVar4 = (*(code *)PTR_SetImageProgress_003f9ccc)\n                              (iVar9,PTR_s_ltiple_images_003f98e8 + -0x7ed0,\n                               *(undefined4 *)param_1[6],((undefined4 *)param_1[6])[1],0,\n                               *(undefined4 *)(iVar9 + 0x1c));\n            if (iVar4 == 0) {\n              param_1[5] = 0;\n            }\n          }" if (parenthesized_expression "(*(int *)(iVar9 + 0x328) != 0)" ( (binary_expression "*(int *)(iVar9 + 0x328) != 0" (pointer_expression "*(int *)(iVar9 + 0x328)" * (cast_expression "(int *)(iVar9 + 0x328)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + 0x328)" ( (binary_expression "iVar9 + 0x328" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n            piVar11 = (int *)param_1[6];\n            (*(code *)PTR_GOMP_atomic_start_003fa2fc)();\n            uVar5 = piVar11[1] + 1;\n            *piVar11 = (uint)(uVar5 < (uint)piVar11[1]) + *piVar11;\n            piVar11[1] = uVar5;\n            (*(code *)PTR_GOMP_atomic_end_003fa450)();\n            iVar4 = (*(code *)PTR_SetImageProgress_003f9ccc)\n                              (iVar9,PTR_s_ltiple_images_003f98e8 + -0x7ed0,\n                               *(undefined4 *)param_1[6],((undefined4 *)param_1[6])[1],0,\n                               *(undefined4 *)(iVar9 + 0x1c));\n            if (iVar4 == 0) {\n              param_1[5] = 0;\n            }\n          }" { (expression_statement "piVar11 = (int *)param_1[6];" (assignment_expression "piVar11 = (int *)param_1[6]" identifier = (cast_expression "(int *)param_1[6]" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "param_1[6]" identifier [ number_literal ]))) ;) (expression_statement "(*(code *)PTR_GOMP_atomic_start_003fa2fc)();" (call_expression "(*(code *)PTR_GOMP_atomic_start_003fa2fc)()" (parenthesized_expression "(*(code *)PTR_GOMP_atomic_start_003fa2fc)" ( (pointer_expression "*(code *)PTR_GOMP_atomic_start_003fa2fc" * (cast_expression "(code *)PTR_GOMP_atomic_start_003fa2fc" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))) ;) (expression_statement "uVar5 = piVar11[1] + 1;" (assignment_expression "uVar5 = piVar11[1] + 1" identifier = (binary_expression "piVar11[1] + 1" (subscript_expression "piVar11[1]" identifier [ number_literal ]) + number_literal)) ;) (expression_statement "*piVar11 = (uint)(uVar5 < (uint)piVar11[1]) + *piVar11;" (assignment_expression "*piVar11 = (uint)(uVar5 < (uint)piVar11[1]) + *piVar11" (pointer_expression "*piVar11" * identifier) = (binary_expression "(uint)(uVar5 < (uint)piVar11[1]) + *piVar11" (call_expression "(uint)(uVar5 < (uint)piVar11[1])" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar5 < (uint)piVar11[1])" ( (binary_expression "uVar5 < (uint)piVar11[1]" identifier < (cast_expression "(uint)piVar11[1]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "piVar11[1]" identifier [ number_literal ]))) ))) + (pointer_expression "*piVar11" * identifier))) ;) (expression_statement "piVar11[1] = uVar5;" (assignment_expression "piVar11[1] = uVar5" (subscript_expression "piVar11[1]" identifier [ number_literal ]) = identifier) ;) (expression_statement "(*(code *)PTR_GOMP_atomic_end_003fa450)();" (call_expression "(*(code *)PTR_GOMP_atomic_end_003fa450)()" (parenthesized_expression "(*(code *)PTR_GOMP_atomic_end_003fa450)" ( (pointer_expression "*(code *)PTR_GOMP_atomic_end_003fa450" * (cast_expression "(code *)PTR_GOMP_atomic_end_003fa450" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))) ;) (expression_statement "iVar4 = (*(code *)PTR_SetImageProgress_003f9ccc)\n                              (iVar9,PTR_s_ltiple_images_003f98e8 + -0x7ed0,\n                               *(undefined4 *)param_1[6],((undefined4 *)param_1[6])[1],0,\n                               *(undefined4 *)(iVar9 + 0x1c));" (assignment_expression "iVar4 = (*(code *)PTR_SetImageProgress_003f9ccc)\n                              (iVar9,PTR_s_ltiple_images_003f98e8 + -0x7ed0,\n                               *(undefined4 *)param_1[6],((undefined4 *)param_1[6])[1],0,\n                               *(undefined4 *)(iVar9 + 0x1c))" identifier = (call_expression "(*(code *)PTR_SetImageProgress_003f9ccc)\n                              (iVar9,PTR_s_ltiple_images_003f98e8 + -0x7ed0,\n                               *(undefined4 *)param_1[6],((undefined4 *)param_1[6])[1],0,\n                               *(undefined4 *)(iVar9 + 0x1c))" (parenthesized_expression "(*(code *)PTR_SetImageProgress_003f9ccc)" ( (pointer_expression "*(code *)PTR_SetImageProgress_003f9ccc" * (cast_expression "(code *)PTR_SetImageProgress_003f9ccc" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar9,PTR_s_ltiple_images_003f98e8 + -0x7ed0,\n                               *(undefined4 *)param_1[6],((undefined4 *)param_1[6])[1],0,\n                               *(undefined4 *)(iVar9 + 0x1c))" ( identifier , (binary_expression "PTR_s_ltiple_images_003f98e8 + -0x7ed0" identifier + number_literal) , (pointer_expression "*(undefined4 *)param_1[6]" * (cast_expression "(undefined4 *)param_1[6]" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "param_1[6]" identifier [ number_literal ]))) , (subscript_expression "((undefined4 *)param_1[6])[1]" (parenthesized_expression "((undefined4 *)param_1[6])" ( (cast_expression "(undefined4 *)param_1[6]" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "param_1[6]" identifier [ number_literal ])) )) [ number_literal ]) , number_literal , (pointer_expression "*(undefined4 *)(iVar9 + 0x1c)" * (cast_expression "(undefined4 *)(iVar9 + 0x1c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + 0x1c)" ( (binary_expression "iVar9 + 0x1c" identifier + number_literal) )))) )))) ;) (if_statement "if (iVar4 == 0) {\n              param_1[5] = 0;\n            }" if (parenthesized_expression "(iVar4 == 0)" ( (binary_expression "iVar4 == 0" identifier == number_literal) )) (compound_statement "{\n              param_1[5] = 0;\n            }" { (expression_statement "param_1[5] = 0;" (assignment_expression "param_1[5] = 0" (subscript_expression "param_1[5]" identifier [ number_literal ]) = number_literal) ;) })) })) }))) })) (expression_statement "iVar10 = iVar10 + 1;" (assignment_expression "iVar10 = iVar10 + 1" identifier = (binary_expression "iVar10 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(iVar24 != iVar10)" ( (binary_expression "iVar24 != iVar10" identifier != identifier) )) ;) })) (return_statement "return;" return ;) })))
(translation_unit (function_definition TYPE (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE (pointer_declarator * IDENT)) ))) (compound_statement { (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 IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( )))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (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 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 = 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 = (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) ))))) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) != LIT) )) (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 , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , LIT , IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression LIT < (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (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) ))))) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (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 = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) (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) + (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression IDENT * IDENT) )))) + (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) * LIT)) )))) * IDENT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (call_expression IDENT (argument_list ( IDENT ))) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression LIT < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression IDENT - IDENT) )))) ;) }))) (goto_statement goto statement_identifier ;) })) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression IDENT * LIT)) ;)) }))) (expression_statement (assignment_expression (pointer_expression * IDENT) = (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression IDENT + IDENT) + LIT) )))) - IDENT) )) * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) + LIT) ))))) + IDENT) )))) ;) (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 (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) * LIT)) )))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (compound_statement { (if_statement if (parenthesized_expression ( (call_expression IDENT (argument_list ( IDENT ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression LIT < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression IDENT - IDENT) )))) ;) }))) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) }))))) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) }))) (expression_statement (assignment_expression (pointer_expression * IDENT) = (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (binary_expression IDENT * LIT) + IDENT) + LIT) )))) - IDENT) )) * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) + LIT) ))))) + IDENT) )))) ;) (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 (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) * LIT)) )))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (compound_statement { (if_statement if (parenthesized_expression ( (call_expression IDENT (argument_list ( IDENT ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression LIT < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression IDENT - IDENT) )))) ;) }))) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) }))))) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) }))) (expression_statement (assignment_expression (pointer_expression * IDENT) = (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (binary_expression IDENT * LIT) + IDENT) + LIT) )))) - IDENT) )) * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) + LIT) ))))) + IDENT) )))) ;) (expression_statement (assignment_expression IDENT = (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 = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( (binary_expression IDENT < (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) ;) })) (expression_statement (assignment_expression IDENT = (call_expression (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) )) (compound_statement { (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (subscript_expression IDENT [ LIT ]) + LIT)) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT < (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ]))) ))) + (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT , (binary_expression IDENT + LIT) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (subscript_expression IDENT [ LIT ]))) , (subscript_expression (parenthesized_expression ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (subscript_expression IDENT [ LIT ])) )) [ LIT ]) , LIT , (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 (subscript_expression IDENT [ LIT ]) = LIT) ;) })) })) }))) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( (binary_expression IDENT != IDENT) )) ;) })) (return_statement return ;) })))
(function_definition "void FUN_000cb0b0(int *param_1)\n\n{\n  undefined *puVar1;\n  int iVar2;\n  int iVar3;\n  int iVar4;\n  uint uVar5;\n  int iVar6;\n  int iVar7;\n  float *pfVar8;\n  int iVar9;\n  int iVar10;\n  int *piVar11;\n  int iVar12;\n  double dVar13;\n  double dVar14;\n  double dVar15;\n  float fVar16;\n  float fVar17;\n  float fVar18;\n  float fVar19;\n  double dVar20;\n  double dVar21;\n  double dVar22;\n  double dVar23;\n  int iVar24;\n  \n  iVar9 = *param_1;\n  iVar10 = *(int *)(iVar9 + 0x1c);\n  iVar2 = (*(code *)PTR_omp_get_num_threads_003fa924)();\n  iVar3 = (*(code *)PTR_omp_get_thread_num_003fa520)();\n  puVar1 = PTR_LAB_003f98e0;\n  if (iVar2 == 0) {\n    trap(7);\n  }\n  iVar24 = iVar10 / iVar2;\n  iVar10 = iVar10 % iVar2;\n  if (iVar3 < iVar10) {\n    iVar24 = iVar24 + 1;\n    iVar10 = 0;\n  }\n  iVar10 = iVar24 * iVar3 + iVar10;\n  iVar24 = iVar24 + iVar10;\n  if (iVar10 < iVar24) {\n    iVar3 = param_1[4];\n    iVar2 = param_1[2];\n    iVar12 = param_1[1];\n    dVar20 = *(double *)(PTR_s_ltiple_images_003f98e8 + -0x77c0);\n    dVar13 = *(double *)(PTR_LAB_003f98e0 + 0x43d0);\n    dVar21 = *(double *)(PTR_LAB_003f98e0 + 0x43e0);\n    do {\n      if (param_1[5] != 0) {\n        iVar4 = (*(code *)PTR_GetCacheViewAuthenticPixels_003fa664)\n                          (iVar2,0,iVar10,*(undefined4 *)(iVar9 + 0x18),1,iVar12);\n        if (iVar4 == 0) {\n          param_1[5] = 0;\n        }\n        else {\n          iVar6 = 0;\n          if (0 < *(int *)(iVar9 + 0x18)) {\n            fVar19 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x7750);\n            fVar18 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x774c);\n            fVar17 = *(float *)(PTR_LAB_003f98e0 + 0x4aa8);\n            dVar23 = *(double *)(puVar1 + 0x43d0);\n            dVar22 = *(double *)(puVar1 + 0x43e0);\n            do {\n              iVar7 = *(int *)(iVar9 + 0x2d0);\n              pfVar8 = (float *)(iVar4 + *(int *)(iVar7 + 8) * 4);\n              fVar16 = *pfVar8;\n              dVar14 = (double)*(float *)(iVar4 + *(int *)(iVar7 + 0x14) * 4) * dVar20 +\n                       (double)(fVar16 * fVar19) +\n                       (double)(*(float *)(iVar4 + *(int *)(iVar7 + 0x20) * 4) * fVar18);\n              if (fVar16 < fVar17) {\n                iVar7 = 0;\n                if (NAN(fVar16)) goto LAB_000cb260;\n                iVar7 = 0;\n                if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                  goto LAB_000cb260;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\nLAB_000cb260:\n                iVar7 = iVar7 * 0x58;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 + iVar3 + 0x28) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x30) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar13;\n                  if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x38) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              iVar4 = iVar4 + *(int *)(iVar9 + 0x2c0) * 4;\n              iVar6 = iVar6 + 1;\n            } while (iVar6 < *(int *)(iVar9 + 0x18));\n          }\n          iVar4 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003fa510)(iVar2,iVar12);\n          if (iVar4 == 0) {\n            param_1[5] = 0;\n          }\n          if (*(int *)(iVar9 + 0x328) != 0) {\n            piVar11 = (int *)param_1[6];\n            (*(code *)PTR_GOMP_atomic_start_003fa2fc)();\n            uVar5 = piVar11[1] + 1;\n            *piVar11 = (uint)(uVar5 < (uint)piVar11[1]) + *piVar11;\n            piVar11[1] = uVar5;\n            (*(code *)PTR_GOMP_atomic_end_003fa450)();\n            iVar4 = (*(code *)PTR_SetImageProgress_003f9ccc)\n                              (iVar9,PTR_s_ltiple_images_003f98e8 + -0x7ed0,\n                               *(undefined4 *)param_1[6],((undefined4 *)param_1[6])[1],0,\n                               *(undefined4 *)(iVar9 + 0x1c));\n            if (iVar4 == 0) {\n              param_1[5] = 0;\n            }\n          }\n        }\n      }\n      iVar10 = iVar10 + 1;\n    } while (iVar24 != iVar10);\n  }\n  return;\n}" (primitive_type "void") (function_declarator "FUN_000cb0b0(int *param_1)" (identifier "FUN_000cb0b0") (parameter_list "(int *param_1)" (( "(") (parameter_declaration "int *param_1" (primitive_type "int") (pointer_declarator "*param_1" (* "*") (identifier "param_1"))) () ")"))) (compound_statement "{\n  undefined *puVar1;\n  int iVar2;\n  int iVar3;\n  int iVar4;\n  uint uVar5;\n  int iVar6;\n  int iVar7;\n  float *pfVar8;\n  int iVar9;\n  int iVar10;\n  int *piVar11;\n  int iVar12;\n  double dVar13;\n  double dVar14;\n  double dVar15;\n  float fVar16;\n  float fVar17;\n  float fVar18;\n  float fVar19;\n  double dVar20;\n  double dVar21;\n  double dVar22;\n  double dVar23;\n  int iVar24;\n  \n  iVar9 = *param_1;\n  iVar10 = *(int *)(iVar9 + 0x1c);\n  iVar2 = (*(code *)PTR_omp_get_num_threads_003fa924)();\n  iVar3 = (*(code *)PTR_omp_get_thread_num_003fa520)();\n  puVar1 = PTR_LAB_003f98e0;\n  if (iVar2 == 0) {\n    trap(7);\n  }\n  iVar24 = iVar10 / iVar2;\n  iVar10 = iVar10 % iVar2;\n  if (iVar3 < iVar10) {\n    iVar24 = iVar24 + 1;\n    iVar10 = 0;\n  }\n  iVar10 = iVar24 * iVar3 + iVar10;\n  iVar24 = iVar24 + iVar10;\n  if (iVar10 < iVar24) {\n    iVar3 = param_1[4];\n    iVar2 = param_1[2];\n    iVar12 = param_1[1];\n    dVar20 = *(double *)(PTR_s_ltiple_images_003f98e8 + -0x77c0);\n    dVar13 = *(double *)(PTR_LAB_003f98e0 + 0x43d0);\n    dVar21 = *(double *)(PTR_LAB_003f98e0 + 0x43e0);\n    do {\n      if (param_1[5] != 0) {\n        iVar4 = (*(code *)PTR_GetCacheViewAuthenticPixels_003fa664)\n                          (iVar2,0,iVar10,*(undefined4 *)(iVar9 + 0x18),1,iVar12);\n        if (iVar4 == 0) {\n          param_1[5] = 0;\n        }\n        else {\n          iVar6 = 0;\n          if (0 < *(int *)(iVar9 + 0x18)) {\n            fVar19 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x7750);\n            fVar18 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x774c);\n            fVar17 = *(float *)(PTR_LAB_003f98e0 + 0x4aa8);\n            dVar23 = *(double *)(puVar1 + 0x43d0);\n            dVar22 = *(double *)(puVar1 + 0x43e0);\n            do {\n              iVar7 = *(int *)(iVar9 + 0x2d0);\n              pfVar8 = (float *)(iVar4 + *(int *)(iVar7 + 8) * 4);\n              fVar16 = *pfVar8;\n              dVar14 = (double)*(float *)(iVar4 + *(int *)(iVar7 + 0x14) * 4) * dVar20 +\n                       (double)(fVar16 * fVar19) +\n                       (double)(*(float *)(iVar4 + *(int *)(iVar7 + 0x20) * 4) * fVar18);\n              if (fVar16 < fVar17) {\n                iVar7 = 0;\n                if (NAN(fVar16)) goto LAB_000cb260;\n                iVar7 = 0;\n                if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                  goto LAB_000cb260;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\nLAB_000cb260:\n                iVar7 = iVar7 * 0x58;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 + iVar3 + 0x28) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x30) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar13;\n                  if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x38) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              iVar4 = iVar4 + *(int *)(iVar9 + 0x2c0) * 4;\n              iVar6 = iVar6 + 1;\n            } while (iVar6 < *(int *)(iVar9 + 0x18));\n          }\n          iVar4 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003fa510)(iVar2,iVar12);\n          if (iVar4 == 0) {\n            param_1[5] = 0;\n          }\n          if (*(int *)(iVar9 + 0x328) != 0) {\n            piVar11 = (int *)param_1[6];\n            (*(code *)PTR_GOMP_atomic_start_003fa2fc)();\n            uVar5 = piVar11[1] + 1;\n            *piVar11 = (uint)(uVar5 < (uint)piVar11[1]) + *piVar11;\n            piVar11[1] = uVar5;\n            (*(code *)PTR_GOMP_atomic_end_003fa450)();\n            iVar4 = (*(code *)PTR_SetImageProgress_003f9ccc)\n                              (iVar9,PTR_s_ltiple_images_003f98e8 + -0x7ed0,\n                               *(undefined4 *)param_1[6],((undefined4 *)param_1[6])[1],0,\n                               *(undefined4 *)(iVar9 + 0x1c));\n            if (iVar4 == 0) {\n              param_1[5] = 0;\n            }\n          }\n        }\n      }\n      iVar10 = iVar10 + 1;\n    } while (iVar24 != iVar10);\n  }\n  return;\n}" ({ "{") (declaration "undefined *puVar1;" (type_identifier "undefined") (pointer_declarator "*puVar1" (* "*") (identifier "puVar1")) (; ";")) (declaration "int iVar2;" (primitive_type "int") (identifier "iVar2") (; ";")) (declaration "int iVar3;" (primitive_type "int") (identifier "iVar3") (; ";")) (declaration "int iVar4;" (primitive_type "int") (identifier "iVar4") (; ";")) (declaration "uint uVar5;" (type_identifier "uint") (identifier "uVar5") (; ";")) (declaration "int iVar6;" (primitive_type "int") (identifier "iVar6") (; ";")) (declaration "int iVar7;" (primitive_type "int") (identifier "iVar7") (; ";")) (declaration "float *pfVar8;" (primitive_type "float") (pointer_declarator "*pfVar8" (* "*") (identifier "pfVar8")) (; ";")) (declaration "int iVar9;" (primitive_type "int") (identifier "iVar9") (; ";")) (declaration "int iVar10;" (primitive_type "int") (identifier "iVar10") (; ";")) (declaration "int *piVar11;" (primitive_type "int") (pointer_declarator "*piVar11" (* "*") (identifier "piVar11")) (; ";")) (declaration "int iVar12;" (primitive_type "int") (identifier "iVar12") (; ";")) (declaration "double dVar13;" (primitive_type "double") (identifier "dVar13") (; ";")) (declaration "double dVar14;" (primitive_type "double") (identifier "dVar14") (; ";")) (declaration "double dVar15;" (primitive_type "double") (identifier "dVar15") (; ";")) (declaration "float fVar16;" (primitive_type "float") (identifier "fVar16") (; ";")) (declaration "float fVar17;" (primitive_type "float") (identifier "fVar17") (; ";")) (declaration "float fVar18;" (primitive_type "float") (identifier "fVar18") (; ";")) (declaration "float fVar19;" (primitive_type "float") (identifier "fVar19") (; ";")) (declaration "double dVar20;" (primitive_type "double") (identifier "dVar20") (; ";")) (declaration "double dVar21;" (primitive_type "double") (identifier "dVar21") (; ";")) (declaration "double dVar22;" (primitive_type "double") (identifier "dVar22") (; ";")) (declaration "double dVar23;" (primitive_type "double") (identifier "dVar23") (; ";")) (declaration "int iVar24;" (primitive_type "int") (identifier "iVar24") (; ";")) (expression_statement "iVar9 = *param_1;" (assignment_expression "iVar9 = *param_1" (identifier "iVar9") (= "=") (pointer_expression "*param_1" (* "*") (identifier "param_1"))) (; ";")) (expression_statement "iVar10 = *(int *)(iVar9 + 0x1c);" (assignment_expression "iVar10 = *(int *)(iVar9 + 0x1c)" (identifier "iVar10") (= "=") (pointer_expression "*(int *)(iVar9 + 0x1c)" (* "*") (cast_expression "(int *)(iVar9 + 0x1c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar9 + 0x1c)" (( "(") (binary_expression "iVar9 + 0x1c" (identifier "iVar9") (+ "+") (number_literal "0x1c")) () ")"))))) (; ";")) (expression_statement "iVar2 = (*(code *)PTR_omp_get_num_threads_003fa924)();" (assignment_expression "iVar2 = (*(code *)PTR_omp_get_num_threads_003fa924)()" (identifier "iVar2") (= "=") (call_expression "(*(code *)PTR_omp_get_num_threads_003fa924)()" (parenthesized_expression "(*(code *)PTR_omp_get_num_threads_003fa924)" (( "(") (pointer_expression "*(code *)PTR_omp_get_num_threads_003fa924" (* "*") (cast_expression "(code *)PTR_omp_get_num_threads_003fa924" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_omp_get_num_threads_003fa924"))) () ")")) (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "iVar3 = (*(code *)PTR_omp_get_thread_num_003fa520)();" (assignment_expression "iVar3 = (*(code *)PTR_omp_get_thread_num_003fa520)()" (identifier "iVar3") (= "=") (call_expression "(*(code *)PTR_omp_get_thread_num_003fa520)()" (parenthesized_expression "(*(code *)PTR_omp_get_thread_num_003fa520)" (( "(") (pointer_expression "*(code *)PTR_omp_get_thread_num_003fa520" (* "*") (cast_expression "(code *)PTR_omp_get_thread_num_003fa520" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_omp_get_thread_num_003fa520"))) () ")")) (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "puVar1 = PTR_LAB_003f98e0;" (assignment_expression "puVar1 = PTR_LAB_003f98e0" (identifier "puVar1") (= "=") (identifier "PTR_LAB_003f98e0")) (; ";")) (if_statement "if (iVar2 == 0) {\n    trap(7);\n  }" (if "if") (parenthesized_expression "(iVar2 == 0)" (( "(") (binary_expression "iVar2 == 0" (identifier "iVar2") (== "==") (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 "iVar24 = iVar10 / iVar2;" (assignment_expression "iVar24 = iVar10 / iVar2" (identifier "iVar24") (= "=") (binary_expression "iVar10 / iVar2" (identifier "iVar10") (/ "/") (identifier "iVar2"))) (; ";")) (expression_statement "iVar10 = iVar10 % iVar2;" (assignment_expression "iVar10 = iVar10 % iVar2" (identifier "iVar10") (= "=") (binary_expression "iVar10 % iVar2" (identifier "iVar10") (% "%") (identifier "iVar2"))) (; ";")) (if_statement "if (iVar3 < iVar10) {\n    iVar24 = iVar24 + 1;\n    iVar10 = 0;\n  }" (if "if") (parenthesized_expression "(iVar3 < iVar10)" (( "(") (binary_expression "iVar3 < iVar10" (identifier "iVar3") (< "<") (identifier "iVar10")) () ")")) (compound_statement "{\n    iVar24 = iVar24 + 1;\n    iVar10 = 0;\n  }" ({ "{") (expression_statement "iVar24 = iVar24 + 1;" (assignment_expression "iVar24 = iVar24 + 1" (identifier "iVar24") (= "=") (binary_expression "iVar24 + 1" (identifier "iVar24") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "iVar10 = 0;" (assignment_expression "iVar10 = 0" (identifier "iVar10") (= "=") (number_literal "0")) (; ";")) (} "}"))) (expression_statement "iVar10 = iVar24 * iVar3 + iVar10;" (assignment_expression "iVar10 = iVar24 * iVar3 + iVar10" (identifier "iVar10") (= "=") (binary_expression "iVar24 * iVar3 + iVar10" (binary_expression "iVar24 * iVar3" (identifier "iVar24") (* "*") (identifier "iVar3")) (+ "+") (identifier "iVar10"))) (; ";")) (expression_statement "iVar24 = iVar24 + iVar10;" (assignment_expression "iVar24 = iVar24 + iVar10" (identifier "iVar24") (= "=") (binary_expression "iVar24 + iVar10" (identifier "iVar24") (+ "+") (identifier "iVar10"))) (; ";")) (if_statement "if (iVar10 < iVar24) {\n    iVar3 = param_1[4];\n    iVar2 = param_1[2];\n    iVar12 = param_1[1];\n    dVar20 = *(double *)(PTR_s_ltiple_images_003f98e8 + -0x77c0);\n    dVar13 = *(double *)(PTR_LAB_003f98e0 + 0x43d0);\n    dVar21 = *(double *)(PTR_LAB_003f98e0 + 0x43e0);\n    do {\n      if (param_1[5] != 0) {\n        iVar4 = (*(code *)PTR_GetCacheViewAuthenticPixels_003fa664)\n                          (iVar2,0,iVar10,*(undefined4 *)(iVar9 + 0x18),1,iVar12);\n        if (iVar4 == 0) {\n          param_1[5] = 0;\n        }\n        else {\n          iVar6 = 0;\n          if (0 < *(int *)(iVar9 + 0x18)) {\n            fVar19 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x7750);\n            fVar18 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x774c);\n            fVar17 = *(float *)(PTR_LAB_003f98e0 + 0x4aa8);\n            dVar23 = *(double *)(puVar1 + 0x43d0);\n            dVar22 = *(double *)(puVar1 + 0x43e0);\n            do {\n              iVar7 = *(int *)(iVar9 + 0x2d0);\n              pfVar8 = (float *)(iVar4 + *(int *)(iVar7 + 8) * 4);\n              fVar16 = *pfVar8;\n              dVar14 = (double)*(float *)(iVar4 + *(int *)(iVar7 + 0x14) * 4) * dVar20 +\n                       (double)(fVar16 * fVar19) +\n                       (double)(*(float *)(iVar4 + *(int *)(iVar7 + 0x20) * 4) * fVar18);\n              if (fVar16 < fVar17) {\n                iVar7 = 0;\n                if (NAN(fVar16)) goto LAB_000cb260;\n                iVar7 = 0;\n                if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                  goto LAB_000cb260;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\nLAB_000cb260:\n                iVar7 = iVar7 * 0x58;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 + iVar3 + 0x28) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x30) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar13;\n                  if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x38) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              iVar4 = iVar4 + *(int *)(iVar9 + 0x2c0) * 4;\n              iVar6 = iVar6 + 1;\n            } while (iVar6 < *(int *)(iVar9 + 0x18));\n          }\n          iVar4 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003fa510)(iVar2,iVar12);\n          if (iVar4 == 0) {\n            param_1[5] = 0;\n          }\n          if (*(int *)(iVar9 + 0x328) != 0) {\n            piVar11 = (int *)param_1[6];\n            (*(code *)PTR_GOMP_atomic_start_003fa2fc)();\n            uVar5 = piVar11[1] + 1;\n            *piVar11 = (uint)(uVar5 < (uint)piVar11[1]) + *piVar11;\n            piVar11[1] = uVar5;\n            (*(code *)PTR_GOMP_atomic_end_003fa450)();\n            iVar4 = (*(code *)PTR_SetImageProgress_003f9ccc)\n                              (iVar9,PTR_s_ltiple_images_003f98e8 + -0x7ed0,\n                               *(undefined4 *)param_1[6],((undefined4 *)param_1[6])[1],0,\n                               *(undefined4 *)(iVar9 + 0x1c));\n            if (iVar4 == 0) {\n              param_1[5] = 0;\n            }\n          }\n        }\n      }\n      iVar10 = iVar10 + 1;\n    } while (iVar24 != iVar10);\n  }" (if "if") (parenthesized_expression "(iVar10 < iVar24)" (( "(") (binary_expression "iVar10 < iVar24" (identifier "iVar10") (< "<") (identifier "iVar24")) () ")")) (compound_statement "{\n    iVar3 = param_1[4];\n    iVar2 = param_1[2];\n    iVar12 = param_1[1];\n    dVar20 = *(double *)(PTR_s_ltiple_images_003f98e8 + -0x77c0);\n    dVar13 = *(double *)(PTR_LAB_003f98e0 + 0x43d0);\n    dVar21 = *(double *)(PTR_LAB_003f98e0 + 0x43e0);\n    do {\n      if (param_1[5] != 0) {\n        iVar4 = (*(code *)PTR_GetCacheViewAuthenticPixels_003fa664)\n                          (iVar2,0,iVar10,*(undefined4 *)(iVar9 + 0x18),1,iVar12);\n        if (iVar4 == 0) {\n          param_1[5] = 0;\n        }\n        else {\n          iVar6 = 0;\n          if (0 < *(int *)(iVar9 + 0x18)) {\n            fVar19 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x7750);\n            fVar18 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x774c);\n            fVar17 = *(float *)(PTR_LAB_003f98e0 + 0x4aa8);\n            dVar23 = *(double *)(puVar1 + 0x43d0);\n            dVar22 = *(double *)(puVar1 + 0x43e0);\n            do {\n              iVar7 = *(int *)(iVar9 + 0x2d0);\n              pfVar8 = (float *)(iVar4 + *(int *)(iVar7 + 8) * 4);\n              fVar16 = *pfVar8;\n              dVar14 = (double)*(float *)(iVar4 + *(int *)(iVar7 + 0x14) * 4) * dVar20 +\n                       (double)(fVar16 * fVar19) +\n                       (double)(*(float *)(iVar4 + *(int *)(iVar7 + 0x20) * 4) * fVar18);\n              if (fVar16 < fVar17) {\n                iVar7 = 0;\n                if (NAN(fVar16)) goto LAB_000cb260;\n                iVar7 = 0;\n                if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                  goto LAB_000cb260;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\nLAB_000cb260:\n                iVar7 = iVar7 * 0x58;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 + iVar3 + 0x28) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x30) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar13;\n                  if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x38) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              iVar4 = iVar4 + *(int *)(iVar9 + 0x2c0) * 4;\n              iVar6 = iVar6 + 1;\n            } while (iVar6 < *(int *)(iVar9 + 0x18));\n          }\n          iVar4 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003fa510)(iVar2,iVar12);\n          if (iVar4 == 0) {\n            param_1[5] = 0;\n          }\n          if (*(int *)(iVar9 + 0x328) != 0) {\n            piVar11 = (int *)param_1[6];\n            (*(code *)PTR_GOMP_atomic_start_003fa2fc)();\n            uVar5 = piVar11[1] + 1;\n            *piVar11 = (uint)(uVar5 < (uint)piVar11[1]) + *piVar11;\n            piVar11[1] = uVar5;\n            (*(code *)PTR_GOMP_atomic_end_003fa450)();\n            iVar4 = (*(code *)PTR_SetImageProgress_003f9ccc)\n                              (iVar9,PTR_s_ltiple_images_003f98e8 + -0x7ed0,\n                               *(undefined4 *)param_1[6],((undefined4 *)param_1[6])[1],0,\n                               *(undefined4 *)(iVar9 + 0x1c));\n            if (iVar4 == 0) {\n              param_1[5] = 0;\n            }\n          }\n        }\n      }\n      iVar10 = iVar10 + 1;\n    } while (iVar24 != iVar10);\n  }" ({ "{") (expression_statement "iVar3 = param_1[4];" (assignment_expression "iVar3 = param_1[4]" (identifier "iVar3") (= "=") (subscript_expression "param_1[4]" (identifier "param_1") ([ "[") (number_literal "4") (] "]"))) (; ";")) (expression_statement "iVar2 = param_1[2];" (assignment_expression "iVar2 = param_1[2]" (identifier "iVar2") (= "=") (subscript_expression "param_1[2]" (identifier "param_1") ([ "[") (number_literal "2") (] "]"))) (; ";")) (expression_statement "iVar12 = param_1[1];" (assignment_expression "iVar12 = param_1[1]" (identifier "iVar12") (= "=") (subscript_expression "param_1[1]" (identifier "param_1") ([ "[") (number_literal "1") (] "]"))) (; ";")) (expression_statement "dVar20 = *(double *)(PTR_s_ltiple_images_003f98e8 + -0x77c0);" (assignment_expression "dVar20 = *(double *)(PTR_s_ltiple_images_003f98e8 + -0x77c0)" (identifier "dVar20") (= "=") (pointer_expression "*(double *)(PTR_s_ltiple_images_003f98e8 + -0x77c0)" (* "*") (cast_expression "(double *)(PTR_s_ltiple_images_003f98e8 + -0x77c0)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(PTR_s_ltiple_images_003f98e8 + -0x77c0)" (( "(") (binary_expression "PTR_s_ltiple_images_003f98e8 + -0x77c0" (identifier "PTR_s_ltiple_images_003f98e8") (+ "+") (number_literal "-0x77c0")) () ")"))))) (; ";")) (expression_statement "dVar13 = *(double *)(PTR_LAB_003f98e0 + 0x43d0);" (assignment_expression "dVar13 = *(double *)(PTR_LAB_003f98e0 + 0x43d0)" (identifier "dVar13") (= "=") (pointer_expression "*(double *)(PTR_LAB_003f98e0 + 0x43d0)" (* "*") (cast_expression "(double *)(PTR_LAB_003f98e0 + 0x43d0)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(PTR_LAB_003f98e0 + 0x43d0)" (( "(") (binary_expression "PTR_LAB_003f98e0 + 0x43d0" (identifier "PTR_LAB_003f98e0") (+ "+") (number_literal "0x43d0")) () ")"))))) (; ";")) (expression_statement "dVar21 = *(double *)(PTR_LAB_003f98e0 + 0x43e0);" (assignment_expression "dVar21 = *(double *)(PTR_LAB_003f98e0 + 0x43e0)" (identifier "dVar21") (= "=") (pointer_expression "*(double *)(PTR_LAB_003f98e0 + 0x43e0)" (* "*") (cast_expression "(double *)(PTR_LAB_003f98e0 + 0x43e0)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(PTR_LAB_003f98e0 + 0x43e0)" (( "(") (binary_expression "PTR_LAB_003f98e0 + 0x43e0" (identifier "PTR_LAB_003f98e0") (+ "+") (number_literal "0x43e0")) () ")"))))) (; ";")) (do_statement "do {\n      if (param_1[5] != 0) {\n        iVar4 = (*(code *)PTR_GetCacheViewAuthenticPixels_003fa664)\n                          (iVar2,0,iVar10,*(undefined4 *)(iVar9 + 0x18),1,iVar12);\n        if (iVar4 == 0) {\n          param_1[5] = 0;\n        }\n        else {\n          iVar6 = 0;\n          if (0 < *(int *)(iVar9 + 0x18)) {\n            fVar19 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x7750);\n            fVar18 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x774c);\n            fVar17 = *(float *)(PTR_LAB_003f98e0 + 0x4aa8);\n            dVar23 = *(double *)(puVar1 + 0x43d0);\n            dVar22 = *(double *)(puVar1 + 0x43e0);\n            do {\n              iVar7 = *(int *)(iVar9 + 0x2d0);\n              pfVar8 = (float *)(iVar4 + *(int *)(iVar7 + 8) * 4);\n              fVar16 = *pfVar8;\n              dVar14 = (double)*(float *)(iVar4 + *(int *)(iVar7 + 0x14) * 4) * dVar20 +\n                       (double)(fVar16 * fVar19) +\n                       (double)(*(float *)(iVar4 + *(int *)(iVar7 + 0x20) * 4) * fVar18);\n              if (fVar16 < fVar17) {\n                iVar7 = 0;\n                if (NAN(fVar16)) goto LAB_000cb260;\n                iVar7 = 0;\n                if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                  goto LAB_000cb260;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\nLAB_000cb260:\n                iVar7 = iVar7 * 0x58;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 + iVar3 + 0x28) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x30) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar13;\n                  if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x38) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              iVar4 = iVar4 + *(int *)(iVar9 + 0x2c0) * 4;\n              iVar6 = iVar6 + 1;\n            } while (iVar6 < *(int *)(iVar9 + 0x18));\n          }\n          iVar4 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003fa510)(iVar2,iVar12);\n          if (iVar4 == 0) {\n            param_1[5] = 0;\n          }\n          if (*(int *)(iVar9 + 0x328) != 0) {\n            piVar11 = (int *)param_1[6];\n            (*(code *)PTR_GOMP_atomic_start_003fa2fc)();\n            uVar5 = piVar11[1] + 1;\n            *piVar11 = (uint)(uVar5 < (uint)piVar11[1]) + *piVar11;\n            piVar11[1] = uVar5;\n            (*(code *)PTR_GOMP_atomic_end_003fa450)();\n            iVar4 = (*(code *)PTR_SetImageProgress_003f9ccc)\n                              (iVar9,PTR_s_ltiple_images_003f98e8 + -0x7ed0,\n                               *(undefined4 *)param_1[6],((undefined4 *)param_1[6])[1],0,\n                               *(undefined4 *)(iVar9 + 0x1c));\n            if (iVar4 == 0) {\n              param_1[5] = 0;\n            }\n          }\n        }\n      }\n      iVar10 = iVar10 + 1;\n    } while (iVar24 != iVar10);" (do "do") (compound_statement "{\n      if (param_1[5] != 0) {\n        iVar4 = (*(code *)PTR_GetCacheViewAuthenticPixels_003fa664)\n                          (iVar2,0,iVar10,*(undefined4 *)(iVar9 + 0x18),1,iVar12);\n        if (iVar4 == 0) {\n          param_1[5] = 0;\n        }\n        else {\n          iVar6 = 0;\n          if (0 < *(int *)(iVar9 + 0x18)) {\n            fVar19 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x7750);\n            fVar18 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x774c);\n            fVar17 = *(float *)(PTR_LAB_003f98e0 + 0x4aa8);\n            dVar23 = *(double *)(puVar1 + 0x43d0);\n            dVar22 = *(double *)(puVar1 + 0x43e0);\n            do {\n              iVar7 = *(int *)(iVar9 + 0x2d0);\n              pfVar8 = (float *)(iVar4 + *(int *)(iVar7 + 8) * 4);\n              fVar16 = *pfVar8;\n              dVar14 = (double)*(float *)(iVar4 + *(int *)(iVar7 + 0x14) * 4) * dVar20 +\n                       (double)(fVar16 * fVar19) +\n                       (double)(*(float *)(iVar4 + *(int *)(iVar7 + 0x20) * 4) * fVar18);\n              if (fVar16 < fVar17) {\n                iVar7 = 0;\n                if (NAN(fVar16)) goto LAB_000cb260;\n                iVar7 = 0;\n                if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                  goto LAB_000cb260;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\nLAB_000cb260:\n                iVar7 = iVar7 * 0x58;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 + iVar3 + 0x28) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x30) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar13;\n                  if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x38) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              iVar4 = iVar4 + *(int *)(iVar9 + 0x2c0) * 4;\n              iVar6 = iVar6 + 1;\n            } while (iVar6 < *(int *)(iVar9 + 0x18));\n          }\n          iVar4 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003fa510)(iVar2,iVar12);\n          if (iVar4 == 0) {\n            param_1[5] = 0;\n          }\n          if (*(int *)(iVar9 + 0x328) != 0) {\n            piVar11 = (int *)param_1[6];\n            (*(code *)PTR_GOMP_atomic_start_003fa2fc)();\n            uVar5 = piVar11[1] + 1;\n            *piVar11 = (uint)(uVar5 < (uint)piVar11[1]) + *piVar11;\n            piVar11[1] = uVar5;\n            (*(code *)PTR_GOMP_atomic_end_003fa450)();\n            iVar4 = (*(code *)PTR_SetImageProgress_003f9ccc)\n                              (iVar9,PTR_s_ltiple_images_003f98e8 + -0x7ed0,\n                               *(undefined4 *)param_1[6],((undefined4 *)param_1[6])[1],0,\n                               *(undefined4 *)(iVar9 + 0x1c));\n            if (iVar4 == 0) {\n              param_1[5] = 0;\n            }\n          }\n        }\n      }\n      iVar10 = iVar10 + 1;\n    }" ({ "{") (if_statement "if (param_1[5] != 0) {\n        iVar4 = (*(code *)PTR_GetCacheViewAuthenticPixels_003fa664)\n                          (iVar2,0,iVar10,*(undefined4 *)(iVar9 + 0x18),1,iVar12);\n        if (iVar4 == 0) {\n          param_1[5] = 0;\n        }\n        else {\n          iVar6 = 0;\n          if (0 < *(int *)(iVar9 + 0x18)) {\n            fVar19 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x7750);\n            fVar18 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x774c);\n            fVar17 = *(float *)(PTR_LAB_003f98e0 + 0x4aa8);\n            dVar23 = *(double *)(puVar1 + 0x43d0);\n            dVar22 = *(double *)(puVar1 + 0x43e0);\n            do {\n              iVar7 = *(int *)(iVar9 + 0x2d0);\n              pfVar8 = (float *)(iVar4 + *(int *)(iVar7 + 8) * 4);\n              fVar16 = *pfVar8;\n              dVar14 = (double)*(float *)(iVar4 + *(int *)(iVar7 + 0x14) * 4) * dVar20 +\n                       (double)(fVar16 * fVar19) +\n                       (double)(*(float *)(iVar4 + *(int *)(iVar7 + 0x20) * 4) * fVar18);\n              if (fVar16 < fVar17) {\n                iVar7 = 0;\n                if (NAN(fVar16)) goto LAB_000cb260;\n                iVar7 = 0;\n                if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                  goto LAB_000cb260;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\nLAB_000cb260:\n                iVar7 = iVar7 * 0x58;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 + iVar3 + 0x28) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x30) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar13;\n                  if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x38) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              iVar4 = iVar4 + *(int *)(iVar9 + 0x2c0) * 4;\n              iVar6 = iVar6 + 1;\n            } while (iVar6 < *(int *)(iVar9 + 0x18));\n          }\n          iVar4 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003fa510)(iVar2,iVar12);\n          if (iVar4 == 0) {\n            param_1[5] = 0;\n          }\n          if (*(int *)(iVar9 + 0x328) != 0) {\n            piVar11 = (int *)param_1[6];\n            (*(code *)PTR_GOMP_atomic_start_003fa2fc)();\n            uVar5 = piVar11[1] + 1;\n            *piVar11 = (uint)(uVar5 < (uint)piVar11[1]) + *piVar11;\n            piVar11[1] = uVar5;\n            (*(code *)PTR_GOMP_atomic_end_003fa450)();\n            iVar4 = (*(code *)PTR_SetImageProgress_003f9ccc)\n                              (iVar9,PTR_s_ltiple_images_003f98e8 + -0x7ed0,\n                               *(undefined4 *)param_1[6],((undefined4 *)param_1[6])[1],0,\n                               *(undefined4 *)(iVar9 + 0x1c));\n            if (iVar4 == 0) {\n              param_1[5] = 0;\n            }\n          }\n        }\n      }" (if "if") (parenthesized_expression "(param_1[5] != 0)" (( "(") (binary_expression "param_1[5] != 0" (subscript_expression "param_1[5]" (identifier "param_1") ([ "[") (number_literal "5") (] "]")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n        iVar4 = (*(code *)PTR_GetCacheViewAuthenticPixels_003fa664)\n                          (iVar2,0,iVar10,*(undefined4 *)(iVar9 + 0x18),1,iVar12);\n        if (iVar4 == 0) {\n          param_1[5] = 0;\n        }\n        else {\n          iVar6 = 0;\n          if (0 < *(int *)(iVar9 + 0x18)) {\n            fVar19 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x7750);\n            fVar18 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x774c);\n            fVar17 = *(float *)(PTR_LAB_003f98e0 + 0x4aa8);\n            dVar23 = *(double *)(puVar1 + 0x43d0);\n            dVar22 = *(double *)(puVar1 + 0x43e0);\n            do {\n              iVar7 = *(int *)(iVar9 + 0x2d0);\n              pfVar8 = (float *)(iVar4 + *(int *)(iVar7 + 8) * 4);\n              fVar16 = *pfVar8;\n              dVar14 = (double)*(float *)(iVar4 + *(int *)(iVar7 + 0x14) * 4) * dVar20 +\n                       (double)(fVar16 * fVar19) +\n                       (double)(*(float *)(iVar4 + *(int *)(iVar7 + 0x20) * 4) * fVar18);\n              if (fVar16 < fVar17) {\n                iVar7 = 0;\n                if (NAN(fVar16)) goto LAB_000cb260;\n                iVar7 = 0;\n                if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                  goto LAB_000cb260;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\nLAB_000cb260:\n                iVar7 = iVar7 * 0x58;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 + iVar3 + 0x28) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x30) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar13;\n                  if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x38) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              iVar4 = iVar4 + *(int *)(iVar9 + 0x2c0) * 4;\n              iVar6 = iVar6 + 1;\n            } while (iVar6 < *(int *)(iVar9 + 0x18));\n          }\n          iVar4 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003fa510)(iVar2,iVar12);\n          if (iVar4 == 0) {\n            param_1[5] = 0;\n          }\n          if (*(int *)(iVar9 + 0x328) != 0) {\n            piVar11 = (int *)param_1[6];\n            (*(code *)PTR_GOMP_atomic_start_003fa2fc)();\n            uVar5 = piVar11[1] + 1;\n            *piVar11 = (uint)(uVar5 < (uint)piVar11[1]) + *piVar11;\n            piVar11[1] = uVar5;\n            (*(code *)PTR_GOMP_atomic_end_003fa450)();\n            iVar4 = (*(code *)PTR_SetImageProgress_003f9ccc)\n                              (iVar9,PTR_s_ltiple_images_003f98e8 + -0x7ed0,\n                               *(undefined4 *)param_1[6],((undefined4 *)param_1[6])[1],0,\n                               *(undefined4 *)(iVar9 + 0x1c));\n            if (iVar4 == 0) {\n              param_1[5] = 0;\n            }\n          }\n        }\n      }" ({ "{") (expression_statement "iVar4 = (*(code *)PTR_GetCacheViewAuthenticPixels_003fa664)\n                          (iVar2,0,iVar10,*(undefined4 *)(iVar9 + 0x18),1,iVar12);" (assignment_expression "iVar4 = (*(code *)PTR_GetCacheViewAuthenticPixels_003fa664)\n                          (iVar2,0,iVar10,*(undefined4 *)(iVar9 + 0x18),1,iVar12)" (identifier "iVar4") (= "=") (call_expression "(*(code *)PTR_GetCacheViewAuthenticPixels_003fa664)\n                          (iVar2,0,iVar10,*(undefined4 *)(iVar9 + 0x18),1,iVar12)" (parenthesized_expression "(*(code *)PTR_GetCacheViewAuthenticPixels_003fa664)" (( "(") (pointer_expression "*(code *)PTR_GetCacheViewAuthenticPixels_003fa664" (* "*") (cast_expression "(code *)PTR_GetCacheViewAuthenticPixels_003fa664" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_GetCacheViewAuthenticPixels_003fa664"))) () ")")) (argument_list "(iVar2,0,iVar10,*(undefined4 *)(iVar9 + 0x18),1,iVar12)" (( "(") (identifier "iVar2") (, ",") (number_literal "0") (, ",") (identifier "iVar10") (, ",") (pointer_expression "*(undefined4 *)(iVar9 + 0x18)" (* "*") (cast_expression "(undefined4 *)(iVar9 + 0x18)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar9 + 0x18)" (( "(") (binary_expression "iVar9 + 0x18" (identifier "iVar9") (+ "+") (number_literal "0x18")) () ")")))) (, ",") (number_literal "1") (, ",") (identifier "iVar12") () ")")))) (; ";")) (if_statement "if (iVar4 == 0) {\n          param_1[5] = 0;\n        }\n        else {\n          iVar6 = 0;\n          if (0 < *(int *)(iVar9 + 0x18)) {\n            fVar19 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x7750);\n            fVar18 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x774c);\n            fVar17 = *(float *)(PTR_LAB_003f98e0 + 0x4aa8);\n            dVar23 = *(double *)(puVar1 + 0x43d0);\n            dVar22 = *(double *)(puVar1 + 0x43e0);\n            do {\n              iVar7 = *(int *)(iVar9 + 0x2d0);\n              pfVar8 = (float *)(iVar4 + *(int *)(iVar7 + 8) * 4);\n              fVar16 = *pfVar8;\n              dVar14 = (double)*(float *)(iVar4 + *(int *)(iVar7 + 0x14) * 4) * dVar20 +\n                       (double)(fVar16 * fVar19) +\n                       (double)(*(float *)(iVar4 + *(int *)(iVar7 + 0x20) * 4) * fVar18);\n              if (fVar16 < fVar17) {\n                iVar7 = 0;\n                if (NAN(fVar16)) goto LAB_000cb260;\n                iVar7 = 0;\n                if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                  goto LAB_000cb260;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\nLAB_000cb260:\n                iVar7 = iVar7 * 0x58;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 + iVar3 + 0x28) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x30) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar13;\n                  if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x38) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              iVar4 = iVar4 + *(int *)(iVar9 + 0x2c0) * 4;\n              iVar6 = iVar6 + 1;\n            } while (iVar6 < *(int *)(iVar9 + 0x18));\n          }\n          iVar4 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003fa510)(iVar2,iVar12);\n          if (iVar4 == 0) {\n            param_1[5] = 0;\n          }\n          if (*(int *)(iVar9 + 0x328) != 0) {\n            piVar11 = (int *)param_1[6];\n            (*(code *)PTR_GOMP_atomic_start_003fa2fc)();\n            uVar5 = piVar11[1] + 1;\n            *piVar11 = (uint)(uVar5 < (uint)piVar11[1]) + *piVar11;\n            piVar11[1] = uVar5;\n            (*(code *)PTR_GOMP_atomic_end_003fa450)();\n            iVar4 = (*(code *)PTR_SetImageProgress_003f9ccc)\n                              (iVar9,PTR_s_ltiple_images_003f98e8 + -0x7ed0,\n                               *(undefined4 *)param_1[6],((undefined4 *)param_1[6])[1],0,\n                               *(undefined4 *)(iVar9 + 0x1c));\n            if (iVar4 == 0) {\n              param_1[5] = 0;\n            }\n          }\n        }" (if "if") (parenthesized_expression "(iVar4 == 0)" (( "(") (binary_expression "iVar4 == 0" (identifier "iVar4") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          param_1[5] = 0;\n        }" ({ "{") (expression_statement "param_1[5] = 0;" (assignment_expression "param_1[5] = 0" (subscript_expression "param_1[5]" (identifier "param_1") ([ "[") (number_literal "5") (] "]")) (= "=") (number_literal "0")) (; ";")) (} "}")) (else_clause "else {\n          iVar6 = 0;\n          if (0 < *(int *)(iVar9 + 0x18)) {\n            fVar19 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x7750);\n            fVar18 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x774c);\n            fVar17 = *(float *)(PTR_LAB_003f98e0 + 0x4aa8);\n            dVar23 = *(double *)(puVar1 + 0x43d0);\n            dVar22 = *(double *)(puVar1 + 0x43e0);\n            do {\n              iVar7 = *(int *)(iVar9 + 0x2d0);\n              pfVar8 = (float *)(iVar4 + *(int *)(iVar7 + 8) * 4);\n              fVar16 = *pfVar8;\n              dVar14 = (double)*(float *)(iVar4 + *(int *)(iVar7 + 0x14) * 4) * dVar20 +\n                       (double)(fVar16 * fVar19) +\n                       (double)(*(float *)(iVar4 + *(int *)(iVar7 + 0x20) * 4) * fVar18);\n              if (fVar16 < fVar17) {\n                iVar7 = 0;\n                if (NAN(fVar16)) goto LAB_000cb260;\n                iVar7 = 0;\n                if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                  goto LAB_000cb260;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\nLAB_000cb260:\n                iVar7 = iVar7 * 0x58;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 + iVar3 + 0x28) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x30) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar13;\n                  if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x38) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              iVar4 = iVar4 + *(int *)(iVar9 + 0x2c0) * 4;\n              iVar6 = iVar6 + 1;\n            } while (iVar6 < *(int *)(iVar9 + 0x18));\n          }\n          iVar4 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003fa510)(iVar2,iVar12);\n          if (iVar4 == 0) {\n            param_1[5] = 0;\n          }\n          if (*(int *)(iVar9 + 0x328) != 0) {\n            piVar11 = (int *)param_1[6];\n            (*(code *)PTR_GOMP_atomic_start_003fa2fc)();\n            uVar5 = piVar11[1] + 1;\n            *piVar11 = (uint)(uVar5 < (uint)piVar11[1]) + *piVar11;\n            piVar11[1] = uVar5;\n            (*(code *)PTR_GOMP_atomic_end_003fa450)();\n            iVar4 = (*(code *)PTR_SetImageProgress_003f9ccc)\n                              (iVar9,PTR_s_ltiple_images_003f98e8 + -0x7ed0,\n                               *(undefined4 *)param_1[6],((undefined4 *)param_1[6])[1],0,\n                               *(undefined4 *)(iVar9 + 0x1c));\n            if (iVar4 == 0) {\n              param_1[5] = 0;\n            }\n          }\n        }" (else "else") (compound_statement "{\n          iVar6 = 0;\n          if (0 < *(int *)(iVar9 + 0x18)) {\n            fVar19 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x7750);\n            fVar18 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x774c);\n            fVar17 = *(float *)(PTR_LAB_003f98e0 + 0x4aa8);\n            dVar23 = *(double *)(puVar1 + 0x43d0);\n            dVar22 = *(double *)(puVar1 + 0x43e0);\n            do {\n              iVar7 = *(int *)(iVar9 + 0x2d0);\n              pfVar8 = (float *)(iVar4 + *(int *)(iVar7 + 8) * 4);\n              fVar16 = *pfVar8;\n              dVar14 = (double)*(float *)(iVar4 + *(int *)(iVar7 + 0x14) * 4) * dVar20 +\n                       (double)(fVar16 * fVar19) +\n                       (double)(*(float *)(iVar4 + *(int *)(iVar7 + 0x20) * 4) * fVar18);\n              if (fVar16 < fVar17) {\n                iVar7 = 0;\n                if (NAN(fVar16)) goto LAB_000cb260;\n                iVar7 = 0;\n                if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                  goto LAB_000cb260;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\nLAB_000cb260:\n                iVar7 = iVar7 * 0x58;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 + iVar3 + 0x28) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x30) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar13;\n                  if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x38) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              iVar4 = iVar4 + *(int *)(iVar9 + 0x2c0) * 4;\n              iVar6 = iVar6 + 1;\n            } while (iVar6 < *(int *)(iVar9 + 0x18));\n          }\n          iVar4 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003fa510)(iVar2,iVar12);\n          if (iVar4 == 0) {\n            param_1[5] = 0;\n          }\n          if (*(int *)(iVar9 + 0x328) != 0) {\n            piVar11 = (int *)param_1[6];\n            (*(code *)PTR_GOMP_atomic_start_003fa2fc)();\n            uVar5 = piVar11[1] + 1;\n            *piVar11 = (uint)(uVar5 < (uint)piVar11[1]) + *piVar11;\n            piVar11[1] = uVar5;\n            (*(code *)PTR_GOMP_atomic_end_003fa450)();\n            iVar4 = (*(code *)PTR_SetImageProgress_003f9ccc)\n                              (iVar9,PTR_s_ltiple_images_003f98e8 + -0x7ed0,\n                               *(undefined4 *)param_1[6],((undefined4 *)param_1[6])[1],0,\n                               *(undefined4 *)(iVar9 + 0x1c));\n            if (iVar4 == 0) {\n              param_1[5] = 0;\n            }\n          }\n        }" ({ "{") (expression_statement "iVar6 = 0;" (assignment_expression "iVar6 = 0" (identifier "iVar6") (= "=") (number_literal "0")) (; ";")) (if_statement "if (0 < *(int *)(iVar9 + 0x18)) {\n            fVar19 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x7750);\n            fVar18 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x774c);\n            fVar17 = *(float *)(PTR_LAB_003f98e0 + 0x4aa8);\n            dVar23 = *(double *)(puVar1 + 0x43d0);\n            dVar22 = *(double *)(puVar1 + 0x43e0);\n            do {\n              iVar7 = *(int *)(iVar9 + 0x2d0);\n              pfVar8 = (float *)(iVar4 + *(int *)(iVar7 + 8) * 4);\n              fVar16 = *pfVar8;\n              dVar14 = (double)*(float *)(iVar4 + *(int *)(iVar7 + 0x14) * 4) * dVar20 +\n                       (double)(fVar16 * fVar19) +\n                       (double)(*(float *)(iVar4 + *(int *)(iVar7 + 0x20) * 4) * fVar18);\n              if (fVar16 < fVar17) {\n                iVar7 = 0;\n                if (NAN(fVar16)) goto LAB_000cb260;\n                iVar7 = 0;\n                if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                  goto LAB_000cb260;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\nLAB_000cb260:\n                iVar7 = iVar7 * 0x58;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 + iVar3 + 0x28) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x30) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar13;\n                  if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x38) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              iVar4 = iVar4 + *(int *)(iVar9 + 0x2c0) * 4;\n              iVar6 = iVar6 + 1;\n            } while (iVar6 < *(int *)(iVar9 + 0x18));\n          }" (if "if") (parenthesized_expression "(0 < *(int *)(iVar9 + 0x18))" (( "(") (binary_expression "0 < *(int *)(iVar9 + 0x18)" (number_literal "0") (< "<") (pointer_expression "*(int *)(iVar9 + 0x18)" (* "*") (cast_expression "(int *)(iVar9 + 0x18)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar9 + 0x18)" (( "(") (binary_expression "iVar9 + 0x18" (identifier "iVar9") (+ "+") (number_literal "0x18")) () ")"))))) () ")")) (compound_statement "{\n            fVar19 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x7750);\n            fVar18 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x774c);\n            fVar17 = *(float *)(PTR_LAB_003f98e0 + 0x4aa8);\n            dVar23 = *(double *)(puVar1 + 0x43d0);\n            dVar22 = *(double *)(puVar1 + 0x43e0);\n            do {\n              iVar7 = *(int *)(iVar9 + 0x2d0);\n              pfVar8 = (float *)(iVar4 + *(int *)(iVar7 + 8) * 4);\n              fVar16 = *pfVar8;\n              dVar14 = (double)*(float *)(iVar4 + *(int *)(iVar7 + 0x14) * 4) * dVar20 +\n                       (double)(fVar16 * fVar19) +\n                       (double)(*(float *)(iVar4 + *(int *)(iVar7 + 0x20) * 4) * fVar18);\n              if (fVar16 < fVar17) {\n                iVar7 = 0;\n                if (NAN(fVar16)) goto LAB_000cb260;\n                iVar7 = 0;\n                if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                  goto LAB_000cb260;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\nLAB_000cb260:\n                iVar7 = iVar7 * 0x58;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 + iVar3 + 0x28) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x30) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar13;\n                  if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x38) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              iVar4 = iVar4 + *(int *)(iVar9 + 0x2c0) * 4;\n              iVar6 = iVar6 + 1;\n            } while (iVar6 < *(int *)(iVar9 + 0x18));\n          }" ({ "{") (expression_statement "fVar19 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x7750);" (assignment_expression "fVar19 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x7750)" (identifier "fVar19") (= "=") (pointer_expression "*(float *)(PTR_s_ltiple_images_003f98e8 + -0x7750)" (* "*") (cast_expression "(float *)(PTR_s_ltiple_images_003f98e8 + -0x7750)" (( "(") (type_descriptor "float *" (primitive_type "float") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(PTR_s_ltiple_images_003f98e8 + -0x7750)" (( "(") (binary_expression "PTR_s_ltiple_images_003f98e8 + -0x7750" (identifier "PTR_s_ltiple_images_003f98e8") (+ "+") (number_literal "-0x7750")) () ")"))))) (; ";")) (expression_statement "fVar18 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x774c);" (assignment_expression "fVar18 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x774c)" (identifier "fVar18") (= "=") (pointer_expression "*(float *)(PTR_s_ltiple_images_003f98e8 + -0x774c)" (* "*") (cast_expression "(float *)(PTR_s_ltiple_images_003f98e8 + -0x774c)" (( "(") (type_descriptor "float *" (primitive_type "float") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(PTR_s_ltiple_images_003f98e8 + -0x774c)" (( "(") (binary_expression "PTR_s_ltiple_images_003f98e8 + -0x774c" (identifier "PTR_s_ltiple_images_003f98e8") (+ "+") (number_literal "-0x774c")) () ")"))))) (; ";")) (expression_statement "fVar17 = *(float *)(PTR_LAB_003f98e0 + 0x4aa8);" (assignment_expression "fVar17 = *(float *)(PTR_LAB_003f98e0 + 0x4aa8)" (identifier "fVar17") (= "=") (pointer_expression "*(float *)(PTR_LAB_003f98e0 + 0x4aa8)" (* "*") (cast_expression "(float *)(PTR_LAB_003f98e0 + 0x4aa8)" (( "(") (type_descriptor "float *" (primitive_type "float") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(PTR_LAB_003f98e0 + 0x4aa8)" (( "(") (binary_expression "PTR_LAB_003f98e0 + 0x4aa8" (identifier "PTR_LAB_003f98e0") (+ "+") (number_literal "0x4aa8")) () ")"))))) (; ";")) (expression_statement "dVar23 = *(double *)(puVar1 + 0x43d0);" (assignment_expression "dVar23 = *(double *)(puVar1 + 0x43d0)" (identifier "dVar23") (= "=") (pointer_expression "*(double *)(puVar1 + 0x43d0)" (* "*") (cast_expression "(double *)(puVar1 + 0x43d0)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar1 + 0x43d0)" (( "(") (binary_expression "puVar1 + 0x43d0" (identifier "puVar1") (+ "+") (number_literal "0x43d0")) () ")"))))) (; ";")) (expression_statement "dVar22 = *(double *)(puVar1 + 0x43e0);" (assignment_expression "dVar22 = *(double *)(puVar1 + 0x43e0)" (identifier "dVar22") (= "=") (pointer_expression "*(double *)(puVar1 + 0x43e0)" (* "*") (cast_expression "(double *)(puVar1 + 0x43e0)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar1 + 0x43e0)" (( "(") (binary_expression "puVar1 + 0x43e0" (identifier "puVar1") (+ "+") (number_literal "0x43e0")) () ")"))))) (; ";")) (do_statement "do {\n              iVar7 = *(int *)(iVar9 + 0x2d0);\n              pfVar8 = (float *)(iVar4 + *(int *)(iVar7 + 8) * 4);\n              fVar16 = *pfVar8;\n              dVar14 = (double)*(float *)(iVar4 + *(int *)(iVar7 + 0x14) * 4) * dVar20 +\n                       (double)(fVar16 * fVar19) +\n                       (double)(*(float *)(iVar4 + *(int *)(iVar7 + 0x20) * 4) * fVar18);\n              if (fVar16 < fVar17) {\n                iVar7 = 0;\n                if (NAN(fVar16)) goto LAB_000cb260;\n                iVar7 = 0;\n                if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                  goto LAB_000cb260;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\nLAB_000cb260:\n                iVar7 = iVar7 * 0x58;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 + iVar3 + 0x28) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x30) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar13;\n                  if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x38) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              iVar4 = iVar4 + *(int *)(iVar9 + 0x2c0) * 4;\n              iVar6 = iVar6 + 1;\n            } while (iVar6 < *(int *)(iVar9 + 0x18));" (do "do") (compound_statement "{\n              iVar7 = *(int *)(iVar9 + 0x2d0);\n              pfVar8 = (float *)(iVar4 + *(int *)(iVar7 + 8) * 4);\n              fVar16 = *pfVar8;\n              dVar14 = (double)*(float *)(iVar4 + *(int *)(iVar7 + 0x14) * 4) * dVar20 +\n                       (double)(fVar16 * fVar19) +\n                       (double)(*(float *)(iVar4 + *(int *)(iVar7 + 0x20) * 4) * fVar18);\n              if (fVar16 < fVar17) {\n                iVar7 = 0;\n                if (NAN(fVar16)) goto LAB_000cb260;\n                iVar7 = 0;\n                if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                  goto LAB_000cb260;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\nLAB_000cb260:\n                iVar7 = iVar7 * 0x58;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 + iVar3 + 0x28) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x30) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4);\n              fVar16 = *pfVar8;\n              if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar13;\n                  if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }\n              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x38) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);\n              iVar4 = iVar4 + *(int *)(iVar9 + 0x2c0) * 4;\n              iVar6 = iVar6 + 1;\n            }" ({ "{") (expression_statement "iVar7 = *(int *)(iVar9 + 0x2d0);" (assignment_expression "iVar7 = *(int *)(iVar9 + 0x2d0)" (identifier "iVar7") (= "=") (pointer_expression "*(int *)(iVar9 + 0x2d0)" (* "*") (cast_expression "(int *)(iVar9 + 0x2d0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar9 + 0x2d0)" (( "(") (binary_expression "iVar9 + 0x2d0" (identifier "iVar9") (+ "+") (number_literal "0x2d0")) () ")"))))) (; ";")) (expression_statement "pfVar8 = (float *)(iVar4 + *(int *)(iVar7 + 8) * 4);" (assignment_expression "pfVar8 = (float *)(iVar4 + *(int *)(iVar7 + 8) * 4)" (identifier "pfVar8") (= "=") (cast_expression "(float *)(iVar4 + *(int *)(iVar7 + 8) * 4)" (( "(") (type_descriptor "float *" (primitive_type "float") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar4 + *(int *)(iVar7 + 8) * 4)" (( "(") (binary_expression "iVar4 + *(int *)(iVar7 + 8) * 4" (identifier "iVar4") (+ "+") (binary_expression "*(int *)(iVar7 + 8) * 4" (pointer_expression "*(int *)(iVar7 + 8)" (* "*") (cast_expression "(int *)(iVar7 + 8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar7 + 8)" (( "(") (binary_expression "iVar7 + 8" (identifier "iVar7") (+ "+") (number_literal "8")) () ")")))) (* "*") (number_literal "4"))) () ")")))) (; ";")) (expression_statement "fVar16 = *pfVar8;" (assignment_expression "fVar16 = *pfVar8" (identifier "fVar16") (= "=") (pointer_expression "*pfVar8" (* "*") (identifier "pfVar8"))) (; ";")) (expression_statement "dVar14 = (double)*(float *)(iVar4 + *(int *)(iVar7 + 0x14) * 4) * dVar20 +\n                       (double)(fVar16 * fVar19) +\n                       (double)(*(float *)(iVar4 + *(int *)(iVar7 + 0x20) * 4) * fVar18);" (assignment_expression "dVar14 = (double)*(float *)(iVar4 + *(int *)(iVar7 + 0x14) * 4) * dVar20 +\n                       (double)(fVar16 * fVar19) +\n                       (double)(*(float *)(iVar4 + *(int *)(iVar7 + 0x20) * 4) * fVar18)" (identifier "dVar14") (= "=") (binary_expression "(double)*(float *)(iVar4 + *(int *)(iVar7 + 0x14) * 4) * dVar20 +\n                       (double)(fVar16 * fVar19) +\n                       (double)(*(float *)(iVar4 + *(int *)(iVar7 + 0x20) * 4) * fVar18)" (binary_expression "(double)*(float *)(iVar4 + *(int *)(iVar7 + 0x14) * 4) * dVar20 +\n                       (double)(fVar16 * fVar19)" (binary_expression "(double)*(float *)(iVar4 + *(int *)(iVar7 + 0x14) * 4) * dVar20" (cast_expression "(double)*(float *)(iVar4 + *(int *)(iVar7 + 0x14) * 4)" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (pointer_expression "*(float *)(iVar4 + *(int *)(iVar7 + 0x14) * 4)" (* "*") (cast_expression "(float *)(iVar4 + *(int *)(iVar7 + 0x14) * 4)" (( "(") (type_descriptor "float *" (primitive_type "float") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar4 + *(int *)(iVar7 + 0x14) * 4)" (( "(") (binary_expression "iVar4 + *(int *)(iVar7 + 0x14) * 4" (identifier "iVar4") (+ "+") (binary_expression "*(int *)(iVar7 + 0x14) * 4" (pointer_expression "*(int *)(iVar7 + 0x14)" (* "*") (cast_expression "(int *)(iVar7 + 0x14)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar7 + 0x14)" (( "(") (binary_expression "iVar7 + 0x14" (identifier "iVar7") (+ "+") (number_literal "0x14")) () ")")))) (* "*") (number_literal "4"))) () ")"))))) (* "*") (identifier "dVar20")) (+ "+") (cast_expression "(double)(fVar16 * fVar19)" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (parenthesized_expression "(fVar16 * fVar19)" (( "(") (binary_expression "fVar16 * fVar19" (identifier "fVar16") (* "*") (identifier "fVar19")) () ")")))) (+ "+") (cast_expression "(double)(*(float *)(iVar4 + *(int *)(iVar7 + 0x20) * 4) * fVar18)" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (parenthesized_expression "(*(float *)(iVar4 + *(int *)(iVar7 + 0x20) * 4) * fVar18)" (( "(") (binary_expression "*(float *)(iVar4 + *(int *)(iVar7 + 0x20) * 4) * fVar18" (pointer_expression "*(float *)(iVar4 + *(int *)(iVar7 + 0x20) * 4)" (* "*") (cast_expression "(float *)(iVar4 + *(int *)(iVar7 + 0x20) * 4)" (( "(") (type_descriptor "float *" (primitive_type "float") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar4 + *(int *)(iVar7 + 0x20) * 4)" (( "(") (binary_expression "iVar4 + *(int *)(iVar7 + 0x20) * 4" (identifier "iVar4") (+ "+") (binary_expression "*(int *)(iVar7 + 0x20) * 4" (pointer_expression "*(int *)(iVar7 + 0x20)" (* "*") (cast_expression "(int *)(iVar7 + 0x20)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar7 + 0x20)" (( "(") (binary_expression "iVar7 + 0x20" (identifier "iVar7") (+ "+") (number_literal "0x20")) () ")")))) (* "*") (number_literal "4"))) () ")")))) (* "*") (identifier "fVar18")) () ")"))))) (; ";")) (if_statement "if (fVar16 < fVar17) {\n                iVar7 = 0;\n                if (NAN(fVar16)) goto LAB_000cb260;\n                iVar7 = 0;\n                if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                  goto LAB_000cb260;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\nLAB_000cb260:\n                iVar7 = iVar7 * 0x58;\n              }" (if "if") (parenthesized_expression "(fVar16 < fVar17)" (( "(") (binary_expression "fVar16 < fVar17" (identifier "fVar16") (< "<") (identifier "fVar17")) () ")")) (compound_statement "{\n                iVar7 = 0;\n                if (NAN(fVar16)) goto LAB_000cb260;\n                iVar7 = 0;\n                if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                  goto LAB_000cb260;\n                }\n              }" ({ "{") (expression_statement "iVar7 = 0;" (assignment_expression "iVar7 = 0" (identifier "iVar7") (= "=") (number_literal "0")) (; ";")) (if_statement "if (NAN(fVar16)) goto LAB_000cb260;" (if "if") (parenthesized_expression "(NAN(fVar16))" (( "(") (call_expression "NAN(fVar16)" (identifier "NAN") (argument_list "(fVar16)" (( "(") (identifier "fVar16") () ")"))) () ")")) (goto_statement "goto LAB_000cb260;" (goto "goto") (statement_identifier "LAB_000cb260") (; ";"))) (expression_statement "iVar7 = 0;" (assignment_expression "iVar7 = 0" (identifier "iVar7") (= "=") (number_literal "0")) (; ";")) (if_statement "if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                  goto LAB_000cb260;\n                }" (if "if") (parenthesized_expression "(0.0 < fVar16)" (( "(") (binary_expression "0.0 < fVar16" (number_literal "0.0") (< "<") (identifier "fVar16")) () ")")) (compound_statement "{\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                  goto LAB_000cb260;\n                }" ({ "{") (expression_statement "dVar15 = (double)fVar16 + dVar23;" (assignment_expression "dVar15 = (double)fVar16 + dVar23" (identifier "dVar15") (= "=") (binary_expression "(double)fVar16 + dVar23" (cast_expression "(double)fVar16" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (identifier "fVar16")) (+ "+") (identifier "dVar23"))) (; ";")) (if_statement "if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }" (if "if") (parenthesized_expression "(dVar15 < dVar22)" (( "(") (binary_expression "dVar15 < dVar22" (identifier "dVar15") (< "<") (identifier "dVar22")) () ")")) (compound_statement "{\n                    iVar7 = (int)dVar15;\n                  }" ({ "{") (expression_statement "iVar7 = (int)dVar15;" (assignment_expression "iVar7 = (int)dVar15" (identifier "iVar7") (= "=") (cast_expression "(int)dVar15" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "dVar15"))) (; ";")) (} "}")) (else_clause "else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }" (else "else") (compound_statement "{\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }" ({ "{") (expression_statement "iVar7 = (int)(dVar15 - dVar22);" (assignment_expression "iVar7 = (int)(dVar15 - dVar22)" (identifier "iVar7") (= "=") (cast_expression "(int)(dVar15 - dVar22)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "(dVar15 - dVar22)" (( "(") (binary_expression "dVar15 - dVar22" (identifier "dVar15") (- "-") (identifier "dVar22")) () ")")))) (; ";")) (} "}")))) (goto_statement "goto LAB_000cb260;" (goto "goto") (statement_identifier "LAB_000cb260") (; ";")) (} "}"))) (} "}")) (else_clause "else {\n                iVar7 = 0xffff;\nLAB_000cb260:\n                iVar7 = iVar7 * 0x58;\n              }" (else "else") (compound_statement "{\n                iVar7 = 0xffff;\nLAB_000cb260:\n                iVar7 = iVar7 * 0x58;\n              }" ({ "{") (expression_statement "iVar7 = 0xffff;" (assignment_expression "iVar7 = 0xffff" (identifier "iVar7") (= "=") (number_literal "0xffff")) (; ";")) (labeled_statement "LAB_000cb260:\n                iVar7 = iVar7 * 0x58;" (statement_identifier "LAB_000cb260") (: ":") (expression_statement "iVar7 = iVar7 * 0x58;" (assignment_expression "iVar7 = iVar7 * 0x58" (identifier "iVar7") (= "=") (binary_expression "iVar7 * 0x58" (identifier "iVar7") (* "*") (number_literal "0x58"))) (; ";"))) (} "}")))) (expression_statement "*pfVar8 = (float)((*(double *)(iVar7 + iVar3 + 0x28) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);" (assignment_expression "*pfVar8 = (float)((*(double *)(iVar7 + iVar3 + 0x28) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14)" (pointer_expression "*pfVar8" (* "*") (identifier "pfVar8")) (= "=") (cast_expression "(float)((*(double *)(iVar7 + iVar3 + 0x28) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14)" (( "(") (type_descriptor "float" (primitive_type "float")) () ")") (parenthesized_expression "((*(double *)(iVar7 + iVar3 + 0x28) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14)" (( "(") (binary_expression "(*(double *)(iVar7 + iVar3 + 0x28) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14" (binary_expression "(*(double *)(iVar7 + iVar3 + 0x28) - dVar14) *\n                                *(double *)(param_1[3] + 0x48)" (parenthesized_expression "(*(double *)(iVar7 + iVar3 + 0x28) - dVar14)" (( "(") (binary_expression "*(double *)(iVar7 + iVar3 + 0x28) - dVar14" (pointer_expression "*(double *)(iVar7 + iVar3 + 0x28)" (* "*") (cast_expression "(double *)(iVar7 + iVar3 + 0x28)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar7 + iVar3 + 0x28)" (( "(") (binary_expression "iVar7 + iVar3 + 0x28" (binary_expression "iVar7 + iVar3" (identifier "iVar7") (+ "+") (identifier "iVar3")) (+ "+") (number_literal "0x28")) () ")")))) (- "-") (identifier "dVar14")) () ")")) (* "*") (pointer_expression "*(double *)(param_1[3] + 0x48)" (* "*") (cast_expression "(double *)(param_1[3] + 0x48)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1[3] + 0x48)" (( "(") (binary_expression "param_1[3] + 0x48" (subscript_expression "param_1[3]" (identifier "param_1") ([ "[") (number_literal "3") (] "]")) (+ "+") (number_literal "0x48")) () ")"))))) (+ "+") (identifier "dVar14")) () ")")))) (; ";")) (expression_statement "pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4);" (assignment_expression "pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4)" (identifier "pfVar8") (= "=") (cast_expression "(float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4)" (( "(") (type_descriptor "float *" (primitive_type "float") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4)" (( "(") (binary_expression "iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4" (identifier "iVar4") (+ "+") (binary_expression "*(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4" (pointer_expression "*(int *)(*(int *)(iVar9 + 0x2d0) + 0x14)" (* "*") (cast_expression "(int *)(*(int *)(iVar9 + 0x2d0) + 0x14)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(iVar9 + 0x2d0) + 0x14)" (( "(") (binary_expression "*(int *)(iVar9 + 0x2d0) + 0x14" (pointer_expression "*(int *)(iVar9 + 0x2d0)" (* "*") (cast_expression "(int *)(iVar9 + 0x2d0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar9 + 0x2d0)" (( "(") (binary_expression "iVar9 + 0x2d0" (identifier "iVar9") (+ "+") (number_literal "0x2d0")) () ")")))) (+ "+") (number_literal "0x14")) () ")")))) (* "*") (number_literal "4"))) () ")")))) (; ";")) (expression_statement "fVar16 = *pfVar8;" (assignment_expression "fVar16 = *pfVar8" (identifier "fVar16") (= "=") (pointer_expression "*pfVar8" (* "*") (identifier "pfVar8"))) (; ";")) (if_statement "if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }" (if "if") (parenthesized_expression "(fVar16 < fVar17)" (( "(") (binary_expression "fVar16 < fVar17" (identifier "fVar16") (< "<") (identifier "fVar17")) () ")")) (compound_statement "{\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }" ({ "{") (if_statement "if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }" (if "if") (parenthesized_expression "(NAN(fVar16))" (( "(") (call_expression "NAN(fVar16)" (identifier "NAN") (argument_list "(fVar16)" (( "(") (identifier "fVar16") () ")"))) () ")")) (compound_statement "{\n                  iVar7 = 0;\n                }" ({ "{") (expression_statement "iVar7 = 0;" (assignment_expression "iVar7 = 0" (identifier "iVar7") (= "=") (number_literal "0")) (; ";")) (} "}")) (else_clause "else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }" (else "else") (if_statement "if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }" (if "if") (parenthesized_expression "(0.0 < fVar16)" (( "(") (binary_expression "0.0 < fVar16" (number_literal "0.0") (< "<") (identifier "fVar16")) () ")")) (compound_statement "{\n                  dVar15 = (double)fVar16 + dVar23;\n                  if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }\n                }" ({ "{") (expression_statement "dVar15 = (double)fVar16 + dVar23;" (assignment_expression "dVar15 = (double)fVar16 + dVar23" (identifier "dVar15") (= "=") (binary_expression "(double)fVar16 + dVar23" (cast_expression "(double)fVar16" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (identifier "fVar16")) (+ "+") (identifier "dVar23"))) (; ";")) (if_statement "if (dVar15 < dVar22) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }" (if "if") (parenthesized_expression "(dVar15 < dVar22)" (( "(") (binary_expression "dVar15 < dVar22" (identifier "dVar15") (< "<") (identifier "dVar22")) () ")")) (compound_statement "{\n                    iVar7 = (int)dVar15;\n                  }" ({ "{") (expression_statement "iVar7 = (int)dVar15;" (assignment_expression "iVar7 = (int)dVar15" (identifier "iVar7") (= "=") (cast_expression "(int)dVar15" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "dVar15"))) (; ";")) (} "}")) (else_clause "else {\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }" (else "else") (compound_statement "{\n                    iVar7 = (int)(dVar15 - dVar22);\n                  }" ({ "{") (expression_statement "iVar7 = (int)(dVar15 - dVar22);" (assignment_expression "iVar7 = (int)(dVar15 - dVar22)" (identifier "iVar7") (= "=") (cast_expression "(int)(dVar15 - dVar22)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "(dVar15 - dVar22)" (( "(") (binary_expression "dVar15 - dVar22" (identifier "dVar15") (- "-") (identifier "dVar22")) () ")")))) (; ";")) (} "}")))) (} "}")) (else_clause "else {\n                  iVar7 = 0;\n                }" (else "else") (compound_statement "{\n                  iVar7 = 0;\n                }" ({ "{") (expression_statement "iVar7 = 0;" (assignment_expression "iVar7 = 0" (identifier "iVar7") (= "=") (number_literal "0")) (; ";")) (} "}")))))) (} "}")) (else_clause "else {\n                iVar7 = 0xffff;\n              }" (else "else") (compound_statement "{\n                iVar7 = 0xffff;\n              }" ({ "{") (expression_statement "iVar7 = 0xffff;" (assignment_expression "iVar7 = 0xffff" (identifier "iVar7") (= "=") (number_literal "0xffff")) (; ";")) (} "}")))) (expression_statement "*pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x30) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);" (assignment_expression "*pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x30) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14)" (pointer_expression "*pfVar8" (* "*") (identifier "pfVar8")) (= "=") (cast_expression "(float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x30) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14)" (( "(") (type_descriptor "float" (primitive_type "float")) () ")") (parenthesized_expression "((*(double *)(iVar7 * 0x58 + iVar3 + 0x30) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14)" (( "(") (binary_expression "(*(double *)(iVar7 * 0x58 + iVar3 + 0x30) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14" (binary_expression "(*(double *)(iVar7 * 0x58 + iVar3 + 0x30) - dVar14) *\n                                *(double *)(param_1[3] + 0x48)" (parenthesized_expression "(*(double *)(iVar7 * 0x58 + iVar3 + 0x30) - dVar14)" (( "(") (binary_expression "*(double *)(iVar7 * 0x58 + iVar3 + 0x30) - dVar14" (pointer_expression "*(double *)(iVar7 * 0x58 + iVar3 + 0x30)" (* "*") (cast_expression "(double *)(iVar7 * 0x58 + iVar3 + 0x30)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar7 * 0x58 + iVar3 + 0x30)" (( "(") (binary_expression "iVar7 * 0x58 + iVar3 + 0x30" (binary_expression "iVar7 * 0x58 + iVar3" (binary_expression "iVar7 * 0x58" (identifier "iVar7") (* "*") (number_literal "0x58")) (+ "+") (identifier "iVar3")) (+ "+") (number_literal "0x30")) () ")")))) (- "-") (identifier "dVar14")) () ")")) (* "*") (pointer_expression "*(double *)(param_1[3] + 0x48)" (* "*") (cast_expression "(double *)(param_1[3] + 0x48)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1[3] + 0x48)" (( "(") (binary_expression "param_1[3] + 0x48" (subscript_expression "param_1[3]" (identifier "param_1") ([ "[") (number_literal "3") (] "]")) (+ "+") (number_literal "0x48")) () ")"))))) (+ "+") (identifier "dVar14")) () ")")))) (; ";")) (expression_statement "pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4);" (assignment_expression "pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4)" (identifier "pfVar8") (= "=") (cast_expression "(float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4)" (( "(") (type_descriptor "float *" (primitive_type "float") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4)" (( "(") (binary_expression "iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4" (identifier "iVar4") (+ "+") (binary_expression "*(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4" (pointer_expression "*(int *)(*(int *)(iVar9 + 0x2d0) + 0x20)" (* "*") (cast_expression "(int *)(*(int *)(iVar9 + 0x2d0) + 0x20)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(iVar9 + 0x2d0) + 0x20)" (( "(") (binary_expression "*(int *)(iVar9 + 0x2d0) + 0x20" (pointer_expression "*(int *)(iVar9 + 0x2d0)" (* "*") (cast_expression "(int *)(iVar9 + 0x2d0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar9 + 0x2d0)" (( "(") (binary_expression "iVar9 + 0x2d0" (identifier "iVar9") (+ "+") (number_literal "0x2d0")) () ")")))) (+ "+") (number_literal "0x20")) () ")")))) (* "*") (number_literal "4"))) () ")")))) (; ";")) (expression_statement "fVar16 = *pfVar8;" (assignment_expression "fVar16 = *pfVar8" (identifier "fVar16") (= "=") (pointer_expression "*pfVar8" (* "*") (identifier "pfVar8"))) (; ";")) (if_statement "if (fVar16 < fVar17) {\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar13;\n                  if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }\n              else {\n                iVar7 = 0xffff;\n              }" (if "if") (parenthesized_expression "(fVar16 < fVar17)" (( "(") (binary_expression "fVar16 < fVar17" (identifier "fVar16") (< "<") (identifier "fVar17")) () ")")) (compound_statement "{\n                if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar13;\n                  if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }\n              }" ({ "{") (if_statement "if (NAN(fVar16)) {\n                  iVar7 = 0;\n                }\n                else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar13;\n                  if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }" (if "if") (parenthesized_expression "(NAN(fVar16))" (( "(") (call_expression "NAN(fVar16)" (identifier "NAN") (argument_list "(fVar16)" (( "(") (identifier "fVar16") () ")"))) () ")")) (compound_statement "{\n                  iVar7 = 0;\n                }" ({ "{") (expression_statement "iVar7 = 0;" (assignment_expression "iVar7 = 0" (identifier "iVar7") (= "=") (number_literal "0")) (; ";")) (} "}")) (else_clause "else if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar13;\n                  if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }" (else "else") (if_statement "if (0.0 < fVar16) {\n                  dVar15 = (double)fVar16 + dVar13;\n                  if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }\n                }\n                else {\n                  iVar7 = 0;\n                }" (if "if") (parenthesized_expression "(0.0 < fVar16)" (( "(") (binary_expression "0.0 < fVar16" (number_literal "0.0") (< "<") (identifier "fVar16")) () ")")) (compound_statement "{\n                  dVar15 = (double)fVar16 + dVar13;\n                  if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }\n                }" ({ "{") (expression_statement "dVar15 = (double)fVar16 + dVar13;" (assignment_expression "dVar15 = (double)fVar16 + dVar13" (identifier "dVar15") (= "=") (binary_expression "(double)fVar16 + dVar13" (cast_expression "(double)fVar16" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (identifier "fVar16")) (+ "+") (identifier "dVar13"))) (; ";")) (if_statement "if (dVar15 < dVar21) {\n                    iVar7 = (int)dVar15;\n                  }\n                  else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }" (if "if") (parenthesized_expression "(dVar15 < dVar21)" (( "(") (binary_expression "dVar15 < dVar21" (identifier "dVar15") (< "<") (identifier "dVar21")) () ")")) (compound_statement "{\n                    iVar7 = (int)dVar15;\n                  }" ({ "{") (expression_statement "iVar7 = (int)dVar15;" (assignment_expression "iVar7 = (int)dVar15" (identifier "iVar7") (= "=") (cast_expression "(int)dVar15" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "dVar15"))) (; ";")) (} "}")) (else_clause "else {\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }" (else "else") (compound_statement "{\n                    iVar7 = (int)(dVar15 - dVar21);\n                  }" ({ "{") (expression_statement "iVar7 = (int)(dVar15 - dVar21);" (assignment_expression "iVar7 = (int)(dVar15 - dVar21)" (identifier "iVar7") (= "=") (cast_expression "(int)(dVar15 - dVar21)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "(dVar15 - dVar21)" (( "(") (binary_expression "dVar15 - dVar21" (identifier "dVar15") (- "-") (identifier "dVar21")) () ")")))) (; ";")) (} "}")))) (} "}")) (else_clause "else {\n                  iVar7 = 0;\n                }" (else "else") (compound_statement "{\n                  iVar7 = 0;\n                }" ({ "{") (expression_statement "iVar7 = 0;" (assignment_expression "iVar7 = 0" (identifier "iVar7") (= "=") (number_literal "0")) (; ";")) (} "}")))))) (} "}")) (else_clause "else {\n                iVar7 = 0xffff;\n              }" (else "else") (compound_statement "{\n                iVar7 = 0xffff;\n              }" ({ "{") (expression_statement "iVar7 = 0xffff;" (assignment_expression "iVar7 = 0xffff" (identifier "iVar7") (= "=") (number_literal "0xffff")) (; ";")) (} "}")))) (expression_statement "*pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x38) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14);" (assignment_expression "*pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x38) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14)" (pointer_expression "*pfVar8" (* "*") (identifier "pfVar8")) (= "=") (cast_expression "(float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x38) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14)" (( "(") (type_descriptor "float" (primitive_type "float")) () ")") (parenthesized_expression "((*(double *)(iVar7 * 0x58 + iVar3 + 0x38) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14)" (( "(") (binary_expression "(*(double *)(iVar7 * 0x58 + iVar3 + 0x38) - dVar14) *\n                                *(double *)(param_1[3] + 0x48) + dVar14" (binary_expression "(*(double *)(iVar7 * 0x58 + iVar3 + 0x38) - dVar14) *\n                                *(double *)(param_1[3] + 0x48)" (parenthesized_expression "(*(double *)(iVar7 * 0x58 + iVar3 + 0x38) - dVar14)" (( "(") (binary_expression "*(double *)(iVar7 * 0x58 + iVar3 + 0x38) - dVar14" (pointer_expression "*(double *)(iVar7 * 0x58 + iVar3 + 0x38)" (* "*") (cast_expression "(double *)(iVar7 * 0x58 + iVar3 + 0x38)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar7 * 0x58 + iVar3 + 0x38)" (( "(") (binary_expression "iVar7 * 0x58 + iVar3 + 0x38" (binary_expression "iVar7 * 0x58 + iVar3" (binary_expression "iVar7 * 0x58" (identifier "iVar7") (* "*") (number_literal "0x58")) (+ "+") (identifier "iVar3")) (+ "+") (number_literal "0x38")) () ")")))) (- "-") (identifier "dVar14")) () ")")) (* "*") (pointer_expression "*(double *)(param_1[3] + 0x48)" (* "*") (cast_expression "(double *)(param_1[3] + 0x48)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1[3] + 0x48)" (( "(") (binary_expression "param_1[3] + 0x48" (subscript_expression "param_1[3]" (identifier "param_1") ([ "[") (number_literal "3") (] "]")) (+ "+") (number_literal "0x48")) () ")"))))) (+ "+") (identifier "dVar14")) () ")")))) (; ";")) (expression_statement "iVar4 = iVar4 + *(int *)(iVar9 + 0x2c0) * 4;" (assignment_expression "iVar4 = iVar4 + *(int *)(iVar9 + 0x2c0) * 4" (identifier "iVar4") (= "=") (binary_expression "iVar4 + *(int *)(iVar9 + 0x2c0) * 4" (identifier "iVar4") (+ "+") (binary_expression "*(int *)(iVar9 + 0x2c0) * 4" (pointer_expression "*(int *)(iVar9 + 0x2c0)" (* "*") (cast_expression "(int *)(iVar9 + 0x2c0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar9 + 0x2c0)" (( "(") (binary_expression "iVar9 + 0x2c0" (identifier "iVar9") (+ "+") (number_literal "0x2c0")) () ")")))) (* "*") (number_literal "4")))) (; ";")) (expression_statement "iVar6 = iVar6 + 1;" (assignment_expression "iVar6 = iVar6 + 1" (identifier "iVar6") (= "=") (binary_expression "iVar6 + 1" (identifier "iVar6") (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(iVar6 < *(int *)(iVar9 + 0x18))" (( "(") (binary_expression "iVar6 < *(int *)(iVar9 + 0x18)" (identifier "iVar6") (< "<") (pointer_expression "*(int *)(iVar9 + 0x18)" (* "*") (cast_expression "(int *)(iVar9 + 0x18)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar9 + 0x18)" (( "(") (binary_expression "iVar9 + 0x18" (identifier "iVar9") (+ "+") (number_literal "0x18")) () ")"))))) () ")")) (; ";")) (} "}"))) (expression_statement "iVar4 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003fa510)(iVar2,iVar12);" (assignment_expression "iVar4 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003fa510)(iVar2,iVar12)" (identifier "iVar4") (= "=") (call_expression "(*(code *)PTR_SyncCacheViewAuthenticPixels_003fa510)(iVar2,iVar12)" (parenthesized_expression "(*(code *)PTR_SyncCacheViewAuthenticPixels_003fa510)" (( "(") (pointer_expression "*(code *)PTR_SyncCacheViewAuthenticPixels_003fa510" (* "*") (cast_expression "(code *)PTR_SyncCacheViewAuthenticPixels_003fa510" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_SyncCacheViewAuthenticPixels_003fa510"))) () ")")) (argument_list "(iVar2,iVar12)" (( "(") (identifier "iVar2") (, ",") (identifier "iVar12") () ")")))) (; ";")) (if_statement "if (iVar4 == 0) {\n            param_1[5] = 0;\n          }" (if "if") (parenthesized_expression "(iVar4 == 0)" (( "(") (binary_expression "iVar4 == 0" (identifier "iVar4") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n            param_1[5] = 0;\n          }" ({ "{") (expression_statement "param_1[5] = 0;" (assignment_expression "param_1[5] = 0" (subscript_expression "param_1[5]" (identifier "param_1") ([ "[") (number_literal "5") (] "]")) (= "=") (number_literal "0")) (; ";")) (} "}"))) (if_statement "if (*(int *)(iVar9 + 0x328) != 0) {\n            piVar11 = (int *)param_1[6];\n            (*(code *)PTR_GOMP_atomic_start_003fa2fc)();\n            uVar5 = piVar11[1] + 1;\n            *piVar11 = (uint)(uVar5 < (uint)piVar11[1]) + *piVar11;\n            piVar11[1] = uVar5;\n            (*(code *)PTR_GOMP_atomic_end_003fa450)();\n            iVar4 = (*(code *)PTR_SetImageProgress_003f9ccc)\n                              (iVar9,PTR_s_ltiple_images_003f98e8 + -0x7ed0,\n                               *(undefined4 *)param_1[6],((undefined4 *)param_1[6])[1],0,\n                               *(undefined4 *)(iVar9 + 0x1c));\n            if (iVar4 == 0) {\n              param_1[5] = 0;\n            }\n          }" (if "if") (parenthesized_expression "(*(int *)(iVar9 + 0x328) != 0)" (( "(") (binary_expression "*(int *)(iVar9 + 0x328) != 0" (pointer_expression "*(int *)(iVar9 + 0x328)" (* "*") (cast_expression "(int *)(iVar9 + 0x328)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar9 + 0x328)" (( "(") (binary_expression "iVar9 + 0x328" (identifier "iVar9") (+ "+") (number_literal "0x328")) () ")")))) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n            piVar11 = (int *)param_1[6];\n            (*(code *)PTR_GOMP_atomic_start_003fa2fc)();\n            uVar5 = piVar11[1] + 1;\n            *piVar11 = (uint)(uVar5 < (uint)piVar11[1]) + *piVar11;\n            piVar11[1] = uVar5;\n            (*(code *)PTR_GOMP_atomic_end_003fa450)();\n            iVar4 = (*(code *)PTR_SetImageProgress_003f9ccc)\n                              (iVar9,PTR_s_ltiple_images_003f98e8 + -0x7ed0,\n                               *(undefined4 *)param_1[6],((undefined4 *)param_1[6])[1],0,\n                               *(undefined4 *)(iVar9 + 0x1c));\n            if (iVar4 == 0) {\n              param_1[5] = 0;\n            }\n          }" ({ "{") (expression_statement "piVar11 = (int *)param_1[6];" (assignment_expression "piVar11 = (int *)param_1[6]" (identifier "piVar11") (= "=") (cast_expression "(int *)param_1[6]" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "param_1[6]" (identifier "param_1") ([ "[") (number_literal "6") (] "]")))) (; ";")) (expression_statement "(*(code *)PTR_GOMP_atomic_start_003fa2fc)();" (call_expression "(*(code *)PTR_GOMP_atomic_start_003fa2fc)()" (parenthesized_expression "(*(code *)PTR_GOMP_atomic_start_003fa2fc)" (( "(") (pointer_expression "*(code *)PTR_GOMP_atomic_start_003fa2fc" (* "*") (cast_expression "(code *)PTR_GOMP_atomic_start_003fa2fc" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_GOMP_atomic_start_003fa2fc"))) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "uVar5 = piVar11[1] + 1;" (assignment_expression "uVar5 = piVar11[1] + 1" (identifier "uVar5") (= "=") (binary_expression "piVar11[1] + 1" (subscript_expression "piVar11[1]" (identifier "piVar11") ([ "[") (number_literal "1") (] "]")) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "*piVar11 = (uint)(uVar5 < (uint)piVar11[1]) + *piVar11;" (assignment_expression "*piVar11 = (uint)(uVar5 < (uint)piVar11[1]) + *piVar11" (pointer_expression "*piVar11" (* "*") (identifier "piVar11")) (= "=") (binary_expression "(uint)(uVar5 < (uint)piVar11[1]) + *piVar11" (call_expression "(uint)(uVar5 < (uint)piVar11[1])" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(uVar5 < (uint)piVar11[1])" (( "(") (binary_expression "uVar5 < (uint)piVar11[1]" (identifier "uVar5") (< "<") (cast_expression "(uint)piVar11[1]" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (subscript_expression "piVar11[1]" (identifier "piVar11") ([ "[") (number_literal "1") (] "]")))) () ")"))) (+ "+") (pointer_expression "*piVar11" (* "*") (identifier "piVar11")))) (; ";")) (expression_statement "piVar11[1] = uVar5;" (assignment_expression "piVar11[1] = uVar5" (subscript_expression "piVar11[1]" (identifier "piVar11") ([ "[") (number_literal "1") (] "]")) (= "=") (identifier "uVar5")) (; ";")) (expression_statement "(*(code *)PTR_GOMP_atomic_end_003fa450)();" (call_expression "(*(code *)PTR_GOMP_atomic_end_003fa450)()" (parenthesized_expression "(*(code *)PTR_GOMP_atomic_end_003fa450)" (( "(") (pointer_expression "*(code *)PTR_GOMP_atomic_end_003fa450" (* "*") (cast_expression "(code *)PTR_GOMP_atomic_end_003fa450" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_GOMP_atomic_end_003fa450"))) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "iVar4 = (*(code *)PTR_SetImageProgress_003f9ccc)\n                              (iVar9,PTR_s_ltiple_images_003f98e8 + -0x7ed0,\n                               *(undefined4 *)param_1[6],((undefined4 *)param_1[6])[1],0,\n                               *(undefined4 *)(iVar9 + 0x1c));" (assignment_expression "iVar4 = (*(code *)PTR_SetImageProgress_003f9ccc)\n                              (iVar9,PTR_s_ltiple_images_003f98e8 + -0x7ed0,\n                               *(undefined4 *)param_1[6],((undefined4 *)param_1[6])[1],0,\n                               *(undefined4 *)(iVar9 + 0x1c))" (identifier "iVar4") (= "=") (call_expression "(*(code *)PTR_SetImageProgress_003f9ccc)\n                              (iVar9,PTR_s_ltiple_images_003f98e8 + -0x7ed0,\n                               *(undefined4 *)param_1[6],((undefined4 *)param_1[6])[1],0,\n                               *(undefined4 *)(iVar9 + 0x1c))" (parenthesized_expression "(*(code *)PTR_SetImageProgress_003f9ccc)" (( "(") (pointer_expression "*(code *)PTR_SetImageProgress_003f9ccc" (* "*") (cast_expression "(code *)PTR_SetImageProgress_003f9ccc" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_SetImageProgress_003f9ccc"))) () ")")) (argument_list "(iVar9,PTR_s_ltiple_images_003f98e8 + -0x7ed0,\n                               *(undefined4 *)param_1[6],((undefined4 *)param_1[6])[1],0,\n                               *(undefined4 *)(iVar9 + 0x1c))" (( "(") (identifier "iVar9") (, ",") (binary_expression "PTR_s_ltiple_images_003f98e8 + -0x7ed0" (identifier "PTR_s_ltiple_images_003f98e8") (+ "+") (number_literal "-0x7ed0")) (, ",") (pointer_expression "*(undefined4 *)param_1[6]" (* "*") (cast_expression "(undefined4 *)param_1[6]" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "param_1[6]" (identifier "param_1") ([ "[") (number_literal "6") (] "]")))) (, ",") (subscript_expression "((undefined4 *)param_1[6])[1]" (parenthesized_expression "((undefined4 *)param_1[6])" (( "(") (cast_expression "(undefined4 *)param_1[6]" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "param_1[6]" (identifier "param_1") ([ "[") (number_literal "6") (] "]"))) () ")")) ([ "[") (number_literal "1") (] "]")) (, ",") (number_literal "0") (, ",") (pointer_expression "*(undefined4 *)(iVar9 + 0x1c)" (* "*") (cast_expression "(undefined4 *)(iVar9 + 0x1c)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar9 + 0x1c)" (( "(") (binary_expression "iVar9 + 0x1c" (identifier "iVar9") (+ "+") (number_literal "0x1c")) () ")")))) () ")")))) (; ";")) (if_statement "if (iVar4 == 0) {\n              param_1[5] = 0;\n            }" (if "if") (parenthesized_expression "(iVar4 == 0)" (( "(") (binary_expression "iVar4 == 0" (identifier "iVar4") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n              param_1[5] = 0;\n            }" ({ "{") (expression_statement "param_1[5] = 0;" (assignment_expression "param_1[5] = 0" (subscript_expression "param_1[5]" (identifier "param_1") ([ "[") (number_literal "5") (] "]")) (= "=") (number_literal "0")) (; ";")) (} "}"))) (} "}"))) (} "}")))) (} "}"))) (expression_statement "iVar10 = iVar10 + 1;" (assignment_expression "iVar10 = iVar10 + 1" (identifier "iVar10") (= "=") (binary_expression "iVar10 + 1" (identifier "iVar10") (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(iVar24 != iVar10)" (( "(") (binary_expression "iVar24 != iVar10" (identifier "iVar24") (!= "!=") (identifier "iVar10")) () ")")) (; ";")) (} "}"))) (return_statement "return;" (return "return") (; ";")) (} "}")))

/* DWARF original prototype: void ColorDecisionListImage._omp_fn.1(anon_struct_28_7_e94a0b20 *
   param_0) */

void __thiscall function_1(void *this)

{
  type_1 *var_9;
  int var_2;
  int var_5;
  type_2 uVar4;
  type_3 var_24;
  int var_23;
  int var_10;
  float *pfVar8;
  int var_1;
  int var_4;
  int *piVar11;
  type_2 uVar12;
  double var_21;
  double var_20;
  double var_18;
  float var_12;
  float var_15;
  float var_14;
  float var_13;
  double var_11;
  double var_22;
  double var_19;
  double var_17;
  int var_6;
  
                    /* WARNING: Load size is inaccurate */
  var_1 = *this;
  var_4 = *(int *)(var_1 + 0x1c);
  var_2 = (*(type_4 *)PTR_omp_get_num_threads_003fa924)();
  var_5 = (*(type_4 *)PTR_omp_get_thread_num_003fa520)();
  var_9 = var_8;
  if (var_2 == 0) {
    var_3(7);
  }
  var_6 = var_4 / var_2;
  var_4 = var_4 % var_2;
  if (var_5 < var_4) {
    var_6 = var_6 + 1;
    var_4 = 0;
  }
  var_4 = var_6 * var_5 + var_4;
  var_6 = var_6 + var_4;
  if (var_4 < var_6) {
    var_2 = *(int *)((int)this + 0x10);
    uVar4 = *(type_2 *)((int)this + 8);
    uVar12 = *(type_2 *)((int)this + 4);
    var_11 = *(double *)(var_7 + -0x77c0);
    var_21 = *(double *)(var_8 + 0x43d0);
    var_22 = *(double *)(var_8 + 0x43e0);
    do {
      if (*(int *)((int)this + 0x14) != 0) {
        var_5 = (*(type_4 *)PTR_GetCacheViewAuthenticPixels_003fa664)
                          (uVar4,0,var_4,*(type_2 *)(var_1 + 0x18),1,uVar12);
        if (var_5 == 0) {
          *(type_2 *)((int)this + 0x14) = 0;
        }
        else {
          var_23 = 0;
          if (0 < *(int *)(var_1 + 0x18)) {
            var_13 = *(float *)(var_7 + -0x7750);
            var_14 = *(float *)(var_7 + -0x774c);
            var_15 = *(float *)(var_8 + 0x4aa8);
            var_17 = *(double *)(var_9 + 0x43d0);
            var_19 = *(double *)(var_9 + 0x43e0);
            do {
              var_10 = *(int *)(var_1 + 0x2d0);
              pfVar8 = (float *)(var_5 + *(int *)(var_10 + 8) * 4);
              var_12 = *pfVar8;
              var_20 = (double)*(float *)(var_5 + *(int *)(var_10 + 0x14) * 4) * var_11 +
                       (double)(var_12 * var_13) +
                       (double)(*(float *)(var_5 + *(int *)(var_10 + 0x20) * 4) * var_14);
              if (var_12 < var_15) {
                var_10 = 0;
                if (var_16(var_12)) goto LAB_000cb260;
                var_10 = 0;
                if (0.0 < var_12) {
                  var_18 = (double)var_12 + var_17;
                  if (var_18 < var_19) {
                    var_10 = (int)var_18;
                  }
                  else {
                    var_10 = (int)(var_18 - var_19);
                  }
                  goto LAB_000cb260;
                }
              }
              else {
                var_10 = 0xffff;
LAB_000cb260:
                var_10 = var_10 * 0x58;
              }
              *pfVar8 = (float)((*(double *)(var_10 + var_2 + 0x28) - var_20) *
                                *(double *)(*(int *)((int)this + 0xc) + 0x48) + var_20);
              pfVar8 = (float *)(var_5 + *(int *)(*(int *)(var_1 + 0x2d0) + 0x14) * 4);
              var_12 = *pfVar8;
              if (var_12 < var_15) {
                if (var_16(var_12)) {
                  var_10 = 0;
                }
                else if (0.0 < var_12) {
                  var_18 = (double)var_12 + var_17;
                  if (var_18 < var_19) {
                    var_10 = (int)var_18;
                  }
                  else {
                    var_10 = (int)(var_18 - var_19);
                  }
                }
                else {
                  var_10 = 0;
                }
              }
              else {
                var_10 = 0xffff;
              }
              *pfVar8 = (float)((*(double *)(var_10 * 0x58 + var_2 + 0x30) - var_20) *
                                *(double *)(*(int *)((int)this + 0xc) + 0x48) + var_20);
              pfVar8 = (float *)(var_5 + *(int *)(*(int *)(var_1 + 0x2d0) + 0x20) * 4);
              var_12 = *pfVar8;
              if (var_12 < var_15) {
                if (var_16(var_12)) {
                  var_10 = 0;
                }
                else if (0.0 < var_12) {
                  var_18 = (double)var_12 + var_21;
                  if (var_18 < var_22) {
                    var_10 = (int)var_18;
                  }
                  else {
                    var_10 = (int)(var_18 - var_22);
                  }
                }
                else {
                  var_10 = 0;
                }
              }
              else {
                var_10 = 0xffff;
              }
              *pfVar8 = (float)((*(double *)(var_10 * 0x58 + var_2 + 0x38) - var_20) *
                                *(double *)(*(int *)((int)this + 0xc) + 0x48) + var_20);
              var_5 = var_5 + *(int *)(var_1 + 0x2c0) * 4;
              var_23 = var_23 + 1;
            } while (var_23 < *(int *)(var_1 + 0x18));
          }
          var_5 = (*(type_4 *)PTR_SyncCacheViewAuthenticPixels_003fa510)(uVar4,uVar12);
          if (var_5 == 0) {
            *(type_2 *)((int)this + 0x14) = 0;
          }
          if (*(int *)(var_1 + 0x328) != 0) {
            piVar11 = *(int **)((int)this + 0x18);
            (*(type_4 *)PTR_GOMP_atomic_start_003fa2fc)();
            var_24 = piVar11[1] + 1;
            *piVar11 = (type_3)(var_24 < (type_3)piVar11[1]) + *piVar11;
            piVar11[1] = var_24;
            (*(type_4 *)PTR_GOMP_atomic_end_003fa450)();
            var_5 = (*(type_4 *)PTR_SetImageProgress_003f9ccc)
                              (var_1,var_7 + -0x7ed0,
                               **(type_2 **)((int)this + 0x18),
                               (*(type_2 **)((int)this + 0x18))[1],0,
                               *(type_2 *)(var_1 + 0x1c));
            if (var_5 == 0) {
              *(type_2 *)((int)this + 0x14) = 0;
            }
          }
        }
      }
      var_4 = var_4 + 1;
    } while (var_6 != var_4);
  }
  return;
}


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

void MASKED(int *param_1)

{
  undefined *puVar1;
  int iVar2;
  int iVar3;
  int iVar4;
  uint uVar5;
  int iVar6;
  int iVar7;
  float *pfVar8;
  int iVar9;
  int iVar10;
  int *piVar11;
  int iVar12;
  double dVar13;
  double dVar14;
  double dVar15;
  float fVar16;
  float fVar17;
  float fVar18;
  float fVar19;
  double dVar20;
  double dVar21;
  double dVar22;
  double dVar23;
  int iVar24;
  
  iVar9 = *param_1;
  iVar10 = *(int *)(iVar9 + 0x1c);
  iVar2 = (*(code *)PTR_omp_get_num_threads_003fa924)();
  iVar3 = (*(code *)PTR_omp_get_thread_num_003fa520)();
  puVar1 = PTR_LAB_003f98e0;
  if (iVar2 == 0) {
    trap(7);
  }
  iVar24 = iVar10 / iVar2;
  iVar10 = iVar10 % iVar2;
  if (iVar3 < iVar10) {
    iVar24 = iVar24 + 1;
    iVar10 = 0;
  }
  iVar10 = iVar24 * iVar3 + iVar10;
  iVar24 = iVar24 + iVar10;
  if (iVar10 < iVar24) {
    iVar3 = param_1[4];
    iVar2 = param_1[2];
    iVar12 = param_1[1];
    dVar20 = *(double *)(PTR_s_ltiple_images_003f98e8 + -0x77c0);
    dVar13 = *(double *)(PTR_LAB_003f98e0 + 0x43d0);
    dVar21 = *(double *)(PTR_LAB_003f98e0 + 0x43e0);
    do {
      if (param_1[5] != 0) {
        iVar4 = (*(code *)PTR_GetCacheViewAuthenticPixels_003fa664)
                          (iVar2,0,iVar10,*(undefined4 *)(iVar9 + 0x18),1,iVar12);
        if (iVar4 == 0) {
          param_1[5] = 0;
        }
        else {
          iVar6 = 0;
          if (0 < *(int *)(iVar9 + 0x18)) {
            fVar19 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x7750);
            fVar18 = *(float *)(PTR_s_ltiple_images_003f98e8 + -0x774c);
            fVar17 = *(float *)(PTR_LAB_003f98e0 + 0x4aa8);
            dVar23 = *(double *)(puVar1 + 0x43d0);
            dVar22 = *(double *)(puVar1 + 0x43e0);
            do {
              iVar7 = *(int *)(iVar9 + 0x2d0);
              pfVar8 = (float *)(iVar4 + *(int *)(iVar7 + 8) * 4);
              fVar16 = *pfVar8;
              dVar14 = (double)*(float *)(iVar4 + *(int *)(iVar7 + 0x14) * 4) * dVar20 +
                       (double)(fVar16 * fVar19) +
                       (double)(*(float *)(iVar4 + *(int *)(iVar7 + 0x20) * 4) * fVar18);
              if (fVar16 < fVar17) {
                iVar7 = 0;
                if (NAN(fVar16)) goto LAB_000cb260;
                iVar7 = 0;
                if (0.0 < fVar16) {
                  dVar15 = (double)fVar16 + dVar23;
                  if (dVar15 < dVar22) {
                    iVar7 = (int)dVar15;
                  }
                  else {
                    iVar7 = (int)(dVar15 - dVar22);
                  }
                  goto LAB_000cb260;
                }
              }
              else {
                iVar7 = 0xffff;
LAB_000cb260:
                iVar7 = iVar7 * 0x58;
              }
              *pfVar8 = (float)((*(double *)(iVar7 + iVar3 + 0x28) - dVar14) *
                                *(double *)(param_1[3] + 0x48) + dVar14);
              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x14) * 4);
              fVar16 = *pfVar8;
              if (fVar16 < fVar17) {
                if (NAN(fVar16)) {
                  iVar7 = 0;
                }
                else if (0.0 < fVar16) {
                  dVar15 = (double)fVar16 + dVar23;
                  if (dVar15 < dVar22) {
                    iVar7 = (int)dVar15;
                  }
                  else {
                    iVar7 = (int)(dVar15 - dVar22);
                  }
                }
                else {
                  iVar7 = 0;
                }
              }
              else {
                iVar7 = 0xffff;
              }
              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x30) - dVar14) *
                                *(double *)(param_1[3] + 0x48) + dVar14);
              pfVar8 = (float *)(iVar4 + *(int *)(*(int *)(iVar9 + 0x2d0) + 0x20) * 4);
              fVar16 = *pfVar8;
              if (fVar16 < fVar17) {
                if (NAN(fVar16)) {
                  iVar7 = 0;
                }
                else if (0.0 < fVar16) {
                  dVar15 = (double)fVar16 + dVar13;
                  if (dVar15 < dVar21) {
                    iVar7 = (int)dVar15;
                  }
                  else {
                    iVar7 = (int)(dVar15 - dVar21);
                  }
                }
                else {
                  iVar7 = 0;
                }
              }
              else {
                iVar7 = 0xffff;
              }
              *pfVar8 = (float)((*(double *)(iVar7 * 0x58 + iVar3 + 0x38) - dVar14) *
                                *(double *)(param_1[3] + 0x48) + dVar14);
              iVar4 = iVar4 + *(int *)(iVar9 + 0x2c0) * 4;
              iVar6 = iVar6 + 1;
            } while (iVar6 < *(int *)(iVar9 + 0x18));
          }
          iVar4 = (*(code *)PTR_SyncCacheViewAuthenticPixels_003fa510)(iVar2,iVar12);
          if (iVar4 == 0) {
            param_1[5] = 0;
          }
          if (*(int *)(iVar9 + 0x328) != 0) {
            piVar11 = (int *)param_1[6];
            (*(code *)PTR_GOMP_atomic_start_003fa2fc)();
            uVar5 = piVar11[1] + 1;
            *piVar11 = (uint)(uVar5 < (uint)piVar11[1]) + *piVar11;
            piVar11[1] = uVar5;
            (*(code *)PTR_GOMP_atomic_end_003fa450)();
            iVar4 = (*(code *)PTR_SetImageProgress_003f9ccc)
                              (iVar9,PTR_s_ltiple_images_003f98e8 + -0x7ed0,
                               *(undefined4 *)param_1[6],((undefined4 *)param_1[6])[1],0,
                               *(undefined4 *)(iVar9 + 0x1c));
            if (iVar4 == 0) {
              param_1[5] = 0;
            }
          }
        }
      }
      iVar10 = iVar10 + 1;
    } while (iVar24 != iVar10);
  }
  return;
}

