
void png_read_end(png_structrp png_ptr,png_inforp info_ptr)

{
  ushort uVar1;
  int iVar2;
  png_uint_32 skip;
  uint uVar3;
  undefined1 *chunk_name;
  undefined *puVar4;
  undefined *puVar5;
  code *pcVar6;
  
  if (png_ptr == (png_structrp)0x0) {
    return;
  }
  iVar2 = png_chunk_unknown_handling(png_ptr,0x49444154);
  if (iVar2 == 0) {
    png_read_finish_IDAT(png_ptr);
    if (png_ptr->color_type != '\x03') goto LAB_0002327c;
    uVar1 = png_ptr->num_palette;
  }
  else {
    if (png_ptr->color_type != '\x03') goto LAB_0002327c;
    uVar1 = png_ptr->num_palette;
  }
  if ((int)(uint)uVar1 < png_ptr->num_palette_max) {
    (*(code *)PTR_png_benign_error_000533b8)(png_ptr,PTR_s_nt_0005301c + -0x1f0);
  }
LAB_0002327c:
  puVar5 = PTR_s_nt_0005301c + -0x1ac;
  puVar4 = PTR_s_nt_0005301c + -0x1c4;
  do {
    while( true ) {
      skip = png_read_chunk_header(png_ptr);
      chunk_name = (undefined1 *)png_ptr->chunk_name;
      if ((chunk_name == (undefined1 *)0x49444154) ||
         ((png_ptr->mode = png_ptr->mode | 0x2000, pcVar6 = (code *)PTR_png_handle_IEND_000530b8,
          chunk_name != (undefined1 *)0x49454e44 &&
          (pcVar6 = (code *)PTR_png_handle_IHDR_000530ac, chunk_name != &DAT_49484452)))) break;
LAB_00023564:
      (*pcVar6)(png_ptr,info_ptr,skip);
      uVar3 = png_ptr->mode;
LAB_000233ac:
      if ((uVar3 & 0x10) != 0) {
        return;
      }
    }
    if (info_ptr == (png_inforp)0x0) {
LAB_0002340c:
      png_crc_finish(png_ptr,skip);
      uVar3 = png_ptr->mode;
      goto LAB_000233ac;
    }
    iVar2 = png_chunk_unknown_handling(png_ptr,(png_uint_32)chunk_name);
    if (iVar2 == 0) {
      if (chunk_name == (undefined1 *)0x49444154) {
        if ((skip == 0) || ((png_ptr->flags & 8) != 0)) {
          if ((png_ptr->mode & 0x2000) != 0) {
            (*(code *)PTR_png_benign_error_000533b8)(png_ptr,puVar5);
          }
        }
        else {
          (*(code *)PTR_png_benign_error_000533b8)(png_ptr,puVar5);
        }
        goto LAB_0002340c;
      }
      pcVar6 = (code *)PTR_png_handle_PLTE_000530dc;
      if ((((((chunk_name == (undefined1 *)0x504c5445) ||
             (pcVar6 = (code *)PTR_png_handle_bKGD_000530fc, chunk_name == &DAT_624b4744)) ||
            (pcVar6 = (code *)PTR_png_handle_cHRM_000530e8, chunk_name == &DAT_6348524d)) ||
           ((pcVar6 = (code *)PTR_png_handle_eXIf_00053180, chunk_name == (undefined1 *)0x65584966
            || (pcVar6 = (code *)PTR_png_handle_gAMA_000530e0,
               chunk_name == (undefined1 *)0x67414d41)))) ||
          (((pcVar6 = (code *)PTR_png_handle_hIST_00053100, chunk_name == (undefined1 *)0x68495354
            || ((pcVar6 = (code *)PTR_png_handle_oFFs_00053108, chunk_name == &DAT_6f464673 ||
                (pcVar6 = (code *)PTR_png_handle_pCAL_0005310c,
                chunk_name == (undefined1 *)0x7043414c)))) ||
           (pcVar6 = (code *)PTR_png_handle_sCAL_00053118, chunk_name == (undefined1 *)0x7343414c)))
          ) || (((((pcVar6 = (code *)PTR_png_handle_pHYs_00053104, chunk_name == &DAT_70485973 ||
                   (pcVar6 = (code *)PTR_png_handle_sBIT_000530e4,
                   chunk_name == (undefined1 *)0x73424954)) ||
                  (pcVar6 = (code *)PTR_png_handle_sRGB_000530ec, chunk_name == &DAT_73524742)) ||
                 (((pcVar6 = (code *)PTR_png_handle_iCCP_000530f0,
                   chunk_name == (undefined1 *)0x69434350 ||
                   (pcVar6 = (code *)PTR_png_handle_sPLT_000530f4,
                   chunk_name == (undefined1 *)0x73504c54)) ||
                  ((pcVar6 = (code *)PTR_png_handle_tEXt_00053110,
                   chunk_name == (undefined1 *)0x74455874 ||
                   ((pcVar6 = (code *)PTR_png_handle_tIME_00053114,
                    chunk_name == (undefined1 *)0x74494d45 ||
                    (pcVar6 = (code *)PTR_png_handle_tRNS_000530f8,
                    chunk_name == (undefined1 *)0x74524e53)))))))) ||
                ((pcVar6 = (code *)PTR_png_handle_zTXt_0005311c,
                 chunk_name == (undefined1 *)0x7a545874 ||
                 (iVar2 = 0, pcVar6 = (code *)PTR_png_handle_iTXt_00053124,
                 chunk_name == (undefined1 *)0x69545874)))))) goto LAB_00023564;
LAB_00023394:
      png_handle_unknown(png_ptr,info_ptr,skip,iVar2);
LAB_000233a8:
      uVar3 = png_ptr->mode;
      goto LAB_000233ac;
    }
    if (chunk_name == (undefined1 *)0x49444154) {
      if ((skip == 0) || ((png_ptr->flags & 8) != 0)) {
        if ((png_ptr->mode & 0x2000) != 0) {
          (*(code *)PTR_png_benign_error_000533b8)(png_ptr,puVar4);
        }
      }
      else {
        (*(code *)PTR_png_benign_error_000533b8)(png_ptr,puVar4);
      }
      goto LAB_00023394;
    }
    png_handle_unknown(png_ptr,info_ptr,skip,iVar2);
    if (chunk_name != (undefined1 *)0x504c5445) goto LAB_000233a8;
    uVar3 = png_ptr->mode;
    png_ptr->mode = uVar3 | 2;
    if ((uVar3 & 0x10) != 0) {
      return;
    }
  } while( true );
}



void png_read_end(int param_1,int param_2)

{
  ushort uVar1;
  int iVar2;
  int iVar3;
  uint uVar4;
  undefined1 *puVar5;
  undefined *puVar6;
  undefined *puVar7;
  code *pcVar8;
  
  if (param_1 == 0) {
    return;
  }
  iVar2 = FUN_00015610(param_1,0x49444154);
  if (iVar2 == 0) {
    FUN_000309b0(param_1);
    if (*(char *)(param_1 + 0x1ff) != '\x03') goto LAB_0002327c;
    uVar1 = *(ushort *)(param_1 + 0x1f0);
  }
  else {
    if (*(char *)(param_1 + 0x1ff) != '\x03') goto LAB_0002327c;
    uVar1 = *(ushort *)(param_1 + 0x1f0);
  }
  if ((int)(uint)uVar1 < *(int *)(param_1 + 500)) {
    (*(code *)PTR_png_benign_error_000533b8)(param_1,PTR_s_nt_0005301c + -0x1f0);
  }
LAB_0002327c:
  puVar7 = PTR_s_nt_0005301c + -0x1ac;
  puVar6 = PTR_s_nt_0005301c + -0x1c4;
  do {
    while( true ) {
      iVar2 = FUN_0002fa20(param_1);
      puVar5 = *(undefined1 **)(param_1 + 0x1cc);
      if ((puVar5 == (undefined1 *)0x49444154) ||
         ((*(uint *)(param_1 + 0x124) = *(uint *)(param_1 + 0x124) | 0x2000,
          pcVar8 = (code *)PTR_FUN_000530b8, puVar5 != (undefined1 *)0x49454e44 &&
          (pcVar8 = (code *)PTR_FUN_000530ac, puVar5 != &DAT_49484452)))) break;
LAB_00023564:
      (*pcVar8)(param_1,param_2,iVar2);
      uVar4 = *(uint *)(param_1 + 0x124);
LAB_000233ac:
      if ((uVar4 & 0x10) != 0) {
        return;
      }
    }
    if (param_2 == 0) {
LAB_0002340c:
      FUN_0002b068(param_1,iVar2);
      uVar4 = *(uint *)(param_1 + 0x124);
      goto LAB_000233ac;
    }
    iVar3 = FUN_00015610(param_1,puVar5);
    if (iVar3 == 0) {
      if (puVar5 == (undefined1 *)0x49444154) {
        if ((iVar2 == 0) || ((*(uint *)(param_1 + 0x128) & 8) != 0)) {
          if ((*(uint *)(param_1 + 0x124) & 0x2000) != 0) {
            (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar7);
          }
        }
        else {
          (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar7);
        }
        goto LAB_0002340c;
      }
      pcVar8 = (code *)PTR_FUN_000530dc;
      if ((((((puVar5 == (undefined1 *)0x504c5445) ||
             (pcVar8 = (code *)PTR_FUN_000530fc, puVar5 == &DAT_624b4744)) ||
            (pcVar8 = (code *)PTR_FUN_000530e8, puVar5 == (undefined1 *)0x6348524d)) ||
           ((pcVar8 = (code *)PTR_FUN_00053180, puVar5 == (undefined1 *)0x65584966 ||
            (pcVar8 = (code *)PTR_FUN_000530e0, puVar5 == (undefined1 *)0x67414d41)))) ||
          (((pcVar8 = (code *)PTR_FUN_00053100, puVar5 == (undefined1 *)0x68495354 ||
            ((pcVar8 = (code *)PTR_FUN_00053108, puVar5 == (undefined1 *)0x6f464673 ||
             (pcVar8 = (code *)PTR_FUN_0005310c, puVar5 == (undefined1 *)0x7043414c)))) ||
           (pcVar8 = (code *)PTR_FUN_00053118, puVar5 == (undefined1 *)0x7343414c)))) ||
         (((((pcVar8 = (code *)PTR_FUN_00053104, puVar5 == &DAT_70485973 ||
             (pcVar8 = (code *)PTR_FUN_000530e4, puVar5 == (undefined1 *)0x73424954)) ||
            (pcVar8 = (code *)PTR_FUN_000530ec, puVar5 == (undefined1 *)0x73524742)) ||
           (((pcVar8 = (code *)PTR_FUN_000530f0, puVar5 == (undefined1 *)0x69434350 ||
             (pcVar8 = (code *)PTR_FUN_000530f4, puVar5 == (undefined1 *)0x73504c54)) ||
            ((pcVar8 = (code *)PTR_FUN_00053110, puVar5 == (undefined1 *)0x74455874 ||
             ((pcVar8 = (code *)PTR_FUN_00053114, puVar5 == (undefined1 *)0x74494d45 ||
              (pcVar8 = (code *)PTR_FUN_000530f8, puVar5 == (undefined1 *)0x74524e53)))))))) ||
          ((pcVar8 = (code *)PTR_FUN_0005311c, puVar5 == (undefined1 *)0x7a545874 ||
           (iVar3 = 0, pcVar8 = (code *)PTR_FUN_00053124, puVar5 == (undefined1 *)0x69545874))))))
      goto LAB_00023564;
LAB_00023394:
      FUN_0002f630(param_1,param_2,iVar2,iVar3);
LAB_000233a8:
      uVar4 = *(uint *)(param_1 + 0x124);
      goto LAB_000233ac;
    }
    if (puVar5 == (undefined1 *)0x49444154) {
      if ((iVar2 == 0) || ((*(uint *)(param_1 + 0x128) & 8) != 0)) {
        if ((*(uint *)(param_1 + 0x124) & 0x2000) != 0) {
          (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar6);
        }
      }
      else {
        (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar6);
      }
      goto LAB_00023394;
    }
    FUN_0002f630(param_1,param_2,iVar2,iVar3);
    if (puVar5 != (undefined1 *)0x504c5445) goto LAB_000233a8;
    uVar4 = *(uint *)(param_1 + 0x124);
    *(uint *)(param_1 + 0x124) = uVar4 | 2;
    if ((uVar4 & 0x10) != 0) {
      return;
    }
  } while( true );
}


lui gp,0x3
addiu gp,gp,0x7de4
addu gp,gp,t9
beq a0,zero,0x0002362c
_nop
addiu sp,sp,-0x40
lw t9,-0x7f40(gp)
sw s3,0x2c(sp)
or s3,a1,zero
lui a1,0x4944
sw gp,0x10(sp)
sw s0,0x20(sp)
or s0,a0,zero
addiu a1,a1,0x4154
sw ra,0x3c(sp)
sw s6,0x38(sp)
sw s5,0x34(sp)
sw s4,0x30(sp)
sw s2,0x28(sp)
bal 0x00015610
_sw s1,0x24(sp)
beq v0,zero,0x000235b0
_lw gp,0x10(sp)
lbu v1,0x1ff(s0)
li v0,0x3
beq v1,v0,0x00023580
_nop
lw s5,-0x7fd4(gp)
lui s2,0x4944
lw s4,-0x7fd4(gp)
addiu s2,s2,0x4154
addiu s5,s5,-0x1ac
addiu s4,s4,-0x1c4
lw t9,-0x7e74(gp)
bal 0x0002fa20
_or a0,s0,zero
lw s1,0x1cc(s0)
or s6,v0,zero
beq s1,s2,0x000232d4
_lw gp,0x10(sp)
lw v1,0x124(s0)
lui v0,0x4945
addiu v0,v0,0x4e44
ori v1,v1,0x2000
beq s1,v0,0x00023560
_sw v1,0x124(s0)
lui v0,0x4948
addiu v0,v0,0x4452
beq s1,v0,0x00023564
_lw t9,-0x7f44(gp)
beq s3,zero,0x00023408
_lw t9,-0x7f40(gp)
or a1,s1,zero
bal 0x00015610
_or a0,s0,zero
beq v0,zero,0x00023424
_lw gp,0x10(sp)
beq s1,s2,0x0002335c
_lw t9,-0x7f3c(gp)
or a3,v0,zero
or a2,s6,zero
or a1,s3,zero
bal 0x0002f630
_or a0,s0,zero
lui v0,0x504c
addiu v0,v0,0x5445
bne s1,v0,0x000233a8
_lw gp,0x10(sp)
lw v0,0x124(s0)
ori v0,v0,0x2
sw v0,0x124(s0)
andi v0,v0,0x10
beq v0,zero,0x00023294
_lw t9,-0x7e74(gp)
lw ra,0x3c(sp)
lw s6,0x38(sp)
lw s5,0x34(sp)
lw s4,0x30(sp)
lw s3,0x2c(sp)
lw s2,0x28(sp)
lw s1,0x24(sp)
lw s0,0x20(sp)
jr ra
_addiu sp,sp,0x40
beq s6,zero,0x000235d4
_nop
lw v1,0x128(s0)
andi v1,v1,0x8
bne v1,zero,0x000235d4
_lw t9,-0x7c38(gp)
or a1,s4,zero
sw v0,0x1c(sp)
jalr t9
_or a0,s0,zero
lw gp,0x10(sp)
lw v0,0x1c(sp)
lw t9,-0x7f3c(gp)
or a3,v0,zero
or a2,s6,zero
or a1,s3,zero
bal 0x0002f630
_or a0,s0,zero
lw gp,0x10(sp)
lw v0,0x124(s0)
andi v0,v0,0x10
beq v0,zero,0x00023294
_lw t9,-0x7e74(gp)
lw ra,0x3c(sp)
lw s6,0x38(sp)
lw s5,0x34(sp)
lw s4,0x30(sp)
lw s3,0x2c(sp)
lw s2,0x28(sp)
lw s1,0x24(sp)
lw s0,0x20(sp)
jr ra
_addiu sp,sp,0x40
beq s6,zero,0x00023604
_nop
lw v0,0x128(s0)
andi v0,v0,0x8
bne v0,zero,0x00023604
_lw t9,-0x7c38(gp)
or a1,s5,zero
jalr t9
_or a0,s0,zero
lw gp,0x10(sp)
lw t9,-0x7eac(gp)
or a1,s6,zero
bal 0x0002b068
_or a0,s0,zero
lw gp,0x10(sp)
b 0x000233ac
_lw v0,0x124(s0)
beq s1,s2,0x000233e0
_lui v0,0x504c
addiu v0,v0,0x5445
beq s1,v0,0x00023564
_lw t9,-0x7f14(gp)
lui v0,0x624b
addiu v0,v0,0x4744
beq s1,v0,0x00023564
_lw t9,-0x7ef4(gp)
lui v0,0x6348
addiu v0,v0,0x524d
beq s1,v0,0x00023564
_lw t9,-0x7f08(gp)
lui v0,0x6558
addiu v0,v0,0x4966
beq s1,v0,0x00023564
_lw t9,-0x7e70(gp)
lui v0,0x6741
addiu v0,v0,0x4d41
beq s1,v0,0x00023564
_lw t9,-0x7f10(gp)
lui v0,0x6849
addiu v0,v0,0x5354
beq s1,v0,0x00023564
_lw t9,-0x7ef0(gp)
lui v0,0x6f46
addiu v0,v0,0x4673
beq s1,v0,0x00023564
_lw t9,-0x7ee8(gp)
lui v0,0x7043
addiu v0,v0,0x414c
beq s1,v0,0x00023564
_lw t9,-0x7ee4(gp)
lui v0,0x7343
addiu v0,v0,0x414c
beq s1,v0,0x00023564
_lw t9,-0x7ed8(gp)
lui v0,0x7048
addiu v0,v0,0x5973
beq s1,v0,0x00023564
_lw t9,-0x7eec(gp)
lui v0,0x7342
addiu v0,v0,0x4954
beq s1,v0,0x00023564
_lw t9,-0x7f0c(gp)
lui v0,0x7352
addiu v0,v0,0x4742
beq s1,v0,0x00023564
_lw t9,-0x7f04(gp)
lui v0,0x6943
addiu v0,v0,0x4350
beq s1,v0,0x00023564
_lw t9,-0x7f00(gp)
lui v0,0x7350
addiu v0,v0,0x4c54
beq s1,v0,0x00023564
_lw t9,-0x7efc(gp)
lui v0,0x7445
addiu v0,v0,0x5874
beq s1,v0,0x00023564
_lw t9,-0x7ee0(gp)
lui v0,0x7449
addiu v0,v0,0x4d45
beq s1,v0,0x00023564
_lw t9,-0x7edc(gp)
lui v0,0x7452
addiu v0,v0,0x4e53
beq s1,v0,0x00023564
_lw t9,-0x7ef8(gp)
lui v0,0x7a54
addiu v0,v0,0x5874
beq s1,v0,0x00023564
_lw t9,-0x7ed4(gp)
lui v0,0x6954
addiu v0,v0,0x5874
beq s1,v0,0x0002366c
_or a3,zero,zero
b 0x00023394
_lw t9,-0x7f3c(gp)
lw t9,-0x7f38(gp)
or a2,s6,zero
or a1,s3,zero
jalr t9
_or a0,s0,zero
lw gp,0x10(sp)
b 0x000233ac
_lw v0,0x124(s0)
lhu v1,0x1f0(s0)
lw v0,0x1f4(s0)
slt v0,v1,v0
beq v0,zero,0x0002327c
_lw s5,-0x7fd4(gp)
lw a1,-0x7fd4(gp)
or a0,s0,zero
lw t9,-0x7c38(gp)
jalr t9
_addiu a1,a1,-0x1f0
b 0x00023278
_lw gp,0x10(sp)
lw t9,-0x7e54(gp)
bal 0x000309b0
_or a0,s0,zero
li v0,0x3
lbu v1,0x1ff(s0)
bne v1,v0,0x00023278
_lw gp,0x10(sp)
b 0x00023584
_lhu v1,0x1f0(s0)
lw v1,0x124(s0)
andi v1,v1,0x2000
beq v1,zero,0x00023390
_lw t9,-0x7f3c(gp)
lw t9,-0x7c38(gp)
or a1,s4,zero
sw v0,0x1c(sp)
jalr t9
_or a0,s0,zero
lw gp,0x10(sp)
b 0x0002338c
_lw v0,0x1c(sp)
lw v0,0x124(s0)
andi v0,v0,0x2000
beq v0,zero,0x0002340c
_lw t9,-0x7eac(gp)
lw t9,-0x7c38(gp)
or a1,s5,zero
jalr t9
_or a0,s0,zero
b 0x00023408
_lw gp,0x10(sp)
jr ra
_nop
b 0x00023564
_lw t9,-0x7ecc(gp)
(translation_unit "void png_read_end(int param_1,int param_2)\n\n{\n  ushort uVar1;\n  int iVar2;\n  int iVar3;\n  uint uVar4;\n  undefined1 *puVar5;\n  undefined *puVar6;\n  undefined *puVar7;\n  code *pcVar8;\n  \n  if (param_1 == 0) {\n    return;\n  }\n  iVar2 = FUN_00015610(param_1,0x49444154);\n  if (iVar2 == 0) {\n    FUN_000309b0(param_1);\n    if (*(char *)(param_1 + 0x1ff) != '\x03') goto LAB_0002327c;\n    uVar1 = *(ushort *)(param_1 + 0x1f0);\n  }\n  else {\n    if (*(char *)(param_1 + 0x1ff) != '\x03') goto LAB_0002327c;\n    uVar1 = *(ushort *)(param_1 + 0x1f0);\n  }\n  if ((int)(uint)uVar1 < *(int *)(param_1 + 500)) {\n    (*(code *)PTR_png_benign_error_000533b8)(param_1,PTR_s_nt_0005301c + -0x1f0);\n  }\nLAB_0002327c:\n  puVar7 = PTR_s_nt_0005301c + -0x1ac;\n  puVar6 = PTR_s_nt_0005301c + -0x1c4;\n  do {\n    while( true ) {\n      iVar2 = FUN_0002fa20(param_1);\n      puVar5 = *(undefined1 **)(param_1 + 0x1cc);\n      if ((puVar5 == (undefined1 *)0x49444154) ||\n         ((*(uint *)(param_1 + 0x124) = *(uint *)(param_1 + 0x124) | 0x2000,\n          pcVar8 = (code *)PTR_FUN_000530b8, puVar5 != (undefined1 *)0x49454e44 &&\n          (pcVar8 = (code *)PTR_FUN_000530ac, puVar5 != &DAT_49484452)))) break;\nLAB_00023564:\n      (*pcVar8)(param_1,param_2,iVar2);\n      uVar4 = *(uint *)(param_1 + 0x124);\nLAB_000233ac:\n      if ((uVar4 & 0x10) != 0) {\n        return;\n      }\n    }\n    if (param_2 == 0) {\nLAB_0002340c:\n      FUN_0002b068(param_1,iVar2);\n      uVar4 = *(uint *)(param_1 + 0x124);\n      goto LAB_000233ac;\n    }\n    iVar3 = FUN_00015610(param_1,puVar5);\n    if (iVar3 == 0) {\n      if (puVar5 == (undefined1 *)0x49444154) {\n        if ((iVar2 == 0) || ((*(uint *)(param_1 + 0x128) & 8) != 0)) {\n          if ((*(uint *)(param_1 + 0x124) & 0x2000) != 0) {\n            (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar7);\n          }\n        }\n        else {\n          (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar7);\n        }\n        goto LAB_0002340c;\n      }\n      pcVar8 = (code *)PTR_FUN_000530dc;\n      if ((((((puVar5 == (undefined1 *)0x504c5445) ||\n             (pcVar8 = (code *)PTR_FUN_000530fc, puVar5 == &DAT_624b4744)) ||\n            (pcVar8 = (code *)PTR_FUN_000530e8, puVar5 == (undefined1 *)0x6348524d)) ||\n           ((pcVar8 = (code *)PTR_FUN_00053180, puVar5 == (undefined1 *)0x65584966 ||\n            (pcVar8 = (code *)PTR_FUN_000530e0, puVar5 == (undefined1 *)0x67414d41)))) ||\n          (((pcVar8 = (code *)PTR_FUN_00053100, puVar5 == (undefined1 *)0x68495354 ||\n            ((pcVar8 = (code *)PTR_FUN_00053108, puVar5 == (undefined1 *)0x6f464673 ||\n             (pcVar8 = (code *)PTR_FUN_0005310c, puVar5 == (undefined1 *)0x7043414c)))) ||\n           (pcVar8 = (code *)PTR_FUN_00053118, puVar5 == (undefined1 *)0x7343414c)))) ||\n         (((((pcVar8 = (code *)PTR_FUN_00053104, puVar5 == &DAT_70485973 ||\n             (pcVar8 = (code *)PTR_FUN_000530e4, puVar5 == (undefined1 *)0x73424954)) ||\n            (pcVar8 = (code *)PTR_FUN_000530ec, puVar5 == (undefined1 *)0x73524742)) ||\n           (((pcVar8 = (code *)PTR_FUN_000530f0, puVar5 == (undefined1 *)0x69434350 ||\n             (pcVar8 = (code *)PTR_FUN_000530f4, puVar5 == (undefined1 *)0x73504c54)) ||\n            ((pcVar8 = (code *)PTR_FUN_00053110, puVar5 == (undefined1 *)0x74455874 ||\n             ((pcVar8 = (code *)PTR_FUN_00053114, puVar5 == (undefined1 *)0x74494d45 ||\n              (pcVar8 = (code *)PTR_FUN_000530f8, puVar5 == (undefined1 *)0x74524e53)))))))) ||\n          ((pcVar8 = (code *)PTR_FUN_0005311c, puVar5 == (undefined1 *)0x7a545874 ||\n           (iVar3 = 0, pcVar8 = (code *)PTR_FUN_00053124, puVar5 == (undefined1 *)0x69545874))))))\n      goto LAB_00023564;\nLAB_00023394:\n      FUN_0002f630(param_1,param_2,iVar2,iVar3);\nLAB_000233a8:\n      uVar4 = *(uint *)(param_1 + 0x124);\n      goto LAB_000233ac;\n    }\n    if (puVar5 == (undefined1 *)0x49444154) {\n      if ((iVar2 == 0) || ((*(uint *)(param_1 + 0x128) & 8) != 0)) {\n        if ((*(uint *)(param_1 + 0x124) & 0x2000) != 0) {\n          (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar6);\n        }\n      }\n      else {\n        (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar6);\n      }\n      goto LAB_00023394;\n    }\n    FUN_0002f630(param_1,param_2,iVar2,iVar3);\n    if (puVar5 != (undefined1 *)0x504c5445) goto LAB_000233a8;\n    uVar4 = *(uint *)(param_1 + 0x124);\n    *(uint *)(param_1 + 0x124) = uVar4 | 2;\n    if ((uVar4 & 0x10) != 0) {\n      return;\n    }\n  } while( true );\n}\n\n" (function_definition "void png_read_end(int param_1,int param_2)\n\n{\n  ushort uVar1;\n  int iVar2;\n  int iVar3;\n  uint uVar4;\n  undefined1 *puVar5;\n  undefined *puVar6;\n  undefined *puVar7;\n  code *pcVar8;\n  \n  if (param_1 == 0) {\n    return;\n  }\n  iVar2 = FUN_00015610(param_1,0x49444154);\n  if (iVar2 == 0) {\n    FUN_000309b0(param_1);\n    if (*(char *)(param_1 + 0x1ff) != '\x03') goto LAB_0002327c;\n    uVar1 = *(ushort *)(param_1 + 0x1f0);\n  }\n  else {\n    if (*(char *)(param_1 + 0x1ff) != '\x03') goto LAB_0002327c;\n    uVar1 = *(ushort *)(param_1 + 0x1f0);\n  }\n  if ((int)(uint)uVar1 < *(int *)(param_1 + 500)) {\n    (*(code *)PTR_png_benign_error_000533b8)(param_1,PTR_s_nt_0005301c + -0x1f0);\n  }\nLAB_0002327c:\n  puVar7 = PTR_s_nt_0005301c + -0x1ac;\n  puVar6 = PTR_s_nt_0005301c + -0x1c4;\n  do {\n    while( true ) {\n      iVar2 = FUN_0002fa20(param_1);\n      puVar5 = *(undefined1 **)(param_1 + 0x1cc);\n      if ((puVar5 == (undefined1 *)0x49444154) ||\n         ((*(uint *)(param_1 + 0x124) = *(uint *)(param_1 + 0x124) | 0x2000,\n          pcVar8 = (code *)PTR_FUN_000530b8, puVar5 != (undefined1 *)0x49454e44 &&\n          (pcVar8 = (code *)PTR_FUN_000530ac, puVar5 != &DAT_49484452)))) break;\nLAB_00023564:\n      (*pcVar8)(param_1,param_2,iVar2);\n      uVar4 = *(uint *)(param_1 + 0x124);\nLAB_000233ac:\n      if ((uVar4 & 0x10) != 0) {\n        return;\n      }\n    }\n    if (param_2 == 0) {\nLAB_0002340c:\n      FUN_0002b068(param_1,iVar2);\n      uVar4 = *(uint *)(param_1 + 0x124);\n      goto LAB_000233ac;\n    }\n    iVar3 = FUN_00015610(param_1,puVar5);\n    if (iVar3 == 0) {\n      if (puVar5 == (undefined1 *)0x49444154) {\n        if ((iVar2 == 0) || ((*(uint *)(param_1 + 0x128) & 8) != 0)) {\n          if ((*(uint *)(param_1 + 0x124) & 0x2000) != 0) {\n            (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar7);\n          }\n        }\n        else {\n          (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar7);\n        }\n        goto LAB_0002340c;\n      }\n      pcVar8 = (code *)PTR_FUN_000530dc;\n      if ((((((puVar5 == (undefined1 *)0x504c5445) ||\n             (pcVar8 = (code *)PTR_FUN_000530fc, puVar5 == &DAT_624b4744)) ||\n            (pcVar8 = (code *)PTR_FUN_000530e8, puVar5 == (undefined1 *)0x6348524d)) ||\n           ((pcVar8 = (code *)PTR_FUN_00053180, puVar5 == (undefined1 *)0x65584966 ||\n            (pcVar8 = (code *)PTR_FUN_000530e0, puVar5 == (undefined1 *)0x67414d41)))) ||\n          (((pcVar8 = (code *)PTR_FUN_00053100, puVar5 == (undefined1 *)0x68495354 ||\n            ((pcVar8 = (code *)PTR_FUN_00053108, puVar5 == (undefined1 *)0x6f464673 ||\n             (pcVar8 = (code *)PTR_FUN_0005310c, puVar5 == (undefined1 *)0x7043414c)))) ||\n           (pcVar8 = (code *)PTR_FUN_00053118, puVar5 == (undefined1 *)0x7343414c)))) ||\n         (((((pcVar8 = (code *)PTR_FUN_00053104, puVar5 == &DAT_70485973 ||\n             (pcVar8 = (code *)PTR_FUN_000530e4, puVar5 == (undefined1 *)0x73424954)) ||\n            (pcVar8 = (code *)PTR_FUN_000530ec, puVar5 == (undefined1 *)0x73524742)) ||\n           (((pcVar8 = (code *)PTR_FUN_000530f0, puVar5 == (undefined1 *)0x69434350 ||\n             (pcVar8 = (code *)PTR_FUN_000530f4, puVar5 == (undefined1 *)0x73504c54)) ||\n            ((pcVar8 = (code *)PTR_FUN_00053110, puVar5 == (undefined1 *)0x74455874 ||\n             ((pcVar8 = (code *)PTR_FUN_00053114, puVar5 == (undefined1 *)0x74494d45 ||\n              (pcVar8 = (code *)PTR_FUN_000530f8, puVar5 == (undefined1 *)0x74524e53)))))))) ||\n          ((pcVar8 = (code *)PTR_FUN_0005311c, puVar5 == (undefined1 *)0x7a545874 ||\n           (iVar3 = 0, pcVar8 = (code *)PTR_FUN_00053124, puVar5 == (undefined1 *)0x69545874))))))\n      goto LAB_00023564;\nLAB_00023394:\n      FUN_0002f630(param_1,param_2,iVar2,iVar3);\nLAB_000233a8:\n      uVar4 = *(uint *)(param_1 + 0x124);\n      goto LAB_000233ac;\n    }\n    if (puVar5 == (undefined1 *)0x49444154) {\n      if ((iVar2 == 0) || ((*(uint *)(param_1 + 0x128) & 8) != 0)) {\n        if ((*(uint *)(param_1 + 0x124) & 0x2000) != 0) {\n          (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar6);\n        }\n      }\n      else {\n        (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar6);\n      }\n      goto LAB_00023394;\n    }\n    FUN_0002f630(param_1,param_2,iVar2,iVar3);\n    if (puVar5 != (undefined1 *)0x504c5445) goto LAB_000233a8;\n    uVar4 = *(uint *)(param_1 + 0x124);\n    *(uint *)(param_1 + 0x124) = uVar4 | 2;\n    if ((uVar4 & 0x10) != 0) {\n      return;\n    }\n  } while( true );\n}" primitive_type (function_declarator "png_read_end(int param_1,int param_2)" identifier (parameter_list "(int param_1,int param_2)" ( (parameter_declaration "int param_1" primitive_type identifier) , (parameter_declaration "int param_2" primitive_type identifier) ))) (compound_statement "{\n  ushort uVar1;\n  int iVar2;\n  int iVar3;\n  uint uVar4;\n  undefined1 *puVar5;\n  undefined *puVar6;\n  undefined *puVar7;\n  code *pcVar8;\n  \n  if (param_1 == 0) {\n    return;\n  }\n  iVar2 = FUN_00015610(param_1,0x49444154);\n  if (iVar2 == 0) {\n    FUN_000309b0(param_1);\n    if (*(char *)(param_1 + 0x1ff) != '\x03') goto LAB_0002327c;\n    uVar1 = *(ushort *)(param_1 + 0x1f0);\n  }\n  else {\n    if (*(char *)(param_1 + 0x1ff) != '\x03') goto LAB_0002327c;\n    uVar1 = *(ushort *)(param_1 + 0x1f0);\n  }\n  if ((int)(uint)uVar1 < *(int *)(param_1 + 500)) {\n    (*(code *)PTR_png_benign_error_000533b8)(param_1,PTR_s_nt_0005301c + -0x1f0);\n  }\nLAB_0002327c:\n  puVar7 = PTR_s_nt_0005301c + -0x1ac;\n  puVar6 = PTR_s_nt_0005301c + -0x1c4;\n  do {\n    while( true ) {\n      iVar2 = FUN_0002fa20(param_1);\n      puVar5 = *(undefined1 **)(param_1 + 0x1cc);\n      if ((puVar5 == (undefined1 *)0x49444154) ||\n         ((*(uint *)(param_1 + 0x124) = *(uint *)(param_1 + 0x124) | 0x2000,\n          pcVar8 = (code *)PTR_FUN_000530b8, puVar5 != (undefined1 *)0x49454e44 &&\n          (pcVar8 = (code *)PTR_FUN_000530ac, puVar5 != &DAT_49484452)))) break;\nLAB_00023564:\n      (*pcVar8)(param_1,param_2,iVar2);\n      uVar4 = *(uint *)(param_1 + 0x124);\nLAB_000233ac:\n      if ((uVar4 & 0x10) != 0) {\n        return;\n      }\n    }\n    if (param_2 == 0) {\nLAB_0002340c:\n      FUN_0002b068(param_1,iVar2);\n      uVar4 = *(uint *)(param_1 + 0x124);\n      goto LAB_000233ac;\n    }\n    iVar3 = FUN_00015610(param_1,puVar5);\n    if (iVar3 == 0) {\n      if (puVar5 == (undefined1 *)0x49444154) {\n        if ((iVar2 == 0) || ((*(uint *)(param_1 + 0x128) & 8) != 0)) {\n          if ((*(uint *)(param_1 + 0x124) & 0x2000) != 0) {\n            (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar7);\n          }\n        }\n        else {\n          (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar7);\n        }\n        goto LAB_0002340c;\n      }\n      pcVar8 = (code *)PTR_FUN_000530dc;\n      if ((((((puVar5 == (undefined1 *)0x504c5445) ||\n             (pcVar8 = (code *)PTR_FUN_000530fc, puVar5 == &DAT_624b4744)) ||\n            (pcVar8 = (code *)PTR_FUN_000530e8, puVar5 == (undefined1 *)0x6348524d)) ||\n           ((pcVar8 = (code *)PTR_FUN_00053180, puVar5 == (undefined1 *)0x65584966 ||\n            (pcVar8 = (code *)PTR_FUN_000530e0, puVar5 == (undefined1 *)0x67414d41)))) ||\n          (((pcVar8 = (code *)PTR_FUN_00053100, puVar5 == (undefined1 *)0x68495354 ||\n            ((pcVar8 = (code *)PTR_FUN_00053108, puVar5 == (undefined1 *)0x6f464673 ||\n             (pcVar8 = (code *)PTR_FUN_0005310c, puVar5 == (undefined1 *)0x7043414c)))) ||\n           (pcVar8 = (code *)PTR_FUN_00053118, puVar5 == (undefined1 *)0x7343414c)))) ||\n         (((((pcVar8 = (code *)PTR_FUN_00053104, puVar5 == &DAT_70485973 ||\n             (pcVar8 = (code *)PTR_FUN_000530e4, puVar5 == (undefined1 *)0x73424954)) ||\n            (pcVar8 = (code *)PTR_FUN_000530ec, puVar5 == (undefined1 *)0x73524742)) ||\n           (((pcVar8 = (code *)PTR_FUN_000530f0, puVar5 == (undefined1 *)0x69434350 ||\n             (pcVar8 = (code *)PTR_FUN_000530f4, puVar5 == (undefined1 *)0x73504c54)) ||\n            ((pcVar8 = (code *)PTR_FUN_00053110, puVar5 == (undefined1 *)0x74455874 ||\n             ((pcVar8 = (code *)PTR_FUN_00053114, puVar5 == (undefined1 *)0x74494d45 ||\n              (pcVar8 = (code *)PTR_FUN_000530f8, puVar5 == (undefined1 *)0x74524e53)))))))) ||\n          ((pcVar8 = (code *)PTR_FUN_0005311c, puVar5 == (undefined1 *)0x7a545874 ||\n           (iVar3 = 0, pcVar8 = (code *)PTR_FUN_00053124, puVar5 == (undefined1 *)0x69545874))))))\n      goto LAB_00023564;\nLAB_00023394:\n      FUN_0002f630(param_1,param_2,iVar2,iVar3);\nLAB_000233a8:\n      uVar4 = *(uint *)(param_1 + 0x124);\n      goto LAB_000233ac;\n    }\n    if (puVar5 == (undefined1 *)0x49444154) {\n      if ((iVar2 == 0) || ((*(uint *)(param_1 + 0x128) & 8) != 0)) {\n        if ((*(uint *)(param_1 + 0x124) & 0x2000) != 0) {\n          (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar6);\n        }\n      }\n      else {\n        (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar6);\n      }\n      goto LAB_00023394;\n    }\n    FUN_0002f630(param_1,param_2,iVar2,iVar3);\n    if (puVar5 != (undefined1 *)0x504c5445) goto LAB_000233a8;\n    uVar4 = *(uint *)(param_1 + 0x124);\n    *(uint *)(param_1 + 0x124) = uVar4 | 2;\n    if ((uVar4 & 0x10) != 0) {\n      return;\n    }\n  } while( true );\n}" { (declaration "ushort uVar1;" type_identifier identifier ;) (declaration "int iVar2;" primitive_type identifier ;) (declaration "int iVar3;" primitive_type identifier ;) (declaration "uint uVar4;" type_identifier identifier ;) (declaration "undefined1 *puVar5;" type_identifier (pointer_declarator "*puVar5" * identifier) ;) (declaration "undefined *puVar6;" type_identifier (pointer_declarator "*puVar6" * identifier) ;) (declaration "undefined *puVar7;" type_identifier (pointer_declarator "*puVar7" * identifier) ;) (declaration "code *pcVar8;" type_identifier (pointer_declarator "*pcVar8" * identifier) ;) (if_statement "if (param_1 == 0) {\n    return;\n  }" if (parenthesized_expression "(param_1 == 0)" ( (binary_expression "param_1 == 0" identifier == number_literal) )) (compound_statement "{\n    return;\n  }" { (return_statement "return;" return ;) })) (expression_statement "iVar2 = FUN_00015610(param_1,0x49444154);" (assignment_expression "iVar2 = FUN_00015610(param_1,0x49444154)" identifier = (call_expression "FUN_00015610(param_1,0x49444154)" identifier (argument_list "(param_1,0x49444154)" ( identifier , number_literal )))) ;) (if_statement "if (iVar2 == 0) {\n    FUN_000309b0(param_1);\n    if (*(char *)(param_1 + 0x1ff) != '\x03') goto LAB_0002327c;\n    uVar1 = *(ushort *)(param_1 + 0x1f0);\n  }\n  else {\n    if (*(char *)(param_1 + 0x1ff) != '\x03') goto LAB_0002327c;\n    uVar1 = *(ushort *)(param_1 + 0x1f0);\n  }" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (compound_statement "{\n    FUN_000309b0(param_1);\n    if (*(char *)(param_1 + 0x1ff) != '\x03') goto LAB_0002327c;\n    uVar1 = *(ushort *)(param_1 + 0x1f0);\n  }" { (expression_statement "FUN_000309b0(param_1);" (call_expression "FUN_000309b0(param_1)" identifier (argument_list "(param_1)" ( identifier ))) ;) (if_statement "if (*(char *)(param_1 + 0x1ff) != '\x03') goto LAB_0002327c;" if (parenthesized_expression "(*(char *)(param_1 + 0x1ff) != '\x03')" ( (binary_expression "*(char *)(param_1 + 0x1ff) != '\x03'" (pointer_expression "*(char *)(param_1 + 0x1ff)" * (cast_expression "(char *)(param_1 + 0x1ff)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x1ff)" ( (binary_expression "param_1 + 0x1ff" identifier + number_literal) )))) != (char_literal "'\x03'" ' escape_sequence ')) )) (goto_statement "goto LAB_0002327c;" goto statement_identifier ;)) (expression_statement "uVar1 = *(ushort *)(param_1 + 0x1f0);" (assignment_expression "uVar1 = *(ushort *)(param_1 + 0x1f0)" identifier = (pointer_expression "*(ushort *)(param_1 + 0x1f0)" * (cast_expression "(ushort *)(param_1 + 0x1f0)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x1f0)" ( (binary_expression "param_1 + 0x1f0" identifier + number_literal) ))))) ;) }) (else_clause "else {\n    if (*(char *)(param_1 + 0x1ff) != '\x03') goto LAB_0002327c;\n    uVar1 = *(ushort *)(param_1 + 0x1f0);\n  }" else (compound_statement "{\n    if (*(char *)(param_1 + 0x1ff) != '\x03') goto LAB_0002327c;\n    uVar1 = *(ushort *)(param_1 + 0x1f0);\n  }" { (if_statement "if (*(char *)(param_1 + 0x1ff) != '\x03') goto LAB_0002327c;" if (parenthesized_expression "(*(char *)(param_1 + 0x1ff) != '\x03')" ( (binary_expression "*(char *)(param_1 + 0x1ff) != '\x03'" (pointer_expression "*(char *)(param_1 + 0x1ff)" * (cast_expression "(char *)(param_1 + 0x1ff)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x1ff)" ( (binary_expression "param_1 + 0x1ff" identifier + number_literal) )))) != (char_literal "'\x03'" ' escape_sequence ')) )) (goto_statement "goto LAB_0002327c;" goto statement_identifier ;)) (expression_statement "uVar1 = *(ushort *)(param_1 + 0x1f0);" (assignment_expression "uVar1 = *(ushort *)(param_1 + 0x1f0)" identifier = (pointer_expression "*(ushort *)(param_1 + 0x1f0)" * (cast_expression "(ushort *)(param_1 + 0x1f0)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x1f0)" ( (binary_expression "param_1 + 0x1f0" identifier + number_literal) ))))) ;) }))) (if_statement "if ((int)(uint)uVar1 < *(int *)(param_1 + 500)) {\n    (*(code *)PTR_png_benign_error_000533b8)(param_1,PTR_s_nt_0005301c + -0x1f0);\n  }" if (parenthesized_expression "((int)(uint)uVar1 < *(int *)(param_1 + 500))" ( (binary_expression "(int)(uint)uVar1 < *(int *)(param_1 + 500)" (cast_expression "(int)(uint)uVar1" ( (type_descriptor "int" primitive_type) ) (cast_expression "(uint)uVar1" ( (type_descriptor "uint" type_identifier) ) identifier)) < (pointer_expression "*(int *)(param_1 + 500)" * (cast_expression "(int *)(param_1 + 500)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 500)" ( (binary_expression "param_1 + 500" identifier + number_literal) ))))) )) (compound_statement "{\n    (*(code *)PTR_png_benign_error_000533b8)(param_1,PTR_s_nt_0005301c + -0x1f0);\n  }" { (expression_statement "(*(code *)PTR_png_benign_error_000533b8)(param_1,PTR_s_nt_0005301c + -0x1f0);" (call_expression "(*(code *)PTR_png_benign_error_000533b8)(param_1,PTR_s_nt_0005301c + -0x1f0)" (parenthesized_expression "(*(code *)PTR_png_benign_error_000533b8)" ( (pointer_expression "*(code *)PTR_png_benign_error_000533b8" * (cast_expression "(code *)PTR_png_benign_error_000533b8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_1,PTR_s_nt_0005301c + -0x1f0)" ( identifier , (binary_expression "PTR_s_nt_0005301c + -0x1f0" identifier + number_literal) ))) ;) })) (labeled_statement "LAB_0002327c:\n  puVar7 = PTR_s_nt_0005301c + -0x1ac;" statement_identifier : (expression_statement "puVar7 = PTR_s_nt_0005301c + -0x1ac;" (assignment_expression "puVar7 = PTR_s_nt_0005301c + -0x1ac" identifier = (binary_expression "PTR_s_nt_0005301c + -0x1ac" identifier + number_literal)) ;)) (expression_statement "puVar6 = PTR_s_nt_0005301c + -0x1c4;" (assignment_expression "puVar6 = PTR_s_nt_0005301c + -0x1c4" identifier = (binary_expression "PTR_s_nt_0005301c + -0x1c4" identifier + number_literal)) ;) (do_statement "do {\n    while( true ) {\n      iVar2 = FUN_0002fa20(param_1);\n      puVar5 = *(undefined1 **)(param_1 + 0x1cc);\n      if ((puVar5 == (undefined1 *)0x49444154) ||\n         ((*(uint *)(param_1 + 0x124) = *(uint *)(param_1 + 0x124) | 0x2000,\n          pcVar8 = (code *)PTR_FUN_000530b8, puVar5 != (undefined1 *)0x49454e44 &&\n          (pcVar8 = (code *)PTR_FUN_000530ac, puVar5 != &DAT_49484452)))) break;\nLAB_00023564:\n      (*pcVar8)(param_1,param_2,iVar2);\n      uVar4 = *(uint *)(param_1 + 0x124);\nLAB_000233ac:\n      if ((uVar4 & 0x10) != 0) {\n        return;\n      }\n    }\n    if (param_2 == 0) {\nLAB_0002340c:\n      FUN_0002b068(param_1,iVar2);\n      uVar4 = *(uint *)(param_1 + 0x124);\n      goto LAB_000233ac;\n    }\n    iVar3 = FUN_00015610(param_1,puVar5);\n    if (iVar3 == 0) {\n      if (puVar5 == (undefined1 *)0x49444154) {\n        if ((iVar2 == 0) || ((*(uint *)(param_1 + 0x128) & 8) != 0)) {\n          if ((*(uint *)(param_1 + 0x124) & 0x2000) != 0) {\n            (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar7);\n          }\n        }\n        else {\n          (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar7);\n        }\n        goto LAB_0002340c;\n      }\n      pcVar8 = (code *)PTR_FUN_000530dc;\n      if ((((((puVar5 == (undefined1 *)0x504c5445) ||\n             (pcVar8 = (code *)PTR_FUN_000530fc, puVar5 == &DAT_624b4744)) ||\n            (pcVar8 = (code *)PTR_FUN_000530e8, puVar5 == (undefined1 *)0x6348524d)) ||\n           ((pcVar8 = (code *)PTR_FUN_00053180, puVar5 == (undefined1 *)0x65584966 ||\n            (pcVar8 = (code *)PTR_FUN_000530e0, puVar5 == (undefined1 *)0x67414d41)))) ||\n          (((pcVar8 = (code *)PTR_FUN_00053100, puVar5 == (undefined1 *)0x68495354 ||\n            ((pcVar8 = (code *)PTR_FUN_00053108, puVar5 == (undefined1 *)0x6f464673 ||\n             (pcVar8 = (code *)PTR_FUN_0005310c, puVar5 == (undefined1 *)0x7043414c)))) ||\n           (pcVar8 = (code *)PTR_FUN_00053118, puVar5 == (undefined1 *)0x7343414c)))) ||\n         (((((pcVar8 = (code *)PTR_FUN_00053104, puVar5 == &DAT_70485973 ||\n             (pcVar8 = (code *)PTR_FUN_000530e4, puVar5 == (undefined1 *)0x73424954)) ||\n            (pcVar8 = (code *)PTR_FUN_000530ec, puVar5 == (undefined1 *)0x73524742)) ||\n           (((pcVar8 = (code *)PTR_FUN_000530f0, puVar5 == (undefined1 *)0x69434350 ||\n             (pcVar8 = (code *)PTR_FUN_000530f4, puVar5 == (undefined1 *)0x73504c54)) ||\n            ((pcVar8 = (code *)PTR_FUN_00053110, puVar5 == (undefined1 *)0x74455874 ||\n             ((pcVar8 = (code *)PTR_FUN_00053114, puVar5 == (undefined1 *)0x74494d45 ||\n              (pcVar8 = (code *)PTR_FUN_000530f8, puVar5 == (undefined1 *)0x74524e53)))))))) ||\n          ((pcVar8 = (code *)PTR_FUN_0005311c, puVar5 == (undefined1 *)0x7a545874 ||\n           (iVar3 = 0, pcVar8 = (code *)PTR_FUN_00053124, puVar5 == (undefined1 *)0x69545874))))))\n      goto LAB_00023564;\nLAB_00023394:\n      FUN_0002f630(param_1,param_2,iVar2,iVar3);\nLAB_000233a8:\n      uVar4 = *(uint *)(param_1 + 0x124);\n      goto LAB_000233ac;\n    }\n    if (puVar5 == (undefined1 *)0x49444154) {\n      if ((iVar2 == 0) || ((*(uint *)(param_1 + 0x128) & 8) != 0)) {\n        if ((*(uint *)(param_1 + 0x124) & 0x2000) != 0) {\n          (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar6);\n        }\n      }\n      else {\n        (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar6);\n      }\n      goto LAB_00023394;\n    }\n    FUN_0002f630(param_1,param_2,iVar2,iVar3);\n    if (puVar5 != (undefined1 *)0x504c5445) goto LAB_000233a8;\n    uVar4 = *(uint *)(param_1 + 0x124);\n    *(uint *)(param_1 + 0x124) = uVar4 | 2;\n    if ((uVar4 & 0x10) != 0) {\n      return;\n    }\n  } while( true );" do (compound_statement "{\n    while( true ) {\n      iVar2 = FUN_0002fa20(param_1);\n      puVar5 = *(undefined1 **)(param_1 + 0x1cc);\n      if ((puVar5 == (undefined1 *)0x49444154) ||\n         ((*(uint *)(param_1 + 0x124) = *(uint *)(param_1 + 0x124) | 0x2000,\n          pcVar8 = (code *)PTR_FUN_000530b8, puVar5 != (undefined1 *)0x49454e44 &&\n          (pcVar8 = (code *)PTR_FUN_000530ac, puVar5 != &DAT_49484452)))) break;\nLAB_00023564:\n      (*pcVar8)(param_1,param_2,iVar2);\n      uVar4 = *(uint *)(param_1 + 0x124);\nLAB_000233ac:\n      if ((uVar4 & 0x10) != 0) {\n        return;\n      }\n    }\n    if (param_2 == 0) {\nLAB_0002340c:\n      FUN_0002b068(param_1,iVar2);\n      uVar4 = *(uint *)(param_1 + 0x124);\n      goto LAB_000233ac;\n    }\n    iVar3 = FUN_00015610(param_1,puVar5);\n    if (iVar3 == 0) {\n      if (puVar5 == (undefined1 *)0x49444154) {\n        if ((iVar2 == 0) || ((*(uint *)(param_1 + 0x128) & 8) != 0)) {\n          if ((*(uint *)(param_1 + 0x124) & 0x2000) != 0) {\n            (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar7);\n          }\n        }\n        else {\n          (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar7);\n        }\n        goto LAB_0002340c;\n      }\n      pcVar8 = (code *)PTR_FUN_000530dc;\n      if ((((((puVar5 == (undefined1 *)0x504c5445) ||\n             (pcVar8 = (code *)PTR_FUN_000530fc, puVar5 == &DAT_624b4744)) ||\n            (pcVar8 = (code *)PTR_FUN_000530e8, puVar5 == (undefined1 *)0x6348524d)) ||\n           ((pcVar8 = (code *)PTR_FUN_00053180, puVar5 == (undefined1 *)0x65584966 ||\n            (pcVar8 = (code *)PTR_FUN_000530e0, puVar5 == (undefined1 *)0x67414d41)))) ||\n          (((pcVar8 = (code *)PTR_FUN_00053100, puVar5 == (undefined1 *)0x68495354 ||\n            ((pcVar8 = (code *)PTR_FUN_00053108, puVar5 == (undefined1 *)0x6f464673 ||\n             (pcVar8 = (code *)PTR_FUN_0005310c, puVar5 == (undefined1 *)0x7043414c)))) ||\n           (pcVar8 = (code *)PTR_FUN_00053118, puVar5 == (undefined1 *)0x7343414c)))) ||\n         (((((pcVar8 = (code *)PTR_FUN_00053104, puVar5 == &DAT_70485973 ||\n             (pcVar8 = (code *)PTR_FUN_000530e4, puVar5 == (undefined1 *)0x73424954)) ||\n            (pcVar8 = (code *)PTR_FUN_000530ec, puVar5 == (undefined1 *)0x73524742)) ||\n           (((pcVar8 = (code *)PTR_FUN_000530f0, puVar5 == (undefined1 *)0x69434350 ||\n             (pcVar8 = (code *)PTR_FUN_000530f4, puVar5 == (undefined1 *)0x73504c54)) ||\n            ((pcVar8 = (code *)PTR_FUN_00053110, puVar5 == (undefined1 *)0x74455874 ||\n             ((pcVar8 = (code *)PTR_FUN_00053114, puVar5 == (undefined1 *)0x74494d45 ||\n              (pcVar8 = (code *)PTR_FUN_000530f8, puVar5 == (undefined1 *)0x74524e53)))))))) ||\n          ((pcVar8 = (code *)PTR_FUN_0005311c, puVar5 == (undefined1 *)0x7a545874 ||\n           (iVar3 = 0, pcVar8 = (code *)PTR_FUN_00053124, puVar5 == (undefined1 *)0x69545874))))))\n      goto LAB_00023564;\nLAB_00023394:\n      FUN_0002f630(param_1,param_2,iVar2,iVar3);\nLAB_000233a8:\n      uVar4 = *(uint *)(param_1 + 0x124);\n      goto LAB_000233ac;\n    }\n    if (puVar5 == (undefined1 *)0x49444154) {\n      if ((iVar2 == 0) || ((*(uint *)(param_1 + 0x128) & 8) != 0)) {\n        if ((*(uint *)(param_1 + 0x124) & 0x2000) != 0) {\n          (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar6);\n        }\n      }\n      else {\n        (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar6);\n      }\n      goto LAB_00023394;\n    }\n    FUN_0002f630(param_1,param_2,iVar2,iVar3);\n    if (puVar5 != (undefined1 *)0x504c5445) goto LAB_000233a8;\n    uVar4 = *(uint *)(param_1 + 0x124);\n    *(uint *)(param_1 + 0x124) = uVar4 | 2;\n    if ((uVar4 & 0x10) != 0) {\n      return;\n    }\n  }" { (while_statement "while( true ) {\n      iVar2 = FUN_0002fa20(param_1);\n      puVar5 = *(undefined1 **)(param_1 + 0x1cc);\n      if ((puVar5 == (undefined1 *)0x49444154) ||\n         ((*(uint *)(param_1 + 0x124) = *(uint *)(param_1 + 0x124) | 0x2000,\n          pcVar8 = (code *)PTR_FUN_000530b8, puVar5 != (undefined1 *)0x49454e44 &&\n          (pcVar8 = (code *)PTR_FUN_000530ac, puVar5 != &DAT_49484452)))) break;\nLAB_00023564:\n      (*pcVar8)(param_1,param_2,iVar2);\n      uVar4 = *(uint *)(param_1 + 0x124);\nLAB_000233ac:\n      if ((uVar4 & 0x10) != 0) {\n        return;\n      }\n    }" while (parenthesized_expression "( true )" ( true )) (compound_statement "{\n      iVar2 = FUN_0002fa20(param_1);\n      puVar5 = *(undefined1 **)(param_1 + 0x1cc);\n      if ((puVar5 == (undefined1 *)0x49444154) ||\n         ((*(uint *)(param_1 + 0x124) = *(uint *)(param_1 + 0x124) | 0x2000,\n          pcVar8 = (code *)PTR_FUN_000530b8, puVar5 != (undefined1 *)0x49454e44 &&\n          (pcVar8 = (code *)PTR_FUN_000530ac, puVar5 != &DAT_49484452)))) break;\nLAB_00023564:\n      (*pcVar8)(param_1,param_2,iVar2);\n      uVar4 = *(uint *)(param_1 + 0x124);\nLAB_000233ac:\n      if ((uVar4 & 0x10) != 0) {\n        return;\n      }\n    }" { (expression_statement "iVar2 = FUN_0002fa20(param_1);" (assignment_expression "iVar2 = FUN_0002fa20(param_1)" identifier = (call_expression "FUN_0002fa20(param_1)" identifier (argument_list "(param_1)" ( identifier )))) ;) (expression_statement "puVar5 = *(undefined1 **)(param_1 + 0x1cc);" (assignment_expression "puVar5 = *(undefined1 **)(param_1 + 0x1cc)" identifier = (pointer_expression "*(undefined1 **)(param_1 + 0x1cc)" * (cast_expression "(undefined1 **)(param_1 + 0x1cc)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0x1cc)" ( (binary_expression "param_1 + 0x1cc" identifier + number_literal) ))))) ;) (if_statement "if ((puVar5 == (undefined1 *)0x49444154) ||\n         ((*(uint *)(param_1 + 0x124) = *(uint *)(param_1 + 0x124) | 0x2000,\n          pcVar8 = (code *)PTR_FUN_000530b8, puVar5 != (undefined1 *)0x49454e44 &&\n          (pcVar8 = (code *)PTR_FUN_000530ac, puVar5 != &DAT_49484452)))) break;" if (parenthesized_expression "((puVar5 == (undefined1 *)0x49444154) ||\n         ((*(uint *)(param_1 + 0x124) = *(uint *)(param_1 + 0x124) | 0x2000,\n          pcVar8 = (code *)PTR_FUN_000530b8, puVar5 != (undefined1 *)0x49454e44 &&\n          (pcVar8 = (code *)PTR_FUN_000530ac, puVar5 != &DAT_49484452))))" ( (binary_expression "(puVar5 == (undefined1 *)0x49444154) ||\n         ((*(uint *)(param_1 + 0x124) = *(uint *)(param_1 + 0x124) | 0x2000,\n          pcVar8 = (code *)PTR_FUN_000530b8, puVar5 != (undefined1 *)0x49454e44 &&\n          (pcVar8 = (code *)PTR_FUN_000530ac, puVar5 != &DAT_49484452)))" (parenthesized_expression "(puVar5 == (undefined1 *)0x49444154)" ( (binary_expression "puVar5 == (undefined1 *)0x49444154" identifier == (cast_expression "(undefined1 *)0x49444154" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) || (parenthesized_expression "((*(uint *)(param_1 + 0x124) = *(uint *)(param_1 + 0x124) | 0x2000,\n          pcVar8 = (code *)PTR_FUN_000530b8, puVar5 != (undefined1 *)0x49454e44 &&\n          (pcVar8 = (code *)PTR_FUN_000530ac, puVar5 != &DAT_49484452)))" ( (parenthesized_expression "(*(uint *)(param_1 + 0x124) = *(uint *)(param_1 + 0x124) | 0x2000,\n          pcVar8 = (code *)PTR_FUN_000530b8, puVar5 != (undefined1 *)0x49454e44 &&\n          (pcVar8 = (code *)PTR_FUN_000530ac, puVar5 != &DAT_49484452))" ( (comma_expression "*(uint *)(param_1 + 0x124) = *(uint *)(param_1 + 0x124) | 0x2000,\n          pcVar8 = (code *)PTR_FUN_000530b8, puVar5 != (undefined1 *)0x49454e44 &&\n          (pcVar8 = (code *)PTR_FUN_000530ac, puVar5 != &DAT_49484452)" (assignment_expression "*(uint *)(param_1 + 0x124) = *(uint *)(param_1 + 0x124) | 0x2000" (pointer_expression "*(uint *)(param_1 + 0x124)" * (cast_expression "(uint *)(param_1 + 0x124)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x124)" ( (binary_expression "param_1 + 0x124" identifier + number_literal) )))) = (binary_expression "*(uint *)(param_1 + 0x124) | 0x2000" (pointer_expression "*(uint *)(param_1 + 0x124)" * (cast_expression "(uint *)(param_1 + 0x124)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x124)" ( (binary_expression "param_1 + 0x124" identifier + number_literal) )))) | number_literal)) , (comma_expression "pcVar8 = (code *)PTR_FUN_000530b8, puVar5 != (undefined1 *)0x49454e44 &&\n          (pcVar8 = (code *)PTR_FUN_000530ac, puVar5 != &DAT_49484452)" (assignment_expression "pcVar8 = (code *)PTR_FUN_000530b8" identifier = (cast_expression "(code *)PTR_FUN_000530b8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , (binary_expression "puVar5 != (undefined1 *)0x49454e44 &&\n          (pcVar8 = (code *)PTR_FUN_000530ac, puVar5 != &DAT_49484452)" (binary_expression "puVar5 != (undefined1 *)0x49454e44" identifier != (cast_expression "(undefined1 *)0x49454e44" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) && (parenthesized_expression "(pcVar8 = (code *)PTR_FUN_000530ac, puVar5 != &DAT_49484452)" ( (comma_expression "pcVar8 = (code *)PTR_FUN_000530ac, puVar5 != &DAT_49484452" (assignment_expression "pcVar8 = (code *)PTR_FUN_000530ac" identifier = (cast_expression "(code *)PTR_FUN_000530ac" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , (binary_expression "puVar5 != &DAT_49484452" identifier != (pointer_expression "&DAT_49484452" & identifier))) ))))) )) ))) )) (break_statement "break;" break ;)) (labeled_statement "LAB_00023564:\n      (*pcVar8)(param_1,param_2,iVar2);" statement_identifier : (expression_statement "(*pcVar8)(param_1,param_2,iVar2);" (call_expression "(*pcVar8)(param_1,param_2,iVar2)" (parenthesized_expression "(*pcVar8)" ( (pointer_expression "*pcVar8" * identifier) )) (argument_list "(param_1,param_2,iVar2)" ( identifier , identifier , identifier ))) ;)) (expression_statement "uVar4 = *(uint *)(param_1 + 0x124);" (assignment_expression "uVar4 = *(uint *)(param_1 + 0x124)" identifier = (pointer_expression "*(uint *)(param_1 + 0x124)" * (cast_expression "(uint *)(param_1 + 0x124)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x124)" ( (binary_expression "param_1 + 0x124" identifier + number_literal) ))))) ;) (labeled_statement "LAB_000233ac:\n      if ((uVar4 & 0x10) != 0) {\n        return;\n      }" statement_identifier : (if_statement "if ((uVar4 & 0x10) != 0) {\n        return;\n      }" if (parenthesized_expression "((uVar4 & 0x10) != 0)" ( (binary_expression "(uVar4 & 0x10) != 0" (parenthesized_expression "(uVar4 & 0x10)" ( (binary_expression "uVar4 & 0x10" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n        return;\n      }" { (return_statement "return;" return ;) }))) })) (if_statement "if (param_2 == 0) {\nLAB_0002340c:\n      FUN_0002b068(param_1,iVar2);\n      uVar4 = *(uint *)(param_1 + 0x124);\n      goto LAB_000233ac;\n    }" if (parenthesized_expression "(param_2 == 0)" ( (binary_expression "param_2 == 0" identifier == number_literal) )) (compound_statement "{\nLAB_0002340c:\n      FUN_0002b068(param_1,iVar2);\n      uVar4 = *(uint *)(param_1 + 0x124);\n      goto LAB_000233ac;\n    }" { (labeled_statement "LAB_0002340c:\n      FUN_0002b068(param_1,iVar2);" statement_identifier : (expression_statement "FUN_0002b068(param_1,iVar2);" (call_expression "FUN_0002b068(param_1,iVar2)" identifier (argument_list "(param_1,iVar2)" ( identifier , identifier ))) ;)) (expression_statement "uVar4 = *(uint *)(param_1 + 0x124);" (assignment_expression "uVar4 = *(uint *)(param_1 + 0x124)" identifier = (pointer_expression "*(uint *)(param_1 + 0x124)" * (cast_expression "(uint *)(param_1 + 0x124)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x124)" ( (binary_expression "param_1 + 0x124" identifier + number_literal) ))))) ;) (goto_statement "goto LAB_000233ac;" goto statement_identifier ;) })) (expression_statement "iVar3 = FUN_00015610(param_1,puVar5);" (assignment_expression "iVar3 = FUN_00015610(param_1,puVar5)" identifier = (call_expression "FUN_00015610(param_1,puVar5)" identifier (argument_list "(param_1,puVar5)" ( identifier , identifier )))) ;) (if_statement "if (iVar3 == 0) {\n      if (puVar5 == (undefined1 *)0x49444154) {\n        if ((iVar2 == 0) || ((*(uint *)(param_1 + 0x128) & 8) != 0)) {\n          if ((*(uint *)(param_1 + 0x124) & 0x2000) != 0) {\n            (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar7);\n          }\n        }\n        else {\n          (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar7);\n        }\n        goto LAB_0002340c;\n      }\n      pcVar8 = (code *)PTR_FUN_000530dc;\n      if ((((((puVar5 == (undefined1 *)0x504c5445) ||\n             (pcVar8 = (code *)PTR_FUN_000530fc, puVar5 == &DAT_624b4744)) ||\n            (pcVar8 = (code *)PTR_FUN_000530e8, puVar5 == (undefined1 *)0x6348524d)) ||\n           ((pcVar8 = (code *)PTR_FUN_00053180, puVar5 == (undefined1 *)0x65584966 ||\n            (pcVar8 = (code *)PTR_FUN_000530e0, puVar5 == (undefined1 *)0x67414d41)))) ||\n          (((pcVar8 = (code *)PTR_FUN_00053100, puVar5 == (undefined1 *)0x68495354 ||\n            ((pcVar8 = (code *)PTR_FUN_00053108, puVar5 == (undefined1 *)0x6f464673 ||\n             (pcVar8 = (code *)PTR_FUN_0005310c, puVar5 == (undefined1 *)0x7043414c)))) ||\n           (pcVar8 = (code *)PTR_FUN_00053118, puVar5 == (undefined1 *)0x7343414c)))) ||\n         (((((pcVar8 = (code *)PTR_FUN_00053104, puVar5 == &DAT_70485973 ||\n             (pcVar8 = (code *)PTR_FUN_000530e4, puVar5 == (undefined1 *)0x73424954)) ||\n            (pcVar8 = (code *)PTR_FUN_000530ec, puVar5 == (undefined1 *)0x73524742)) ||\n           (((pcVar8 = (code *)PTR_FUN_000530f0, puVar5 == (undefined1 *)0x69434350 ||\n             (pcVar8 = (code *)PTR_FUN_000530f4, puVar5 == (undefined1 *)0x73504c54)) ||\n            ((pcVar8 = (code *)PTR_FUN_00053110, puVar5 == (undefined1 *)0x74455874 ||\n             ((pcVar8 = (code *)PTR_FUN_00053114, puVar5 == (undefined1 *)0x74494d45 ||\n              (pcVar8 = (code *)PTR_FUN_000530f8, puVar5 == (undefined1 *)0x74524e53)))))))) ||\n          ((pcVar8 = (code *)PTR_FUN_0005311c, puVar5 == (undefined1 *)0x7a545874 ||\n           (iVar3 = 0, pcVar8 = (code *)PTR_FUN_00053124, puVar5 == (undefined1 *)0x69545874))))))\n      goto LAB_00023564;\nLAB_00023394:\n      FUN_0002f630(param_1,param_2,iVar2,iVar3);\nLAB_000233a8:\n      uVar4 = *(uint *)(param_1 + 0x124);\n      goto LAB_000233ac;\n    }" if (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) (compound_statement "{\n      if (puVar5 == (undefined1 *)0x49444154) {\n        if ((iVar2 == 0) || ((*(uint *)(param_1 + 0x128) & 8) != 0)) {\n          if ((*(uint *)(param_1 + 0x124) & 0x2000) != 0) {\n            (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar7);\n          }\n        }\n        else {\n          (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar7);\n        }\n        goto LAB_0002340c;\n      }\n      pcVar8 = (code *)PTR_FUN_000530dc;\n      if ((((((puVar5 == (undefined1 *)0x504c5445) ||\n             (pcVar8 = (code *)PTR_FUN_000530fc, puVar5 == &DAT_624b4744)) ||\n            (pcVar8 = (code *)PTR_FUN_000530e8, puVar5 == (undefined1 *)0x6348524d)) ||\n           ((pcVar8 = (code *)PTR_FUN_00053180, puVar5 == (undefined1 *)0x65584966 ||\n            (pcVar8 = (code *)PTR_FUN_000530e0, puVar5 == (undefined1 *)0x67414d41)))) ||\n          (((pcVar8 = (code *)PTR_FUN_00053100, puVar5 == (undefined1 *)0x68495354 ||\n            ((pcVar8 = (code *)PTR_FUN_00053108, puVar5 == (undefined1 *)0x6f464673 ||\n             (pcVar8 = (code *)PTR_FUN_0005310c, puVar5 == (undefined1 *)0x7043414c)))) ||\n           (pcVar8 = (code *)PTR_FUN_00053118, puVar5 == (undefined1 *)0x7343414c)))) ||\n         (((((pcVar8 = (code *)PTR_FUN_00053104, puVar5 == &DAT_70485973 ||\n             (pcVar8 = (code *)PTR_FUN_000530e4, puVar5 == (undefined1 *)0x73424954)) ||\n            (pcVar8 = (code *)PTR_FUN_000530ec, puVar5 == (undefined1 *)0x73524742)) ||\n           (((pcVar8 = (code *)PTR_FUN_000530f0, puVar5 == (undefined1 *)0x69434350 ||\n             (pcVar8 = (code *)PTR_FUN_000530f4, puVar5 == (undefined1 *)0x73504c54)) ||\n            ((pcVar8 = (code *)PTR_FUN_00053110, puVar5 == (undefined1 *)0x74455874 ||\n             ((pcVar8 = (code *)PTR_FUN_00053114, puVar5 == (undefined1 *)0x74494d45 ||\n              (pcVar8 = (code *)PTR_FUN_000530f8, puVar5 == (undefined1 *)0x74524e53)))))))) ||\n          ((pcVar8 = (code *)PTR_FUN_0005311c, puVar5 == (undefined1 *)0x7a545874 ||\n           (iVar3 = 0, pcVar8 = (code *)PTR_FUN_00053124, puVar5 == (undefined1 *)0x69545874))))))\n      goto LAB_00023564;\nLAB_00023394:\n      FUN_0002f630(param_1,param_2,iVar2,iVar3);\nLAB_000233a8:\n      uVar4 = *(uint *)(param_1 + 0x124);\n      goto LAB_000233ac;\n    }" { (if_statement "if (puVar5 == (undefined1 *)0x49444154) {\n        if ((iVar2 == 0) || ((*(uint *)(param_1 + 0x128) & 8) != 0)) {\n          if ((*(uint *)(param_1 + 0x124) & 0x2000) != 0) {\n            (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar7);\n          }\n        }\n        else {\n          (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar7);\n        }\n        goto LAB_0002340c;\n      }" if (parenthesized_expression "(puVar5 == (undefined1 *)0x49444154)" ( (binary_expression "puVar5 == (undefined1 *)0x49444154" identifier == (cast_expression "(undefined1 *)0x49444154" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        if ((iVar2 == 0) || ((*(uint *)(param_1 + 0x128) & 8) != 0)) {\n          if ((*(uint *)(param_1 + 0x124) & 0x2000) != 0) {\n            (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar7);\n          }\n        }\n        else {\n          (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar7);\n        }\n        goto LAB_0002340c;\n      }" { (if_statement "if ((iVar2 == 0) || ((*(uint *)(param_1 + 0x128) & 8) != 0)) {\n          if ((*(uint *)(param_1 + 0x124) & 0x2000) != 0) {\n            (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar7);\n          }\n        }\n        else {\n          (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar7);\n        }" if (parenthesized_expression "((iVar2 == 0) || ((*(uint *)(param_1 + 0x128) & 8) != 0))" ( (binary_expression "(iVar2 == 0) || ((*(uint *)(param_1 + 0x128) & 8) != 0)" (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) || (parenthesized_expression "((*(uint *)(param_1 + 0x128) & 8) != 0)" ( (binary_expression "(*(uint *)(param_1 + 0x128) & 8) != 0" (parenthesized_expression "(*(uint *)(param_1 + 0x128) & 8)" ( (binary_expression "*(uint *)(param_1 + 0x128) & 8" (pointer_expression "*(uint *)(param_1 + 0x128)" * (cast_expression "(uint *)(param_1 + 0x128)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x128)" ( (binary_expression "param_1 + 0x128" identifier + number_literal) )))) & number_literal) )) != number_literal) ))) )) (compound_statement "{\n          if ((*(uint *)(param_1 + 0x124) & 0x2000) != 0) {\n            (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar7);\n          }\n        }" { (if_statement "if ((*(uint *)(param_1 + 0x124) & 0x2000) != 0) {\n            (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar7);\n          }" if (parenthesized_expression "((*(uint *)(param_1 + 0x124) & 0x2000) != 0)" ( (binary_expression "(*(uint *)(param_1 + 0x124) & 0x2000) != 0" (parenthesized_expression "(*(uint *)(param_1 + 0x124) & 0x2000)" ( (binary_expression "*(uint *)(param_1 + 0x124) & 0x2000" (pointer_expression "*(uint *)(param_1 + 0x124)" * (cast_expression "(uint *)(param_1 + 0x124)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x124)" ( (binary_expression "param_1 + 0x124" identifier + number_literal) )))) & number_literal) )) != number_literal) )) (compound_statement "{\n            (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar7);\n          }" { (expression_statement "(*(code *)PTR_png_benign_error_000533b8)(param_1,puVar7);" (call_expression "(*(code *)PTR_png_benign_error_000533b8)(param_1,puVar7)" (parenthesized_expression "(*(code *)PTR_png_benign_error_000533b8)" ( (pointer_expression "*(code *)PTR_png_benign_error_000533b8" * (cast_expression "(code *)PTR_png_benign_error_000533b8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_1,puVar7)" ( identifier , identifier ))) ;) })) }) (else_clause "else {\n          (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar7);\n        }" else (compound_statement "{\n          (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar7);\n        }" { (expression_statement "(*(code *)PTR_png_benign_error_000533b8)(param_1,puVar7);" (call_expression "(*(code *)PTR_png_benign_error_000533b8)(param_1,puVar7)" (parenthesized_expression "(*(code *)PTR_png_benign_error_000533b8)" ( (pointer_expression "*(code *)PTR_png_benign_error_000533b8" * (cast_expression "(code *)PTR_png_benign_error_000533b8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_1,puVar7)" ( identifier , identifier ))) ;) }))) (goto_statement "goto LAB_0002340c;" goto statement_identifier ;) })) (expression_statement "pcVar8 = (code *)PTR_FUN_000530dc;" (assignment_expression "pcVar8 = (code *)PTR_FUN_000530dc" identifier = (cast_expression "(code *)PTR_FUN_000530dc" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (if_statement "if ((((((puVar5 == (undefined1 *)0x504c5445) ||\n             (pcVar8 = (code *)PTR_FUN_000530fc, puVar5 == &DAT_624b4744)) ||\n            (pcVar8 = (code *)PTR_FUN_000530e8, puVar5 == (undefined1 *)0x6348524d)) ||\n           ((pcVar8 = (code *)PTR_FUN_00053180, puVar5 == (undefined1 *)0x65584966 ||\n            (pcVar8 = (code *)PTR_FUN_000530e0, puVar5 == (undefined1 *)0x67414d41)))) ||\n          (((pcVar8 = (code *)PTR_FUN_00053100, puVar5 == (undefined1 *)0x68495354 ||\n            ((pcVar8 = (code *)PTR_FUN_00053108, puVar5 == (undefined1 *)0x6f464673 ||\n             (pcVar8 = (code *)PTR_FUN_0005310c, puVar5 == (undefined1 *)0x7043414c)))) ||\n           (pcVar8 = (code *)PTR_FUN_00053118, puVar5 == (undefined1 *)0x7343414c)))) ||\n         (((((pcVar8 = (code *)PTR_FUN_00053104, puVar5 == &DAT_70485973 ||\n             (pcVar8 = (code *)PTR_FUN_000530e4, puVar5 == (undefined1 *)0x73424954)) ||\n            (pcVar8 = (code *)PTR_FUN_000530ec, puVar5 == (undefined1 *)0x73524742)) ||\n           (((pcVar8 = (code *)PTR_FUN_000530f0, puVar5 == (undefined1 *)0x69434350 ||\n             (pcVar8 = (code *)PTR_FUN_000530f4, puVar5 == (undefined1 *)0x73504c54)) ||\n            ((pcVar8 = (code *)PTR_FUN_00053110, puVar5 == (undefined1 *)0x74455874 ||\n             ((pcVar8 = (code *)PTR_FUN_00053114, puVar5 == (undefined1 *)0x74494d45 ||\n              (pcVar8 = (code *)PTR_FUN_000530f8, puVar5 == (undefined1 *)0x74524e53)))))))) ||\n          ((pcVar8 = (code *)PTR_FUN_0005311c, puVar5 == (undefined1 *)0x7a545874 ||\n           (iVar3 = 0, pcVar8 = (code *)PTR_FUN_00053124, puVar5 == (undefined1 *)0x69545874))))))\n      goto LAB_00023564;" if (parenthesized_expression "((((((puVar5 == (undefined1 *)0x504c5445) ||\n             (pcVar8 = (code *)PTR_FUN_000530fc, puVar5 == &DAT_624b4744)) ||\n            (pcVar8 = (code *)PTR_FUN_000530e8, puVar5 == (undefined1 *)0x6348524d)) ||\n           ((pcVar8 = (code *)PTR_FUN_00053180, puVar5 == (undefined1 *)0x65584966 ||\n            (pcVar8 = (code *)PTR_FUN_000530e0, puVar5 == (undefined1 *)0x67414d41)))) ||\n          (((pcVar8 = (code *)PTR_FUN_00053100, puVar5 == (undefined1 *)0x68495354 ||\n            ((pcVar8 = (code *)PTR_FUN_00053108, puVar5 == (undefined1 *)0x6f464673 ||\n             (pcVar8 = (code *)PTR_FUN_0005310c, puVar5 == (undefined1 *)0x7043414c)))) ||\n           (pcVar8 = (code *)PTR_FUN_00053118, puVar5 == (undefined1 *)0x7343414c)))) ||\n         (((((pcVar8 = (code *)PTR_FUN_00053104, puVar5 == &DAT_70485973 ||\n             (pcVar8 = (code *)PTR_FUN_000530e4, puVar5 == (undefined1 *)0x73424954)) ||\n            (pcVar8 = (code *)PTR_FUN_000530ec, puVar5 == (undefined1 *)0x73524742)) ||\n           (((pcVar8 = (code *)PTR_FUN_000530f0, puVar5 == (undefined1 *)0x69434350 ||\n             (pcVar8 = (code *)PTR_FUN_000530f4, puVar5 == (undefined1 *)0x73504c54)) ||\n            ((pcVar8 = (code *)PTR_FUN_00053110, puVar5 == (undefined1 *)0x74455874 ||\n             ((pcVar8 = (code *)PTR_FUN_00053114, puVar5 == (undefined1 *)0x74494d45 ||\n              (pcVar8 = (code *)PTR_FUN_000530f8, puVar5 == (undefined1 *)0x74524e53)))))))) ||\n          ((pcVar8 = (code *)PTR_FUN_0005311c, puVar5 == (undefined1 *)0x7a545874 ||\n           (iVar3 = 0, pcVar8 = (code *)PTR_FUN_00053124, puVar5 == (undefined1 *)0x69545874))))))" ( (binary_expression "(((((puVar5 == (undefined1 *)0x504c5445) ||\n             (pcVar8 = (code *)PTR_FUN_000530fc, puVar5 == &DAT_624b4744)) ||\n            (pcVar8 = (code *)PTR_FUN_000530e8, puVar5 == (undefined1 *)0x6348524d)) ||\n           ((pcVar8 = (code *)PTR_FUN_00053180, puVar5 == (undefined1 *)0x65584966 ||\n            (pcVar8 = (code *)PTR_FUN_000530e0, puVar5 == (undefined1 *)0x67414d41)))) ||\n          (((pcVar8 = (code *)PTR_FUN_00053100, puVar5 == (undefined1 *)0x68495354 ||\n            ((pcVar8 = (code *)PTR_FUN_00053108, puVar5 == (undefined1 *)0x6f464673 ||\n             (pcVar8 = (code *)PTR_FUN_0005310c, puVar5 == (undefined1 *)0x7043414c)))) ||\n           (pcVar8 = (code *)PTR_FUN_00053118, puVar5 == (undefined1 *)0x7343414c)))) ||\n         (((((pcVar8 = (code *)PTR_FUN_00053104, puVar5 == &DAT_70485973 ||\n             (pcVar8 = (code *)PTR_FUN_000530e4, puVar5 == (undefined1 *)0x73424954)) ||\n            (pcVar8 = (code *)PTR_FUN_000530ec, puVar5 == (undefined1 *)0x73524742)) ||\n           (((pcVar8 = (code *)PTR_FUN_000530f0, puVar5 == (undefined1 *)0x69434350 ||\n             (pcVar8 = (code *)PTR_FUN_000530f4, puVar5 == (undefined1 *)0x73504c54)) ||\n            ((pcVar8 = (code *)PTR_FUN_00053110, puVar5 == (undefined1 *)0x74455874 ||\n             ((pcVar8 = (code *)PTR_FUN_00053114, puVar5 == (undefined1 *)0x74494d45 ||\n              (pcVar8 = (code *)PTR_FUN_000530f8, puVar5 == (undefined1 *)0x74524e53)))))))) ||\n          ((pcVar8 = (code *)PTR_FUN_0005311c, puVar5 == (undefined1 *)0x7a545874 ||\n           (iVar3 = 0, pcVar8 = (code *)PTR_FUN_00053124, puVar5 == (undefined1 *)0x69545874)))))" (parenthesized_expression "(((((puVar5 == (undefined1 *)0x504c5445) ||\n             (pcVar8 = (code *)PTR_FUN_000530fc, puVar5 == &DAT_624b4744)) ||\n            (pcVar8 = (code *)PTR_FUN_000530e8, puVar5 == (undefined1 *)0x6348524d)) ||\n           ((pcVar8 = (code *)PTR_FUN_00053180, puVar5 == (undefined1 *)0x65584966 ||\n            (pcVar8 = (code *)PTR_FUN_000530e0, puVar5 == (undefined1 *)0x67414d41)))) ||\n          (((pcVar8 = (code *)PTR_FUN_00053100, puVar5 == (undefined1 *)0x68495354 ||\n            ((pcVar8 = (code *)PTR_FUN_00053108, puVar5 == (undefined1 *)0x6f464673 ||\n             (pcVar8 = (code *)PTR_FUN_0005310c, puVar5 == (undefined1 *)0x7043414c)))) ||\n           (pcVar8 = (code *)PTR_FUN_00053118, puVar5 == (undefined1 *)0x7343414c))))" ( (binary_expression "((((puVar5 == (undefined1 *)0x504c5445) ||\n             (pcVar8 = (code *)PTR_FUN_000530fc, puVar5 == &DAT_624b4744)) ||\n            (pcVar8 = (code *)PTR_FUN_000530e8, puVar5 == (undefined1 *)0x6348524d)) ||\n           ((pcVar8 = (code *)PTR_FUN_00053180, puVar5 == (undefined1 *)0x65584966 ||\n            (pcVar8 = (code *)PTR_FUN_000530e0, puVar5 == (undefined1 *)0x67414d41)))) ||\n          (((pcVar8 = (code *)PTR_FUN_00053100, puVar5 == (undefined1 *)0x68495354 ||\n            ((pcVar8 = (code *)PTR_FUN_00053108, puVar5 == (undefined1 *)0x6f464673 ||\n             (pcVar8 = (code *)PTR_FUN_0005310c, puVar5 == (undefined1 *)0x7043414c)))) ||\n           (pcVar8 = (code *)PTR_FUN_00053118, puVar5 == (undefined1 *)0x7343414c)))" (parenthesized_expression "((((puVar5 == (undefined1 *)0x504c5445) ||\n             (pcVar8 = (code *)PTR_FUN_000530fc, puVar5 == &DAT_624b4744)) ||\n            (pcVar8 = (code *)PTR_FUN_000530e8, puVar5 == (undefined1 *)0x6348524d)) ||\n           ((pcVar8 = (code *)PTR_FUN_00053180, puVar5 == (undefined1 *)0x65584966 ||\n            (pcVar8 = (code *)PTR_FUN_000530e0, puVar5 == (undefined1 *)0x67414d41))))" ( (binary_expression "(((puVar5 == (undefined1 *)0x504c5445) ||\n             (pcVar8 = (code *)PTR_FUN_000530fc, puVar5 == &DAT_624b4744)) ||\n            (pcVar8 = (code *)PTR_FUN_000530e8, puVar5 == (undefined1 *)0x6348524d)) ||\n           ((pcVar8 = (code *)PTR_FUN_00053180, puVar5 == (undefined1 *)0x65584966 ||\n            (pcVar8 = (code *)PTR_FUN_000530e0, puVar5 == (undefined1 *)0x67414d41)))" (parenthesized_expression "(((puVar5 == (undefined1 *)0x504c5445) ||\n             (pcVar8 = (code *)PTR_FUN_000530fc, puVar5 == &DAT_624b4744)) ||\n            (pcVar8 = (code *)PTR_FUN_000530e8, puVar5 == (undefined1 *)0x6348524d))" ( (binary_expression "((puVar5 == (undefined1 *)0x504c5445) ||\n             (pcVar8 = (code *)PTR_FUN_000530fc, puVar5 == &DAT_624b4744)) ||\n            (pcVar8 = (code *)PTR_FUN_000530e8, puVar5 == (undefined1 *)0x6348524d)" (parenthesized_expression "((puVar5 == (undefined1 *)0x504c5445) ||\n             (pcVar8 = (code *)PTR_FUN_000530fc, puVar5 == &DAT_624b4744))" ( (binary_expression "(puVar5 == (undefined1 *)0x504c5445) ||\n             (pcVar8 = (code *)PTR_FUN_000530fc, puVar5 == &DAT_624b4744)" (parenthesized_expression "(puVar5 == (undefined1 *)0x504c5445)" ( (binary_expression "puVar5 == (undefined1 *)0x504c5445" identifier == (cast_expression "(undefined1 *)0x504c5445" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) || (parenthesized_expression "(pcVar8 = (code *)PTR_FUN_000530fc, puVar5 == &DAT_624b4744)" ( (comma_expression "pcVar8 = (code *)PTR_FUN_000530fc, puVar5 == &DAT_624b4744" (assignment_expression "pcVar8 = (code *)PTR_FUN_000530fc" identifier = (cast_expression "(code *)PTR_FUN_000530fc" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , (binary_expression "puVar5 == &DAT_624b4744" identifier == (pointer_expression "&DAT_624b4744" & identifier))) ))) )) || (parenthesized_expression "(pcVar8 = (code *)PTR_FUN_000530e8, puVar5 == (undefined1 *)0x6348524d)" ( (comma_expression "pcVar8 = (code *)PTR_FUN_000530e8, puVar5 == (undefined1 *)0x6348524d" (assignment_expression "pcVar8 = (code *)PTR_FUN_000530e8" identifier = (cast_expression "(code *)PTR_FUN_000530e8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , (binary_expression "puVar5 == (undefined1 *)0x6348524d" identifier == (cast_expression "(undefined1 *)0x6348524d" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) ))) )) || (parenthesized_expression "((pcVar8 = (code *)PTR_FUN_00053180, puVar5 == (undefined1 *)0x65584966 ||\n            (pcVar8 = (code *)PTR_FUN_000530e0, puVar5 == (undefined1 *)0x67414d41)))" ( (parenthesized_expression "(pcVar8 = (code *)PTR_FUN_00053180, puVar5 == (undefined1 *)0x65584966 ||\n            (pcVar8 = (code *)PTR_FUN_000530e0, puVar5 == (undefined1 *)0x67414d41))" ( (comma_expression "pcVar8 = (code *)PTR_FUN_00053180, puVar5 == (undefined1 *)0x65584966 ||\n            (pcVar8 = (code *)PTR_FUN_000530e0, puVar5 == (undefined1 *)0x67414d41)" (assignment_expression "pcVar8 = (code *)PTR_FUN_00053180" identifier = (cast_expression "(code *)PTR_FUN_00053180" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , (binary_expression "puVar5 == (undefined1 *)0x65584966 ||\n            (pcVar8 = (code *)PTR_FUN_000530e0, puVar5 == (undefined1 *)0x67414d41)" (binary_expression "puVar5 == (undefined1 *)0x65584966" identifier == (cast_expression "(undefined1 *)0x65584966" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) || (parenthesized_expression "(pcVar8 = (code *)PTR_FUN_000530e0, puVar5 == (undefined1 *)0x67414d41)" ( (comma_expression "pcVar8 = (code *)PTR_FUN_000530e0, puVar5 == (undefined1 *)0x67414d41" (assignment_expression "pcVar8 = (code *)PTR_FUN_000530e0" identifier = (cast_expression "(code *)PTR_FUN_000530e0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , (binary_expression "puVar5 == (undefined1 *)0x67414d41" identifier == (cast_expression "(undefined1 *)0x67414d41" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) )))) )) ))) )) || (parenthesized_expression "(((pcVar8 = (code *)PTR_FUN_00053100, puVar5 == (undefined1 *)0x68495354 ||\n            ((pcVar8 = (code *)PTR_FUN_00053108, puVar5 == (undefined1 *)0x6f464673 ||\n             (pcVar8 = (code *)PTR_FUN_0005310c, puVar5 == (undefined1 *)0x7043414c)))) ||\n           (pcVar8 = (code *)PTR_FUN_00053118, puVar5 == (undefined1 *)0x7343414c)))" ( (parenthesized_expression "((pcVar8 = (code *)PTR_FUN_00053100, puVar5 == (undefined1 *)0x68495354 ||\n            ((pcVar8 = (code *)PTR_FUN_00053108, puVar5 == (undefined1 *)0x6f464673 ||\n             (pcVar8 = (code *)PTR_FUN_0005310c, puVar5 == (undefined1 *)0x7043414c)))) ||\n           (pcVar8 = (code *)PTR_FUN_00053118, puVar5 == (undefined1 *)0x7343414c))" ( (binary_expression "(pcVar8 = (code *)PTR_FUN_00053100, puVar5 == (undefined1 *)0x68495354 ||\n            ((pcVar8 = (code *)PTR_FUN_00053108, puVar5 == (undefined1 *)0x6f464673 ||\n             (pcVar8 = (code *)PTR_FUN_0005310c, puVar5 == (undefined1 *)0x7043414c)))) ||\n           (pcVar8 = (code *)PTR_FUN_00053118, puVar5 == (undefined1 *)0x7343414c)" (parenthesized_expression "(pcVar8 = (code *)PTR_FUN_00053100, puVar5 == (undefined1 *)0x68495354 ||\n            ((pcVar8 = (code *)PTR_FUN_00053108, puVar5 == (undefined1 *)0x6f464673 ||\n             (pcVar8 = (code *)PTR_FUN_0005310c, puVar5 == (undefined1 *)0x7043414c))))" ( (comma_expression "pcVar8 = (code *)PTR_FUN_00053100, puVar5 == (undefined1 *)0x68495354 ||\n            ((pcVar8 = (code *)PTR_FUN_00053108, puVar5 == (undefined1 *)0x6f464673 ||\n             (pcVar8 = (code *)PTR_FUN_0005310c, puVar5 == (undefined1 *)0x7043414c)))" (assignment_expression "pcVar8 = (code *)PTR_FUN_00053100" identifier = (cast_expression "(code *)PTR_FUN_00053100" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , (binary_expression "puVar5 == (undefined1 *)0x68495354 ||\n            ((pcVar8 = (code *)PTR_FUN_00053108, puVar5 == (undefined1 *)0x6f464673 ||\n             (pcVar8 = (code *)PTR_FUN_0005310c, puVar5 == (undefined1 *)0x7043414c)))" (binary_expression "puVar5 == (undefined1 *)0x68495354" identifier == (cast_expression "(undefined1 *)0x68495354" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) || (parenthesized_expression "((pcVar8 = (code *)PTR_FUN_00053108, puVar5 == (undefined1 *)0x6f464673 ||\n             (pcVar8 = (code *)PTR_FUN_0005310c, puVar5 == (undefined1 *)0x7043414c)))" ( (parenthesized_expression "(pcVar8 = (code *)PTR_FUN_00053108, puVar5 == (undefined1 *)0x6f464673 ||\n             (pcVar8 = (code *)PTR_FUN_0005310c, puVar5 == (undefined1 *)0x7043414c))" ( (comma_expression "pcVar8 = (code *)PTR_FUN_00053108, puVar5 == (undefined1 *)0x6f464673 ||\n             (pcVar8 = (code *)PTR_FUN_0005310c, puVar5 == (undefined1 *)0x7043414c)" (assignment_expression "pcVar8 = (code *)PTR_FUN_00053108" identifier = (cast_expression "(code *)PTR_FUN_00053108" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , (binary_expression "puVar5 == (undefined1 *)0x6f464673 ||\n             (pcVar8 = (code *)PTR_FUN_0005310c, puVar5 == (undefined1 *)0x7043414c)" (binary_expression "puVar5 == (undefined1 *)0x6f464673" identifier == (cast_expression "(undefined1 *)0x6f464673" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) || (parenthesized_expression "(pcVar8 = (code *)PTR_FUN_0005310c, puVar5 == (undefined1 *)0x7043414c)" ( (comma_expression "pcVar8 = (code *)PTR_FUN_0005310c, puVar5 == (undefined1 *)0x7043414c" (assignment_expression "pcVar8 = (code *)PTR_FUN_0005310c" identifier = (cast_expression "(code *)PTR_FUN_0005310c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , (binary_expression "puVar5 == (undefined1 *)0x7043414c" identifier == (cast_expression "(undefined1 *)0x7043414c" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) )))) )) )))) )) || (parenthesized_expression "(pcVar8 = (code *)PTR_FUN_00053118, puVar5 == (undefined1 *)0x7343414c)" ( (comma_expression "pcVar8 = (code *)PTR_FUN_00053118, puVar5 == (undefined1 *)0x7343414c" (assignment_expression "pcVar8 = (code *)PTR_FUN_00053118" identifier = (cast_expression "(code *)PTR_FUN_00053118" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , (binary_expression "puVar5 == (undefined1 *)0x7343414c" identifier == (cast_expression "(undefined1 *)0x7343414c" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) ))) )) ))) )) || (parenthesized_expression "(((((pcVar8 = (code *)PTR_FUN_00053104, puVar5 == &DAT_70485973 ||\n             (pcVar8 = (code *)PTR_FUN_000530e4, puVar5 == (undefined1 *)0x73424954)) ||\n            (pcVar8 = (code *)PTR_FUN_000530ec, puVar5 == (undefined1 *)0x73524742)) ||\n           (((pcVar8 = (code *)PTR_FUN_000530f0, puVar5 == (undefined1 *)0x69434350 ||\n             (pcVar8 = (code *)PTR_FUN_000530f4, puVar5 == (undefined1 *)0x73504c54)) ||\n            ((pcVar8 = (code *)PTR_FUN_00053110, puVar5 == (undefined1 *)0x74455874 ||\n             ((pcVar8 = (code *)PTR_FUN_00053114, puVar5 == (undefined1 *)0x74494d45 ||\n              (pcVar8 = (code *)PTR_FUN_000530f8, puVar5 == (undefined1 *)0x74524e53)))))))) ||\n          ((pcVar8 = (code *)PTR_FUN_0005311c, puVar5 == (undefined1 *)0x7a545874 ||\n           (iVar3 = 0, pcVar8 = (code *)PTR_FUN_00053124, puVar5 == (undefined1 *)0x69545874)))))" ( (parenthesized_expression "((((pcVar8 = (code *)PTR_FUN_00053104, puVar5 == &DAT_70485973 ||\n             (pcVar8 = (code *)PTR_FUN_000530e4, puVar5 == (undefined1 *)0x73424954)) ||\n            (pcVar8 = (code *)PTR_FUN_000530ec, puVar5 == (undefined1 *)0x73524742)) ||\n           (((pcVar8 = (code *)PTR_FUN_000530f0, puVar5 == (undefined1 *)0x69434350 ||\n             (pcVar8 = (code *)PTR_FUN_000530f4, puVar5 == (undefined1 *)0x73504c54)) ||\n            ((pcVar8 = (code *)PTR_FUN_00053110, puVar5 == (undefined1 *)0x74455874 ||\n             ((pcVar8 = (code *)PTR_FUN_00053114, puVar5 == (undefined1 *)0x74494d45 ||\n              (pcVar8 = (code *)PTR_FUN_000530f8, puVar5 == (undefined1 *)0x74524e53)))))))) ||\n          ((pcVar8 = (code *)PTR_FUN_0005311c, puVar5 == (undefined1 *)0x7a545874 ||\n           (iVar3 = 0, pcVar8 = (code *)PTR_FUN_00053124, puVar5 == (undefined1 *)0x69545874))))" ( (binary_expression "(((pcVar8 = (code *)PTR_FUN_00053104, puVar5 == &DAT_70485973 ||\n             (pcVar8 = (code *)PTR_FUN_000530e4, puVar5 == (undefined1 *)0x73424954)) ||\n            (pcVar8 = (code *)PTR_FUN_000530ec, puVar5 == (undefined1 *)0x73524742)) ||\n           (((pcVar8 = (code *)PTR_FUN_000530f0, puVar5 == (undefined1 *)0x69434350 ||\n             (pcVar8 = (code *)PTR_FUN_000530f4, puVar5 == (undefined1 *)0x73504c54)) ||\n            ((pcVar8 = (code *)PTR_FUN_00053110, puVar5 == (undefined1 *)0x74455874 ||\n             ((pcVar8 = (code *)PTR_FUN_00053114, puVar5 == (undefined1 *)0x74494d45 ||\n              (pcVar8 = (code *)PTR_FUN_000530f8, puVar5 == (undefined1 *)0x74524e53)))))))) ||\n          ((pcVar8 = (code *)PTR_FUN_0005311c, puVar5 == (undefined1 *)0x7a545874 ||\n           (iVar3 = 0, pcVar8 = (code *)PTR_FUN_00053124, puVar5 == (undefined1 *)0x69545874)))" (parenthesized_expression "(((pcVar8 = (code *)PTR_FUN_00053104, puVar5 == &DAT_70485973 ||\n             (pcVar8 = (code *)PTR_FUN_000530e4, puVar5 == (undefined1 *)0x73424954)) ||\n            (pcVar8 = (code *)PTR_FUN_000530ec, puVar5 == (undefined1 *)0x73524742)) ||\n           (((pcVar8 = (code *)PTR_FUN_000530f0, puVar5 == (undefined1 *)0x69434350 ||\n             (pcVar8 = (code *)PTR_FUN_000530f4, puVar5 == (undefined1 *)0x73504c54)) ||\n            ((pcVar8 = (code *)PTR_FUN_00053110, puVar5 == (undefined1 *)0x74455874 ||\n             ((pcVar8 = (code *)PTR_FUN_00053114, puVar5 == (undefined1 *)0x74494d45 ||\n              (pcVar8 = (code *)PTR_FUN_000530f8, puVar5 == (undefined1 *)0x74524e53))))))))" ( (binary_expression "((pcVar8 = (code *)PTR_FUN_00053104, puVar5 == &DAT_70485973 ||\n             (pcVar8 = (code *)PTR_FUN_000530e4, puVar5 == (undefined1 *)0x73424954)) ||\n            (pcVar8 = (code *)PTR_FUN_000530ec, puVar5 == (undefined1 *)0x73524742)) ||\n           (((pcVar8 = (code *)PTR_FUN_000530f0, puVar5 == (undefined1 *)0x69434350 ||\n             (pcVar8 = (code *)PTR_FUN_000530f4, puVar5 == (undefined1 *)0x73504c54)) ||\n            ((pcVar8 = (code *)PTR_FUN_00053110, puVar5 == (undefined1 *)0x74455874 ||\n             ((pcVar8 = (code *)PTR_FUN_00053114, puVar5 == (undefined1 *)0x74494d45 ||\n              (pcVar8 = (code *)PTR_FUN_000530f8, puVar5 == (undefined1 *)0x74524e53)))))))" (parenthesized_expression "((pcVar8 = (code *)PTR_FUN_00053104, puVar5 == &DAT_70485973 ||\n             (pcVar8 = (code *)PTR_FUN_000530e4, puVar5 == (undefined1 *)0x73424954)) ||\n            (pcVar8 = (code *)PTR_FUN_000530ec, puVar5 == (undefined1 *)0x73524742))" ( (binary_expression "(pcVar8 = (code *)PTR_FUN_00053104, puVar5 == &DAT_70485973 ||\n             (pcVar8 = (code *)PTR_FUN_000530e4, puVar5 == (undefined1 *)0x73424954)) ||\n            (pcVar8 = (code *)PTR_FUN_000530ec, puVar5 == (undefined1 *)0x73524742)" (parenthesized_expression "(pcVar8 = (code *)PTR_FUN_00053104, puVar5 == &DAT_70485973 ||\n             (pcVar8 = (code *)PTR_FUN_000530e4, puVar5 == (undefined1 *)0x73424954))" ( (comma_expression "pcVar8 = (code *)PTR_FUN_00053104, puVar5 == &DAT_70485973 ||\n             (pcVar8 = (code *)PTR_FUN_000530e4, puVar5 == (undefined1 *)0x73424954)" (assignment_expression "pcVar8 = (code *)PTR_FUN_00053104" identifier = (cast_expression "(code *)PTR_FUN_00053104" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , (binary_expression "puVar5 == &DAT_70485973 ||\n             (pcVar8 = (code *)PTR_FUN_000530e4, puVar5 == (undefined1 *)0x73424954)" (binary_expression "puVar5 == &DAT_70485973" identifier == (pointer_expression "&DAT_70485973" & identifier)) || (parenthesized_expression "(pcVar8 = (code *)PTR_FUN_000530e4, puVar5 == (undefined1 *)0x73424954)" ( (comma_expression "pcVar8 = (code *)PTR_FUN_000530e4, puVar5 == (undefined1 *)0x73424954" (assignment_expression "pcVar8 = (code *)PTR_FUN_000530e4" identifier = (cast_expression "(code *)PTR_FUN_000530e4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , (binary_expression "puVar5 == (undefined1 *)0x73424954" identifier == (cast_expression "(undefined1 *)0x73424954" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) )))) )) || (parenthesized_expression "(pcVar8 = (code *)PTR_FUN_000530ec, puVar5 == (undefined1 *)0x73524742)" ( (comma_expression "pcVar8 = (code *)PTR_FUN_000530ec, puVar5 == (undefined1 *)0x73524742" (assignment_expression "pcVar8 = (code *)PTR_FUN_000530ec" identifier = (cast_expression "(code *)PTR_FUN_000530ec" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , (binary_expression "puVar5 == (undefined1 *)0x73524742" identifier == (cast_expression "(undefined1 *)0x73524742" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) ))) )) || (parenthesized_expression "(((pcVar8 = (code *)PTR_FUN_000530f0, puVar5 == (undefined1 *)0x69434350 ||\n             (pcVar8 = (code *)PTR_FUN_000530f4, puVar5 == (undefined1 *)0x73504c54)) ||\n            ((pcVar8 = (code *)PTR_FUN_00053110, puVar5 == (undefined1 *)0x74455874 ||\n             ((pcVar8 = (code *)PTR_FUN_00053114, puVar5 == (undefined1 *)0x74494d45 ||\n              (pcVar8 = (code *)PTR_FUN_000530f8, puVar5 == (undefined1 *)0x74524e53)))))))" ( (parenthesized_expression "((pcVar8 = (code *)PTR_FUN_000530f0, puVar5 == (undefined1 *)0x69434350 ||\n             (pcVar8 = (code *)PTR_FUN_000530f4, puVar5 == (undefined1 *)0x73504c54)) ||\n            ((pcVar8 = (code *)PTR_FUN_00053110, puVar5 == (undefined1 *)0x74455874 ||\n             ((pcVar8 = (code *)PTR_FUN_00053114, puVar5 == (undefined1 *)0x74494d45 ||\n              (pcVar8 = (code *)PTR_FUN_000530f8, puVar5 == (undefined1 *)0x74524e53))))))" ( (binary_expression "(pcVar8 = (code *)PTR_FUN_000530f0, puVar5 == (undefined1 *)0x69434350 ||\n             (pcVar8 = (code *)PTR_FUN_000530f4, puVar5 == (undefined1 *)0x73504c54)) ||\n            ((pcVar8 = (code *)PTR_FUN_00053110, puVar5 == (undefined1 *)0x74455874 ||\n             ((pcVar8 = (code *)PTR_FUN_00053114, puVar5 == (undefined1 *)0x74494d45 ||\n              (pcVar8 = (code *)PTR_FUN_000530f8, puVar5 == (undefined1 *)0x74524e53)))))" (parenthesized_expression "(pcVar8 = (code *)PTR_FUN_000530f0, puVar5 == (undefined1 *)0x69434350 ||\n             (pcVar8 = (code *)PTR_FUN_000530f4, puVar5 == (undefined1 *)0x73504c54))" ( (comma_expression "pcVar8 = (code *)PTR_FUN_000530f0, puVar5 == (undefined1 *)0x69434350 ||\n             (pcVar8 = (code *)PTR_FUN_000530f4, puVar5 == (undefined1 *)0x73504c54)" (assignment_expression "pcVar8 = (code *)PTR_FUN_000530f0" identifier = (cast_expression "(code *)PTR_FUN_000530f0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , (binary_expression "puVar5 == (undefined1 *)0x69434350 ||\n             (pcVar8 = (code *)PTR_FUN_000530f4, puVar5 == (undefined1 *)0x73504c54)" (binary_expression "puVar5 == (undefined1 *)0x69434350" identifier == (cast_expression "(undefined1 *)0x69434350" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) || (parenthesized_expression "(pcVar8 = (code *)PTR_FUN_000530f4, puVar5 == (undefined1 *)0x73504c54)" ( (comma_expression "pcVar8 = (code *)PTR_FUN_000530f4, puVar5 == (undefined1 *)0x73504c54" (assignment_expression "pcVar8 = (code *)PTR_FUN_000530f4" identifier = (cast_expression "(code *)PTR_FUN_000530f4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , (binary_expression "puVar5 == (undefined1 *)0x73504c54" identifier == (cast_expression "(undefined1 *)0x73504c54" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) )))) )) || (parenthesized_expression "((pcVar8 = (code *)PTR_FUN_00053110, puVar5 == (undefined1 *)0x74455874 ||\n             ((pcVar8 = (code *)PTR_FUN_00053114, puVar5 == (undefined1 *)0x74494d45 ||\n              (pcVar8 = (code *)PTR_FUN_000530f8, puVar5 == (undefined1 *)0x74524e53)))))" ( (parenthesized_expression "(pcVar8 = (code *)PTR_FUN_00053110, puVar5 == (undefined1 *)0x74455874 ||\n             ((pcVar8 = (code *)PTR_FUN_00053114, puVar5 == (undefined1 *)0x74494d45 ||\n              (pcVar8 = (code *)PTR_FUN_000530f8, puVar5 == (undefined1 *)0x74524e53))))" ( (comma_expression "pcVar8 = (code *)PTR_FUN_00053110, puVar5 == (undefined1 *)0x74455874 ||\n             ((pcVar8 = (code *)PTR_FUN_00053114, puVar5 == (undefined1 *)0x74494d45 ||\n              (pcVar8 = (code *)PTR_FUN_000530f8, puVar5 == (undefined1 *)0x74524e53)))" (assignment_expression "pcVar8 = (code *)PTR_FUN_00053110" identifier = (cast_expression "(code *)PTR_FUN_00053110" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , (binary_expression "puVar5 == (undefined1 *)0x74455874 ||\n             ((pcVar8 = (code *)PTR_FUN_00053114, puVar5 == (undefined1 *)0x74494d45 ||\n              (pcVar8 = (code *)PTR_FUN_000530f8, puVar5 == (undefined1 *)0x74524e53)))" (binary_expression "puVar5 == (undefined1 *)0x74455874" identifier == (cast_expression "(undefined1 *)0x74455874" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) || (parenthesized_expression "((pcVar8 = (code *)PTR_FUN_00053114, puVar5 == (undefined1 *)0x74494d45 ||\n              (pcVar8 = (code *)PTR_FUN_000530f8, puVar5 == (undefined1 *)0x74524e53)))" ( (parenthesized_expression "(pcVar8 = (code *)PTR_FUN_00053114, puVar5 == (undefined1 *)0x74494d45 ||\n              (pcVar8 = (code *)PTR_FUN_000530f8, puVar5 == (undefined1 *)0x74524e53))" ( (comma_expression "pcVar8 = (code *)PTR_FUN_00053114, puVar5 == (undefined1 *)0x74494d45 ||\n              (pcVar8 = (code *)PTR_FUN_000530f8, puVar5 == (undefined1 *)0x74524e53)" (assignment_expression "pcVar8 = (code *)PTR_FUN_00053114" identifier = (cast_expression "(code *)PTR_FUN_00053114" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , (binary_expression "puVar5 == (undefined1 *)0x74494d45 ||\n              (pcVar8 = (code *)PTR_FUN_000530f8, puVar5 == (undefined1 *)0x74524e53)" (binary_expression "puVar5 == (undefined1 *)0x74494d45" identifier == (cast_expression "(undefined1 *)0x74494d45" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) || (parenthesized_expression "(pcVar8 = (code *)PTR_FUN_000530f8, puVar5 == (undefined1 *)0x74524e53)" ( (comma_expression "pcVar8 = (code *)PTR_FUN_000530f8, puVar5 == (undefined1 *)0x74524e53" (assignment_expression "pcVar8 = (code *)PTR_FUN_000530f8" identifier = (cast_expression "(code *)PTR_FUN_000530f8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , (binary_expression "puVar5 == (undefined1 *)0x74524e53" identifier == (cast_expression "(undefined1 *)0x74524e53" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) )))) )) )))) )) ))) )) ))) )) || (parenthesized_expression "((pcVar8 = (code *)PTR_FUN_0005311c, puVar5 == (undefined1 *)0x7a545874 ||\n           (iVar3 = 0, pcVar8 = (code *)PTR_FUN_00053124, puVar5 == (undefined1 *)0x69545874)))" ( (parenthesized_expression "(pcVar8 = (code *)PTR_FUN_0005311c, puVar5 == (undefined1 *)0x7a545874 ||\n           (iVar3 = 0, pcVar8 = (code *)PTR_FUN_00053124, puVar5 == (undefined1 *)0x69545874))" ( (comma_expression "pcVar8 = (code *)PTR_FUN_0005311c, puVar5 == (undefined1 *)0x7a545874 ||\n           (iVar3 = 0, pcVar8 = (code *)PTR_FUN_00053124, puVar5 == (undefined1 *)0x69545874)" (assignment_expression "pcVar8 = (code *)PTR_FUN_0005311c" identifier = (cast_expression "(code *)PTR_FUN_0005311c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , (binary_expression "puVar5 == (undefined1 *)0x7a545874 ||\n           (iVar3 = 0, pcVar8 = (code *)PTR_FUN_00053124, puVar5 == (undefined1 *)0x69545874)" (binary_expression "puVar5 == (undefined1 *)0x7a545874" identifier == (cast_expression "(undefined1 *)0x7a545874" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) || (parenthesized_expression "(iVar3 = 0, pcVar8 = (code *)PTR_FUN_00053124, puVar5 == (undefined1 *)0x69545874)" ( (comma_expression "iVar3 = 0, pcVar8 = (code *)PTR_FUN_00053124, puVar5 == (undefined1 *)0x69545874" (assignment_expression "iVar3 = 0" identifier = number_literal) , (comma_expression "pcVar8 = (code *)PTR_FUN_00053124, puVar5 == (undefined1 *)0x69545874" (assignment_expression "pcVar8 = (code *)PTR_FUN_00053124" identifier = (cast_expression "(code *)PTR_FUN_00053124" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , (binary_expression "puVar5 == (undefined1 *)0x69545874" identifier == (cast_expression "(undefined1 *)0x69545874" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)))) )))) )) ))) )) ))) )) (goto_statement "goto LAB_00023564;" goto statement_identifier ;)) (labeled_statement "LAB_00023394:\n      FUN_0002f630(param_1,param_2,iVar2,iVar3);" statement_identifier : (expression_statement "FUN_0002f630(param_1,param_2,iVar2,iVar3);" (call_expression "FUN_0002f630(param_1,param_2,iVar2,iVar3)" identifier (argument_list "(param_1,param_2,iVar2,iVar3)" ( identifier , identifier , identifier , identifier ))) ;)) (labeled_statement "LAB_000233a8:\n      uVar4 = *(uint *)(param_1 + 0x124);" statement_identifier : (expression_statement "uVar4 = *(uint *)(param_1 + 0x124);" (assignment_expression "uVar4 = *(uint *)(param_1 + 0x124)" identifier = (pointer_expression "*(uint *)(param_1 + 0x124)" * (cast_expression "(uint *)(param_1 + 0x124)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x124)" ( (binary_expression "param_1 + 0x124" identifier + number_literal) ))))) ;)) (goto_statement "goto LAB_000233ac;" goto statement_identifier ;) })) (if_statement "if (puVar5 == (undefined1 *)0x49444154) {\n      if ((iVar2 == 0) || ((*(uint *)(param_1 + 0x128) & 8) != 0)) {\n        if ((*(uint *)(param_1 + 0x124) & 0x2000) != 0) {\n          (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar6);\n        }\n      }\n      else {\n        (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar6);\n      }\n      goto LAB_00023394;\n    }" if (parenthesized_expression "(puVar5 == (undefined1 *)0x49444154)" ( (binary_expression "puVar5 == (undefined1 *)0x49444154" identifier == (cast_expression "(undefined1 *)0x49444154" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      if ((iVar2 == 0) || ((*(uint *)(param_1 + 0x128) & 8) != 0)) {\n        if ((*(uint *)(param_1 + 0x124) & 0x2000) != 0) {\n          (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar6);\n        }\n      }\n      else {\n        (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar6);\n      }\n      goto LAB_00023394;\n    }" { (if_statement "if ((iVar2 == 0) || ((*(uint *)(param_1 + 0x128) & 8) != 0)) {\n        if ((*(uint *)(param_1 + 0x124) & 0x2000) != 0) {\n          (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar6);\n        }\n      }\n      else {\n        (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar6);\n      }" if (parenthesized_expression "((iVar2 == 0) || ((*(uint *)(param_1 + 0x128) & 8) != 0))" ( (binary_expression "(iVar2 == 0) || ((*(uint *)(param_1 + 0x128) & 8) != 0)" (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) || (parenthesized_expression "((*(uint *)(param_1 + 0x128) & 8) != 0)" ( (binary_expression "(*(uint *)(param_1 + 0x128) & 8) != 0" (parenthesized_expression "(*(uint *)(param_1 + 0x128) & 8)" ( (binary_expression "*(uint *)(param_1 + 0x128) & 8" (pointer_expression "*(uint *)(param_1 + 0x128)" * (cast_expression "(uint *)(param_1 + 0x128)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x128)" ( (binary_expression "param_1 + 0x128" identifier + number_literal) )))) & number_literal) )) != number_literal) ))) )) (compound_statement "{\n        if ((*(uint *)(param_1 + 0x124) & 0x2000) != 0) {\n          (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar6);\n        }\n      }" { (if_statement "if ((*(uint *)(param_1 + 0x124) & 0x2000) != 0) {\n          (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar6);\n        }" if (parenthesized_expression "((*(uint *)(param_1 + 0x124) & 0x2000) != 0)" ( (binary_expression "(*(uint *)(param_1 + 0x124) & 0x2000) != 0" (parenthesized_expression "(*(uint *)(param_1 + 0x124) & 0x2000)" ( (binary_expression "*(uint *)(param_1 + 0x124) & 0x2000" (pointer_expression "*(uint *)(param_1 + 0x124)" * (cast_expression "(uint *)(param_1 + 0x124)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x124)" ( (binary_expression "param_1 + 0x124" identifier + number_literal) )))) & number_literal) )) != number_literal) )) (compound_statement "{\n          (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar6);\n        }" { (expression_statement "(*(code *)PTR_png_benign_error_000533b8)(param_1,puVar6);" (call_expression "(*(code *)PTR_png_benign_error_000533b8)(param_1,puVar6)" (parenthesized_expression "(*(code *)PTR_png_benign_error_000533b8)" ( (pointer_expression "*(code *)PTR_png_benign_error_000533b8" * (cast_expression "(code *)PTR_png_benign_error_000533b8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_1,puVar6)" ( identifier , identifier ))) ;) })) }) (else_clause "else {\n        (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar6);\n      }" else (compound_statement "{\n        (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar6);\n      }" { (expression_statement "(*(code *)PTR_png_benign_error_000533b8)(param_1,puVar6);" (call_expression "(*(code *)PTR_png_benign_error_000533b8)(param_1,puVar6)" (parenthesized_expression "(*(code *)PTR_png_benign_error_000533b8)" ( (pointer_expression "*(code *)PTR_png_benign_error_000533b8" * (cast_expression "(code *)PTR_png_benign_error_000533b8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_1,puVar6)" ( identifier , identifier ))) ;) }))) (goto_statement "goto LAB_00023394;" goto statement_identifier ;) })) (expression_statement "FUN_0002f630(param_1,param_2,iVar2,iVar3);" (call_expression "FUN_0002f630(param_1,param_2,iVar2,iVar3)" identifier (argument_list "(param_1,param_2,iVar2,iVar3)" ( identifier , identifier , identifier , identifier ))) ;) (if_statement "if (puVar5 != (undefined1 *)0x504c5445) goto LAB_000233a8;" if (parenthesized_expression "(puVar5 != (undefined1 *)0x504c5445)" ( (binary_expression "puVar5 != (undefined1 *)0x504c5445" identifier != (cast_expression "(undefined1 *)0x504c5445" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000233a8;" goto statement_identifier ;)) (expression_statement "uVar4 = *(uint *)(param_1 + 0x124);" (assignment_expression "uVar4 = *(uint *)(param_1 + 0x124)" identifier = (pointer_expression "*(uint *)(param_1 + 0x124)" * (cast_expression "(uint *)(param_1 + 0x124)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x124)" ( (binary_expression "param_1 + 0x124" identifier + number_literal) ))))) ;) (expression_statement "*(uint *)(param_1 + 0x124) = uVar4 | 2;" (assignment_expression "*(uint *)(param_1 + 0x124) = uVar4 | 2" (pointer_expression "*(uint *)(param_1 + 0x124)" * (cast_expression "(uint *)(param_1 + 0x124)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x124)" ( (binary_expression "param_1 + 0x124" identifier + number_literal) )))) = (binary_expression "uVar4 | 2" identifier | number_literal)) ;) (if_statement "if ((uVar4 & 0x10) != 0) {\n      return;\n    }" if (parenthesized_expression "((uVar4 & 0x10) != 0)" ( (binary_expression "(uVar4 & 0x10) != 0" (parenthesized_expression "(uVar4 & 0x10)" ( (binary_expression "uVar4 & 0x10" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n      return;\n    }" { (return_statement "return;" return ;) })) }) while (parenthesized_expression "( true )" ( true )) ;) })))
(translation_unit "void png_read_end(png_structrp png_ptr,png_inforp info_ptr)\n\n{\n  ushort uVar1;\n  int iVar2;\n  png_uint_32 skip;\n  uint uVar3;\n  undefined1 *chunk_name;\n  undefined *puVar4;\n  undefined *puVar5;\n  code *pcVar6;\n  \n  if (png_ptr == (png_structrp)0x0) {\n    return;\n  }\n  iVar2 = png_chunk_unknown_handling(png_ptr,0x49444154);\n  if (iVar2 == 0) {\n    png_read_finish_IDAT(png_ptr);\n    if (png_ptr->color_type != '\x03') goto LAB_0002327c;\n    uVar1 = png_ptr->num_palette;\n  }\n  else {\n    if (png_ptr->color_type != '\x03') goto LAB_0002327c;\n    uVar1 = png_ptr->num_palette;\n  }\n  if ((int)(uint)uVar1 < png_ptr->num_palette_max) {\n    (*(code *)PTR_png_benign_error_000533b8)(png_ptr,PTR_s_nt_0005301c + -0x1f0);\n  }\nLAB_0002327c:\n  puVar5 = PTR_s_nt_0005301c + -0x1ac;\n  puVar4 = PTR_s_nt_0005301c + -0x1c4;\n  do {\n    while( true ) {\n      skip = png_read_chunk_header(png_ptr);\n      chunk_name = (undefined1 *)png_ptr->chunk_name;\n      if ((chunk_name == (undefined1 *)0x49444154) ||\n         ((png_ptr->mode = png_ptr->mode | 0x2000, pcVar6 = (code *)PTR_png_handle_IEND_000530b8,\n          chunk_name != (undefined1 *)0x49454e44 &&\n          (pcVar6 = (code *)PTR_png_handle_IHDR_000530ac, chunk_name != &DAT_49484452)))) break;\nLAB_00023564:\n      (*pcVar6)(png_ptr,info_ptr,skip);\n      uVar3 = png_ptr->mode;\nLAB_000233ac:\n      if ((uVar3 & 0x10) != 0) {\n        return;\n      }\n    }\n    if (info_ptr == (png_inforp)0x0) {\nLAB_0002340c:\n      png_crc_finish(png_ptr,skip);\n      uVar3 = png_ptr->mode;\n      goto LAB_000233ac;\n    }\n    iVar2 = png_chunk_unknown_handling(png_ptr,(png_uint_32)chunk_name);\n    if (iVar2 == 0) {\n      if (chunk_name == (undefined1 *)0x49444154) {\n        if ((skip == 0) || ((png_ptr->flags & 8) != 0)) {\n          if ((png_ptr->mode & 0x2000) != 0) {\n            (*(code *)PTR_png_benign_error_000533b8)(png_ptr,puVar5);\n          }\n        }\n        else {\n          (*(code *)PTR_png_benign_error_000533b8)(png_ptr,puVar5);\n        }\n        goto LAB_0002340c;\n      }\n      pcVar6 = (code *)PTR_png_handle_PLTE_000530dc;\n      if ((((((chunk_name == (undefined1 *)0x504c5445) ||\n             (pcVar6 = (code *)PTR_png_handle_bKGD_000530fc, chunk_name == &DAT_624b4744)) ||\n            (pcVar6 = (code *)PTR_png_handle_cHRM_000530e8, chunk_name == &DAT_6348524d)) ||\n           ((pcVar6 = (code *)PTR_png_handle_eXIf_00053180, chunk_name == (undefined1 *)0x65584966\n            || (pcVar6 = (code *)PTR_png_handle_gAMA_000530e0,\n               chunk_name == (undefined1 *)0x67414d41)))) ||\n          (((pcVar6 = (code *)PTR_png_handle_hIST_00053100, chunk_name == (undefined1 *)0x68495354\n            || ((pcVar6 = (code *)PTR_png_handle_oFFs_00053108, chunk_name == &DAT_6f464673 ||\n                (pcVar6 = (code *)PTR_png_handle_pCAL_0005310c,\n                chunk_name == (undefined1 *)0x7043414c)))) ||\n           (pcVar6 = (code *)PTR_png_handle_sCAL_00053118, chunk_name == (undefined1 *)0x7343414c)))\n          ) || (((((pcVar6 = (code *)PTR_png_handle_pHYs_00053104, chunk_name == &DAT_70485973 ||\n                   (pcVar6 = (code *)PTR_png_handle_sBIT_000530e4,\n                   chunk_name == (undefined1 *)0x73424954)) ||\n                  (pcVar6 = (code *)PTR_png_handle_sRGB_000530ec, chunk_name == &DAT_73524742)) ||\n                 (((pcVar6 = (code *)PTR_png_handle_iCCP_000530f0,\n                   chunk_name == (undefined1 *)0x69434350 ||\n                   (pcVar6 = (code *)PTR_png_handle_sPLT_000530f4,\n                   chunk_name == (undefined1 *)0x73504c54)) ||\n                  ((pcVar6 = (code *)PTR_png_handle_tEXt_00053110,\n                   chunk_name == (undefined1 *)0x74455874 ||\n                   ((pcVar6 = (code *)PTR_png_handle_tIME_00053114,\n                    chunk_name == (undefined1 *)0x74494d45 ||\n                    (pcVar6 = (code *)PTR_png_handle_tRNS_000530f8,\n                    chunk_name == (undefined1 *)0x74524e53)))))))) ||\n                ((pcVar6 = (code *)PTR_png_handle_zTXt_0005311c,\n                 chunk_name == (undefined1 *)0x7a545874 ||\n                 (iVar2 = 0, pcVar6 = (code *)PTR_png_handle_iTXt_00053124,\n                 chunk_name == (undefined1 *)0x69545874)))))) goto LAB_00023564;\nLAB_00023394:\n      png_handle_unknown(png_ptr,info_ptr,skip,iVar2);\nLAB_000233a8:\n      uVar3 = png_ptr->mode;\n      goto LAB_000233ac;\n    }\n    if (chunk_name == (undefined1 *)0x49444154) {\n      if ((skip == 0) || ((png_ptr->flags & 8) != 0)) {\n        if ((png_ptr->mode & 0x2000) != 0) {\n          (*(code *)PTR_png_benign_error_000533b8)(png_ptr,puVar4);\n        }\n      }\n      else {\n        (*(code *)PTR_png_benign_error_000533b8)(png_ptr,puVar4);\n      }\n      goto LAB_00023394;\n    }\n    png_handle_unknown(png_ptr,info_ptr,skip,iVar2);\n    if (chunk_name != (undefined1 *)0x504c5445) goto LAB_000233a8;\n    uVar3 = png_ptr->mode;\n    png_ptr->mode = uVar3 | 2;\n    if ((uVar3 & 0x10) != 0) {\n      return;\n    }\n  } while( true );\n}\n\n" (function_definition "void png_read_end(png_structrp png_ptr,png_inforp info_ptr)\n\n{\n  ushort uVar1;\n  int iVar2;\n  png_uint_32 skip;\n  uint uVar3;\n  undefined1 *chunk_name;\n  undefined *puVar4;\n  undefined *puVar5;\n  code *pcVar6;\n  \n  if (png_ptr == (png_structrp)0x0) {\n    return;\n  }\n  iVar2 = png_chunk_unknown_handling(png_ptr,0x49444154);\n  if (iVar2 == 0) {\n    png_read_finish_IDAT(png_ptr);\n    if (png_ptr->color_type != '\x03') goto LAB_0002327c;\n    uVar1 = png_ptr->num_palette;\n  }\n  else {\n    if (png_ptr->color_type != '\x03') goto LAB_0002327c;\n    uVar1 = png_ptr->num_palette;\n  }\n  if ((int)(uint)uVar1 < png_ptr->num_palette_max) {\n    (*(code *)PTR_png_benign_error_000533b8)(png_ptr,PTR_s_nt_0005301c + -0x1f0);\n  }\nLAB_0002327c:\n  puVar5 = PTR_s_nt_0005301c + -0x1ac;\n  puVar4 = PTR_s_nt_0005301c + -0x1c4;\n  do {\n    while( true ) {\n      skip = png_read_chunk_header(png_ptr);\n      chunk_name = (undefined1 *)png_ptr->chunk_name;\n      if ((chunk_name == (undefined1 *)0x49444154) ||\n         ((png_ptr->mode = png_ptr->mode | 0x2000, pcVar6 = (code *)PTR_png_handle_IEND_000530b8,\n          chunk_name != (undefined1 *)0x49454e44 &&\n          (pcVar6 = (code *)PTR_png_handle_IHDR_000530ac, chunk_name != &DAT_49484452)))) break;\nLAB_00023564:\n      (*pcVar6)(png_ptr,info_ptr,skip);\n      uVar3 = png_ptr->mode;\nLAB_000233ac:\n      if ((uVar3 & 0x10) != 0) {\n        return;\n      }\n    }\n    if (info_ptr == (png_inforp)0x0) {\nLAB_0002340c:\n      png_crc_finish(png_ptr,skip);\n      uVar3 = png_ptr->mode;\n      goto LAB_000233ac;\n    }\n    iVar2 = png_chunk_unknown_handling(png_ptr,(png_uint_32)chunk_name);\n    if (iVar2 == 0) {\n      if (chunk_name == (undefined1 *)0x49444154) {\n        if ((skip == 0) || ((png_ptr->flags & 8) != 0)) {\n          if ((png_ptr->mode & 0x2000) != 0) {\n            (*(code *)PTR_png_benign_error_000533b8)(png_ptr,puVar5);\n          }\n        }\n        else {\n          (*(code *)PTR_png_benign_error_000533b8)(png_ptr,puVar5);\n        }\n        goto LAB_0002340c;\n      }\n      pcVar6 = (code *)PTR_png_handle_PLTE_000530dc;\n      if ((((((chunk_name == (undefined1 *)0x504c5445) ||\n             (pcVar6 = (code *)PTR_png_handle_bKGD_000530fc, chunk_name == &DAT_624b4744)) ||\n            (pcVar6 = (code *)PTR_png_handle_cHRM_000530e8, chunk_name == &DAT_6348524d)) ||\n           ((pcVar6 = (code *)PTR_png_handle_eXIf_00053180, chunk_name == (undefined1 *)0x65584966\n            || (pcVar6 = (code *)PTR_png_handle_gAMA_000530e0,\n               chunk_name == (undefined1 *)0x67414d41)))) ||\n          (((pcVar6 = (code *)PTR_png_handle_hIST_00053100, chunk_name == (undefined1 *)0x68495354\n            || ((pcVar6 = (code *)PTR_png_handle_oFFs_00053108, chunk_name == &DAT_6f464673 ||\n                (pcVar6 = (code *)PTR_png_handle_pCAL_0005310c,\n                chunk_name == (undefined1 *)0x7043414c)))) ||\n           (pcVar6 = (code *)PTR_png_handle_sCAL_00053118, chunk_name == (undefined1 *)0x7343414c)))\n          ) || (((((pcVar6 = (code *)PTR_png_handle_pHYs_00053104, chunk_name == &DAT_70485973 ||\n                   (pcVar6 = (code *)PTR_png_handle_sBIT_000530e4,\n                   chunk_name == (undefined1 *)0x73424954)) ||\n                  (pcVar6 = (code *)PTR_png_handle_sRGB_000530ec, chunk_name == &DAT_73524742)) ||\n                 (((pcVar6 = (code *)PTR_png_handle_iCCP_000530f0,\n                   chunk_name == (undefined1 *)0x69434350 ||\n                   (pcVar6 = (code *)PTR_png_handle_sPLT_000530f4,\n                   chunk_name == (undefined1 *)0x73504c54)) ||\n                  ((pcVar6 = (code *)PTR_png_handle_tEXt_00053110,\n                   chunk_name == (undefined1 *)0x74455874 ||\n                   ((pcVar6 = (code *)PTR_png_handle_tIME_00053114,\n                    chunk_name == (undefined1 *)0x74494d45 ||\n                    (pcVar6 = (code *)PTR_png_handle_tRNS_000530f8,\n                    chunk_name == (undefined1 *)0x74524e53)))))))) ||\n                ((pcVar6 = (code *)PTR_png_handle_zTXt_0005311c,\n                 chunk_name == (undefined1 *)0x7a545874 ||\n                 (iVar2 = 0, pcVar6 = (code *)PTR_png_handle_iTXt_00053124,\n                 chunk_name == (undefined1 *)0x69545874)))))) goto LAB_00023564;\nLAB_00023394:\n      png_handle_unknown(png_ptr,info_ptr,skip,iVar2);\nLAB_000233a8:\n      uVar3 = png_ptr->mode;\n      goto LAB_000233ac;\n    }\n    if (chunk_name == (undefined1 *)0x49444154) {\n      if ((skip == 0) || ((png_ptr->flags & 8) != 0)) {\n        if ((png_ptr->mode & 0x2000) != 0) {\n          (*(code *)PTR_png_benign_error_000533b8)(png_ptr,puVar4);\n        }\n      }\n      else {\n        (*(code *)PTR_png_benign_error_000533b8)(png_ptr,puVar4);\n      }\n      goto LAB_00023394;\n    }\n    png_handle_unknown(png_ptr,info_ptr,skip,iVar2);\n    if (chunk_name != (undefined1 *)0x504c5445) goto LAB_000233a8;\n    uVar3 = png_ptr->mode;\n    png_ptr->mode = uVar3 | 2;\n    if ((uVar3 & 0x10) != 0) {\n      return;\n    }\n  } while( true );\n}" primitive_type (function_declarator "png_read_end(png_structrp png_ptr,png_inforp info_ptr)" identifier (parameter_list "(png_structrp png_ptr,png_inforp info_ptr)" ( (parameter_declaration "png_structrp png_ptr" type_identifier identifier) , (parameter_declaration "png_inforp info_ptr" type_identifier identifier) ))) (compound_statement "{\n  ushort uVar1;\n  int iVar2;\n  png_uint_32 skip;\n  uint uVar3;\n  undefined1 *chunk_name;\n  undefined *puVar4;\n  undefined *puVar5;\n  code *pcVar6;\n  \n  if (png_ptr == (png_structrp)0x0) {\n    return;\n  }\n  iVar2 = png_chunk_unknown_handling(png_ptr,0x49444154);\n  if (iVar2 == 0) {\n    png_read_finish_IDAT(png_ptr);\n    if (png_ptr->color_type != '\x03') goto LAB_0002327c;\n    uVar1 = png_ptr->num_palette;\n  }\n  else {\n    if (png_ptr->color_type != '\x03') goto LAB_0002327c;\n    uVar1 = png_ptr->num_palette;\n  }\n  if ((int)(uint)uVar1 < png_ptr->num_palette_max) {\n    (*(code *)PTR_png_benign_error_000533b8)(png_ptr,PTR_s_nt_0005301c + -0x1f0);\n  }\nLAB_0002327c:\n  puVar5 = PTR_s_nt_0005301c + -0x1ac;\n  puVar4 = PTR_s_nt_0005301c + -0x1c4;\n  do {\n    while( true ) {\n      skip = png_read_chunk_header(png_ptr);\n      chunk_name = (undefined1 *)png_ptr->chunk_name;\n      if ((chunk_name == (undefined1 *)0x49444154) ||\n         ((png_ptr->mode = png_ptr->mode | 0x2000, pcVar6 = (code *)PTR_png_handle_IEND_000530b8,\n          chunk_name != (undefined1 *)0x49454e44 &&\n          (pcVar6 = (code *)PTR_png_handle_IHDR_000530ac, chunk_name != &DAT_49484452)))) break;\nLAB_00023564:\n      (*pcVar6)(png_ptr,info_ptr,skip);\n      uVar3 = png_ptr->mode;\nLAB_000233ac:\n      if ((uVar3 & 0x10) != 0) {\n        return;\n      }\n    }\n    if (info_ptr == (png_inforp)0x0) {\nLAB_0002340c:\n      png_crc_finish(png_ptr,skip);\n      uVar3 = png_ptr->mode;\n      goto LAB_000233ac;\n    }\n    iVar2 = png_chunk_unknown_handling(png_ptr,(png_uint_32)chunk_name);\n    if (iVar2 == 0) {\n      if (chunk_name == (undefined1 *)0x49444154) {\n        if ((skip == 0) || ((png_ptr->flags & 8) != 0)) {\n          if ((png_ptr->mode & 0x2000) != 0) {\n            (*(code *)PTR_png_benign_error_000533b8)(png_ptr,puVar5);\n          }\n        }\n        else {\n          (*(code *)PTR_png_benign_error_000533b8)(png_ptr,puVar5);\n        }\n        goto LAB_0002340c;\n      }\n      pcVar6 = (code *)PTR_png_handle_PLTE_000530dc;\n      if ((((((chunk_name == (undefined1 *)0x504c5445) ||\n             (pcVar6 = (code *)PTR_png_handle_bKGD_000530fc, chunk_name == &DAT_624b4744)) ||\n            (pcVar6 = (code *)PTR_png_handle_cHRM_000530e8, chunk_name == &DAT_6348524d)) ||\n           ((pcVar6 = (code *)PTR_png_handle_eXIf_00053180, chunk_name == (undefined1 *)0x65584966\n            || (pcVar6 = (code *)PTR_png_handle_gAMA_000530e0,\n               chunk_name == (undefined1 *)0x67414d41)))) ||\n          (((pcVar6 = (code *)PTR_png_handle_hIST_00053100, chunk_name == (undefined1 *)0x68495354\n            || ((pcVar6 = (code *)PTR_png_handle_oFFs_00053108, chunk_name == &DAT_6f464673 ||\n                (pcVar6 = (code *)PTR_png_handle_pCAL_0005310c,\n                chunk_name == (undefined1 *)0x7043414c)))) ||\n           (pcVar6 = (code *)PTR_png_handle_sCAL_00053118, chunk_name == (undefined1 *)0x7343414c)))\n          ) || (((((pcVar6 = (code *)PTR_png_handle_pHYs_00053104, chunk_name == &DAT_70485973 ||\n                   (pcVar6 = (code *)PTR_png_handle_sBIT_000530e4,\n                   chunk_name == (undefined1 *)0x73424954)) ||\n                  (pcVar6 = (code *)PTR_png_handle_sRGB_000530ec, chunk_name == &DAT_73524742)) ||\n                 (((pcVar6 = (code *)PTR_png_handle_iCCP_000530f0,\n                   chunk_name == (undefined1 *)0x69434350 ||\n                   (pcVar6 = (code *)PTR_png_handle_sPLT_000530f4,\n                   chunk_name == (undefined1 *)0x73504c54)) ||\n                  ((pcVar6 = (code *)PTR_png_handle_tEXt_00053110,\n                   chunk_name == (undefined1 *)0x74455874 ||\n                   ((pcVar6 = (code *)PTR_png_handle_tIME_00053114,\n                    chunk_name == (undefined1 *)0x74494d45 ||\n                    (pcVar6 = (code *)PTR_png_handle_tRNS_000530f8,\n                    chunk_name == (undefined1 *)0x74524e53)))))))) ||\n                ((pcVar6 = (code *)PTR_png_handle_zTXt_0005311c,\n                 chunk_name == (undefined1 *)0x7a545874 ||\n                 (iVar2 = 0, pcVar6 = (code *)PTR_png_handle_iTXt_00053124,\n                 chunk_name == (undefined1 *)0x69545874)))))) goto LAB_00023564;\nLAB_00023394:\n      png_handle_unknown(png_ptr,info_ptr,skip,iVar2);\nLAB_000233a8:\n      uVar3 = png_ptr->mode;\n      goto LAB_000233ac;\n    }\n    if (chunk_name == (undefined1 *)0x49444154) {\n      if ((skip == 0) || ((png_ptr->flags & 8) != 0)) {\n        if ((png_ptr->mode & 0x2000) != 0) {\n          (*(code *)PTR_png_benign_error_000533b8)(png_ptr,puVar4);\n        }\n      }\n      else {\n        (*(code *)PTR_png_benign_error_000533b8)(png_ptr,puVar4);\n      }\n      goto LAB_00023394;\n    }\n    png_handle_unknown(png_ptr,info_ptr,skip,iVar2);\n    if (chunk_name != (undefined1 *)0x504c5445) goto LAB_000233a8;\n    uVar3 = png_ptr->mode;\n    png_ptr->mode = uVar3 | 2;\n    if ((uVar3 & 0x10) != 0) {\n      return;\n    }\n  } while( true );\n}" { (declaration "ushort uVar1;" type_identifier identifier ;) (declaration "int iVar2;" primitive_type identifier ;) (declaration "png_uint_32 skip;" type_identifier identifier ;) (declaration "uint uVar3;" type_identifier identifier ;) (declaration "undefined1 *chunk_name;" type_identifier (pointer_declarator "*chunk_name" * identifier) ;) (declaration "undefined *puVar4;" type_identifier (pointer_declarator "*puVar4" * identifier) ;) (declaration "undefined *puVar5;" type_identifier (pointer_declarator "*puVar5" * identifier) ;) (declaration "code *pcVar6;" type_identifier (pointer_declarator "*pcVar6" * identifier) ;) (if_statement "if (png_ptr == (png_structrp)0x0) {\n    return;\n  }" if (parenthesized_expression "(png_ptr == (png_structrp)0x0)" ( (binary_expression "png_ptr == (png_structrp)0x0" identifier == (cast_expression "(png_structrp)0x0" ( (type_descriptor "png_structrp" type_identifier) ) number_literal)) )) (compound_statement "{\n    return;\n  }" { (return_statement "return;" return ;) })) (expression_statement "iVar2 = png_chunk_unknown_handling(png_ptr,0x49444154);" (assignment_expression "iVar2 = png_chunk_unknown_handling(png_ptr,0x49444154)" identifier = (call_expression "png_chunk_unknown_handling(png_ptr,0x49444154)" identifier (argument_list "(png_ptr,0x49444154)" ( identifier , number_literal )))) ;) (if_statement "if (iVar2 == 0) {\n    png_read_finish_IDAT(png_ptr);\n    if (png_ptr->color_type != '\x03') goto LAB_0002327c;\n    uVar1 = png_ptr->num_palette;\n  }\n  else {\n    if (png_ptr->color_type != '\x03') goto LAB_0002327c;\n    uVar1 = png_ptr->num_palette;\n  }" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (compound_statement "{\n    png_read_finish_IDAT(png_ptr);\n    if (png_ptr->color_type != '\x03') goto LAB_0002327c;\n    uVar1 = png_ptr->num_palette;\n  }" { (expression_statement "png_read_finish_IDAT(png_ptr);" (call_expression "png_read_finish_IDAT(png_ptr)" identifier (argument_list "(png_ptr)" ( identifier ))) ;) (if_statement "if (png_ptr->color_type != '\x03') goto LAB_0002327c;" if (parenthesized_expression "(png_ptr->color_type != '\x03')" ( (binary_expression "png_ptr->color_type != '\x03'" (field_expression "png_ptr->color_type" identifier -> field_identifier) != (char_literal "'\x03'" ' escape_sequence ')) )) (goto_statement "goto LAB_0002327c;" goto statement_identifier ;)) (expression_statement "uVar1 = png_ptr->num_palette;" (assignment_expression "uVar1 = png_ptr->num_palette" identifier = (field_expression "png_ptr->num_palette" identifier -> field_identifier)) ;) }) (else_clause "else {\n    if (png_ptr->color_type != '\x03') goto LAB_0002327c;\n    uVar1 = png_ptr->num_palette;\n  }" else (compound_statement "{\n    if (png_ptr->color_type != '\x03') goto LAB_0002327c;\n    uVar1 = png_ptr->num_palette;\n  }" { (if_statement "if (png_ptr->color_type != '\x03') goto LAB_0002327c;" if (parenthesized_expression "(png_ptr->color_type != '\x03')" ( (binary_expression "png_ptr->color_type != '\x03'" (field_expression "png_ptr->color_type" identifier -> field_identifier) != (char_literal "'\x03'" ' escape_sequence ')) )) (goto_statement "goto LAB_0002327c;" goto statement_identifier ;)) (expression_statement "uVar1 = png_ptr->num_palette;" (assignment_expression "uVar1 = png_ptr->num_palette" identifier = (field_expression "png_ptr->num_palette" identifier -> field_identifier)) ;) }))) (if_statement "if ((int)(uint)uVar1 < png_ptr->num_palette_max) {\n    (*(code *)PTR_png_benign_error_000533b8)(png_ptr,PTR_s_nt_0005301c + -0x1f0);\n  }" if (parenthesized_expression "((int)(uint)uVar1 < png_ptr->num_palette_max)" ( (binary_expression "(int)(uint)uVar1 < png_ptr->num_palette_max" (cast_expression "(int)(uint)uVar1" ( (type_descriptor "int" primitive_type) ) (cast_expression "(uint)uVar1" ( (type_descriptor "uint" type_identifier) ) identifier)) < (field_expression "png_ptr->num_palette_max" identifier -> field_identifier)) )) (compound_statement "{\n    (*(code *)PTR_png_benign_error_000533b8)(png_ptr,PTR_s_nt_0005301c + -0x1f0);\n  }" { (expression_statement "(*(code *)PTR_png_benign_error_000533b8)(png_ptr,PTR_s_nt_0005301c + -0x1f0);" (call_expression "(*(code *)PTR_png_benign_error_000533b8)(png_ptr,PTR_s_nt_0005301c + -0x1f0)" (parenthesized_expression "(*(code *)PTR_png_benign_error_000533b8)" ( (pointer_expression "*(code *)PTR_png_benign_error_000533b8" * (cast_expression "(code *)PTR_png_benign_error_000533b8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(png_ptr,PTR_s_nt_0005301c + -0x1f0)" ( identifier , (binary_expression "PTR_s_nt_0005301c + -0x1f0" identifier + number_literal) ))) ;) })) (labeled_statement "LAB_0002327c:\n  puVar5 = PTR_s_nt_0005301c + -0x1ac;" statement_identifier : (expression_statement "puVar5 = PTR_s_nt_0005301c + -0x1ac;" (assignment_expression "puVar5 = PTR_s_nt_0005301c + -0x1ac" identifier = (binary_expression "PTR_s_nt_0005301c + -0x1ac" identifier + number_literal)) ;)) (expression_statement "puVar4 = PTR_s_nt_0005301c + -0x1c4;" (assignment_expression "puVar4 = PTR_s_nt_0005301c + -0x1c4" identifier = (binary_expression "PTR_s_nt_0005301c + -0x1c4" identifier + number_literal)) ;) (do_statement "do {\n    while( true ) {\n      skip = png_read_chunk_header(png_ptr);\n      chunk_name = (undefined1 *)png_ptr->chunk_name;\n      if ((chunk_name == (undefined1 *)0x49444154) ||\n         ((png_ptr->mode = png_ptr->mode | 0x2000, pcVar6 = (code *)PTR_png_handle_IEND_000530b8,\n          chunk_name != (undefined1 *)0x49454e44 &&\n          (pcVar6 = (code *)PTR_png_handle_IHDR_000530ac, chunk_name != &DAT_49484452)))) break;\nLAB_00023564:\n      (*pcVar6)(png_ptr,info_ptr,skip);\n      uVar3 = png_ptr->mode;\nLAB_000233ac:\n      if ((uVar3 & 0x10) != 0) {\n        return;\n      }\n    }\n    if (info_ptr == (png_inforp)0x0) {\nLAB_0002340c:\n      png_crc_finish(png_ptr,skip);\n      uVar3 = png_ptr->mode;\n      goto LAB_000233ac;\n    }\n    iVar2 = png_chunk_unknown_handling(png_ptr,(png_uint_32)chunk_name);\n    if (iVar2 == 0) {\n      if (chunk_name == (undefined1 *)0x49444154) {\n        if ((skip == 0) || ((png_ptr->flags & 8) != 0)) {\n          if ((png_ptr->mode & 0x2000) != 0) {\n            (*(code *)PTR_png_benign_error_000533b8)(png_ptr,puVar5);\n          }\n        }\n        else {\n          (*(code *)PTR_png_benign_error_000533b8)(png_ptr,puVar5);\n        }\n        goto LAB_0002340c;\n      }\n      pcVar6 = (code *)PTR_png_handle_PLTE_000530dc;\n      if ((((((chunk_name == (undefined1 *)0x504c5445) ||\n             (pcVar6 = (code *)PTR_png_handle_bKGD_000530fc, chunk_name == &DAT_624b4744)) ||\n            (pcVar6 = (code *)PTR_png_handle_cHRM_000530e8, chunk_name == &DAT_6348524d)) ||\n           ((pcVar6 = (code *)PTR_png_handle_eXIf_00053180, chunk_name == (undefined1 *)0x65584966\n            || (pcVar6 = (code *)PTR_png_handle_gAMA_000530e0,\n               chunk_name == (undefined1 *)0x67414d41)))) ||\n          (((pcVar6 = (code *)PTR_png_handle_hIST_00053100, chunk_name == (undefined1 *)0x68495354\n            || ((pcVar6 = (code *)PTR_png_handle_oFFs_00053108, chunk_name == &DAT_6f464673 ||\n                (pcVar6 = (code *)PTR_png_handle_pCAL_0005310c,\n                chunk_name == (undefined1 *)0x7043414c)))) ||\n           (pcVar6 = (code *)PTR_png_handle_sCAL_00053118, chunk_name == (undefined1 *)0x7343414c)))\n          ) || (((((pcVar6 = (code *)PTR_png_handle_pHYs_00053104, chunk_name == &DAT_70485973 ||\n                   (pcVar6 = (code *)PTR_png_handle_sBIT_000530e4,\n                   chunk_name == (undefined1 *)0x73424954)) ||\n                  (pcVar6 = (code *)PTR_png_handle_sRGB_000530ec, chunk_name == &DAT_73524742)) ||\n                 (((pcVar6 = (code *)PTR_png_handle_iCCP_000530f0,\n                   chunk_name == (undefined1 *)0x69434350 ||\n                   (pcVar6 = (code *)PTR_png_handle_sPLT_000530f4,\n                   chunk_name == (undefined1 *)0x73504c54)) ||\n                  ((pcVar6 = (code *)PTR_png_handle_tEXt_00053110,\n                   chunk_name == (undefined1 *)0x74455874 ||\n                   ((pcVar6 = (code *)PTR_png_handle_tIME_00053114,\n                    chunk_name == (undefined1 *)0x74494d45 ||\n                    (pcVar6 = (code *)PTR_png_handle_tRNS_000530f8,\n                    chunk_name == (undefined1 *)0x74524e53)))))))) ||\n                ((pcVar6 = (code *)PTR_png_handle_zTXt_0005311c,\n                 chunk_name == (undefined1 *)0x7a545874 ||\n                 (iVar2 = 0, pcVar6 = (code *)PTR_png_handle_iTXt_00053124,\n                 chunk_name == (undefined1 *)0x69545874)))))) goto LAB_00023564;\nLAB_00023394:\n      png_handle_unknown(png_ptr,info_ptr,skip,iVar2);\nLAB_000233a8:\n      uVar3 = png_ptr->mode;\n      goto LAB_000233ac;\n    }\n    if (chunk_name == (undefined1 *)0x49444154) {\n      if ((skip == 0) || ((png_ptr->flags & 8) != 0)) {\n        if ((png_ptr->mode & 0x2000) != 0) {\n          (*(code *)PTR_png_benign_error_000533b8)(png_ptr,puVar4);\n        }\n      }\n      else {\n        (*(code *)PTR_png_benign_error_000533b8)(png_ptr,puVar4);\n      }\n      goto LAB_00023394;\n    }\n    png_handle_unknown(png_ptr,info_ptr,skip,iVar2);\n    if (chunk_name != (undefined1 *)0x504c5445) goto LAB_000233a8;\n    uVar3 = png_ptr->mode;\n    png_ptr->mode = uVar3 | 2;\n    if ((uVar3 & 0x10) != 0) {\n      return;\n    }\n  } while( true );" do (compound_statement "{\n    while( true ) {\n      skip = png_read_chunk_header(png_ptr);\n      chunk_name = (undefined1 *)png_ptr->chunk_name;\n      if ((chunk_name == (undefined1 *)0x49444154) ||\n         ((png_ptr->mode = png_ptr->mode | 0x2000, pcVar6 = (code *)PTR_png_handle_IEND_000530b8,\n          chunk_name != (undefined1 *)0x49454e44 &&\n          (pcVar6 = (code *)PTR_png_handle_IHDR_000530ac, chunk_name != &DAT_49484452)))) break;\nLAB_00023564:\n      (*pcVar6)(png_ptr,info_ptr,skip);\n      uVar3 = png_ptr->mode;\nLAB_000233ac:\n      if ((uVar3 & 0x10) != 0) {\n        return;\n      }\n    }\n    if (info_ptr == (png_inforp)0x0) {\nLAB_0002340c:\n      png_crc_finish(png_ptr,skip);\n      uVar3 = png_ptr->mode;\n      goto LAB_000233ac;\n    }\n    iVar2 = png_chunk_unknown_handling(png_ptr,(png_uint_32)chunk_name);\n    if (iVar2 == 0) {\n      if (chunk_name == (undefined1 *)0x49444154) {\n        if ((skip == 0) || ((png_ptr->flags & 8) != 0)) {\n          if ((png_ptr->mode & 0x2000) != 0) {\n            (*(code *)PTR_png_benign_error_000533b8)(png_ptr,puVar5);\n          }\n        }\n        else {\n          (*(code *)PTR_png_benign_error_000533b8)(png_ptr,puVar5);\n        }\n        goto LAB_0002340c;\n      }\n      pcVar6 = (code *)PTR_png_handle_PLTE_000530dc;\n      if ((((((chunk_name == (undefined1 *)0x504c5445) ||\n             (pcVar6 = (code *)PTR_png_handle_bKGD_000530fc, chunk_name == &DAT_624b4744)) ||\n            (pcVar6 = (code *)PTR_png_handle_cHRM_000530e8, chunk_name == &DAT_6348524d)) ||\n           ((pcVar6 = (code *)PTR_png_handle_eXIf_00053180, chunk_name == (undefined1 *)0x65584966\n            || (pcVar6 = (code *)PTR_png_handle_gAMA_000530e0,\n               chunk_name == (undefined1 *)0x67414d41)))) ||\n          (((pcVar6 = (code *)PTR_png_handle_hIST_00053100, chunk_name == (undefined1 *)0x68495354\n            || ((pcVar6 = (code *)PTR_png_handle_oFFs_00053108, chunk_name == &DAT_6f464673 ||\n                (pcVar6 = (code *)PTR_png_handle_pCAL_0005310c,\n                chunk_name == (undefined1 *)0x7043414c)))) ||\n           (pcVar6 = (code *)PTR_png_handle_sCAL_00053118, chunk_name == (undefined1 *)0x7343414c)))\n          ) || (((((pcVar6 = (code *)PTR_png_handle_pHYs_00053104, chunk_name == &DAT_70485973 ||\n                   (pcVar6 = (code *)PTR_png_handle_sBIT_000530e4,\n                   chunk_name == (undefined1 *)0x73424954)) ||\n                  (pcVar6 = (code *)PTR_png_handle_sRGB_000530ec, chunk_name == &DAT_73524742)) ||\n                 (((pcVar6 = (code *)PTR_png_handle_iCCP_000530f0,\n                   chunk_name == (undefined1 *)0x69434350 ||\n                   (pcVar6 = (code *)PTR_png_handle_sPLT_000530f4,\n                   chunk_name == (undefined1 *)0x73504c54)) ||\n                  ((pcVar6 = (code *)PTR_png_handle_tEXt_00053110,\n                   chunk_name == (undefined1 *)0x74455874 ||\n                   ((pcVar6 = (code *)PTR_png_handle_tIME_00053114,\n                    chunk_name == (undefined1 *)0x74494d45 ||\n                    (pcVar6 = (code *)PTR_png_handle_tRNS_000530f8,\n                    chunk_name == (undefined1 *)0x74524e53)))))))) ||\n                ((pcVar6 = (code *)PTR_png_handle_zTXt_0005311c,\n                 chunk_name == (undefined1 *)0x7a545874 ||\n                 (iVar2 = 0, pcVar6 = (code *)PTR_png_handle_iTXt_00053124,\n                 chunk_name == (undefined1 *)0x69545874)))))) goto LAB_00023564;\nLAB_00023394:\n      png_handle_unknown(png_ptr,info_ptr,skip,iVar2);\nLAB_000233a8:\n      uVar3 = png_ptr->mode;\n      goto LAB_000233ac;\n    }\n    if (chunk_name == (undefined1 *)0x49444154) {\n      if ((skip == 0) || ((png_ptr->flags & 8) != 0)) {\n        if ((png_ptr->mode & 0x2000) != 0) {\n          (*(code *)PTR_png_benign_error_000533b8)(png_ptr,puVar4);\n        }\n      }\n      else {\n        (*(code *)PTR_png_benign_error_000533b8)(png_ptr,puVar4);\n      }\n      goto LAB_00023394;\n    }\n    png_handle_unknown(png_ptr,info_ptr,skip,iVar2);\n    if (chunk_name != (undefined1 *)0x504c5445) goto LAB_000233a8;\n    uVar3 = png_ptr->mode;\n    png_ptr->mode = uVar3 | 2;\n    if ((uVar3 & 0x10) != 0) {\n      return;\n    }\n  }" { (while_statement "while( true ) {\n      skip = png_read_chunk_header(png_ptr);\n      chunk_name = (undefined1 *)png_ptr->chunk_name;\n      if ((chunk_name == (undefined1 *)0x49444154) ||\n         ((png_ptr->mode = png_ptr->mode | 0x2000, pcVar6 = (code *)PTR_png_handle_IEND_000530b8,\n          chunk_name != (undefined1 *)0x49454e44 &&\n          (pcVar6 = (code *)PTR_png_handle_IHDR_000530ac, chunk_name != &DAT_49484452)))) break;\nLAB_00023564:\n      (*pcVar6)(png_ptr,info_ptr,skip);\n      uVar3 = png_ptr->mode;\nLAB_000233ac:\n      if ((uVar3 & 0x10) != 0) {\n        return;\n      }\n    }" while (parenthesized_expression "( true )" ( true )) (compound_statement "{\n      skip = png_read_chunk_header(png_ptr);\n      chunk_name = (undefined1 *)png_ptr->chunk_name;\n      if ((chunk_name == (undefined1 *)0x49444154) ||\n         ((png_ptr->mode = png_ptr->mode | 0x2000, pcVar6 = (code *)PTR_png_handle_IEND_000530b8,\n          chunk_name != (undefined1 *)0x49454e44 &&\n          (pcVar6 = (code *)PTR_png_handle_IHDR_000530ac, chunk_name != &DAT_49484452)))) break;\nLAB_00023564:\n      (*pcVar6)(png_ptr,info_ptr,skip);\n      uVar3 = png_ptr->mode;\nLAB_000233ac:\n      if ((uVar3 & 0x10) != 0) {\n        return;\n      }\n    }" { (expression_statement "skip = png_read_chunk_header(png_ptr);" (assignment_expression "skip = png_read_chunk_header(png_ptr)" identifier = (call_expression "png_read_chunk_header(png_ptr)" identifier (argument_list "(png_ptr)" ( identifier )))) ;) (expression_statement "chunk_name = (undefined1 *)png_ptr->chunk_name;" (assignment_expression "chunk_name = (undefined1 *)png_ptr->chunk_name" identifier = (cast_expression "(undefined1 *)png_ptr->chunk_name" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "png_ptr->chunk_name" identifier -> field_identifier))) ;) (if_statement "if ((chunk_name == (undefined1 *)0x49444154) ||\n         ((png_ptr->mode = png_ptr->mode | 0x2000, pcVar6 = (code *)PTR_png_handle_IEND_000530b8,\n          chunk_name != (undefined1 *)0x49454e44 &&\n          (pcVar6 = (code *)PTR_png_handle_IHDR_000530ac, chunk_name != &DAT_49484452)))) break;" if (parenthesized_expression "((chunk_name == (undefined1 *)0x49444154) ||\n         ((png_ptr->mode = png_ptr->mode | 0x2000, pcVar6 = (code *)PTR_png_handle_IEND_000530b8,\n          chunk_name != (undefined1 *)0x49454e44 &&\n          (pcVar6 = (code *)PTR_png_handle_IHDR_000530ac, chunk_name != &DAT_49484452))))" ( (binary_expression "(chunk_name == (undefined1 *)0x49444154) ||\n         ((png_ptr->mode = png_ptr->mode | 0x2000, pcVar6 = (code *)PTR_png_handle_IEND_000530b8,\n          chunk_name != (undefined1 *)0x49454e44 &&\n          (pcVar6 = (code *)PTR_png_handle_IHDR_000530ac, chunk_name != &DAT_49484452)))" (parenthesized_expression "(chunk_name == (undefined1 *)0x49444154)" ( (binary_expression "chunk_name == (undefined1 *)0x49444154" identifier == (cast_expression "(undefined1 *)0x49444154" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) || (parenthesized_expression "((png_ptr->mode = png_ptr->mode | 0x2000, pcVar6 = (code *)PTR_png_handle_IEND_000530b8,\n          chunk_name != (undefined1 *)0x49454e44 &&\n          (pcVar6 = (code *)PTR_png_handle_IHDR_000530ac, chunk_name != &DAT_49484452)))" ( (parenthesized_expression "(png_ptr->mode = png_ptr->mode | 0x2000, pcVar6 = (code *)PTR_png_handle_IEND_000530b8,\n          chunk_name != (undefined1 *)0x49454e44 &&\n          (pcVar6 = (code *)PTR_png_handle_IHDR_000530ac, chunk_name != &DAT_49484452))" ( (comma_expression "png_ptr->mode = png_ptr->mode | 0x2000, pcVar6 = (code *)PTR_png_handle_IEND_000530b8,\n          chunk_name != (undefined1 *)0x49454e44 &&\n          (pcVar6 = (code *)PTR_png_handle_IHDR_000530ac, chunk_name != &DAT_49484452)" (assignment_expression "png_ptr->mode = png_ptr->mode | 0x2000" (field_expression "png_ptr->mode" identifier -> field_identifier) = (binary_expression "png_ptr->mode | 0x2000" (field_expression "png_ptr->mode" identifier -> field_identifier) | number_literal)) , (comma_expression "pcVar6 = (code *)PTR_png_handle_IEND_000530b8,\n          chunk_name != (undefined1 *)0x49454e44 &&\n          (pcVar6 = (code *)PTR_png_handle_IHDR_000530ac, chunk_name != &DAT_49484452)" (assignment_expression "pcVar6 = (code *)PTR_png_handle_IEND_000530b8" identifier = (cast_expression "(code *)PTR_png_handle_IEND_000530b8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , (binary_expression "chunk_name != (undefined1 *)0x49454e44 &&\n          (pcVar6 = (code *)PTR_png_handle_IHDR_000530ac, chunk_name != &DAT_49484452)" (binary_expression "chunk_name != (undefined1 *)0x49454e44" identifier != (cast_expression "(undefined1 *)0x49454e44" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) && (parenthesized_expression "(pcVar6 = (code *)PTR_png_handle_IHDR_000530ac, chunk_name != &DAT_49484452)" ( (comma_expression "pcVar6 = (code *)PTR_png_handle_IHDR_000530ac, chunk_name != &DAT_49484452" (assignment_expression "pcVar6 = (code *)PTR_png_handle_IHDR_000530ac" identifier = (cast_expression "(code *)PTR_png_handle_IHDR_000530ac" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , (binary_expression "chunk_name != &DAT_49484452" identifier != (pointer_expression "&DAT_49484452" & identifier))) ))))) )) ))) )) (break_statement "break;" break ;)) (labeled_statement "LAB_00023564:\n      (*pcVar6)(png_ptr,info_ptr,skip);" statement_identifier : (expression_statement "(*pcVar6)(png_ptr,info_ptr,skip);" (call_expression "(*pcVar6)(png_ptr,info_ptr,skip)" (parenthesized_expression "(*pcVar6)" ( (pointer_expression "*pcVar6" * identifier) )) (argument_list "(png_ptr,info_ptr,skip)" ( identifier , identifier , identifier ))) ;)) (expression_statement "uVar3 = png_ptr->mode;" (assignment_expression "uVar3 = png_ptr->mode" identifier = (field_expression "png_ptr->mode" identifier -> field_identifier)) ;) (labeled_statement "LAB_000233ac:\n      if ((uVar3 & 0x10) != 0) {\n        return;\n      }" statement_identifier : (if_statement "if ((uVar3 & 0x10) != 0) {\n        return;\n      }" if (parenthesized_expression "((uVar3 & 0x10) != 0)" ( (binary_expression "(uVar3 & 0x10) != 0" (parenthesized_expression "(uVar3 & 0x10)" ( (binary_expression "uVar3 & 0x10" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n        return;\n      }" { (return_statement "return;" return ;) }))) })) (if_statement "if (info_ptr == (png_inforp)0x0) {\nLAB_0002340c:\n      png_crc_finish(png_ptr,skip);\n      uVar3 = png_ptr->mode;\n      goto LAB_000233ac;\n    }" if (parenthesized_expression "(info_ptr == (png_inforp)0x0)" ( (binary_expression "info_ptr == (png_inforp)0x0" identifier == (cast_expression "(png_inforp)0x0" ( (type_descriptor "png_inforp" type_identifier) ) number_literal)) )) (compound_statement "{\nLAB_0002340c:\n      png_crc_finish(png_ptr,skip);\n      uVar3 = png_ptr->mode;\n      goto LAB_000233ac;\n    }" { (labeled_statement "LAB_0002340c:\n      png_crc_finish(png_ptr,skip);" statement_identifier : (expression_statement "png_crc_finish(png_ptr,skip);" (call_expression "png_crc_finish(png_ptr,skip)" identifier (argument_list "(png_ptr,skip)" ( identifier , identifier ))) ;)) (expression_statement "uVar3 = png_ptr->mode;" (assignment_expression "uVar3 = png_ptr->mode" identifier = (field_expression "png_ptr->mode" identifier -> field_identifier)) ;) (goto_statement "goto LAB_000233ac;" goto statement_identifier ;) })) (expression_statement "iVar2 = png_chunk_unknown_handling(png_ptr,(png_uint_32)chunk_name);" (assignment_expression "iVar2 = png_chunk_unknown_handling(png_ptr,(png_uint_32)chunk_name)" identifier = (call_expression "png_chunk_unknown_handling(png_ptr,(png_uint_32)chunk_name)" identifier (argument_list "(png_ptr,(png_uint_32)chunk_name)" ( identifier , (cast_expression "(png_uint_32)chunk_name" ( (type_descriptor "png_uint_32" type_identifier) ) identifier) )))) ;) (if_statement "if (iVar2 == 0) {\n      if (chunk_name == (undefined1 *)0x49444154) {\n        if ((skip == 0) || ((png_ptr->flags & 8) != 0)) {\n          if ((png_ptr->mode & 0x2000) != 0) {\n            (*(code *)PTR_png_benign_error_000533b8)(png_ptr,puVar5);\n          }\n        }\n        else {\n          (*(code *)PTR_png_benign_error_000533b8)(png_ptr,puVar5);\n        }\n        goto LAB_0002340c;\n      }\n      pcVar6 = (code *)PTR_png_handle_PLTE_000530dc;\n      if ((((((chunk_name == (undefined1 *)0x504c5445) ||\n             (pcVar6 = (code *)PTR_png_handle_bKGD_000530fc, chunk_name == &DAT_624b4744)) ||\n            (pcVar6 = (code *)PTR_png_handle_cHRM_000530e8, chunk_name == &DAT_6348524d)) ||\n           ((pcVar6 = (code *)PTR_png_handle_eXIf_00053180, chunk_name == (undefined1 *)0x65584966\n            || (pcVar6 = (code *)PTR_png_handle_gAMA_000530e0,\n               chunk_name == (undefined1 *)0x67414d41)))) ||\n          (((pcVar6 = (code *)PTR_png_handle_hIST_00053100, chunk_name == (undefined1 *)0x68495354\n            || ((pcVar6 = (code *)PTR_png_handle_oFFs_00053108, chunk_name == &DAT_6f464673 ||\n                (pcVar6 = (code *)PTR_png_handle_pCAL_0005310c,\n                chunk_name == (undefined1 *)0x7043414c)))) ||\n           (pcVar6 = (code *)PTR_png_handle_sCAL_00053118, chunk_name == (undefined1 *)0x7343414c)))\n          ) || (((((pcVar6 = (code *)PTR_png_handle_pHYs_00053104, chunk_name == &DAT_70485973 ||\n                   (pcVar6 = (code *)PTR_png_handle_sBIT_000530e4,\n                   chunk_name == (undefined1 *)0x73424954)) ||\n                  (pcVar6 = (code *)PTR_png_handle_sRGB_000530ec, chunk_name == &DAT_73524742)) ||\n                 (((pcVar6 = (code *)PTR_png_handle_iCCP_000530f0,\n                   chunk_name == (undefined1 *)0x69434350 ||\n                   (pcVar6 = (code *)PTR_png_handle_sPLT_000530f4,\n                   chunk_name == (undefined1 *)0x73504c54)) ||\n                  ((pcVar6 = (code *)PTR_png_handle_tEXt_00053110,\n                   chunk_name == (undefined1 *)0x74455874 ||\n                   ((pcVar6 = (code *)PTR_png_handle_tIME_00053114,\n                    chunk_name == (undefined1 *)0x74494d45 ||\n                    (pcVar6 = (code *)PTR_png_handle_tRNS_000530f8,\n                    chunk_name == (undefined1 *)0x74524e53)))))))) ||\n                ((pcVar6 = (code *)PTR_png_handle_zTXt_0005311c,\n                 chunk_name == (undefined1 *)0x7a545874 ||\n                 (iVar2 = 0, pcVar6 = (code *)PTR_png_handle_iTXt_00053124,\n                 chunk_name == (undefined1 *)0x69545874)))))) goto LAB_00023564;\nLAB_00023394:\n      png_handle_unknown(png_ptr,info_ptr,skip,iVar2);\nLAB_000233a8:\n      uVar3 = png_ptr->mode;\n      goto LAB_000233ac;\n    }" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (compound_statement "{\n      if (chunk_name == (undefined1 *)0x49444154) {\n        if ((skip == 0) || ((png_ptr->flags & 8) != 0)) {\n          if ((png_ptr->mode & 0x2000) != 0) {\n            (*(code *)PTR_png_benign_error_000533b8)(png_ptr,puVar5);\n          }\n        }\n        else {\n          (*(code *)PTR_png_benign_error_000533b8)(png_ptr,puVar5);\n        }\n        goto LAB_0002340c;\n      }\n      pcVar6 = (code *)PTR_png_handle_PLTE_000530dc;\n      if ((((((chunk_name == (undefined1 *)0x504c5445) ||\n             (pcVar6 = (code *)PTR_png_handle_bKGD_000530fc, chunk_name == &DAT_624b4744)) ||\n            (pcVar6 = (code *)PTR_png_handle_cHRM_000530e8, chunk_name == &DAT_6348524d)) ||\n           ((pcVar6 = (code *)PTR_png_handle_eXIf_00053180, chunk_name == (undefined1 *)0x65584966\n            || (pcVar6 = (code *)PTR_png_handle_gAMA_000530e0,\n               chunk_name == (undefined1 *)0x67414d41)))) ||\n          (((pcVar6 = (code *)PTR_png_handle_hIST_00053100, chunk_name == (undefined1 *)0x68495354\n            || ((pcVar6 = (code *)PTR_png_handle_oFFs_00053108, chunk_name == &DAT_6f464673 ||\n                (pcVar6 = (code *)PTR_png_handle_pCAL_0005310c,\n                chunk_name == (undefined1 *)0x7043414c)))) ||\n           (pcVar6 = (code *)PTR_png_handle_sCAL_00053118, chunk_name == (undefined1 *)0x7343414c)))\n          ) || (((((pcVar6 = (code *)PTR_png_handle_pHYs_00053104, chunk_name == &DAT_70485973 ||\n                   (pcVar6 = (code *)PTR_png_handle_sBIT_000530e4,\n                   chunk_name == (undefined1 *)0x73424954)) ||\n                  (pcVar6 = (code *)PTR_png_handle_sRGB_000530ec, chunk_name == &DAT_73524742)) ||\n                 (((pcVar6 = (code *)PTR_png_handle_iCCP_000530f0,\n                   chunk_name == (undefined1 *)0x69434350 ||\n                   (pcVar6 = (code *)PTR_png_handle_sPLT_000530f4,\n                   chunk_name == (undefined1 *)0x73504c54)) ||\n                  ((pcVar6 = (code *)PTR_png_handle_tEXt_00053110,\n                   chunk_name == (undefined1 *)0x74455874 ||\n                   ((pcVar6 = (code *)PTR_png_handle_tIME_00053114,\n                    chunk_name == (undefined1 *)0x74494d45 ||\n                    (pcVar6 = (code *)PTR_png_handle_tRNS_000530f8,\n                    chunk_name == (undefined1 *)0x74524e53)))))))) ||\n                ((pcVar6 = (code *)PTR_png_handle_zTXt_0005311c,\n                 chunk_name == (undefined1 *)0x7a545874 ||\n                 (iVar2 = 0, pcVar6 = (code *)PTR_png_handle_iTXt_00053124,\n                 chunk_name == (undefined1 *)0x69545874)))))) goto LAB_00023564;\nLAB_00023394:\n      png_handle_unknown(png_ptr,info_ptr,skip,iVar2);\nLAB_000233a8:\n      uVar3 = png_ptr->mode;\n      goto LAB_000233ac;\n    }" { (if_statement "if (chunk_name == (undefined1 *)0x49444154) {\n        if ((skip == 0) || ((png_ptr->flags & 8) != 0)) {\n          if ((png_ptr->mode & 0x2000) != 0) {\n            (*(code *)PTR_png_benign_error_000533b8)(png_ptr,puVar5);\n          }\n        }\n        else {\n          (*(code *)PTR_png_benign_error_000533b8)(png_ptr,puVar5);\n        }\n        goto LAB_0002340c;\n      }" if (parenthesized_expression "(chunk_name == (undefined1 *)0x49444154)" ( (binary_expression "chunk_name == (undefined1 *)0x49444154" identifier == (cast_expression "(undefined1 *)0x49444154" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        if ((skip == 0) || ((png_ptr->flags & 8) != 0)) {\n          if ((png_ptr->mode & 0x2000) != 0) {\n            (*(code *)PTR_png_benign_error_000533b8)(png_ptr,puVar5);\n          }\n        }\n        else {\n          (*(code *)PTR_png_benign_error_000533b8)(png_ptr,puVar5);\n        }\n        goto LAB_0002340c;\n      }" { (if_statement "if ((skip == 0) || ((png_ptr->flags & 8) != 0)) {\n          if ((png_ptr->mode & 0x2000) != 0) {\n            (*(code *)PTR_png_benign_error_000533b8)(png_ptr,puVar5);\n          }\n        }\n        else {\n          (*(code *)PTR_png_benign_error_000533b8)(png_ptr,puVar5);\n        }" if (parenthesized_expression "((skip == 0) || ((png_ptr->flags & 8) != 0))" ( (binary_expression "(skip == 0) || ((png_ptr->flags & 8) != 0)" (parenthesized_expression "(skip == 0)" ( (binary_expression "skip == 0" identifier == number_literal) )) || (parenthesized_expression "((png_ptr->flags & 8) != 0)" ( (binary_expression "(png_ptr->flags & 8) != 0" (parenthesized_expression "(png_ptr->flags & 8)" ( (binary_expression "png_ptr->flags & 8" (field_expression "png_ptr->flags" identifier -> field_identifier) & number_literal) )) != number_literal) ))) )) (compound_statement "{\n          if ((png_ptr->mode & 0x2000) != 0) {\n            (*(code *)PTR_png_benign_error_000533b8)(png_ptr,puVar5);\n          }\n        }" { (if_statement "if ((png_ptr->mode & 0x2000) != 0) {\n            (*(code *)PTR_png_benign_error_000533b8)(png_ptr,puVar5);\n          }" if (parenthesized_expression "((png_ptr->mode & 0x2000) != 0)" ( (binary_expression "(png_ptr->mode & 0x2000) != 0" (parenthesized_expression "(png_ptr->mode & 0x2000)" ( (binary_expression "png_ptr->mode & 0x2000" (field_expression "png_ptr->mode" identifier -> field_identifier) & number_literal) )) != number_literal) )) (compound_statement "{\n            (*(code *)PTR_png_benign_error_000533b8)(png_ptr,puVar5);\n          }" { (expression_statement "(*(code *)PTR_png_benign_error_000533b8)(png_ptr,puVar5);" (call_expression "(*(code *)PTR_png_benign_error_000533b8)(png_ptr,puVar5)" (parenthesized_expression "(*(code *)PTR_png_benign_error_000533b8)" ( (pointer_expression "*(code *)PTR_png_benign_error_000533b8" * (cast_expression "(code *)PTR_png_benign_error_000533b8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(png_ptr,puVar5)" ( identifier , identifier ))) ;) })) }) (else_clause "else {\n          (*(code *)PTR_png_benign_error_000533b8)(png_ptr,puVar5);\n        }" else (compound_statement "{\n          (*(code *)PTR_png_benign_error_000533b8)(png_ptr,puVar5);\n        }" { (expression_statement "(*(code *)PTR_png_benign_error_000533b8)(png_ptr,puVar5);" (call_expression "(*(code *)PTR_png_benign_error_000533b8)(png_ptr,puVar5)" (parenthesized_expression "(*(code *)PTR_png_benign_error_000533b8)" ( (pointer_expression "*(code *)PTR_png_benign_error_000533b8" * (cast_expression "(code *)PTR_png_benign_error_000533b8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(png_ptr,puVar5)" ( identifier , identifier ))) ;) }))) (goto_statement "goto LAB_0002340c;" goto statement_identifier ;) })) (expression_statement "pcVar6 = (code *)PTR_png_handle_PLTE_000530dc;" (assignment_expression "pcVar6 = (code *)PTR_png_handle_PLTE_000530dc" identifier = (cast_expression "(code *)PTR_png_handle_PLTE_000530dc" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (if_statement "if ((((((chunk_name == (undefined1 *)0x504c5445) ||\n             (pcVar6 = (code *)PTR_png_handle_bKGD_000530fc, chunk_name == &DAT_624b4744)) ||\n            (pcVar6 = (code *)PTR_png_handle_cHRM_000530e8, chunk_name == &DAT_6348524d)) ||\n           ((pcVar6 = (code *)PTR_png_handle_eXIf_00053180, chunk_name == (undefined1 *)0x65584966\n            || (pcVar6 = (code *)PTR_png_handle_gAMA_000530e0,\n               chunk_name == (undefined1 *)0x67414d41)))) ||\n          (((pcVar6 = (code *)PTR_png_handle_hIST_00053100, chunk_name == (undefined1 *)0x68495354\n            || ((pcVar6 = (code *)PTR_png_handle_oFFs_00053108, chunk_name == &DAT_6f464673 ||\n                (pcVar6 = (code *)PTR_png_handle_pCAL_0005310c,\n                chunk_name == (undefined1 *)0x7043414c)))) ||\n           (pcVar6 = (code *)PTR_png_handle_sCAL_00053118, chunk_name == (undefined1 *)0x7343414c)))\n          ) || (((((pcVar6 = (code *)PTR_png_handle_pHYs_00053104, chunk_name == &DAT_70485973 ||\n                   (pcVar6 = (code *)PTR_png_handle_sBIT_000530e4,\n                   chunk_name == (undefined1 *)0x73424954)) ||\n                  (pcVar6 = (code *)PTR_png_handle_sRGB_000530ec, chunk_name == &DAT_73524742)) ||\n                 (((pcVar6 = (code *)PTR_png_handle_iCCP_000530f0,\n                   chunk_name == (undefined1 *)0x69434350 ||\n                   (pcVar6 = (code *)PTR_png_handle_sPLT_000530f4,\n                   chunk_name == (undefined1 *)0x73504c54)) ||\n                  ((pcVar6 = (code *)PTR_png_handle_tEXt_00053110,\n                   chunk_name == (undefined1 *)0x74455874 ||\n                   ((pcVar6 = (code *)PTR_png_handle_tIME_00053114,\n                    chunk_name == (undefined1 *)0x74494d45 ||\n                    (pcVar6 = (code *)PTR_png_handle_tRNS_000530f8,\n                    chunk_name == (undefined1 *)0x74524e53)))))))) ||\n                ((pcVar6 = (code *)PTR_png_handle_zTXt_0005311c,\n                 chunk_name == (undefined1 *)0x7a545874 ||\n                 (iVar2 = 0, pcVar6 = (code *)PTR_png_handle_iTXt_00053124,\n                 chunk_name == (undefined1 *)0x69545874)))))) goto LAB_00023564;" if (parenthesized_expression "((((((chunk_name == (undefined1 *)0x504c5445) ||\n             (pcVar6 = (code *)PTR_png_handle_bKGD_000530fc, chunk_name == &DAT_624b4744)) ||\n            (pcVar6 = (code *)PTR_png_handle_cHRM_000530e8, chunk_name == &DAT_6348524d)) ||\n           ((pcVar6 = (code *)PTR_png_handle_eXIf_00053180, chunk_name == (undefined1 *)0x65584966\n            || (pcVar6 = (code *)PTR_png_handle_gAMA_000530e0,\n               chunk_name == (undefined1 *)0x67414d41)))) ||\n          (((pcVar6 = (code *)PTR_png_handle_hIST_00053100, chunk_name == (undefined1 *)0x68495354\n            || ((pcVar6 = (code *)PTR_png_handle_oFFs_00053108, chunk_name == &DAT_6f464673 ||\n                (pcVar6 = (code *)PTR_png_handle_pCAL_0005310c,\n                chunk_name == (undefined1 *)0x7043414c)))) ||\n           (pcVar6 = (code *)PTR_png_handle_sCAL_00053118, chunk_name == (undefined1 *)0x7343414c)))\n          ) || (((((pcVar6 = (code *)PTR_png_handle_pHYs_00053104, chunk_name == &DAT_70485973 ||\n                   (pcVar6 = (code *)PTR_png_handle_sBIT_000530e4,\n                   chunk_name == (undefined1 *)0x73424954)) ||\n                  (pcVar6 = (code *)PTR_png_handle_sRGB_000530ec, chunk_name == &DAT_73524742)) ||\n                 (((pcVar6 = (code *)PTR_png_handle_iCCP_000530f0,\n                   chunk_name == (undefined1 *)0x69434350 ||\n                   (pcVar6 = (code *)PTR_png_handle_sPLT_000530f4,\n                   chunk_name == (undefined1 *)0x73504c54)) ||\n                  ((pcVar6 = (code *)PTR_png_handle_tEXt_00053110,\n                   chunk_name == (undefined1 *)0x74455874 ||\n                   ((pcVar6 = (code *)PTR_png_handle_tIME_00053114,\n                    chunk_name == (undefined1 *)0x74494d45 ||\n                    (pcVar6 = (code *)PTR_png_handle_tRNS_000530f8,\n                    chunk_name == (undefined1 *)0x74524e53)))))))) ||\n                ((pcVar6 = (code *)PTR_png_handle_zTXt_0005311c,\n                 chunk_name == (undefined1 *)0x7a545874 ||\n                 (iVar2 = 0, pcVar6 = (code *)PTR_png_handle_iTXt_00053124,\n                 chunk_name == (undefined1 *)0x69545874))))))" ( (binary_expression "(((((chunk_name == (undefined1 *)0x504c5445) ||\n             (pcVar6 = (code *)PTR_png_handle_bKGD_000530fc, chunk_name == &DAT_624b4744)) ||\n            (pcVar6 = (code *)PTR_png_handle_cHRM_000530e8, chunk_name == &DAT_6348524d)) ||\n           ((pcVar6 = (code *)PTR_png_handle_eXIf_00053180, chunk_name == (undefined1 *)0x65584966\n            || (pcVar6 = (code *)PTR_png_handle_gAMA_000530e0,\n               chunk_name == (undefined1 *)0x67414d41)))) ||\n          (((pcVar6 = (code *)PTR_png_handle_hIST_00053100, chunk_name == (undefined1 *)0x68495354\n            || ((pcVar6 = (code *)PTR_png_handle_oFFs_00053108, chunk_name == &DAT_6f464673 ||\n                (pcVar6 = (code *)PTR_png_handle_pCAL_0005310c,\n                chunk_name == (undefined1 *)0x7043414c)))) ||\n           (pcVar6 = (code *)PTR_png_handle_sCAL_00053118, chunk_name == (undefined1 *)0x7343414c)))\n          ) || (((((pcVar6 = (code *)PTR_png_handle_pHYs_00053104, chunk_name == &DAT_70485973 ||\n                   (pcVar6 = (code *)PTR_png_handle_sBIT_000530e4,\n                   chunk_name == (undefined1 *)0x73424954)) ||\n                  (pcVar6 = (code *)PTR_png_handle_sRGB_000530ec, chunk_name == &DAT_73524742)) ||\n                 (((pcVar6 = (code *)PTR_png_handle_iCCP_000530f0,\n                   chunk_name == (undefined1 *)0x69434350 ||\n                   (pcVar6 = (code *)PTR_png_handle_sPLT_000530f4,\n                   chunk_name == (undefined1 *)0x73504c54)) ||\n                  ((pcVar6 = (code *)PTR_png_handle_tEXt_00053110,\n                   chunk_name == (undefined1 *)0x74455874 ||\n                   ((pcVar6 = (code *)PTR_png_handle_tIME_00053114,\n                    chunk_name == (undefined1 *)0x74494d45 ||\n                    (pcVar6 = (code *)PTR_png_handle_tRNS_000530f8,\n                    chunk_name == (undefined1 *)0x74524e53)))))))) ||\n                ((pcVar6 = (code *)PTR_png_handle_zTXt_0005311c,\n                 chunk_name == (undefined1 *)0x7a545874 ||\n                 (iVar2 = 0, pcVar6 = (code *)PTR_png_handle_iTXt_00053124,\n                 chunk_name == (undefined1 *)0x69545874)))))" (parenthesized_expression "(((((chunk_name == (undefined1 *)0x504c5445) ||\n             (pcVar6 = (code *)PTR_png_handle_bKGD_000530fc, chunk_name == &DAT_624b4744)) ||\n            (pcVar6 = (code *)PTR_png_handle_cHRM_000530e8, chunk_name == &DAT_6348524d)) ||\n           ((pcVar6 = (code *)PTR_png_handle_eXIf_00053180, chunk_name == (undefined1 *)0x65584966\n            || (pcVar6 = (code *)PTR_png_handle_gAMA_000530e0,\n               chunk_name == (undefined1 *)0x67414d41)))) ||\n          (((pcVar6 = (code *)PTR_png_handle_hIST_00053100, chunk_name == (undefined1 *)0x68495354\n            || ((pcVar6 = (code *)PTR_png_handle_oFFs_00053108, chunk_name == &DAT_6f464673 ||\n                (pcVar6 = (code *)PTR_png_handle_pCAL_0005310c,\n                chunk_name == (undefined1 *)0x7043414c)))) ||\n           (pcVar6 = (code *)PTR_png_handle_sCAL_00053118, chunk_name == (undefined1 *)0x7343414c)))\n          )" ( (binary_expression "((((chunk_name == (undefined1 *)0x504c5445) ||\n             (pcVar6 = (code *)PTR_png_handle_bKGD_000530fc, chunk_name == &DAT_624b4744)) ||\n            (pcVar6 = (code *)PTR_png_handle_cHRM_000530e8, chunk_name == &DAT_6348524d)) ||\n           ((pcVar6 = (code *)PTR_png_handle_eXIf_00053180, chunk_name == (undefined1 *)0x65584966\n            || (pcVar6 = (code *)PTR_png_handle_gAMA_000530e0,\n               chunk_name == (undefined1 *)0x67414d41)))) ||\n          (((pcVar6 = (code *)PTR_png_handle_hIST_00053100, chunk_name == (undefined1 *)0x68495354\n            || ((pcVar6 = (code *)PTR_png_handle_oFFs_00053108, chunk_name == &DAT_6f464673 ||\n                (pcVar6 = (code *)PTR_png_handle_pCAL_0005310c,\n                chunk_name == (undefined1 *)0x7043414c)))) ||\n           (pcVar6 = (code *)PTR_png_handle_sCAL_00053118, chunk_name == (undefined1 *)0x7343414c)))" (parenthesized_expression "((((chunk_name == (undefined1 *)0x504c5445) ||\n             (pcVar6 = (code *)PTR_png_handle_bKGD_000530fc, chunk_name == &DAT_624b4744)) ||\n            (pcVar6 = (code *)PTR_png_handle_cHRM_000530e8, chunk_name == &DAT_6348524d)) ||\n           ((pcVar6 = (code *)PTR_png_handle_eXIf_00053180, chunk_name == (undefined1 *)0x65584966\n            || (pcVar6 = (code *)PTR_png_handle_gAMA_000530e0,\n               chunk_name == (undefined1 *)0x67414d41))))" ( (binary_expression "(((chunk_name == (undefined1 *)0x504c5445) ||\n             (pcVar6 = (code *)PTR_png_handle_bKGD_000530fc, chunk_name == &DAT_624b4744)) ||\n            (pcVar6 = (code *)PTR_png_handle_cHRM_000530e8, chunk_name == &DAT_6348524d)) ||\n           ((pcVar6 = (code *)PTR_png_handle_eXIf_00053180, chunk_name == (undefined1 *)0x65584966\n            || (pcVar6 = (code *)PTR_png_handle_gAMA_000530e0,\n               chunk_name == (undefined1 *)0x67414d41)))" (parenthesized_expression "(((chunk_name == (undefined1 *)0x504c5445) ||\n             (pcVar6 = (code *)PTR_png_handle_bKGD_000530fc, chunk_name == &DAT_624b4744)) ||\n            (pcVar6 = (code *)PTR_png_handle_cHRM_000530e8, chunk_name == &DAT_6348524d))" ( (binary_expression "((chunk_name == (undefined1 *)0x504c5445) ||\n             (pcVar6 = (code *)PTR_png_handle_bKGD_000530fc, chunk_name == &DAT_624b4744)) ||\n            (pcVar6 = (code *)PTR_png_handle_cHRM_000530e8, chunk_name == &DAT_6348524d)" (parenthesized_expression "((chunk_name == (undefined1 *)0x504c5445) ||\n             (pcVar6 = (code *)PTR_png_handle_bKGD_000530fc, chunk_name == &DAT_624b4744))" ( (binary_expression "(chunk_name == (undefined1 *)0x504c5445) ||\n             (pcVar6 = (code *)PTR_png_handle_bKGD_000530fc, chunk_name == &DAT_624b4744)" (parenthesized_expression "(chunk_name == (undefined1 *)0x504c5445)" ( (binary_expression "chunk_name == (undefined1 *)0x504c5445" identifier == (cast_expression "(undefined1 *)0x504c5445" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) || (parenthesized_expression "(pcVar6 = (code *)PTR_png_handle_bKGD_000530fc, chunk_name == &DAT_624b4744)" ( (comma_expression "pcVar6 = (code *)PTR_png_handle_bKGD_000530fc, chunk_name == &DAT_624b4744" (assignment_expression "pcVar6 = (code *)PTR_png_handle_bKGD_000530fc" identifier = (cast_expression "(code *)PTR_png_handle_bKGD_000530fc" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , (binary_expression "chunk_name == &DAT_624b4744" identifier == (pointer_expression "&DAT_624b4744" & identifier))) ))) )) || (parenthesized_expression "(pcVar6 = (code *)PTR_png_handle_cHRM_000530e8, chunk_name == &DAT_6348524d)" ( (comma_expression "pcVar6 = (code *)PTR_png_handle_cHRM_000530e8, chunk_name == &DAT_6348524d" (assignment_expression "pcVar6 = (code *)PTR_png_handle_cHRM_000530e8" identifier = (cast_expression "(code *)PTR_png_handle_cHRM_000530e8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , (binary_expression "chunk_name == &DAT_6348524d" identifier == (pointer_expression "&DAT_6348524d" & identifier))) ))) )) || (parenthesized_expression "((pcVar6 = (code *)PTR_png_handle_eXIf_00053180, chunk_name == (undefined1 *)0x65584966\n            || (pcVar6 = (code *)PTR_png_handle_gAMA_000530e0,\n               chunk_name == (undefined1 *)0x67414d41)))" ( (parenthesized_expression "(pcVar6 = (code *)PTR_png_handle_eXIf_00053180, chunk_name == (undefined1 *)0x65584966\n            || (pcVar6 = (code *)PTR_png_handle_gAMA_000530e0,\n               chunk_name == (undefined1 *)0x67414d41))" ( (comma_expression "pcVar6 = (code *)PTR_png_handle_eXIf_00053180, chunk_name == (undefined1 *)0x65584966\n            || (pcVar6 = (code *)PTR_png_handle_gAMA_000530e0,\n               chunk_name == (undefined1 *)0x67414d41)" (assignment_expression "pcVar6 = (code *)PTR_png_handle_eXIf_00053180" identifier = (cast_expression "(code *)PTR_png_handle_eXIf_00053180" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , (binary_expression "chunk_name == (undefined1 *)0x65584966\n            || (pcVar6 = (code *)PTR_png_handle_gAMA_000530e0,\n               chunk_name == (undefined1 *)0x67414d41)" (binary_expression "chunk_name == (undefined1 *)0x65584966" identifier == (cast_expression "(undefined1 *)0x65584966" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) || (parenthesized_expression "(pcVar6 = (code *)PTR_png_handle_gAMA_000530e0,\n               chunk_name == (undefined1 *)0x67414d41)" ( (comma_expression "pcVar6 = (code *)PTR_png_handle_gAMA_000530e0,\n               chunk_name == (undefined1 *)0x67414d41" (assignment_expression "pcVar6 = (code *)PTR_png_handle_gAMA_000530e0" identifier = (cast_expression "(code *)PTR_png_handle_gAMA_000530e0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , (binary_expression "chunk_name == (undefined1 *)0x67414d41" identifier == (cast_expression "(undefined1 *)0x67414d41" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) )))) )) ))) )) || (parenthesized_expression "(((pcVar6 = (code *)PTR_png_handle_hIST_00053100, chunk_name == (undefined1 *)0x68495354\n            || ((pcVar6 = (code *)PTR_png_handle_oFFs_00053108, chunk_name == &DAT_6f464673 ||\n                (pcVar6 = (code *)PTR_png_handle_pCAL_0005310c,\n                chunk_name == (undefined1 *)0x7043414c)))) ||\n           (pcVar6 = (code *)PTR_png_handle_sCAL_00053118, chunk_name == (undefined1 *)0x7343414c)))" ( (parenthesized_expression "((pcVar6 = (code *)PTR_png_handle_hIST_00053100, chunk_name == (undefined1 *)0x68495354\n            || ((pcVar6 = (code *)PTR_png_handle_oFFs_00053108, chunk_name == &DAT_6f464673 ||\n                (pcVar6 = (code *)PTR_png_handle_pCAL_0005310c,\n                chunk_name == (undefined1 *)0x7043414c)))) ||\n           (pcVar6 = (code *)PTR_png_handle_sCAL_00053118, chunk_name == (undefined1 *)0x7343414c))" ( (binary_expression "(pcVar6 = (code *)PTR_png_handle_hIST_00053100, chunk_name == (undefined1 *)0x68495354\n            || ((pcVar6 = (code *)PTR_png_handle_oFFs_00053108, chunk_name == &DAT_6f464673 ||\n                (pcVar6 = (code *)PTR_png_handle_pCAL_0005310c,\n                chunk_name == (undefined1 *)0x7043414c)))) ||\n           (pcVar6 = (code *)PTR_png_handle_sCAL_00053118, chunk_name == (undefined1 *)0x7343414c)" (parenthesized_expression "(pcVar6 = (code *)PTR_png_handle_hIST_00053100, chunk_name == (undefined1 *)0x68495354\n            || ((pcVar6 = (code *)PTR_png_handle_oFFs_00053108, chunk_name == &DAT_6f464673 ||\n                (pcVar6 = (code *)PTR_png_handle_pCAL_0005310c,\n                chunk_name == (undefined1 *)0x7043414c))))" ( (comma_expression "pcVar6 = (code *)PTR_png_handle_hIST_00053100, chunk_name == (undefined1 *)0x68495354\n            || ((pcVar6 = (code *)PTR_png_handle_oFFs_00053108, chunk_name == &DAT_6f464673 ||\n                (pcVar6 = (code *)PTR_png_handle_pCAL_0005310c,\n                chunk_name == (undefined1 *)0x7043414c)))" (assignment_expression "pcVar6 = (code *)PTR_png_handle_hIST_00053100" identifier = (cast_expression "(code *)PTR_png_handle_hIST_00053100" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , (binary_expression "chunk_name == (undefined1 *)0x68495354\n            || ((pcVar6 = (code *)PTR_png_handle_oFFs_00053108, chunk_name == &DAT_6f464673 ||\n                (pcVar6 = (code *)PTR_png_handle_pCAL_0005310c,\n                chunk_name == (undefined1 *)0x7043414c)))" (binary_expression "chunk_name == (undefined1 *)0x68495354" identifier == (cast_expression "(undefined1 *)0x68495354" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) || (parenthesized_expression "((pcVar6 = (code *)PTR_png_handle_oFFs_00053108, chunk_name == &DAT_6f464673 ||\n                (pcVar6 = (code *)PTR_png_handle_pCAL_0005310c,\n                chunk_name == (undefined1 *)0x7043414c)))" ( (parenthesized_expression "(pcVar6 = (code *)PTR_png_handle_oFFs_00053108, chunk_name == &DAT_6f464673 ||\n                (pcVar6 = (code *)PTR_png_handle_pCAL_0005310c,\n                chunk_name == (undefined1 *)0x7043414c))" ( (comma_expression "pcVar6 = (code *)PTR_png_handle_oFFs_00053108, chunk_name == &DAT_6f464673 ||\n                (pcVar6 = (code *)PTR_png_handle_pCAL_0005310c,\n                chunk_name == (undefined1 *)0x7043414c)" (assignment_expression "pcVar6 = (code *)PTR_png_handle_oFFs_00053108" identifier = (cast_expression "(code *)PTR_png_handle_oFFs_00053108" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , (binary_expression "chunk_name == &DAT_6f464673 ||\n                (pcVar6 = (code *)PTR_png_handle_pCAL_0005310c,\n                chunk_name == (undefined1 *)0x7043414c)" (binary_expression "chunk_name == &DAT_6f464673" identifier == (pointer_expression "&DAT_6f464673" & identifier)) || (parenthesized_expression "(pcVar6 = (code *)PTR_png_handle_pCAL_0005310c,\n                chunk_name == (undefined1 *)0x7043414c)" ( (comma_expression "pcVar6 = (code *)PTR_png_handle_pCAL_0005310c,\n                chunk_name == (undefined1 *)0x7043414c" (assignment_expression "pcVar6 = (code *)PTR_png_handle_pCAL_0005310c" identifier = (cast_expression "(code *)PTR_png_handle_pCAL_0005310c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , (binary_expression "chunk_name == (undefined1 *)0x7043414c" identifier == (cast_expression "(undefined1 *)0x7043414c" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) )))) )) )))) )) || (parenthesized_expression "(pcVar6 = (code *)PTR_png_handle_sCAL_00053118, chunk_name == (undefined1 *)0x7343414c)" ( (comma_expression "pcVar6 = (code *)PTR_png_handle_sCAL_00053118, chunk_name == (undefined1 *)0x7343414c" (assignment_expression "pcVar6 = (code *)PTR_png_handle_sCAL_00053118" identifier = (cast_expression "(code *)PTR_png_handle_sCAL_00053118" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , (binary_expression "chunk_name == (undefined1 *)0x7343414c" identifier == (cast_expression "(undefined1 *)0x7343414c" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) ))) )) ))) )) || (parenthesized_expression "(((((pcVar6 = (code *)PTR_png_handle_pHYs_00053104, chunk_name == &DAT_70485973 ||\n                   (pcVar6 = (code *)PTR_png_handle_sBIT_000530e4,\n                   chunk_name == (undefined1 *)0x73424954)) ||\n                  (pcVar6 = (code *)PTR_png_handle_sRGB_000530ec, chunk_name == &DAT_73524742)) ||\n                 (((pcVar6 = (code *)PTR_png_handle_iCCP_000530f0,\n                   chunk_name == (undefined1 *)0x69434350 ||\n                   (pcVar6 = (code *)PTR_png_handle_sPLT_000530f4,\n                   chunk_name == (undefined1 *)0x73504c54)) ||\n                  ((pcVar6 = (code *)PTR_png_handle_tEXt_00053110,\n                   chunk_name == (undefined1 *)0x74455874 ||\n                   ((pcVar6 = (code *)PTR_png_handle_tIME_00053114,\n                    chunk_name == (undefined1 *)0x74494d45 ||\n                    (pcVar6 = (code *)PTR_png_handle_tRNS_000530f8,\n                    chunk_name == (undefined1 *)0x74524e53)))))))) ||\n                ((pcVar6 = (code *)PTR_png_handle_zTXt_0005311c,\n                 chunk_name == (undefined1 *)0x7a545874 ||\n                 (iVar2 = 0, pcVar6 = (code *)PTR_png_handle_iTXt_00053124,\n                 chunk_name == (undefined1 *)0x69545874)))))" ( (parenthesized_expression "((((pcVar6 = (code *)PTR_png_handle_pHYs_00053104, chunk_name == &DAT_70485973 ||\n                   (pcVar6 = (code *)PTR_png_handle_sBIT_000530e4,\n                   chunk_name == (undefined1 *)0x73424954)) ||\n                  (pcVar6 = (code *)PTR_png_handle_sRGB_000530ec, chunk_name == &DAT_73524742)) ||\n                 (((pcVar6 = (code *)PTR_png_handle_iCCP_000530f0,\n                   chunk_name == (undefined1 *)0x69434350 ||\n                   (pcVar6 = (code *)PTR_png_handle_sPLT_000530f4,\n                   chunk_name == (undefined1 *)0x73504c54)) ||\n                  ((pcVar6 = (code *)PTR_png_handle_tEXt_00053110,\n                   chunk_name == (undefined1 *)0x74455874 ||\n                   ((pcVar6 = (code *)PTR_png_handle_tIME_00053114,\n                    chunk_name == (undefined1 *)0x74494d45 ||\n                    (pcVar6 = (code *)PTR_png_handle_tRNS_000530f8,\n                    chunk_name == (undefined1 *)0x74524e53)))))))) ||\n                ((pcVar6 = (code *)PTR_png_handle_zTXt_0005311c,\n                 chunk_name == (undefined1 *)0x7a545874 ||\n                 (iVar2 = 0, pcVar6 = (code *)PTR_png_handle_iTXt_00053124,\n                 chunk_name == (undefined1 *)0x69545874))))" ( (binary_expression "(((pcVar6 = (code *)PTR_png_handle_pHYs_00053104, chunk_name == &DAT_70485973 ||\n                   (pcVar6 = (code *)PTR_png_handle_sBIT_000530e4,\n                   chunk_name == (undefined1 *)0x73424954)) ||\n                  (pcVar6 = (code *)PTR_png_handle_sRGB_000530ec, chunk_name == &DAT_73524742)) ||\n                 (((pcVar6 = (code *)PTR_png_handle_iCCP_000530f0,\n                   chunk_name == (undefined1 *)0x69434350 ||\n                   (pcVar6 = (code *)PTR_png_handle_sPLT_000530f4,\n                   chunk_name == (undefined1 *)0x73504c54)) ||\n                  ((pcVar6 = (code *)PTR_png_handle_tEXt_00053110,\n                   chunk_name == (undefined1 *)0x74455874 ||\n                   ((pcVar6 = (code *)PTR_png_handle_tIME_00053114,\n                    chunk_name == (undefined1 *)0x74494d45 ||\n                    (pcVar6 = (code *)PTR_png_handle_tRNS_000530f8,\n                    chunk_name == (undefined1 *)0x74524e53)))))))) ||\n                ((pcVar6 = (code *)PTR_png_handle_zTXt_0005311c,\n                 chunk_name == (undefined1 *)0x7a545874 ||\n                 (iVar2 = 0, pcVar6 = (code *)PTR_png_handle_iTXt_00053124,\n                 chunk_name == (undefined1 *)0x69545874)))" (parenthesized_expression "(((pcVar6 = (code *)PTR_png_handle_pHYs_00053104, chunk_name == &DAT_70485973 ||\n                   (pcVar6 = (code *)PTR_png_handle_sBIT_000530e4,\n                   chunk_name == (undefined1 *)0x73424954)) ||\n                  (pcVar6 = (code *)PTR_png_handle_sRGB_000530ec, chunk_name == &DAT_73524742)) ||\n                 (((pcVar6 = (code *)PTR_png_handle_iCCP_000530f0,\n                   chunk_name == (undefined1 *)0x69434350 ||\n                   (pcVar6 = (code *)PTR_png_handle_sPLT_000530f4,\n                   chunk_name == (undefined1 *)0x73504c54)) ||\n                  ((pcVar6 = (code *)PTR_png_handle_tEXt_00053110,\n                   chunk_name == (undefined1 *)0x74455874 ||\n                   ((pcVar6 = (code *)PTR_png_handle_tIME_00053114,\n                    chunk_name == (undefined1 *)0x74494d45 ||\n                    (pcVar6 = (code *)PTR_png_handle_tRNS_000530f8,\n                    chunk_name == (undefined1 *)0x74524e53))))))))" ( (binary_expression "((pcVar6 = (code *)PTR_png_handle_pHYs_00053104, chunk_name == &DAT_70485973 ||\n                   (pcVar6 = (code *)PTR_png_handle_sBIT_000530e4,\n                   chunk_name == (undefined1 *)0x73424954)) ||\n                  (pcVar6 = (code *)PTR_png_handle_sRGB_000530ec, chunk_name == &DAT_73524742)) ||\n                 (((pcVar6 = (code *)PTR_png_handle_iCCP_000530f0,\n                   chunk_name == (undefined1 *)0x69434350 ||\n                   (pcVar6 = (code *)PTR_png_handle_sPLT_000530f4,\n                   chunk_name == (undefined1 *)0x73504c54)) ||\n                  ((pcVar6 = (code *)PTR_png_handle_tEXt_00053110,\n                   chunk_name == (undefined1 *)0x74455874 ||\n                   ((pcVar6 = (code *)PTR_png_handle_tIME_00053114,\n                    chunk_name == (undefined1 *)0x74494d45 ||\n                    (pcVar6 = (code *)PTR_png_handle_tRNS_000530f8,\n                    chunk_name == (undefined1 *)0x74524e53)))))))" (parenthesized_expression "((pcVar6 = (code *)PTR_png_handle_pHYs_00053104, chunk_name == &DAT_70485973 ||\n                   (pcVar6 = (code *)PTR_png_handle_sBIT_000530e4,\n                   chunk_name == (undefined1 *)0x73424954)) ||\n                  (pcVar6 = (code *)PTR_png_handle_sRGB_000530ec, chunk_name == &DAT_73524742))" ( (binary_expression "(pcVar6 = (code *)PTR_png_handle_pHYs_00053104, chunk_name == &DAT_70485973 ||\n                   (pcVar6 = (code *)PTR_png_handle_sBIT_000530e4,\n                   chunk_name == (undefined1 *)0x73424954)) ||\n                  (pcVar6 = (code *)PTR_png_handle_sRGB_000530ec, chunk_name == &DAT_73524742)" (parenthesized_expression "(pcVar6 = (code *)PTR_png_handle_pHYs_00053104, chunk_name == &DAT_70485973 ||\n                   (pcVar6 = (code *)PTR_png_handle_sBIT_000530e4,\n                   chunk_name == (undefined1 *)0x73424954))" ( (comma_expression "pcVar6 = (code *)PTR_png_handle_pHYs_00053104, chunk_name == &DAT_70485973 ||\n                   (pcVar6 = (code *)PTR_png_handle_sBIT_000530e4,\n                   chunk_name == (undefined1 *)0x73424954)" (assignment_expression "pcVar6 = (code *)PTR_png_handle_pHYs_00053104" identifier = (cast_expression "(code *)PTR_png_handle_pHYs_00053104" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , (binary_expression "chunk_name == &DAT_70485973 ||\n                   (pcVar6 = (code *)PTR_png_handle_sBIT_000530e4,\n                   chunk_name == (undefined1 *)0x73424954)" (binary_expression "chunk_name == &DAT_70485973" identifier == (pointer_expression "&DAT_70485973" & identifier)) || (parenthesized_expression "(pcVar6 = (code *)PTR_png_handle_sBIT_000530e4,\n                   chunk_name == (undefined1 *)0x73424954)" ( (comma_expression "pcVar6 = (code *)PTR_png_handle_sBIT_000530e4,\n                   chunk_name == (undefined1 *)0x73424954" (assignment_expression "pcVar6 = (code *)PTR_png_handle_sBIT_000530e4" identifier = (cast_expression "(code *)PTR_png_handle_sBIT_000530e4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , (binary_expression "chunk_name == (undefined1 *)0x73424954" identifier == (cast_expression "(undefined1 *)0x73424954" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) )))) )) || (parenthesized_expression "(pcVar6 = (code *)PTR_png_handle_sRGB_000530ec, chunk_name == &DAT_73524742)" ( (comma_expression "pcVar6 = (code *)PTR_png_handle_sRGB_000530ec, chunk_name == &DAT_73524742" (assignment_expression "pcVar6 = (code *)PTR_png_handle_sRGB_000530ec" identifier = (cast_expression "(code *)PTR_png_handle_sRGB_000530ec" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , (binary_expression "chunk_name == &DAT_73524742" identifier == (pointer_expression "&DAT_73524742" & identifier))) ))) )) || (parenthesized_expression "(((pcVar6 = (code *)PTR_png_handle_iCCP_000530f0,\n                   chunk_name == (undefined1 *)0x69434350 ||\n                   (pcVar6 = (code *)PTR_png_handle_sPLT_000530f4,\n                   chunk_name == (undefined1 *)0x73504c54)) ||\n                  ((pcVar6 = (code *)PTR_png_handle_tEXt_00053110,\n                   chunk_name == (undefined1 *)0x74455874 ||\n                   ((pcVar6 = (code *)PTR_png_handle_tIME_00053114,\n                    chunk_name == (undefined1 *)0x74494d45 ||\n                    (pcVar6 = (code *)PTR_png_handle_tRNS_000530f8,\n                    chunk_name == (undefined1 *)0x74524e53)))))))" ( (parenthesized_expression "((pcVar6 = (code *)PTR_png_handle_iCCP_000530f0,\n                   chunk_name == (undefined1 *)0x69434350 ||\n                   (pcVar6 = (code *)PTR_png_handle_sPLT_000530f4,\n                   chunk_name == (undefined1 *)0x73504c54)) ||\n                  ((pcVar6 = (code *)PTR_png_handle_tEXt_00053110,\n                   chunk_name == (undefined1 *)0x74455874 ||\n                   ((pcVar6 = (code *)PTR_png_handle_tIME_00053114,\n                    chunk_name == (undefined1 *)0x74494d45 ||\n                    (pcVar6 = (code *)PTR_png_handle_tRNS_000530f8,\n                    chunk_name == (undefined1 *)0x74524e53))))))" ( (binary_expression "(pcVar6 = (code *)PTR_png_handle_iCCP_000530f0,\n                   chunk_name == (undefined1 *)0x69434350 ||\n                   (pcVar6 = (code *)PTR_png_handle_sPLT_000530f4,\n                   chunk_name == (undefined1 *)0x73504c54)) ||\n                  ((pcVar6 = (code *)PTR_png_handle_tEXt_00053110,\n                   chunk_name == (undefined1 *)0x74455874 ||\n                   ((pcVar6 = (code *)PTR_png_handle_tIME_00053114,\n                    chunk_name == (undefined1 *)0x74494d45 ||\n                    (pcVar6 = (code *)PTR_png_handle_tRNS_000530f8,\n                    chunk_name == (undefined1 *)0x74524e53)))))" (parenthesized_expression "(pcVar6 = (code *)PTR_png_handle_iCCP_000530f0,\n                   chunk_name == (undefined1 *)0x69434350 ||\n                   (pcVar6 = (code *)PTR_png_handle_sPLT_000530f4,\n                   chunk_name == (undefined1 *)0x73504c54))" ( (comma_expression "pcVar6 = (code *)PTR_png_handle_iCCP_000530f0,\n                   chunk_name == (undefined1 *)0x69434350 ||\n                   (pcVar6 = (code *)PTR_png_handle_sPLT_000530f4,\n                   chunk_name == (undefined1 *)0x73504c54)" (assignment_expression "pcVar6 = (code *)PTR_png_handle_iCCP_000530f0" identifier = (cast_expression "(code *)PTR_png_handle_iCCP_000530f0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , (binary_expression "chunk_name == (undefined1 *)0x69434350 ||\n                   (pcVar6 = (code *)PTR_png_handle_sPLT_000530f4,\n                   chunk_name == (undefined1 *)0x73504c54)" (binary_expression "chunk_name == (undefined1 *)0x69434350" identifier == (cast_expression "(undefined1 *)0x69434350" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) || (parenthesized_expression "(pcVar6 = (code *)PTR_png_handle_sPLT_000530f4,\n                   chunk_name == (undefined1 *)0x73504c54)" ( (comma_expression "pcVar6 = (code *)PTR_png_handle_sPLT_000530f4,\n                   chunk_name == (undefined1 *)0x73504c54" (assignment_expression "pcVar6 = (code *)PTR_png_handle_sPLT_000530f4" identifier = (cast_expression "(code *)PTR_png_handle_sPLT_000530f4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , (binary_expression "chunk_name == (undefined1 *)0x73504c54" identifier == (cast_expression "(undefined1 *)0x73504c54" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) )))) )) || (parenthesized_expression "((pcVar6 = (code *)PTR_png_handle_tEXt_00053110,\n                   chunk_name == (undefined1 *)0x74455874 ||\n                   ((pcVar6 = (code *)PTR_png_handle_tIME_00053114,\n                    chunk_name == (undefined1 *)0x74494d45 ||\n                    (pcVar6 = (code *)PTR_png_handle_tRNS_000530f8,\n                    chunk_name == (undefined1 *)0x74524e53)))))" ( (parenthesized_expression "(pcVar6 = (code *)PTR_png_handle_tEXt_00053110,\n                   chunk_name == (undefined1 *)0x74455874 ||\n                   ((pcVar6 = (code *)PTR_png_handle_tIME_00053114,\n                    chunk_name == (undefined1 *)0x74494d45 ||\n                    (pcVar6 = (code *)PTR_png_handle_tRNS_000530f8,\n                    chunk_name == (undefined1 *)0x74524e53))))" ( (comma_expression "pcVar6 = (code *)PTR_png_handle_tEXt_00053110,\n                   chunk_name == (undefined1 *)0x74455874 ||\n                   ((pcVar6 = (code *)PTR_png_handle_tIME_00053114,\n                    chunk_name == (undefined1 *)0x74494d45 ||\n                    (pcVar6 = (code *)PTR_png_handle_tRNS_000530f8,\n                    chunk_name == (undefined1 *)0x74524e53)))" (assignment_expression "pcVar6 = (code *)PTR_png_handle_tEXt_00053110" identifier = (cast_expression "(code *)PTR_png_handle_tEXt_00053110" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , (binary_expression "chunk_name == (undefined1 *)0x74455874 ||\n                   ((pcVar6 = (code *)PTR_png_handle_tIME_00053114,\n                    chunk_name == (undefined1 *)0x74494d45 ||\n                    (pcVar6 = (code *)PTR_png_handle_tRNS_000530f8,\n                    chunk_name == (undefined1 *)0x74524e53)))" (binary_expression "chunk_name == (undefined1 *)0x74455874" identifier == (cast_expression "(undefined1 *)0x74455874" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) || (parenthesized_expression "((pcVar6 = (code *)PTR_png_handle_tIME_00053114,\n                    chunk_name == (undefined1 *)0x74494d45 ||\n                    (pcVar6 = (code *)PTR_png_handle_tRNS_000530f8,\n                    chunk_name == (undefined1 *)0x74524e53)))" ( (parenthesized_expression "(pcVar6 = (code *)PTR_png_handle_tIME_00053114,\n                    chunk_name == (undefined1 *)0x74494d45 ||\n                    (pcVar6 = (code *)PTR_png_handle_tRNS_000530f8,\n                    chunk_name == (undefined1 *)0x74524e53))" ( (comma_expression "pcVar6 = (code *)PTR_png_handle_tIME_00053114,\n                    chunk_name == (undefined1 *)0x74494d45 ||\n                    (pcVar6 = (code *)PTR_png_handle_tRNS_000530f8,\n                    chunk_name == (undefined1 *)0x74524e53)" (assignment_expression "pcVar6 = (code *)PTR_png_handle_tIME_00053114" identifier = (cast_expression "(code *)PTR_png_handle_tIME_00053114" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , (binary_expression "chunk_name == (undefined1 *)0x74494d45 ||\n                    (pcVar6 = (code *)PTR_png_handle_tRNS_000530f8,\n                    chunk_name == (undefined1 *)0x74524e53)" (binary_expression "chunk_name == (undefined1 *)0x74494d45" identifier == (cast_expression "(undefined1 *)0x74494d45" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) || (parenthesized_expression "(pcVar6 = (code *)PTR_png_handle_tRNS_000530f8,\n                    chunk_name == (undefined1 *)0x74524e53)" ( (comma_expression "pcVar6 = (code *)PTR_png_handle_tRNS_000530f8,\n                    chunk_name == (undefined1 *)0x74524e53" (assignment_expression "pcVar6 = (code *)PTR_png_handle_tRNS_000530f8" identifier = (cast_expression "(code *)PTR_png_handle_tRNS_000530f8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , (binary_expression "chunk_name == (undefined1 *)0x74524e53" identifier == (cast_expression "(undefined1 *)0x74524e53" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) )))) )) )))) )) ))) )) ))) )) || (parenthesized_expression "((pcVar6 = (code *)PTR_png_handle_zTXt_0005311c,\n                 chunk_name == (undefined1 *)0x7a545874 ||\n                 (iVar2 = 0, pcVar6 = (code *)PTR_png_handle_iTXt_00053124,\n                 chunk_name == (undefined1 *)0x69545874)))" ( (parenthesized_expression "(pcVar6 = (code *)PTR_png_handle_zTXt_0005311c,\n                 chunk_name == (undefined1 *)0x7a545874 ||\n                 (iVar2 = 0, pcVar6 = (code *)PTR_png_handle_iTXt_00053124,\n                 chunk_name == (undefined1 *)0x69545874))" ( (comma_expression "pcVar6 = (code *)PTR_png_handle_zTXt_0005311c,\n                 chunk_name == (undefined1 *)0x7a545874 ||\n                 (iVar2 = 0, pcVar6 = (code *)PTR_png_handle_iTXt_00053124,\n                 chunk_name == (undefined1 *)0x69545874)" (assignment_expression "pcVar6 = (code *)PTR_png_handle_zTXt_0005311c" identifier = (cast_expression "(code *)PTR_png_handle_zTXt_0005311c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , (binary_expression "chunk_name == (undefined1 *)0x7a545874 ||\n                 (iVar2 = 0, pcVar6 = (code *)PTR_png_handle_iTXt_00053124,\n                 chunk_name == (undefined1 *)0x69545874)" (binary_expression "chunk_name == (undefined1 *)0x7a545874" identifier == (cast_expression "(undefined1 *)0x7a545874" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) || (parenthesized_expression "(iVar2 = 0, pcVar6 = (code *)PTR_png_handle_iTXt_00053124,\n                 chunk_name == (undefined1 *)0x69545874)" ( (comma_expression "iVar2 = 0, pcVar6 = (code *)PTR_png_handle_iTXt_00053124,\n                 chunk_name == (undefined1 *)0x69545874" (assignment_expression "iVar2 = 0" identifier = number_literal) , (comma_expression "pcVar6 = (code *)PTR_png_handle_iTXt_00053124,\n                 chunk_name == (undefined1 *)0x69545874" (assignment_expression "pcVar6 = (code *)PTR_png_handle_iTXt_00053124" identifier = (cast_expression "(code *)PTR_png_handle_iTXt_00053124" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , (binary_expression "chunk_name == (undefined1 *)0x69545874" identifier == (cast_expression "(undefined1 *)0x69545874" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)))) )))) )) ))) )) ))) )) (goto_statement "goto LAB_00023564;" goto statement_identifier ;)) (labeled_statement "LAB_00023394:\n      png_handle_unknown(png_ptr,info_ptr,skip,iVar2);" statement_identifier : (expression_statement "png_handle_unknown(png_ptr,info_ptr,skip,iVar2);" (call_expression "png_handle_unknown(png_ptr,info_ptr,skip,iVar2)" identifier (argument_list "(png_ptr,info_ptr,skip,iVar2)" ( identifier , identifier , identifier , identifier ))) ;)) (labeled_statement "LAB_000233a8:\n      uVar3 = png_ptr->mode;" statement_identifier : (expression_statement "uVar3 = png_ptr->mode;" (assignment_expression "uVar3 = png_ptr->mode" identifier = (field_expression "png_ptr->mode" identifier -> field_identifier)) ;)) (goto_statement "goto LAB_000233ac;" goto statement_identifier ;) })) (if_statement "if (chunk_name == (undefined1 *)0x49444154) {\n      if ((skip == 0) || ((png_ptr->flags & 8) != 0)) {\n        if ((png_ptr->mode & 0x2000) != 0) {\n          (*(code *)PTR_png_benign_error_000533b8)(png_ptr,puVar4);\n        }\n      }\n      else {\n        (*(code *)PTR_png_benign_error_000533b8)(png_ptr,puVar4);\n      }\n      goto LAB_00023394;\n    }" if (parenthesized_expression "(chunk_name == (undefined1 *)0x49444154)" ( (binary_expression "chunk_name == (undefined1 *)0x49444154" identifier == (cast_expression "(undefined1 *)0x49444154" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      if ((skip == 0) || ((png_ptr->flags & 8) != 0)) {\n        if ((png_ptr->mode & 0x2000) != 0) {\n          (*(code *)PTR_png_benign_error_000533b8)(png_ptr,puVar4);\n        }\n      }\n      else {\n        (*(code *)PTR_png_benign_error_000533b8)(png_ptr,puVar4);\n      }\n      goto LAB_00023394;\n    }" { (if_statement "if ((skip == 0) || ((png_ptr->flags & 8) != 0)) {\n        if ((png_ptr->mode & 0x2000) != 0) {\n          (*(code *)PTR_png_benign_error_000533b8)(png_ptr,puVar4);\n        }\n      }\n      else {\n        (*(code *)PTR_png_benign_error_000533b8)(png_ptr,puVar4);\n      }" if (parenthesized_expression "((skip == 0) || ((png_ptr->flags & 8) != 0))" ( (binary_expression "(skip == 0) || ((png_ptr->flags & 8) != 0)" (parenthesized_expression "(skip == 0)" ( (binary_expression "skip == 0" identifier == number_literal) )) || (parenthesized_expression "((png_ptr->flags & 8) != 0)" ( (binary_expression "(png_ptr->flags & 8) != 0" (parenthesized_expression "(png_ptr->flags & 8)" ( (binary_expression "png_ptr->flags & 8" (field_expression "png_ptr->flags" identifier -> field_identifier) & number_literal) )) != number_literal) ))) )) (compound_statement "{\n        if ((png_ptr->mode & 0x2000) != 0) {\n          (*(code *)PTR_png_benign_error_000533b8)(png_ptr,puVar4);\n        }\n      }" { (if_statement "if ((png_ptr->mode & 0x2000) != 0) {\n          (*(code *)PTR_png_benign_error_000533b8)(png_ptr,puVar4);\n        }" if (parenthesized_expression "((png_ptr->mode & 0x2000) != 0)" ( (binary_expression "(png_ptr->mode & 0x2000) != 0" (parenthesized_expression "(png_ptr->mode & 0x2000)" ( (binary_expression "png_ptr->mode & 0x2000" (field_expression "png_ptr->mode" identifier -> field_identifier) & number_literal) )) != number_literal) )) (compound_statement "{\n          (*(code *)PTR_png_benign_error_000533b8)(png_ptr,puVar4);\n        }" { (expression_statement "(*(code *)PTR_png_benign_error_000533b8)(png_ptr,puVar4);" (call_expression "(*(code *)PTR_png_benign_error_000533b8)(png_ptr,puVar4)" (parenthesized_expression "(*(code *)PTR_png_benign_error_000533b8)" ( (pointer_expression "*(code *)PTR_png_benign_error_000533b8" * (cast_expression "(code *)PTR_png_benign_error_000533b8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(png_ptr,puVar4)" ( identifier , identifier ))) ;) })) }) (else_clause "else {\n        (*(code *)PTR_png_benign_error_000533b8)(png_ptr,puVar4);\n      }" else (compound_statement "{\n        (*(code *)PTR_png_benign_error_000533b8)(png_ptr,puVar4);\n      }" { (expression_statement "(*(code *)PTR_png_benign_error_000533b8)(png_ptr,puVar4);" (call_expression "(*(code *)PTR_png_benign_error_000533b8)(png_ptr,puVar4)" (parenthesized_expression "(*(code *)PTR_png_benign_error_000533b8)" ( (pointer_expression "*(code *)PTR_png_benign_error_000533b8" * (cast_expression "(code *)PTR_png_benign_error_000533b8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(png_ptr,puVar4)" ( identifier , identifier ))) ;) }))) (goto_statement "goto LAB_00023394;" goto statement_identifier ;) })) (expression_statement "png_handle_unknown(png_ptr,info_ptr,skip,iVar2);" (call_expression "png_handle_unknown(png_ptr,info_ptr,skip,iVar2)" identifier (argument_list "(png_ptr,info_ptr,skip,iVar2)" ( identifier , identifier , identifier , identifier ))) ;) (if_statement "if (chunk_name != (undefined1 *)0x504c5445) goto LAB_000233a8;" if (parenthesized_expression "(chunk_name != (undefined1 *)0x504c5445)" ( (binary_expression "chunk_name != (undefined1 *)0x504c5445" identifier != (cast_expression "(undefined1 *)0x504c5445" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000233a8;" goto statement_identifier ;)) (expression_statement "uVar3 = png_ptr->mode;" (assignment_expression "uVar3 = png_ptr->mode" identifier = (field_expression "png_ptr->mode" identifier -> field_identifier)) ;) (expression_statement "png_ptr->mode = uVar3 | 2;" (assignment_expression "png_ptr->mode = uVar3 | 2" (field_expression "png_ptr->mode" identifier -> field_identifier) = (binary_expression "uVar3 | 2" identifier | number_literal)) ;) (if_statement "if ((uVar3 & 0x10) != 0) {\n      return;\n    }" if (parenthesized_expression "((uVar3 & 0x10) != 0)" ( (binary_expression "(uVar3 & 0x10) != 0" (parenthesized_expression "(uVar3 & 0x10)" ( (binary_expression "uVar3 & 0x10" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n      return;\n    }" { (return_statement "return;" return ;) })) }) while (parenthesized_expression "( true )" ( true )) ;) })))
(translation_unit "void png_read_end(int param_1,int param_2)\n\n{\n  ushort uVar1;\n  int iVar2;\n  int iVar3;\n  uint uVar4;\n  undefined1 *puVar5;\n  undefined *puVar6;\n  undefined *puVar7;\n  code *pcVar8;\n  \n  if (param_1 == 0) {\n    return;\n  }\n  iVar2 = FUN_00015610(param_1,0x49444154);\n  if (iVar2 == 0) {\n    FUN_000309b0(param_1);\n    if (*(char *)(param_1 + 0x1ff) != '\x03') goto LAB_0002327c;\n    uVar1 = *(ushort *)(param_1 + 0x1f0);\n  }\n  else {\n    if (*(char *)(param_1 + 0x1ff) != '\x03') goto LAB_0002327c;\n    uVar1 = *(ushort *)(param_1 + 0x1f0);\n  }\n  if ((int)(uint)uVar1 < *(int *)(param_1 + 500)) {\n    (*(code *)PTR_png_benign_error_000533b8)(param_1,PTR_s_nt_0005301c + -0x1f0);\n  }\nLAB_0002327c:\n  puVar7 = PTR_s_nt_0005301c + -0x1ac;\n  puVar6 = PTR_s_nt_0005301c + -0x1c4;\n  do {\n    while( true ) {\n      iVar2 = FUN_0002fa20(param_1);\n      puVar5 = *(undefined1 **)(param_1 + 0x1cc);\n      if ((puVar5 == (undefined1 *)0x49444154) ||\n         ((*(uint *)(param_1 + 0x124) = *(uint *)(param_1 + 0x124) | 0x2000,\n          pcVar8 = (code *)PTR_FUN_000530b8, puVar5 != (undefined1 *)0x49454e44 &&\n          (pcVar8 = (code *)PTR_FUN_000530ac, puVar5 != &DAT_49484452)))) break;\nLAB_00023564:\n      (*pcVar8)(param_1,param_2,iVar2);\n      uVar4 = *(uint *)(param_1 + 0x124);\nLAB_000233ac:\n      if ((uVar4 & 0x10) != 0) {\n        return;\n      }\n    }\n    if (param_2 == 0) {\nLAB_0002340c:\n      FUN_0002b068(param_1,iVar2);\n      uVar4 = *(uint *)(param_1 + 0x124);\n      goto LAB_000233ac;\n    }\n    iVar3 = FUN_00015610(param_1,puVar5);\n    if (iVar3 == 0) {\n      if (puVar5 == (undefined1 *)0x49444154) {\n        if ((iVar2 == 0) || ((*(uint *)(param_1 + 0x128) & 8) != 0)) {\n          if ((*(uint *)(param_1 + 0x124) & 0x2000) != 0) {\n            (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar7);\n          }\n        }\n        else {\n          (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar7);\n        }\n        goto LAB_0002340c;\n      }\n      pcVar8 = (code *)PTR_FUN_000530dc;\n      if ((((((puVar5 == (undefined1 *)0x504c5445) ||\n             (pcVar8 = (code *)PTR_FUN_000530fc, puVar5 == &DAT_624b4744)) ||\n            (pcVar8 = (code *)PTR_FUN_000530e8, puVar5 == (undefined1 *)0x6348524d)) ||\n           ((pcVar8 = (code *)PTR_FUN_00053180, puVar5 == (undefined1 *)0x65584966 ||\n            (pcVar8 = (code *)PTR_FUN_000530e0, puVar5 == (undefined1 *)0x67414d41)))) ||\n          (((pcVar8 = (code *)PTR_FUN_00053100, puVar5 == (undefined1 *)0x68495354 ||\n            ((pcVar8 = (code *)PTR_FUN_00053108, puVar5 == (undefined1 *)0x6f464673 ||\n             (pcVar8 = (code *)PTR_FUN_0005310c, puVar5 == (undefined1 *)0x7043414c)))) ||\n           (pcVar8 = (code *)PTR_FUN_00053118, puVar5 == (undefined1 *)0x7343414c)))) ||\n         (((((pcVar8 = (code *)PTR_FUN_00053104, puVar5 == &DAT_70485973 ||\n             (pcVar8 = (code *)PTR_FUN_000530e4, puVar5 == (undefined1 *)0x73424954)) ||\n            (pcVar8 = (code *)PTR_FUN_000530ec, puVar5 == (undefined1 *)0x73524742)) ||\n           (((pcVar8 = (code *)PTR_FUN_000530f0, puVar5 == (undefined1 *)0x69434350 ||\n             (pcVar8 = (code *)PTR_FUN_000530f4, puVar5 == (undefined1 *)0x73504c54)) ||\n            ((pcVar8 = (code *)PTR_FUN_00053110, puVar5 == (undefined1 *)0x74455874 ||\n             ((pcVar8 = (code *)PTR_FUN_00053114, puVar5 == (undefined1 *)0x74494d45 ||\n              (pcVar8 = (code *)PTR_FUN_000530f8, puVar5 == (undefined1 *)0x74524e53)))))))) ||\n          ((pcVar8 = (code *)PTR_FUN_0005311c, puVar5 == (undefined1 *)0x7a545874 ||\n           (iVar3 = 0, pcVar8 = (code *)PTR_FUN_00053124, puVar5 == (undefined1 *)0x69545874))))))\n      goto LAB_00023564;\nLAB_00023394:\n      FUN_0002f630(param_1,param_2,iVar2,iVar3);\nLAB_000233a8:\n      uVar4 = *(uint *)(param_1 + 0x124);\n      goto LAB_000233ac;\n    }\n    if (puVar5 == (undefined1 *)0x49444154) {\n      if ((iVar2 == 0) || ((*(uint *)(param_1 + 0x128) & 8) != 0)) {\n        if ((*(uint *)(param_1 + 0x124) & 0x2000) != 0) {\n          (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar6);\n        }\n      }\n      else {\n        (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar6);\n      }\n      goto LAB_00023394;\n    }\n    FUN_0002f630(param_1,param_2,iVar2,iVar3);\n    if (puVar5 != (undefined1 *)0x504c5445) goto LAB_000233a8;\n    uVar4 = *(uint *)(param_1 + 0x124);\n    *(uint *)(param_1 + 0x124) = uVar4 | 2;\n    if ((uVar4 & 0x10) != 0) {\n      return;\n    }\n  } while( true );\n}\n\n" (function_definition "void png_read_end(int param_1,int param_2)\n\n{\n  ushort uVar1;\n  int iVar2;\n  int iVar3;\n  uint uVar4;\n  undefined1 *puVar5;\n  undefined *puVar6;\n  undefined *puVar7;\n  code *pcVar8;\n  \n  if (param_1 == 0) {\n    return;\n  }\n  iVar2 = FUN_00015610(param_1,0x49444154);\n  if (iVar2 == 0) {\n    FUN_000309b0(param_1);\n    if (*(char *)(param_1 + 0x1ff) != '\x03') goto LAB_0002327c;\n    uVar1 = *(ushort *)(param_1 + 0x1f0);\n  }\n  else {\n    if (*(char *)(param_1 + 0x1ff) != '\x03') goto LAB_0002327c;\n    uVar1 = *(ushort *)(param_1 + 0x1f0);\n  }\n  if ((int)(uint)uVar1 < *(int *)(param_1 + 500)) {\n    (*(code *)PTR_png_benign_error_000533b8)(param_1,PTR_s_nt_0005301c + -0x1f0);\n  }\nLAB_0002327c:\n  puVar7 = PTR_s_nt_0005301c + -0x1ac;\n  puVar6 = PTR_s_nt_0005301c + -0x1c4;\n  do {\n    while( true ) {\n      iVar2 = FUN_0002fa20(param_1);\n      puVar5 = *(undefined1 **)(param_1 + 0x1cc);\n      if ((puVar5 == (undefined1 *)0x49444154) ||\n         ((*(uint *)(param_1 + 0x124) = *(uint *)(param_1 + 0x124) | 0x2000,\n          pcVar8 = (code *)PTR_FUN_000530b8, puVar5 != (undefined1 *)0x49454e44 &&\n          (pcVar8 = (code *)PTR_FUN_000530ac, puVar5 != &DAT_49484452)))) break;\nLAB_00023564:\n      (*pcVar8)(param_1,param_2,iVar2);\n      uVar4 = *(uint *)(param_1 + 0x124);\nLAB_000233ac:\n      if ((uVar4 & 0x10) != 0) {\n        return;\n      }\n    }\n    if (param_2 == 0) {\nLAB_0002340c:\n      FUN_0002b068(param_1,iVar2);\n      uVar4 = *(uint *)(param_1 + 0x124);\n      goto LAB_000233ac;\n    }\n    iVar3 = FUN_00015610(param_1,puVar5);\n    if (iVar3 == 0) {\n      if (puVar5 == (undefined1 *)0x49444154) {\n        if ((iVar2 == 0) || ((*(uint *)(param_1 + 0x128) & 8) != 0)) {\n          if ((*(uint *)(param_1 + 0x124) & 0x2000) != 0) {\n            (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar7);\n          }\n        }\n        else {\n          (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar7);\n        }\n        goto LAB_0002340c;\n      }\n      pcVar8 = (code *)PTR_FUN_000530dc;\n      if ((((((puVar5 == (undefined1 *)0x504c5445) ||\n             (pcVar8 = (code *)PTR_FUN_000530fc, puVar5 == &DAT_624b4744)) ||\n            (pcVar8 = (code *)PTR_FUN_000530e8, puVar5 == (undefined1 *)0x6348524d)) ||\n           ((pcVar8 = (code *)PTR_FUN_00053180, puVar5 == (undefined1 *)0x65584966 ||\n            (pcVar8 = (code *)PTR_FUN_000530e0, puVar5 == (undefined1 *)0x67414d41)))) ||\n          (((pcVar8 = (code *)PTR_FUN_00053100, puVar5 == (undefined1 *)0x68495354 ||\n            ((pcVar8 = (code *)PTR_FUN_00053108, puVar5 == (undefined1 *)0x6f464673 ||\n             (pcVar8 = (code *)PTR_FUN_0005310c, puVar5 == (undefined1 *)0x7043414c)))) ||\n           (pcVar8 = (code *)PTR_FUN_00053118, puVar5 == (undefined1 *)0x7343414c)))) ||\n         (((((pcVar8 = (code *)PTR_FUN_00053104, puVar5 == &DAT_70485973 ||\n             (pcVar8 = (code *)PTR_FUN_000530e4, puVar5 == (undefined1 *)0x73424954)) ||\n            (pcVar8 = (code *)PTR_FUN_000530ec, puVar5 == (undefined1 *)0x73524742)) ||\n           (((pcVar8 = (code *)PTR_FUN_000530f0, puVar5 == (undefined1 *)0x69434350 ||\n             (pcVar8 = (code *)PTR_FUN_000530f4, puVar5 == (undefined1 *)0x73504c54)) ||\n            ((pcVar8 = (code *)PTR_FUN_00053110, puVar5 == (undefined1 *)0x74455874 ||\n             ((pcVar8 = (code *)PTR_FUN_00053114, puVar5 == (undefined1 *)0x74494d45 ||\n              (pcVar8 = (code *)PTR_FUN_000530f8, puVar5 == (undefined1 *)0x74524e53)))))))) ||\n          ((pcVar8 = (code *)PTR_FUN_0005311c, puVar5 == (undefined1 *)0x7a545874 ||\n           (iVar3 = 0, pcVar8 = (code *)PTR_FUN_00053124, puVar5 == (undefined1 *)0x69545874))))))\n      goto LAB_00023564;\nLAB_00023394:\n      FUN_0002f630(param_1,param_2,iVar2,iVar3);\nLAB_000233a8:\n      uVar4 = *(uint *)(param_1 + 0x124);\n      goto LAB_000233ac;\n    }\n    if (puVar5 == (undefined1 *)0x49444154) {\n      if ((iVar2 == 0) || ((*(uint *)(param_1 + 0x128) & 8) != 0)) {\n        if ((*(uint *)(param_1 + 0x124) & 0x2000) != 0) {\n          (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar6);\n        }\n      }\n      else {\n        (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar6);\n      }\n      goto LAB_00023394;\n    }\n    FUN_0002f630(param_1,param_2,iVar2,iVar3);\n    if (puVar5 != (undefined1 *)0x504c5445) goto LAB_000233a8;\n    uVar4 = *(uint *)(param_1 + 0x124);\n    *(uint *)(param_1 + 0x124) = uVar4 | 2;\n    if ((uVar4 & 0x10) != 0) {\n      return;\n    }\n  } while( true );\n}" primitive_type (function_declarator "png_read_end(int param_1,int param_2)" identifier (parameter_list "(int param_1,int param_2)" ( (parameter_declaration "int param_1" primitive_type identifier) , (parameter_declaration "int param_2" primitive_type identifier) ))) (compound_statement "{\n  ushort uVar1;\n  int iVar2;\n  int iVar3;\n  uint uVar4;\n  undefined1 *puVar5;\n  undefined *puVar6;\n  undefined *puVar7;\n  code *pcVar8;\n  \n  if (param_1 == 0) {\n    return;\n  }\n  iVar2 = FUN_00015610(param_1,0x49444154);\n  if (iVar2 == 0) {\n    FUN_000309b0(param_1);\n    if (*(char *)(param_1 + 0x1ff) != '\x03') goto LAB_0002327c;\n    uVar1 = *(ushort *)(param_1 + 0x1f0);\n  }\n  else {\n    if (*(char *)(param_1 + 0x1ff) != '\x03') goto LAB_0002327c;\n    uVar1 = *(ushort *)(param_1 + 0x1f0);\n  }\n  if ((int)(uint)uVar1 < *(int *)(param_1 + 500)) {\n    (*(code *)PTR_png_benign_error_000533b8)(param_1,PTR_s_nt_0005301c + -0x1f0);\n  }\nLAB_0002327c:\n  puVar7 = PTR_s_nt_0005301c + -0x1ac;\n  puVar6 = PTR_s_nt_0005301c + -0x1c4;\n  do {\n    while( true ) {\n      iVar2 = FUN_0002fa20(param_1);\n      puVar5 = *(undefined1 **)(param_1 + 0x1cc);\n      if ((puVar5 == (undefined1 *)0x49444154) ||\n         ((*(uint *)(param_1 + 0x124) = *(uint *)(param_1 + 0x124) | 0x2000,\n          pcVar8 = (code *)PTR_FUN_000530b8, puVar5 != (undefined1 *)0x49454e44 &&\n          (pcVar8 = (code *)PTR_FUN_000530ac, puVar5 != &DAT_49484452)))) break;\nLAB_00023564:\n      (*pcVar8)(param_1,param_2,iVar2);\n      uVar4 = *(uint *)(param_1 + 0x124);\nLAB_000233ac:\n      if ((uVar4 & 0x10) != 0) {\n        return;\n      }\n    }\n    if (param_2 == 0) {\nLAB_0002340c:\n      FUN_0002b068(param_1,iVar2);\n      uVar4 = *(uint *)(param_1 + 0x124);\n      goto LAB_000233ac;\n    }\n    iVar3 = FUN_00015610(param_1,puVar5);\n    if (iVar3 == 0) {\n      if (puVar5 == (undefined1 *)0x49444154) {\n        if ((iVar2 == 0) || ((*(uint *)(param_1 + 0x128) & 8) != 0)) {\n          if ((*(uint *)(param_1 + 0x124) & 0x2000) != 0) {\n            (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar7);\n          }\n        }\n        else {\n          (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar7);\n        }\n        goto LAB_0002340c;\n      }\n      pcVar8 = (code *)PTR_FUN_000530dc;\n      if ((((((puVar5 == (undefined1 *)0x504c5445) ||\n             (pcVar8 = (code *)PTR_FUN_000530fc, puVar5 == &DAT_624b4744)) ||\n            (pcVar8 = (code *)PTR_FUN_000530e8, puVar5 == (undefined1 *)0x6348524d)) ||\n           ((pcVar8 = (code *)PTR_FUN_00053180, puVar5 == (undefined1 *)0x65584966 ||\n            (pcVar8 = (code *)PTR_FUN_000530e0, puVar5 == (undefined1 *)0x67414d41)))) ||\n          (((pcVar8 = (code *)PTR_FUN_00053100, puVar5 == (undefined1 *)0x68495354 ||\n            ((pcVar8 = (code *)PTR_FUN_00053108, puVar5 == (undefined1 *)0x6f464673 ||\n             (pcVar8 = (code *)PTR_FUN_0005310c, puVar5 == (undefined1 *)0x7043414c)))) ||\n           (pcVar8 = (code *)PTR_FUN_00053118, puVar5 == (undefined1 *)0x7343414c)))) ||\n         (((((pcVar8 = (code *)PTR_FUN_00053104, puVar5 == &DAT_70485973 ||\n             (pcVar8 = (code *)PTR_FUN_000530e4, puVar5 == (undefined1 *)0x73424954)) ||\n            (pcVar8 = (code *)PTR_FUN_000530ec, puVar5 == (undefined1 *)0x73524742)) ||\n           (((pcVar8 = (code *)PTR_FUN_000530f0, puVar5 == (undefined1 *)0x69434350 ||\n             (pcVar8 = (code *)PTR_FUN_000530f4, puVar5 == (undefined1 *)0x73504c54)) ||\n            ((pcVar8 = (code *)PTR_FUN_00053110, puVar5 == (undefined1 *)0x74455874 ||\n             ((pcVar8 = (code *)PTR_FUN_00053114, puVar5 == (undefined1 *)0x74494d45 ||\n              (pcVar8 = (code *)PTR_FUN_000530f8, puVar5 == (undefined1 *)0x74524e53)))))))) ||\n          ((pcVar8 = (code *)PTR_FUN_0005311c, puVar5 == (undefined1 *)0x7a545874 ||\n           (iVar3 = 0, pcVar8 = (code *)PTR_FUN_00053124, puVar5 == (undefined1 *)0x69545874))))))\n      goto LAB_00023564;\nLAB_00023394:\n      FUN_0002f630(param_1,param_2,iVar2,iVar3);\nLAB_000233a8:\n      uVar4 = *(uint *)(param_1 + 0x124);\n      goto LAB_000233ac;\n    }\n    if (puVar5 == (undefined1 *)0x49444154) {\n      if ((iVar2 == 0) || ((*(uint *)(param_1 + 0x128) & 8) != 0)) {\n        if ((*(uint *)(param_1 + 0x124) & 0x2000) != 0) {\n          (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar6);\n        }\n      }\n      else {\n        (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar6);\n      }\n      goto LAB_00023394;\n    }\n    FUN_0002f630(param_1,param_2,iVar2,iVar3);\n    if (puVar5 != (undefined1 *)0x504c5445) goto LAB_000233a8;\n    uVar4 = *(uint *)(param_1 + 0x124);\n    *(uint *)(param_1 + 0x124) = uVar4 | 2;\n    if ((uVar4 & 0x10) != 0) {\n      return;\n    }\n  } while( true );\n}" { (declaration "ushort uVar1;" type_identifier identifier ;) (declaration "int iVar2;" primitive_type identifier ;) (declaration "int iVar3;" primitive_type identifier ;) (declaration "uint uVar4;" type_identifier identifier ;) (declaration "undefined1 *puVar5;" type_identifier (pointer_declarator "*puVar5" * identifier) ;) (declaration "undefined *puVar6;" type_identifier (pointer_declarator "*puVar6" * identifier) ;) (declaration "undefined *puVar7;" type_identifier (pointer_declarator "*puVar7" * identifier) ;) (declaration "code *pcVar8;" type_identifier (pointer_declarator "*pcVar8" * identifier) ;) (if_statement "if (param_1 == 0) {\n    return;\n  }" if (parenthesized_expression "(param_1 == 0)" ( (binary_expression "param_1 == 0" identifier == number_literal) )) (compound_statement "{\n    return;\n  }" { (return_statement "return;" return ;) })) (expression_statement "iVar2 = FUN_00015610(param_1,0x49444154);" (assignment_expression "iVar2 = FUN_00015610(param_1,0x49444154)" identifier = (call_expression "FUN_00015610(param_1,0x49444154)" identifier (argument_list "(param_1,0x49444154)" ( identifier , number_literal )))) ;) (if_statement "if (iVar2 == 0) {\n    FUN_000309b0(param_1);\n    if (*(char *)(param_1 + 0x1ff) != '\x03') goto LAB_0002327c;\n    uVar1 = *(ushort *)(param_1 + 0x1f0);\n  }\n  else {\n    if (*(char *)(param_1 + 0x1ff) != '\x03') goto LAB_0002327c;\n    uVar1 = *(ushort *)(param_1 + 0x1f0);\n  }" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (compound_statement "{\n    FUN_000309b0(param_1);\n    if (*(char *)(param_1 + 0x1ff) != '\x03') goto LAB_0002327c;\n    uVar1 = *(ushort *)(param_1 + 0x1f0);\n  }" { (expression_statement "FUN_000309b0(param_1);" (call_expression "FUN_000309b0(param_1)" identifier (argument_list "(param_1)" ( identifier ))) ;) (if_statement "if (*(char *)(param_1 + 0x1ff) != '\x03') goto LAB_0002327c;" if (parenthesized_expression "(*(char *)(param_1 + 0x1ff) != '\x03')" ( (binary_expression "*(char *)(param_1 + 0x1ff) != '\x03'" (pointer_expression "*(char *)(param_1 + 0x1ff)" * (cast_expression "(char *)(param_1 + 0x1ff)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x1ff)" ( (binary_expression "param_1 + 0x1ff" identifier + number_literal) )))) != (char_literal "'\x03'" ' escape_sequence ')) )) (goto_statement "goto LAB_0002327c;" goto statement_identifier ;)) (expression_statement "uVar1 = *(ushort *)(param_1 + 0x1f0);" (assignment_expression "uVar1 = *(ushort *)(param_1 + 0x1f0)" identifier = (pointer_expression "*(ushort *)(param_1 + 0x1f0)" * (cast_expression "(ushort *)(param_1 + 0x1f0)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x1f0)" ( (binary_expression "param_1 + 0x1f0" identifier + number_literal) ))))) ;) }) (else_clause "else {\n    if (*(char *)(param_1 + 0x1ff) != '\x03') goto LAB_0002327c;\n    uVar1 = *(ushort *)(param_1 + 0x1f0);\n  }" else (compound_statement "{\n    if (*(char *)(param_1 + 0x1ff) != '\x03') goto LAB_0002327c;\n    uVar1 = *(ushort *)(param_1 + 0x1f0);\n  }" { (if_statement "if (*(char *)(param_1 + 0x1ff) != '\x03') goto LAB_0002327c;" if (parenthesized_expression "(*(char *)(param_1 + 0x1ff) != '\x03')" ( (binary_expression "*(char *)(param_1 + 0x1ff) != '\x03'" (pointer_expression "*(char *)(param_1 + 0x1ff)" * (cast_expression "(char *)(param_1 + 0x1ff)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x1ff)" ( (binary_expression "param_1 + 0x1ff" identifier + number_literal) )))) != (char_literal "'\x03'" ' escape_sequence ')) )) (goto_statement "goto LAB_0002327c;" goto statement_identifier ;)) (expression_statement "uVar1 = *(ushort *)(param_1 + 0x1f0);" (assignment_expression "uVar1 = *(ushort *)(param_1 + 0x1f0)" identifier = (pointer_expression "*(ushort *)(param_1 + 0x1f0)" * (cast_expression "(ushort *)(param_1 + 0x1f0)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x1f0)" ( (binary_expression "param_1 + 0x1f0" identifier + number_literal) ))))) ;) }))) (if_statement "if ((int)(uint)uVar1 < *(int *)(param_1 + 500)) {\n    (*(code *)PTR_png_benign_error_000533b8)(param_1,PTR_s_nt_0005301c + -0x1f0);\n  }" if (parenthesized_expression "((int)(uint)uVar1 < *(int *)(param_1 + 500))" ( (binary_expression "(int)(uint)uVar1 < *(int *)(param_1 + 500)" (cast_expression "(int)(uint)uVar1" ( (type_descriptor "int" primitive_type) ) (cast_expression "(uint)uVar1" ( (type_descriptor "uint" type_identifier) ) identifier)) < (pointer_expression "*(int *)(param_1 + 500)" * (cast_expression "(int *)(param_1 + 500)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 500)" ( (binary_expression "param_1 + 500" identifier + number_literal) ))))) )) (compound_statement "{\n    (*(code *)PTR_png_benign_error_000533b8)(param_1,PTR_s_nt_0005301c + -0x1f0);\n  }" { (expression_statement "(*(code *)PTR_png_benign_error_000533b8)(param_1,PTR_s_nt_0005301c + -0x1f0);" (call_expression "(*(code *)PTR_png_benign_error_000533b8)(param_1,PTR_s_nt_0005301c + -0x1f0)" (parenthesized_expression "(*(code *)PTR_png_benign_error_000533b8)" ( (pointer_expression "*(code *)PTR_png_benign_error_000533b8" * (cast_expression "(code *)PTR_png_benign_error_000533b8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_1,PTR_s_nt_0005301c + -0x1f0)" ( identifier , (binary_expression "PTR_s_nt_0005301c + -0x1f0" identifier + number_literal) ))) ;) })) (labeled_statement "LAB_0002327c:\n  puVar7 = PTR_s_nt_0005301c + -0x1ac;" statement_identifier : (expression_statement "puVar7 = PTR_s_nt_0005301c + -0x1ac;" (assignment_expression "puVar7 = PTR_s_nt_0005301c + -0x1ac" identifier = (binary_expression "PTR_s_nt_0005301c + -0x1ac" identifier + number_literal)) ;)) (expression_statement "puVar6 = PTR_s_nt_0005301c + -0x1c4;" (assignment_expression "puVar6 = PTR_s_nt_0005301c + -0x1c4" identifier = (binary_expression "PTR_s_nt_0005301c + -0x1c4" identifier + number_literal)) ;) (do_statement "do {\n    while( true ) {\n      iVar2 = FUN_0002fa20(param_1);\n      puVar5 = *(undefined1 **)(param_1 + 0x1cc);\n      if ((puVar5 == (undefined1 *)0x49444154) ||\n         ((*(uint *)(param_1 + 0x124) = *(uint *)(param_1 + 0x124) | 0x2000,\n          pcVar8 = (code *)PTR_FUN_000530b8, puVar5 != (undefined1 *)0x49454e44 &&\n          (pcVar8 = (code *)PTR_FUN_000530ac, puVar5 != &DAT_49484452)))) break;\nLAB_00023564:\n      (*pcVar8)(param_1,param_2,iVar2);\n      uVar4 = *(uint *)(param_1 + 0x124);\nLAB_000233ac:\n      if ((uVar4 & 0x10) != 0) {\n        return;\n      }\n    }\n    if (param_2 == 0) {\nLAB_0002340c:\n      FUN_0002b068(param_1,iVar2);\n      uVar4 = *(uint *)(param_1 + 0x124);\n      goto LAB_000233ac;\n    }\n    iVar3 = FUN_00015610(param_1,puVar5);\n    if (iVar3 == 0) {\n      if (puVar5 == (undefined1 *)0x49444154) {\n        if ((iVar2 == 0) || ((*(uint *)(param_1 + 0x128) & 8) != 0)) {\n          if ((*(uint *)(param_1 + 0x124) & 0x2000) != 0) {\n            (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar7);\n          }\n        }\n        else {\n          (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar7);\n        }\n        goto LAB_0002340c;\n      }\n      pcVar8 = (code *)PTR_FUN_000530dc;\n      if ((((((puVar5 == (undefined1 *)0x504c5445) ||\n             (pcVar8 = (code *)PTR_FUN_000530fc, puVar5 == &DAT_624b4744)) ||\n            (pcVar8 = (code *)PTR_FUN_000530e8, puVar5 == (undefined1 *)0x6348524d)) ||\n           ((pcVar8 = (code *)PTR_FUN_00053180, puVar5 == (undefined1 *)0x65584966 ||\n            (pcVar8 = (code *)PTR_FUN_000530e0, puVar5 == (undefined1 *)0x67414d41)))) ||\n          (((pcVar8 = (code *)PTR_FUN_00053100, puVar5 == (undefined1 *)0x68495354 ||\n            ((pcVar8 = (code *)PTR_FUN_00053108, puVar5 == (undefined1 *)0x6f464673 ||\n             (pcVar8 = (code *)PTR_FUN_0005310c, puVar5 == (undefined1 *)0x7043414c)))) ||\n           (pcVar8 = (code *)PTR_FUN_00053118, puVar5 == (undefined1 *)0x7343414c)))) ||\n         (((((pcVar8 = (code *)PTR_FUN_00053104, puVar5 == &DAT_70485973 ||\n             (pcVar8 = (code *)PTR_FUN_000530e4, puVar5 == (undefined1 *)0x73424954)) ||\n            (pcVar8 = (code *)PTR_FUN_000530ec, puVar5 == (undefined1 *)0x73524742)) ||\n           (((pcVar8 = (code *)PTR_FUN_000530f0, puVar5 == (undefined1 *)0x69434350 ||\n             (pcVar8 = (code *)PTR_FUN_000530f4, puVar5 == (undefined1 *)0x73504c54)) ||\n            ((pcVar8 = (code *)PTR_FUN_00053110, puVar5 == (undefined1 *)0x74455874 ||\n             ((pcVar8 = (code *)PTR_FUN_00053114, puVar5 == (undefined1 *)0x74494d45 ||\n              (pcVar8 = (code *)PTR_FUN_000530f8, puVar5 == (undefined1 *)0x74524e53)))))))) ||\n          ((pcVar8 = (code *)PTR_FUN_0005311c, puVar5 == (undefined1 *)0x7a545874 ||\n           (iVar3 = 0, pcVar8 = (code *)PTR_FUN_00053124, puVar5 == (undefined1 *)0x69545874))))))\n      goto LAB_00023564;\nLAB_00023394:\n      FUN_0002f630(param_1,param_2,iVar2,iVar3);\nLAB_000233a8:\n      uVar4 = *(uint *)(param_1 + 0x124);\n      goto LAB_000233ac;\n    }\n    if (puVar5 == (undefined1 *)0x49444154) {\n      if ((iVar2 == 0) || ((*(uint *)(param_1 + 0x128) & 8) != 0)) {\n        if ((*(uint *)(param_1 + 0x124) & 0x2000) != 0) {\n          (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar6);\n        }\n      }\n      else {\n        (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar6);\n      }\n      goto LAB_00023394;\n    }\n    FUN_0002f630(param_1,param_2,iVar2,iVar3);\n    if (puVar5 != (undefined1 *)0x504c5445) goto LAB_000233a8;\n    uVar4 = *(uint *)(param_1 + 0x124);\n    *(uint *)(param_1 + 0x124) = uVar4 | 2;\n    if ((uVar4 & 0x10) != 0) {\n      return;\n    }\n  } while( true );" do (compound_statement "{\n    while( true ) {\n      iVar2 = FUN_0002fa20(param_1);\n      puVar5 = *(undefined1 **)(param_1 + 0x1cc);\n      if ((puVar5 == (undefined1 *)0x49444154) ||\n         ((*(uint *)(param_1 + 0x124) = *(uint *)(param_1 + 0x124) | 0x2000,\n          pcVar8 = (code *)PTR_FUN_000530b8, puVar5 != (undefined1 *)0x49454e44 &&\n          (pcVar8 = (code *)PTR_FUN_000530ac, puVar5 != &DAT_49484452)))) break;\nLAB_00023564:\n      (*pcVar8)(param_1,param_2,iVar2);\n      uVar4 = *(uint *)(param_1 + 0x124);\nLAB_000233ac:\n      if ((uVar4 & 0x10) != 0) {\n        return;\n      }\n    }\n    if (param_2 == 0) {\nLAB_0002340c:\n      FUN_0002b068(param_1,iVar2);\n      uVar4 = *(uint *)(param_1 + 0x124);\n      goto LAB_000233ac;\n    }\n    iVar3 = FUN_00015610(param_1,puVar5);\n    if (iVar3 == 0) {\n      if (puVar5 == (undefined1 *)0x49444154) {\n        if ((iVar2 == 0) || ((*(uint *)(param_1 + 0x128) & 8) != 0)) {\n          if ((*(uint *)(param_1 + 0x124) & 0x2000) != 0) {\n            (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar7);\n          }\n        }\n        else {\n          (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar7);\n        }\n        goto LAB_0002340c;\n      }\n      pcVar8 = (code *)PTR_FUN_000530dc;\n      if ((((((puVar5 == (undefined1 *)0x504c5445) ||\n             (pcVar8 = (code *)PTR_FUN_000530fc, puVar5 == &DAT_624b4744)) ||\n            (pcVar8 = (code *)PTR_FUN_000530e8, puVar5 == (undefined1 *)0x6348524d)) ||\n           ((pcVar8 = (code *)PTR_FUN_00053180, puVar5 == (undefined1 *)0x65584966 ||\n            (pcVar8 = (code *)PTR_FUN_000530e0, puVar5 == (undefined1 *)0x67414d41)))) ||\n          (((pcVar8 = (code *)PTR_FUN_00053100, puVar5 == (undefined1 *)0x68495354 ||\n            ((pcVar8 = (code *)PTR_FUN_00053108, puVar5 == (undefined1 *)0x6f464673 ||\n             (pcVar8 = (code *)PTR_FUN_0005310c, puVar5 == (undefined1 *)0x7043414c)))) ||\n           (pcVar8 = (code *)PTR_FUN_00053118, puVar5 == (undefined1 *)0x7343414c)))) ||\n         (((((pcVar8 = (code *)PTR_FUN_00053104, puVar5 == &DAT_70485973 ||\n             (pcVar8 = (code *)PTR_FUN_000530e4, puVar5 == (undefined1 *)0x73424954)) ||\n            (pcVar8 = (code *)PTR_FUN_000530ec, puVar5 == (undefined1 *)0x73524742)) ||\n           (((pcVar8 = (code *)PTR_FUN_000530f0, puVar5 == (undefined1 *)0x69434350 ||\n             (pcVar8 = (code *)PTR_FUN_000530f4, puVar5 == (undefined1 *)0x73504c54)) ||\n            ((pcVar8 = (code *)PTR_FUN_00053110, puVar5 == (undefined1 *)0x74455874 ||\n             ((pcVar8 = (code *)PTR_FUN_00053114, puVar5 == (undefined1 *)0x74494d45 ||\n              (pcVar8 = (code *)PTR_FUN_000530f8, puVar5 == (undefined1 *)0x74524e53)))))))) ||\n          ((pcVar8 = (code *)PTR_FUN_0005311c, puVar5 == (undefined1 *)0x7a545874 ||\n           (iVar3 = 0, pcVar8 = (code *)PTR_FUN_00053124, puVar5 == (undefined1 *)0x69545874))))))\n      goto LAB_00023564;\nLAB_00023394:\n      FUN_0002f630(param_1,param_2,iVar2,iVar3);\nLAB_000233a8:\n      uVar4 = *(uint *)(param_1 + 0x124);\n      goto LAB_000233ac;\n    }\n    if (puVar5 == (undefined1 *)0x49444154) {\n      if ((iVar2 == 0) || ((*(uint *)(param_1 + 0x128) & 8) != 0)) {\n        if ((*(uint *)(param_1 + 0x124) & 0x2000) != 0) {\n          (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar6);\n        }\n      }\n      else {\n        (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar6);\n      }\n      goto LAB_00023394;\n    }\n    FUN_0002f630(param_1,param_2,iVar2,iVar3);\n    if (puVar5 != (undefined1 *)0x504c5445) goto LAB_000233a8;\n    uVar4 = *(uint *)(param_1 + 0x124);\n    *(uint *)(param_1 + 0x124) = uVar4 | 2;\n    if ((uVar4 & 0x10) != 0) {\n      return;\n    }\n  }" { (while_statement "while( true ) {\n      iVar2 = FUN_0002fa20(param_1);\n      puVar5 = *(undefined1 **)(param_1 + 0x1cc);\n      if ((puVar5 == (undefined1 *)0x49444154) ||\n         ((*(uint *)(param_1 + 0x124) = *(uint *)(param_1 + 0x124) | 0x2000,\n          pcVar8 = (code *)PTR_FUN_000530b8, puVar5 != (undefined1 *)0x49454e44 &&\n          (pcVar8 = (code *)PTR_FUN_000530ac, puVar5 != &DAT_49484452)))) break;\nLAB_00023564:\n      (*pcVar8)(param_1,param_2,iVar2);\n      uVar4 = *(uint *)(param_1 + 0x124);\nLAB_000233ac:\n      if ((uVar4 & 0x10) != 0) {\n        return;\n      }\n    }" while (parenthesized_expression "( true )" ( true )) (compound_statement "{\n      iVar2 = FUN_0002fa20(param_1);\n      puVar5 = *(undefined1 **)(param_1 + 0x1cc);\n      if ((puVar5 == (undefined1 *)0x49444154) ||\n         ((*(uint *)(param_1 + 0x124) = *(uint *)(param_1 + 0x124) | 0x2000,\n          pcVar8 = (code *)PTR_FUN_000530b8, puVar5 != (undefined1 *)0x49454e44 &&\n          (pcVar8 = (code *)PTR_FUN_000530ac, puVar5 != &DAT_49484452)))) break;\nLAB_00023564:\n      (*pcVar8)(param_1,param_2,iVar2);\n      uVar4 = *(uint *)(param_1 + 0x124);\nLAB_000233ac:\n      if ((uVar4 & 0x10) != 0) {\n        return;\n      }\n    }" { (expression_statement "iVar2 = FUN_0002fa20(param_1);" (assignment_expression "iVar2 = FUN_0002fa20(param_1)" identifier = (call_expression "FUN_0002fa20(param_1)" identifier (argument_list "(param_1)" ( identifier )))) ;) (expression_statement "puVar5 = *(undefined1 **)(param_1 + 0x1cc);" (assignment_expression "puVar5 = *(undefined1 **)(param_1 + 0x1cc)" identifier = (pointer_expression "*(undefined1 **)(param_1 + 0x1cc)" * (cast_expression "(undefined1 **)(param_1 + 0x1cc)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0x1cc)" ( (binary_expression "param_1 + 0x1cc" identifier + number_literal) ))))) ;) (if_statement "if ((puVar5 == (undefined1 *)0x49444154) ||\n         ((*(uint *)(param_1 + 0x124) = *(uint *)(param_1 + 0x124) | 0x2000,\n          pcVar8 = (code *)PTR_FUN_000530b8, puVar5 != (undefined1 *)0x49454e44 &&\n          (pcVar8 = (code *)PTR_FUN_000530ac, puVar5 != &DAT_49484452)))) break;" if (parenthesized_expression "((puVar5 == (undefined1 *)0x49444154) ||\n         ((*(uint *)(param_1 + 0x124) = *(uint *)(param_1 + 0x124) | 0x2000,\n          pcVar8 = (code *)PTR_FUN_000530b8, puVar5 != (undefined1 *)0x49454e44 &&\n          (pcVar8 = (code *)PTR_FUN_000530ac, puVar5 != &DAT_49484452))))" ( (binary_expression "(puVar5 == (undefined1 *)0x49444154) ||\n         ((*(uint *)(param_1 + 0x124) = *(uint *)(param_1 + 0x124) | 0x2000,\n          pcVar8 = (code *)PTR_FUN_000530b8, puVar5 != (undefined1 *)0x49454e44 &&\n          (pcVar8 = (code *)PTR_FUN_000530ac, puVar5 != &DAT_49484452)))" (parenthesized_expression "(puVar5 == (undefined1 *)0x49444154)" ( (binary_expression "puVar5 == (undefined1 *)0x49444154" identifier == (cast_expression "(undefined1 *)0x49444154" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) || (parenthesized_expression "((*(uint *)(param_1 + 0x124) = *(uint *)(param_1 + 0x124) | 0x2000,\n          pcVar8 = (code *)PTR_FUN_000530b8, puVar5 != (undefined1 *)0x49454e44 &&\n          (pcVar8 = (code *)PTR_FUN_000530ac, puVar5 != &DAT_49484452)))" ( (parenthesized_expression "(*(uint *)(param_1 + 0x124) = *(uint *)(param_1 + 0x124) | 0x2000,\n          pcVar8 = (code *)PTR_FUN_000530b8, puVar5 != (undefined1 *)0x49454e44 &&\n          (pcVar8 = (code *)PTR_FUN_000530ac, puVar5 != &DAT_49484452))" ( (comma_expression "*(uint *)(param_1 + 0x124) = *(uint *)(param_1 + 0x124) | 0x2000,\n          pcVar8 = (code *)PTR_FUN_000530b8, puVar5 != (undefined1 *)0x49454e44 &&\n          (pcVar8 = (code *)PTR_FUN_000530ac, puVar5 != &DAT_49484452)" (assignment_expression "*(uint *)(param_1 + 0x124) = *(uint *)(param_1 + 0x124) | 0x2000" (pointer_expression "*(uint *)(param_1 + 0x124)" * (cast_expression "(uint *)(param_1 + 0x124)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x124)" ( (binary_expression "param_1 + 0x124" identifier + number_literal) )))) = (binary_expression "*(uint *)(param_1 + 0x124) | 0x2000" (pointer_expression "*(uint *)(param_1 + 0x124)" * (cast_expression "(uint *)(param_1 + 0x124)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x124)" ( (binary_expression "param_1 + 0x124" identifier + number_literal) )))) | number_literal)) , (comma_expression "pcVar8 = (code *)PTR_FUN_000530b8, puVar5 != (undefined1 *)0x49454e44 &&\n          (pcVar8 = (code *)PTR_FUN_000530ac, puVar5 != &DAT_49484452)" (assignment_expression "pcVar8 = (code *)PTR_FUN_000530b8" identifier = (cast_expression "(code *)PTR_FUN_000530b8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , (binary_expression "puVar5 != (undefined1 *)0x49454e44 &&\n          (pcVar8 = (code *)PTR_FUN_000530ac, puVar5 != &DAT_49484452)" (binary_expression "puVar5 != (undefined1 *)0x49454e44" identifier != (cast_expression "(undefined1 *)0x49454e44" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) && (parenthesized_expression "(pcVar8 = (code *)PTR_FUN_000530ac, puVar5 != &DAT_49484452)" ( (comma_expression "pcVar8 = (code *)PTR_FUN_000530ac, puVar5 != &DAT_49484452" (assignment_expression "pcVar8 = (code *)PTR_FUN_000530ac" identifier = (cast_expression "(code *)PTR_FUN_000530ac" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , (binary_expression "puVar5 != &DAT_49484452" identifier != (pointer_expression "&DAT_49484452" & identifier))) ))))) )) ))) )) (break_statement "break;" break ;)) (labeled_statement "LAB_00023564:\n      (*pcVar8)(param_1,param_2,iVar2);" statement_identifier : (expression_statement "(*pcVar8)(param_1,param_2,iVar2);" (call_expression "(*pcVar8)(param_1,param_2,iVar2)" (parenthesized_expression "(*pcVar8)" ( (pointer_expression "*pcVar8" * identifier) )) (argument_list "(param_1,param_2,iVar2)" ( identifier , identifier , identifier ))) ;)) (expression_statement "uVar4 = *(uint *)(param_1 + 0x124);" (assignment_expression "uVar4 = *(uint *)(param_1 + 0x124)" identifier = (pointer_expression "*(uint *)(param_1 + 0x124)" * (cast_expression "(uint *)(param_1 + 0x124)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x124)" ( (binary_expression "param_1 + 0x124" identifier + number_literal) ))))) ;) (labeled_statement "LAB_000233ac:\n      if ((uVar4 & 0x10) != 0) {\n        return;\n      }" statement_identifier : (if_statement "if ((uVar4 & 0x10) != 0) {\n        return;\n      }" if (parenthesized_expression "((uVar4 & 0x10) != 0)" ( (binary_expression "(uVar4 & 0x10) != 0" (parenthesized_expression "(uVar4 & 0x10)" ( (binary_expression "uVar4 & 0x10" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n        return;\n      }" { (return_statement "return;" return ;) }))) })) (if_statement "if (param_2 == 0) {\nLAB_0002340c:\n      FUN_0002b068(param_1,iVar2);\n      uVar4 = *(uint *)(param_1 + 0x124);\n      goto LAB_000233ac;\n    }" if (parenthesized_expression "(param_2 == 0)" ( (binary_expression "param_2 == 0" identifier == number_literal) )) (compound_statement "{\nLAB_0002340c:\n      FUN_0002b068(param_1,iVar2);\n      uVar4 = *(uint *)(param_1 + 0x124);\n      goto LAB_000233ac;\n    }" { (labeled_statement "LAB_0002340c:\n      FUN_0002b068(param_1,iVar2);" statement_identifier : (expression_statement "FUN_0002b068(param_1,iVar2);" (call_expression "FUN_0002b068(param_1,iVar2)" identifier (argument_list "(param_1,iVar2)" ( identifier , identifier ))) ;)) (expression_statement "uVar4 = *(uint *)(param_1 + 0x124);" (assignment_expression "uVar4 = *(uint *)(param_1 + 0x124)" identifier = (pointer_expression "*(uint *)(param_1 + 0x124)" * (cast_expression "(uint *)(param_1 + 0x124)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x124)" ( (binary_expression "param_1 + 0x124" identifier + number_literal) ))))) ;) (goto_statement "goto LAB_000233ac;" goto statement_identifier ;) })) (expression_statement "iVar3 = FUN_00015610(param_1,puVar5);" (assignment_expression "iVar3 = FUN_00015610(param_1,puVar5)" identifier = (call_expression "FUN_00015610(param_1,puVar5)" identifier (argument_list "(param_1,puVar5)" ( identifier , identifier )))) ;) (if_statement "if (iVar3 == 0) {\n      if (puVar5 == (undefined1 *)0x49444154) {\n        if ((iVar2 == 0) || ((*(uint *)(param_1 + 0x128) & 8) != 0)) {\n          if ((*(uint *)(param_1 + 0x124) & 0x2000) != 0) {\n            (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar7);\n          }\n        }\n        else {\n          (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar7);\n        }\n        goto LAB_0002340c;\n      }\n      pcVar8 = (code *)PTR_FUN_000530dc;\n      if ((((((puVar5 == (undefined1 *)0x504c5445) ||\n             (pcVar8 = (code *)PTR_FUN_000530fc, puVar5 == &DAT_624b4744)) ||\n            (pcVar8 = (code *)PTR_FUN_000530e8, puVar5 == (undefined1 *)0x6348524d)) ||\n           ((pcVar8 = (code *)PTR_FUN_00053180, puVar5 == (undefined1 *)0x65584966 ||\n            (pcVar8 = (code *)PTR_FUN_000530e0, puVar5 == (undefined1 *)0x67414d41)))) ||\n          (((pcVar8 = (code *)PTR_FUN_00053100, puVar5 == (undefined1 *)0x68495354 ||\n            ((pcVar8 = (code *)PTR_FUN_00053108, puVar5 == (undefined1 *)0x6f464673 ||\n             (pcVar8 = (code *)PTR_FUN_0005310c, puVar5 == (undefined1 *)0x7043414c)))) ||\n           (pcVar8 = (code *)PTR_FUN_00053118, puVar5 == (undefined1 *)0x7343414c)))) ||\n         (((((pcVar8 = (code *)PTR_FUN_00053104, puVar5 == &DAT_70485973 ||\n             (pcVar8 = (code *)PTR_FUN_000530e4, puVar5 == (undefined1 *)0x73424954)) ||\n            (pcVar8 = (code *)PTR_FUN_000530ec, puVar5 == (undefined1 *)0x73524742)) ||\n           (((pcVar8 = (code *)PTR_FUN_000530f0, puVar5 == (undefined1 *)0x69434350 ||\n             (pcVar8 = (code *)PTR_FUN_000530f4, puVar5 == (undefined1 *)0x73504c54)) ||\n            ((pcVar8 = (code *)PTR_FUN_00053110, puVar5 == (undefined1 *)0x74455874 ||\n             ((pcVar8 = (code *)PTR_FUN_00053114, puVar5 == (undefined1 *)0x74494d45 ||\n              (pcVar8 = (code *)PTR_FUN_000530f8, puVar5 == (undefined1 *)0x74524e53)))))))) ||\n          ((pcVar8 = (code *)PTR_FUN_0005311c, puVar5 == (undefined1 *)0x7a545874 ||\n           (iVar3 = 0, pcVar8 = (code *)PTR_FUN_00053124, puVar5 == (undefined1 *)0x69545874))))))\n      goto LAB_00023564;\nLAB_00023394:\n      FUN_0002f630(param_1,param_2,iVar2,iVar3);\nLAB_000233a8:\n      uVar4 = *(uint *)(param_1 + 0x124);\n      goto LAB_000233ac;\n    }" if (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) (compound_statement "{\n      if (puVar5 == (undefined1 *)0x49444154) {\n        if ((iVar2 == 0) || ((*(uint *)(param_1 + 0x128) & 8) != 0)) {\n          if ((*(uint *)(param_1 + 0x124) & 0x2000) != 0) {\n            (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar7);\n          }\n        }\n        else {\n          (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar7);\n        }\n        goto LAB_0002340c;\n      }\n      pcVar8 = (code *)PTR_FUN_000530dc;\n      if ((((((puVar5 == (undefined1 *)0x504c5445) ||\n             (pcVar8 = (code *)PTR_FUN_000530fc, puVar5 == &DAT_624b4744)) ||\n            (pcVar8 = (code *)PTR_FUN_000530e8, puVar5 == (undefined1 *)0x6348524d)) ||\n           ((pcVar8 = (code *)PTR_FUN_00053180, puVar5 == (undefined1 *)0x65584966 ||\n            (pcVar8 = (code *)PTR_FUN_000530e0, puVar5 == (undefined1 *)0x67414d41)))) ||\n          (((pcVar8 = (code *)PTR_FUN_00053100, puVar5 == (undefined1 *)0x68495354 ||\n            ((pcVar8 = (code *)PTR_FUN_00053108, puVar5 == (undefined1 *)0x6f464673 ||\n             (pcVar8 = (code *)PTR_FUN_0005310c, puVar5 == (undefined1 *)0x7043414c)))) ||\n           (pcVar8 = (code *)PTR_FUN_00053118, puVar5 == (undefined1 *)0x7343414c)))) ||\n         (((((pcVar8 = (code *)PTR_FUN_00053104, puVar5 == &DAT_70485973 ||\n             (pcVar8 = (code *)PTR_FUN_000530e4, puVar5 == (undefined1 *)0x73424954)) ||\n            (pcVar8 = (code *)PTR_FUN_000530ec, puVar5 == (undefined1 *)0x73524742)) ||\n           (((pcVar8 = (code *)PTR_FUN_000530f0, puVar5 == (undefined1 *)0x69434350 ||\n             (pcVar8 = (code *)PTR_FUN_000530f4, puVar5 == (undefined1 *)0x73504c54)) ||\n            ((pcVar8 = (code *)PTR_FUN_00053110, puVar5 == (undefined1 *)0x74455874 ||\n             ((pcVar8 = (code *)PTR_FUN_00053114, puVar5 == (undefined1 *)0x74494d45 ||\n              (pcVar8 = (code *)PTR_FUN_000530f8, puVar5 == (undefined1 *)0x74524e53)))))))) ||\n          ((pcVar8 = (code *)PTR_FUN_0005311c, puVar5 == (undefined1 *)0x7a545874 ||\n           (iVar3 = 0, pcVar8 = (code *)PTR_FUN_00053124, puVar5 == (undefined1 *)0x69545874))))))\n      goto LAB_00023564;\nLAB_00023394:\n      FUN_0002f630(param_1,param_2,iVar2,iVar3);\nLAB_000233a8:\n      uVar4 = *(uint *)(param_1 + 0x124);\n      goto LAB_000233ac;\n    }" { (if_statement "if (puVar5 == (undefined1 *)0x49444154) {\n        if ((iVar2 == 0) || ((*(uint *)(param_1 + 0x128) & 8) != 0)) {\n          if ((*(uint *)(param_1 + 0x124) & 0x2000) != 0) {\n            (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar7);\n          }\n        }\n        else {\n          (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar7);\n        }\n        goto LAB_0002340c;\n      }" if (parenthesized_expression "(puVar5 == (undefined1 *)0x49444154)" ( (binary_expression "puVar5 == (undefined1 *)0x49444154" identifier == (cast_expression "(undefined1 *)0x49444154" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        if ((iVar2 == 0) || ((*(uint *)(param_1 + 0x128) & 8) != 0)) {\n          if ((*(uint *)(param_1 + 0x124) & 0x2000) != 0) {\n            (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar7);\n          }\n        }\n        else {\n          (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar7);\n        }\n        goto LAB_0002340c;\n      }" { (if_statement "if ((iVar2 == 0) || ((*(uint *)(param_1 + 0x128) & 8) != 0)) {\n          if ((*(uint *)(param_1 + 0x124) & 0x2000) != 0) {\n            (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar7);\n          }\n        }\n        else {\n          (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar7);\n        }" if (parenthesized_expression "((iVar2 == 0) || ((*(uint *)(param_1 + 0x128) & 8) != 0))" ( (binary_expression "(iVar2 == 0) || ((*(uint *)(param_1 + 0x128) & 8) != 0)" (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) || (parenthesized_expression "((*(uint *)(param_1 + 0x128) & 8) != 0)" ( (binary_expression "(*(uint *)(param_1 + 0x128) & 8) != 0" (parenthesized_expression "(*(uint *)(param_1 + 0x128) & 8)" ( (binary_expression "*(uint *)(param_1 + 0x128) & 8" (pointer_expression "*(uint *)(param_1 + 0x128)" * (cast_expression "(uint *)(param_1 + 0x128)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x128)" ( (binary_expression "param_1 + 0x128" identifier + number_literal) )))) & number_literal) )) != number_literal) ))) )) (compound_statement "{\n          if ((*(uint *)(param_1 + 0x124) & 0x2000) != 0) {\n            (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar7);\n          }\n        }" { (if_statement "if ((*(uint *)(param_1 + 0x124) & 0x2000) != 0) {\n            (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar7);\n          }" if (parenthesized_expression "((*(uint *)(param_1 + 0x124) & 0x2000) != 0)" ( (binary_expression "(*(uint *)(param_1 + 0x124) & 0x2000) != 0" (parenthesized_expression "(*(uint *)(param_1 + 0x124) & 0x2000)" ( (binary_expression "*(uint *)(param_1 + 0x124) & 0x2000" (pointer_expression "*(uint *)(param_1 + 0x124)" * (cast_expression "(uint *)(param_1 + 0x124)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x124)" ( (binary_expression "param_1 + 0x124" identifier + number_literal) )))) & number_literal) )) != number_literal) )) (compound_statement "{\n            (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar7);\n          }" { (expression_statement "(*(code *)PTR_png_benign_error_000533b8)(param_1,puVar7);" (call_expression "(*(code *)PTR_png_benign_error_000533b8)(param_1,puVar7)" (parenthesized_expression "(*(code *)PTR_png_benign_error_000533b8)" ( (pointer_expression "*(code *)PTR_png_benign_error_000533b8" * (cast_expression "(code *)PTR_png_benign_error_000533b8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_1,puVar7)" ( identifier , identifier ))) ;) })) }) (else_clause "else {\n          (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar7);\n        }" else (compound_statement "{\n          (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar7);\n        }" { (expression_statement "(*(code *)PTR_png_benign_error_000533b8)(param_1,puVar7);" (call_expression "(*(code *)PTR_png_benign_error_000533b8)(param_1,puVar7)" (parenthesized_expression "(*(code *)PTR_png_benign_error_000533b8)" ( (pointer_expression "*(code *)PTR_png_benign_error_000533b8" * (cast_expression "(code *)PTR_png_benign_error_000533b8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_1,puVar7)" ( identifier , identifier ))) ;) }))) (goto_statement "goto LAB_0002340c;" goto statement_identifier ;) })) (expression_statement "pcVar8 = (code *)PTR_FUN_000530dc;" (assignment_expression "pcVar8 = (code *)PTR_FUN_000530dc" identifier = (cast_expression "(code *)PTR_FUN_000530dc" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (if_statement "if ((((((puVar5 == (undefined1 *)0x504c5445) ||\n             (pcVar8 = (code *)PTR_FUN_000530fc, puVar5 == &DAT_624b4744)) ||\n            (pcVar8 = (code *)PTR_FUN_000530e8, puVar5 == (undefined1 *)0x6348524d)) ||\n           ((pcVar8 = (code *)PTR_FUN_00053180, puVar5 == (undefined1 *)0x65584966 ||\n            (pcVar8 = (code *)PTR_FUN_000530e0, puVar5 == (undefined1 *)0x67414d41)))) ||\n          (((pcVar8 = (code *)PTR_FUN_00053100, puVar5 == (undefined1 *)0x68495354 ||\n            ((pcVar8 = (code *)PTR_FUN_00053108, puVar5 == (undefined1 *)0x6f464673 ||\n             (pcVar8 = (code *)PTR_FUN_0005310c, puVar5 == (undefined1 *)0x7043414c)))) ||\n           (pcVar8 = (code *)PTR_FUN_00053118, puVar5 == (undefined1 *)0x7343414c)))) ||\n         (((((pcVar8 = (code *)PTR_FUN_00053104, puVar5 == &DAT_70485973 ||\n             (pcVar8 = (code *)PTR_FUN_000530e4, puVar5 == (undefined1 *)0x73424954)) ||\n            (pcVar8 = (code *)PTR_FUN_000530ec, puVar5 == (undefined1 *)0x73524742)) ||\n           (((pcVar8 = (code *)PTR_FUN_000530f0, puVar5 == (undefined1 *)0x69434350 ||\n             (pcVar8 = (code *)PTR_FUN_000530f4, puVar5 == (undefined1 *)0x73504c54)) ||\n            ((pcVar8 = (code *)PTR_FUN_00053110, puVar5 == (undefined1 *)0x74455874 ||\n             ((pcVar8 = (code *)PTR_FUN_00053114, puVar5 == (undefined1 *)0x74494d45 ||\n              (pcVar8 = (code *)PTR_FUN_000530f8, puVar5 == (undefined1 *)0x74524e53)))))))) ||\n          ((pcVar8 = (code *)PTR_FUN_0005311c, puVar5 == (undefined1 *)0x7a545874 ||\n           (iVar3 = 0, pcVar8 = (code *)PTR_FUN_00053124, puVar5 == (undefined1 *)0x69545874))))))\n      goto LAB_00023564;" if (parenthesized_expression "((((((puVar5 == (undefined1 *)0x504c5445) ||\n             (pcVar8 = (code *)PTR_FUN_000530fc, puVar5 == &DAT_624b4744)) ||\n            (pcVar8 = (code *)PTR_FUN_000530e8, puVar5 == (undefined1 *)0x6348524d)) ||\n           ((pcVar8 = (code *)PTR_FUN_00053180, puVar5 == (undefined1 *)0x65584966 ||\n            (pcVar8 = (code *)PTR_FUN_000530e0, puVar5 == (undefined1 *)0x67414d41)))) ||\n          (((pcVar8 = (code *)PTR_FUN_00053100, puVar5 == (undefined1 *)0x68495354 ||\n            ((pcVar8 = (code *)PTR_FUN_00053108, puVar5 == (undefined1 *)0x6f464673 ||\n             (pcVar8 = (code *)PTR_FUN_0005310c, puVar5 == (undefined1 *)0x7043414c)))) ||\n           (pcVar8 = (code *)PTR_FUN_00053118, puVar5 == (undefined1 *)0x7343414c)))) ||\n         (((((pcVar8 = (code *)PTR_FUN_00053104, puVar5 == &DAT_70485973 ||\n             (pcVar8 = (code *)PTR_FUN_000530e4, puVar5 == (undefined1 *)0x73424954)) ||\n            (pcVar8 = (code *)PTR_FUN_000530ec, puVar5 == (undefined1 *)0x73524742)) ||\n           (((pcVar8 = (code *)PTR_FUN_000530f0, puVar5 == (undefined1 *)0x69434350 ||\n             (pcVar8 = (code *)PTR_FUN_000530f4, puVar5 == (undefined1 *)0x73504c54)) ||\n            ((pcVar8 = (code *)PTR_FUN_00053110, puVar5 == (undefined1 *)0x74455874 ||\n             ((pcVar8 = (code *)PTR_FUN_00053114, puVar5 == (undefined1 *)0x74494d45 ||\n              (pcVar8 = (code *)PTR_FUN_000530f8, puVar5 == (undefined1 *)0x74524e53)))))))) ||\n          ((pcVar8 = (code *)PTR_FUN_0005311c, puVar5 == (undefined1 *)0x7a545874 ||\n           (iVar3 = 0, pcVar8 = (code *)PTR_FUN_00053124, puVar5 == (undefined1 *)0x69545874))))))" ( (binary_expression "(((((puVar5 == (undefined1 *)0x504c5445) ||\n             (pcVar8 = (code *)PTR_FUN_000530fc, puVar5 == &DAT_624b4744)) ||\n            (pcVar8 = (code *)PTR_FUN_000530e8, puVar5 == (undefined1 *)0x6348524d)) ||\n           ((pcVar8 = (code *)PTR_FUN_00053180, puVar5 == (undefined1 *)0x65584966 ||\n            (pcVar8 = (code *)PTR_FUN_000530e0, puVar5 == (undefined1 *)0x67414d41)))) ||\n          (((pcVar8 = (code *)PTR_FUN_00053100, puVar5 == (undefined1 *)0x68495354 ||\n            ((pcVar8 = (code *)PTR_FUN_00053108, puVar5 == (undefined1 *)0x6f464673 ||\n             (pcVar8 = (code *)PTR_FUN_0005310c, puVar5 == (undefined1 *)0x7043414c)))) ||\n           (pcVar8 = (code *)PTR_FUN_00053118, puVar5 == (undefined1 *)0x7343414c)))) ||\n         (((((pcVar8 = (code *)PTR_FUN_00053104, puVar5 == &DAT_70485973 ||\n             (pcVar8 = (code *)PTR_FUN_000530e4, puVar5 == (undefined1 *)0x73424954)) ||\n            (pcVar8 = (code *)PTR_FUN_000530ec, puVar5 == (undefined1 *)0x73524742)) ||\n           (((pcVar8 = (code *)PTR_FUN_000530f0, puVar5 == (undefined1 *)0x69434350 ||\n             (pcVar8 = (code *)PTR_FUN_000530f4, puVar5 == (undefined1 *)0x73504c54)) ||\n            ((pcVar8 = (code *)PTR_FUN_00053110, puVar5 == (undefined1 *)0x74455874 ||\n             ((pcVar8 = (code *)PTR_FUN_00053114, puVar5 == (undefined1 *)0x74494d45 ||\n              (pcVar8 = (code *)PTR_FUN_000530f8, puVar5 == (undefined1 *)0x74524e53)))))))) ||\n          ((pcVar8 = (code *)PTR_FUN_0005311c, puVar5 == (undefined1 *)0x7a545874 ||\n           (iVar3 = 0, pcVar8 = (code *)PTR_FUN_00053124, puVar5 == (undefined1 *)0x69545874)))))" (parenthesized_expression "(((((puVar5 == (undefined1 *)0x504c5445) ||\n             (pcVar8 = (code *)PTR_FUN_000530fc, puVar5 == &DAT_624b4744)) ||\n            (pcVar8 = (code *)PTR_FUN_000530e8, puVar5 == (undefined1 *)0x6348524d)) ||\n           ((pcVar8 = (code *)PTR_FUN_00053180, puVar5 == (undefined1 *)0x65584966 ||\n            (pcVar8 = (code *)PTR_FUN_000530e0, puVar5 == (undefined1 *)0x67414d41)))) ||\n          (((pcVar8 = (code *)PTR_FUN_00053100, puVar5 == (undefined1 *)0x68495354 ||\n            ((pcVar8 = (code *)PTR_FUN_00053108, puVar5 == (undefined1 *)0x6f464673 ||\n             (pcVar8 = (code *)PTR_FUN_0005310c, puVar5 == (undefined1 *)0x7043414c)))) ||\n           (pcVar8 = (code *)PTR_FUN_00053118, puVar5 == (undefined1 *)0x7343414c))))" ( (binary_expression "((((puVar5 == (undefined1 *)0x504c5445) ||\n             (pcVar8 = (code *)PTR_FUN_000530fc, puVar5 == &DAT_624b4744)) ||\n            (pcVar8 = (code *)PTR_FUN_000530e8, puVar5 == (undefined1 *)0x6348524d)) ||\n           ((pcVar8 = (code *)PTR_FUN_00053180, puVar5 == (undefined1 *)0x65584966 ||\n            (pcVar8 = (code *)PTR_FUN_000530e0, puVar5 == (undefined1 *)0x67414d41)))) ||\n          (((pcVar8 = (code *)PTR_FUN_00053100, puVar5 == (undefined1 *)0x68495354 ||\n            ((pcVar8 = (code *)PTR_FUN_00053108, puVar5 == (undefined1 *)0x6f464673 ||\n             (pcVar8 = (code *)PTR_FUN_0005310c, puVar5 == (undefined1 *)0x7043414c)))) ||\n           (pcVar8 = (code *)PTR_FUN_00053118, puVar5 == (undefined1 *)0x7343414c)))" (parenthesized_expression "((((puVar5 == (undefined1 *)0x504c5445) ||\n             (pcVar8 = (code *)PTR_FUN_000530fc, puVar5 == &DAT_624b4744)) ||\n            (pcVar8 = (code *)PTR_FUN_000530e8, puVar5 == (undefined1 *)0x6348524d)) ||\n           ((pcVar8 = (code *)PTR_FUN_00053180, puVar5 == (undefined1 *)0x65584966 ||\n            (pcVar8 = (code *)PTR_FUN_000530e0, puVar5 == (undefined1 *)0x67414d41))))" ( (binary_expression "(((puVar5 == (undefined1 *)0x504c5445) ||\n             (pcVar8 = (code *)PTR_FUN_000530fc, puVar5 == &DAT_624b4744)) ||\n            (pcVar8 = (code *)PTR_FUN_000530e8, puVar5 == (undefined1 *)0x6348524d)) ||\n           ((pcVar8 = (code *)PTR_FUN_00053180, puVar5 == (undefined1 *)0x65584966 ||\n            (pcVar8 = (code *)PTR_FUN_000530e0, puVar5 == (undefined1 *)0x67414d41)))" (parenthesized_expression "(((puVar5 == (undefined1 *)0x504c5445) ||\n             (pcVar8 = (code *)PTR_FUN_000530fc, puVar5 == &DAT_624b4744)) ||\n            (pcVar8 = (code *)PTR_FUN_000530e8, puVar5 == (undefined1 *)0x6348524d))" ( (binary_expression "((puVar5 == (undefined1 *)0x504c5445) ||\n             (pcVar8 = (code *)PTR_FUN_000530fc, puVar5 == &DAT_624b4744)) ||\n            (pcVar8 = (code *)PTR_FUN_000530e8, puVar5 == (undefined1 *)0x6348524d)" (parenthesized_expression "((puVar5 == (undefined1 *)0x504c5445) ||\n             (pcVar8 = (code *)PTR_FUN_000530fc, puVar5 == &DAT_624b4744))" ( (binary_expression "(puVar5 == (undefined1 *)0x504c5445) ||\n             (pcVar8 = (code *)PTR_FUN_000530fc, puVar5 == &DAT_624b4744)" (parenthesized_expression "(puVar5 == (undefined1 *)0x504c5445)" ( (binary_expression "puVar5 == (undefined1 *)0x504c5445" identifier == (cast_expression "(undefined1 *)0x504c5445" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) || (parenthesized_expression "(pcVar8 = (code *)PTR_FUN_000530fc, puVar5 == &DAT_624b4744)" ( (comma_expression "pcVar8 = (code *)PTR_FUN_000530fc, puVar5 == &DAT_624b4744" (assignment_expression "pcVar8 = (code *)PTR_FUN_000530fc" identifier = (cast_expression "(code *)PTR_FUN_000530fc" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , (binary_expression "puVar5 == &DAT_624b4744" identifier == (pointer_expression "&DAT_624b4744" & identifier))) ))) )) || (parenthesized_expression "(pcVar8 = (code *)PTR_FUN_000530e8, puVar5 == (undefined1 *)0x6348524d)" ( (comma_expression "pcVar8 = (code *)PTR_FUN_000530e8, puVar5 == (undefined1 *)0x6348524d" (assignment_expression "pcVar8 = (code *)PTR_FUN_000530e8" identifier = (cast_expression "(code *)PTR_FUN_000530e8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , (binary_expression "puVar5 == (undefined1 *)0x6348524d" identifier == (cast_expression "(undefined1 *)0x6348524d" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) ))) )) || (parenthesized_expression "((pcVar8 = (code *)PTR_FUN_00053180, puVar5 == (undefined1 *)0x65584966 ||\n            (pcVar8 = (code *)PTR_FUN_000530e0, puVar5 == (undefined1 *)0x67414d41)))" ( (parenthesized_expression "(pcVar8 = (code *)PTR_FUN_00053180, puVar5 == (undefined1 *)0x65584966 ||\n            (pcVar8 = (code *)PTR_FUN_000530e0, puVar5 == (undefined1 *)0x67414d41))" ( (comma_expression "pcVar8 = (code *)PTR_FUN_00053180, puVar5 == (undefined1 *)0x65584966 ||\n            (pcVar8 = (code *)PTR_FUN_000530e0, puVar5 == (undefined1 *)0x67414d41)" (assignment_expression "pcVar8 = (code *)PTR_FUN_00053180" identifier = (cast_expression "(code *)PTR_FUN_00053180" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , (binary_expression "puVar5 == (undefined1 *)0x65584966 ||\n            (pcVar8 = (code *)PTR_FUN_000530e0, puVar5 == (undefined1 *)0x67414d41)" (binary_expression "puVar5 == (undefined1 *)0x65584966" identifier == (cast_expression "(undefined1 *)0x65584966" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) || (parenthesized_expression "(pcVar8 = (code *)PTR_FUN_000530e0, puVar5 == (undefined1 *)0x67414d41)" ( (comma_expression "pcVar8 = (code *)PTR_FUN_000530e0, puVar5 == (undefined1 *)0x67414d41" (assignment_expression "pcVar8 = (code *)PTR_FUN_000530e0" identifier = (cast_expression "(code *)PTR_FUN_000530e0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , (binary_expression "puVar5 == (undefined1 *)0x67414d41" identifier == (cast_expression "(undefined1 *)0x67414d41" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) )))) )) ))) )) || (parenthesized_expression "(((pcVar8 = (code *)PTR_FUN_00053100, puVar5 == (undefined1 *)0x68495354 ||\n            ((pcVar8 = (code *)PTR_FUN_00053108, puVar5 == (undefined1 *)0x6f464673 ||\n             (pcVar8 = (code *)PTR_FUN_0005310c, puVar5 == (undefined1 *)0x7043414c)))) ||\n           (pcVar8 = (code *)PTR_FUN_00053118, puVar5 == (undefined1 *)0x7343414c)))" ( (parenthesized_expression "((pcVar8 = (code *)PTR_FUN_00053100, puVar5 == (undefined1 *)0x68495354 ||\n            ((pcVar8 = (code *)PTR_FUN_00053108, puVar5 == (undefined1 *)0x6f464673 ||\n             (pcVar8 = (code *)PTR_FUN_0005310c, puVar5 == (undefined1 *)0x7043414c)))) ||\n           (pcVar8 = (code *)PTR_FUN_00053118, puVar5 == (undefined1 *)0x7343414c))" ( (binary_expression "(pcVar8 = (code *)PTR_FUN_00053100, puVar5 == (undefined1 *)0x68495354 ||\n            ((pcVar8 = (code *)PTR_FUN_00053108, puVar5 == (undefined1 *)0x6f464673 ||\n             (pcVar8 = (code *)PTR_FUN_0005310c, puVar5 == (undefined1 *)0x7043414c)))) ||\n           (pcVar8 = (code *)PTR_FUN_00053118, puVar5 == (undefined1 *)0x7343414c)" (parenthesized_expression "(pcVar8 = (code *)PTR_FUN_00053100, puVar5 == (undefined1 *)0x68495354 ||\n            ((pcVar8 = (code *)PTR_FUN_00053108, puVar5 == (undefined1 *)0x6f464673 ||\n             (pcVar8 = (code *)PTR_FUN_0005310c, puVar5 == (undefined1 *)0x7043414c))))" ( (comma_expression "pcVar8 = (code *)PTR_FUN_00053100, puVar5 == (undefined1 *)0x68495354 ||\n            ((pcVar8 = (code *)PTR_FUN_00053108, puVar5 == (undefined1 *)0x6f464673 ||\n             (pcVar8 = (code *)PTR_FUN_0005310c, puVar5 == (undefined1 *)0x7043414c)))" (assignment_expression "pcVar8 = (code *)PTR_FUN_00053100" identifier = (cast_expression "(code *)PTR_FUN_00053100" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , (binary_expression "puVar5 == (undefined1 *)0x68495354 ||\n            ((pcVar8 = (code *)PTR_FUN_00053108, puVar5 == (undefined1 *)0x6f464673 ||\n             (pcVar8 = (code *)PTR_FUN_0005310c, puVar5 == (undefined1 *)0x7043414c)))" (binary_expression "puVar5 == (undefined1 *)0x68495354" identifier == (cast_expression "(undefined1 *)0x68495354" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) || (parenthesized_expression "((pcVar8 = (code *)PTR_FUN_00053108, puVar5 == (undefined1 *)0x6f464673 ||\n             (pcVar8 = (code *)PTR_FUN_0005310c, puVar5 == (undefined1 *)0x7043414c)))" ( (parenthesized_expression "(pcVar8 = (code *)PTR_FUN_00053108, puVar5 == (undefined1 *)0x6f464673 ||\n             (pcVar8 = (code *)PTR_FUN_0005310c, puVar5 == (undefined1 *)0x7043414c))" ( (comma_expression "pcVar8 = (code *)PTR_FUN_00053108, puVar5 == (undefined1 *)0x6f464673 ||\n             (pcVar8 = (code *)PTR_FUN_0005310c, puVar5 == (undefined1 *)0x7043414c)" (assignment_expression "pcVar8 = (code *)PTR_FUN_00053108" identifier = (cast_expression "(code *)PTR_FUN_00053108" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , (binary_expression "puVar5 == (undefined1 *)0x6f464673 ||\n             (pcVar8 = (code *)PTR_FUN_0005310c, puVar5 == (undefined1 *)0x7043414c)" (binary_expression "puVar5 == (undefined1 *)0x6f464673" identifier == (cast_expression "(undefined1 *)0x6f464673" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) || (parenthesized_expression "(pcVar8 = (code *)PTR_FUN_0005310c, puVar5 == (undefined1 *)0x7043414c)" ( (comma_expression "pcVar8 = (code *)PTR_FUN_0005310c, puVar5 == (undefined1 *)0x7043414c" (assignment_expression "pcVar8 = (code *)PTR_FUN_0005310c" identifier = (cast_expression "(code *)PTR_FUN_0005310c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , (binary_expression "puVar5 == (undefined1 *)0x7043414c" identifier == (cast_expression "(undefined1 *)0x7043414c" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) )))) )) )))) )) || (parenthesized_expression "(pcVar8 = (code *)PTR_FUN_00053118, puVar5 == (undefined1 *)0x7343414c)" ( (comma_expression "pcVar8 = (code *)PTR_FUN_00053118, puVar5 == (undefined1 *)0x7343414c" (assignment_expression "pcVar8 = (code *)PTR_FUN_00053118" identifier = (cast_expression "(code *)PTR_FUN_00053118" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , (binary_expression "puVar5 == (undefined1 *)0x7343414c" identifier == (cast_expression "(undefined1 *)0x7343414c" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) ))) )) ))) )) || (parenthesized_expression "(((((pcVar8 = (code *)PTR_FUN_00053104, puVar5 == &DAT_70485973 ||\n             (pcVar8 = (code *)PTR_FUN_000530e4, puVar5 == (undefined1 *)0x73424954)) ||\n            (pcVar8 = (code *)PTR_FUN_000530ec, puVar5 == (undefined1 *)0x73524742)) ||\n           (((pcVar8 = (code *)PTR_FUN_000530f0, puVar5 == (undefined1 *)0x69434350 ||\n             (pcVar8 = (code *)PTR_FUN_000530f4, puVar5 == (undefined1 *)0x73504c54)) ||\n            ((pcVar8 = (code *)PTR_FUN_00053110, puVar5 == (undefined1 *)0x74455874 ||\n             ((pcVar8 = (code *)PTR_FUN_00053114, puVar5 == (undefined1 *)0x74494d45 ||\n              (pcVar8 = (code *)PTR_FUN_000530f8, puVar5 == (undefined1 *)0x74524e53)))))))) ||\n          ((pcVar8 = (code *)PTR_FUN_0005311c, puVar5 == (undefined1 *)0x7a545874 ||\n           (iVar3 = 0, pcVar8 = (code *)PTR_FUN_00053124, puVar5 == (undefined1 *)0x69545874)))))" ( (parenthesized_expression "((((pcVar8 = (code *)PTR_FUN_00053104, puVar5 == &DAT_70485973 ||\n             (pcVar8 = (code *)PTR_FUN_000530e4, puVar5 == (undefined1 *)0x73424954)) ||\n            (pcVar8 = (code *)PTR_FUN_000530ec, puVar5 == (undefined1 *)0x73524742)) ||\n           (((pcVar8 = (code *)PTR_FUN_000530f0, puVar5 == (undefined1 *)0x69434350 ||\n             (pcVar8 = (code *)PTR_FUN_000530f4, puVar5 == (undefined1 *)0x73504c54)) ||\n            ((pcVar8 = (code *)PTR_FUN_00053110, puVar5 == (undefined1 *)0x74455874 ||\n             ((pcVar8 = (code *)PTR_FUN_00053114, puVar5 == (undefined1 *)0x74494d45 ||\n              (pcVar8 = (code *)PTR_FUN_000530f8, puVar5 == (undefined1 *)0x74524e53)))))))) ||\n          ((pcVar8 = (code *)PTR_FUN_0005311c, puVar5 == (undefined1 *)0x7a545874 ||\n           (iVar3 = 0, pcVar8 = (code *)PTR_FUN_00053124, puVar5 == (undefined1 *)0x69545874))))" ( (binary_expression "(((pcVar8 = (code *)PTR_FUN_00053104, puVar5 == &DAT_70485973 ||\n             (pcVar8 = (code *)PTR_FUN_000530e4, puVar5 == (undefined1 *)0x73424954)) ||\n            (pcVar8 = (code *)PTR_FUN_000530ec, puVar5 == (undefined1 *)0x73524742)) ||\n           (((pcVar8 = (code *)PTR_FUN_000530f0, puVar5 == (undefined1 *)0x69434350 ||\n             (pcVar8 = (code *)PTR_FUN_000530f4, puVar5 == (undefined1 *)0x73504c54)) ||\n            ((pcVar8 = (code *)PTR_FUN_00053110, puVar5 == (undefined1 *)0x74455874 ||\n             ((pcVar8 = (code *)PTR_FUN_00053114, puVar5 == (undefined1 *)0x74494d45 ||\n              (pcVar8 = (code *)PTR_FUN_000530f8, puVar5 == (undefined1 *)0x74524e53)))))))) ||\n          ((pcVar8 = (code *)PTR_FUN_0005311c, puVar5 == (undefined1 *)0x7a545874 ||\n           (iVar3 = 0, pcVar8 = (code *)PTR_FUN_00053124, puVar5 == (undefined1 *)0x69545874)))" (parenthesized_expression "(((pcVar8 = (code *)PTR_FUN_00053104, puVar5 == &DAT_70485973 ||\n             (pcVar8 = (code *)PTR_FUN_000530e4, puVar5 == (undefined1 *)0x73424954)) ||\n            (pcVar8 = (code *)PTR_FUN_000530ec, puVar5 == (undefined1 *)0x73524742)) ||\n           (((pcVar8 = (code *)PTR_FUN_000530f0, puVar5 == (undefined1 *)0x69434350 ||\n             (pcVar8 = (code *)PTR_FUN_000530f4, puVar5 == (undefined1 *)0x73504c54)) ||\n            ((pcVar8 = (code *)PTR_FUN_00053110, puVar5 == (undefined1 *)0x74455874 ||\n             ((pcVar8 = (code *)PTR_FUN_00053114, puVar5 == (undefined1 *)0x74494d45 ||\n              (pcVar8 = (code *)PTR_FUN_000530f8, puVar5 == (undefined1 *)0x74524e53))))))))" ( (binary_expression "((pcVar8 = (code *)PTR_FUN_00053104, puVar5 == &DAT_70485973 ||\n             (pcVar8 = (code *)PTR_FUN_000530e4, puVar5 == (undefined1 *)0x73424954)) ||\n            (pcVar8 = (code *)PTR_FUN_000530ec, puVar5 == (undefined1 *)0x73524742)) ||\n           (((pcVar8 = (code *)PTR_FUN_000530f0, puVar5 == (undefined1 *)0x69434350 ||\n             (pcVar8 = (code *)PTR_FUN_000530f4, puVar5 == (undefined1 *)0x73504c54)) ||\n            ((pcVar8 = (code *)PTR_FUN_00053110, puVar5 == (undefined1 *)0x74455874 ||\n             ((pcVar8 = (code *)PTR_FUN_00053114, puVar5 == (undefined1 *)0x74494d45 ||\n              (pcVar8 = (code *)PTR_FUN_000530f8, puVar5 == (undefined1 *)0x74524e53)))))))" (parenthesized_expression "((pcVar8 = (code *)PTR_FUN_00053104, puVar5 == &DAT_70485973 ||\n             (pcVar8 = (code *)PTR_FUN_000530e4, puVar5 == (undefined1 *)0x73424954)) ||\n            (pcVar8 = (code *)PTR_FUN_000530ec, puVar5 == (undefined1 *)0x73524742))" ( (binary_expression "(pcVar8 = (code *)PTR_FUN_00053104, puVar5 == &DAT_70485973 ||\n             (pcVar8 = (code *)PTR_FUN_000530e4, puVar5 == (undefined1 *)0x73424954)) ||\n            (pcVar8 = (code *)PTR_FUN_000530ec, puVar5 == (undefined1 *)0x73524742)" (parenthesized_expression "(pcVar8 = (code *)PTR_FUN_00053104, puVar5 == &DAT_70485973 ||\n             (pcVar8 = (code *)PTR_FUN_000530e4, puVar5 == (undefined1 *)0x73424954))" ( (comma_expression "pcVar8 = (code *)PTR_FUN_00053104, puVar5 == &DAT_70485973 ||\n             (pcVar8 = (code *)PTR_FUN_000530e4, puVar5 == (undefined1 *)0x73424954)" (assignment_expression "pcVar8 = (code *)PTR_FUN_00053104" identifier = (cast_expression "(code *)PTR_FUN_00053104" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , (binary_expression "puVar5 == &DAT_70485973 ||\n             (pcVar8 = (code *)PTR_FUN_000530e4, puVar5 == (undefined1 *)0x73424954)" (binary_expression "puVar5 == &DAT_70485973" identifier == (pointer_expression "&DAT_70485973" & identifier)) || (parenthesized_expression "(pcVar8 = (code *)PTR_FUN_000530e4, puVar5 == (undefined1 *)0x73424954)" ( (comma_expression "pcVar8 = (code *)PTR_FUN_000530e4, puVar5 == (undefined1 *)0x73424954" (assignment_expression "pcVar8 = (code *)PTR_FUN_000530e4" identifier = (cast_expression "(code *)PTR_FUN_000530e4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , (binary_expression "puVar5 == (undefined1 *)0x73424954" identifier == (cast_expression "(undefined1 *)0x73424954" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) )))) )) || (parenthesized_expression "(pcVar8 = (code *)PTR_FUN_000530ec, puVar5 == (undefined1 *)0x73524742)" ( (comma_expression "pcVar8 = (code *)PTR_FUN_000530ec, puVar5 == (undefined1 *)0x73524742" (assignment_expression "pcVar8 = (code *)PTR_FUN_000530ec" identifier = (cast_expression "(code *)PTR_FUN_000530ec" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , (binary_expression "puVar5 == (undefined1 *)0x73524742" identifier == (cast_expression "(undefined1 *)0x73524742" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) ))) )) || (parenthesized_expression "(((pcVar8 = (code *)PTR_FUN_000530f0, puVar5 == (undefined1 *)0x69434350 ||\n             (pcVar8 = (code *)PTR_FUN_000530f4, puVar5 == (undefined1 *)0x73504c54)) ||\n            ((pcVar8 = (code *)PTR_FUN_00053110, puVar5 == (undefined1 *)0x74455874 ||\n             ((pcVar8 = (code *)PTR_FUN_00053114, puVar5 == (undefined1 *)0x74494d45 ||\n              (pcVar8 = (code *)PTR_FUN_000530f8, puVar5 == (undefined1 *)0x74524e53)))))))" ( (parenthesized_expression "((pcVar8 = (code *)PTR_FUN_000530f0, puVar5 == (undefined1 *)0x69434350 ||\n             (pcVar8 = (code *)PTR_FUN_000530f4, puVar5 == (undefined1 *)0x73504c54)) ||\n            ((pcVar8 = (code *)PTR_FUN_00053110, puVar5 == (undefined1 *)0x74455874 ||\n             ((pcVar8 = (code *)PTR_FUN_00053114, puVar5 == (undefined1 *)0x74494d45 ||\n              (pcVar8 = (code *)PTR_FUN_000530f8, puVar5 == (undefined1 *)0x74524e53))))))" ( (binary_expression "(pcVar8 = (code *)PTR_FUN_000530f0, puVar5 == (undefined1 *)0x69434350 ||\n             (pcVar8 = (code *)PTR_FUN_000530f4, puVar5 == (undefined1 *)0x73504c54)) ||\n            ((pcVar8 = (code *)PTR_FUN_00053110, puVar5 == (undefined1 *)0x74455874 ||\n             ((pcVar8 = (code *)PTR_FUN_00053114, puVar5 == (undefined1 *)0x74494d45 ||\n              (pcVar8 = (code *)PTR_FUN_000530f8, puVar5 == (undefined1 *)0x74524e53)))))" (parenthesized_expression "(pcVar8 = (code *)PTR_FUN_000530f0, puVar5 == (undefined1 *)0x69434350 ||\n             (pcVar8 = (code *)PTR_FUN_000530f4, puVar5 == (undefined1 *)0x73504c54))" ( (comma_expression "pcVar8 = (code *)PTR_FUN_000530f0, puVar5 == (undefined1 *)0x69434350 ||\n             (pcVar8 = (code *)PTR_FUN_000530f4, puVar5 == (undefined1 *)0x73504c54)" (assignment_expression "pcVar8 = (code *)PTR_FUN_000530f0" identifier = (cast_expression "(code *)PTR_FUN_000530f0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , (binary_expression "puVar5 == (undefined1 *)0x69434350 ||\n             (pcVar8 = (code *)PTR_FUN_000530f4, puVar5 == (undefined1 *)0x73504c54)" (binary_expression "puVar5 == (undefined1 *)0x69434350" identifier == (cast_expression "(undefined1 *)0x69434350" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) || (parenthesized_expression "(pcVar8 = (code *)PTR_FUN_000530f4, puVar5 == (undefined1 *)0x73504c54)" ( (comma_expression "pcVar8 = (code *)PTR_FUN_000530f4, puVar5 == (undefined1 *)0x73504c54" (assignment_expression "pcVar8 = (code *)PTR_FUN_000530f4" identifier = (cast_expression "(code *)PTR_FUN_000530f4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , (binary_expression "puVar5 == (undefined1 *)0x73504c54" identifier == (cast_expression "(undefined1 *)0x73504c54" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) )))) )) || (parenthesized_expression "((pcVar8 = (code *)PTR_FUN_00053110, puVar5 == (undefined1 *)0x74455874 ||\n             ((pcVar8 = (code *)PTR_FUN_00053114, puVar5 == (undefined1 *)0x74494d45 ||\n              (pcVar8 = (code *)PTR_FUN_000530f8, puVar5 == (undefined1 *)0x74524e53)))))" ( (parenthesized_expression "(pcVar8 = (code *)PTR_FUN_00053110, puVar5 == (undefined1 *)0x74455874 ||\n             ((pcVar8 = (code *)PTR_FUN_00053114, puVar5 == (undefined1 *)0x74494d45 ||\n              (pcVar8 = (code *)PTR_FUN_000530f8, puVar5 == (undefined1 *)0x74524e53))))" ( (comma_expression "pcVar8 = (code *)PTR_FUN_00053110, puVar5 == (undefined1 *)0x74455874 ||\n             ((pcVar8 = (code *)PTR_FUN_00053114, puVar5 == (undefined1 *)0x74494d45 ||\n              (pcVar8 = (code *)PTR_FUN_000530f8, puVar5 == (undefined1 *)0x74524e53)))" (assignment_expression "pcVar8 = (code *)PTR_FUN_00053110" identifier = (cast_expression "(code *)PTR_FUN_00053110" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , (binary_expression "puVar5 == (undefined1 *)0x74455874 ||\n             ((pcVar8 = (code *)PTR_FUN_00053114, puVar5 == (undefined1 *)0x74494d45 ||\n              (pcVar8 = (code *)PTR_FUN_000530f8, puVar5 == (undefined1 *)0x74524e53)))" (binary_expression "puVar5 == (undefined1 *)0x74455874" identifier == (cast_expression "(undefined1 *)0x74455874" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) || (parenthesized_expression "((pcVar8 = (code *)PTR_FUN_00053114, puVar5 == (undefined1 *)0x74494d45 ||\n              (pcVar8 = (code *)PTR_FUN_000530f8, puVar5 == (undefined1 *)0x74524e53)))" ( (parenthesized_expression "(pcVar8 = (code *)PTR_FUN_00053114, puVar5 == (undefined1 *)0x74494d45 ||\n              (pcVar8 = (code *)PTR_FUN_000530f8, puVar5 == (undefined1 *)0x74524e53))" ( (comma_expression "pcVar8 = (code *)PTR_FUN_00053114, puVar5 == (undefined1 *)0x74494d45 ||\n              (pcVar8 = (code *)PTR_FUN_000530f8, puVar5 == (undefined1 *)0x74524e53)" (assignment_expression "pcVar8 = (code *)PTR_FUN_00053114" identifier = (cast_expression "(code *)PTR_FUN_00053114" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , (binary_expression "puVar5 == (undefined1 *)0x74494d45 ||\n              (pcVar8 = (code *)PTR_FUN_000530f8, puVar5 == (undefined1 *)0x74524e53)" (binary_expression "puVar5 == (undefined1 *)0x74494d45" identifier == (cast_expression "(undefined1 *)0x74494d45" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) || (parenthesized_expression "(pcVar8 = (code *)PTR_FUN_000530f8, puVar5 == (undefined1 *)0x74524e53)" ( (comma_expression "pcVar8 = (code *)PTR_FUN_000530f8, puVar5 == (undefined1 *)0x74524e53" (assignment_expression "pcVar8 = (code *)PTR_FUN_000530f8" identifier = (cast_expression "(code *)PTR_FUN_000530f8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , (binary_expression "puVar5 == (undefined1 *)0x74524e53" identifier == (cast_expression "(undefined1 *)0x74524e53" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) )))) )) )))) )) ))) )) ))) )) || (parenthesized_expression "((pcVar8 = (code *)PTR_FUN_0005311c, puVar5 == (undefined1 *)0x7a545874 ||\n           (iVar3 = 0, pcVar8 = (code *)PTR_FUN_00053124, puVar5 == (undefined1 *)0x69545874)))" ( (parenthesized_expression "(pcVar8 = (code *)PTR_FUN_0005311c, puVar5 == (undefined1 *)0x7a545874 ||\n           (iVar3 = 0, pcVar8 = (code *)PTR_FUN_00053124, puVar5 == (undefined1 *)0x69545874))" ( (comma_expression "pcVar8 = (code *)PTR_FUN_0005311c, puVar5 == (undefined1 *)0x7a545874 ||\n           (iVar3 = 0, pcVar8 = (code *)PTR_FUN_00053124, puVar5 == (undefined1 *)0x69545874)" (assignment_expression "pcVar8 = (code *)PTR_FUN_0005311c" identifier = (cast_expression "(code *)PTR_FUN_0005311c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , (binary_expression "puVar5 == (undefined1 *)0x7a545874 ||\n           (iVar3 = 0, pcVar8 = (code *)PTR_FUN_00053124, puVar5 == (undefined1 *)0x69545874)" (binary_expression "puVar5 == (undefined1 *)0x7a545874" identifier == (cast_expression "(undefined1 *)0x7a545874" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) || (parenthesized_expression "(iVar3 = 0, pcVar8 = (code *)PTR_FUN_00053124, puVar5 == (undefined1 *)0x69545874)" ( (comma_expression "iVar3 = 0, pcVar8 = (code *)PTR_FUN_00053124, puVar5 == (undefined1 *)0x69545874" (assignment_expression "iVar3 = 0" identifier = number_literal) , (comma_expression "pcVar8 = (code *)PTR_FUN_00053124, puVar5 == (undefined1 *)0x69545874" (assignment_expression "pcVar8 = (code *)PTR_FUN_00053124" identifier = (cast_expression "(code *)PTR_FUN_00053124" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , (binary_expression "puVar5 == (undefined1 *)0x69545874" identifier == (cast_expression "(undefined1 *)0x69545874" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)))) )))) )) ))) )) ))) )) (goto_statement "goto LAB_00023564;" goto statement_identifier ;)) (labeled_statement "LAB_00023394:\n      FUN_0002f630(param_1,param_2,iVar2,iVar3);" statement_identifier : (expression_statement "FUN_0002f630(param_1,param_2,iVar2,iVar3);" (call_expression "FUN_0002f630(param_1,param_2,iVar2,iVar3)" identifier (argument_list "(param_1,param_2,iVar2,iVar3)" ( identifier , identifier , identifier , identifier ))) ;)) (labeled_statement "LAB_000233a8:\n      uVar4 = *(uint *)(param_1 + 0x124);" statement_identifier : (expression_statement "uVar4 = *(uint *)(param_1 + 0x124);" (assignment_expression "uVar4 = *(uint *)(param_1 + 0x124)" identifier = (pointer_expression "*(uint *)(param_1 + 0x124)" * (cast_expression "(uint *)(param_1 + 0x124)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x124)" ( (binary_expression "param_1 + 0x124" identifier + number_literal) ))))) ;)) (goto_statement "goto LAB_000233ac;" goto statement_identifier ;) })) (if_statement "if (puVar5 == (undefined1 *)0x49444154) {\n      if ((iVar2 == 0) || ((*(uint *)(param_1 + 0x128) & 8) != 0)) {\n        if ((*(uint *)(param_1 + 0x124) & 0x2000) != 0) {\n          (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar6);\n        }\n      }\n      else {\n        (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar6);\n      }\n      goto LAB_00023394;\n    }" if (parenthesized_expression "(puVar5 == (undefined1 *)0x49444154)" ( (binary_expression "puVar5 == (undefined1 *)0x49444154" identifier == (cast_expression "(undefined1 *)0x49444154" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      if ((iVar2 == 0) || ((*(uint *)(param_1 + 0x128) & 8) != 0)) {\n        if ((*(uint *)(param_1 + 0x124) & 0x2000) != 0) {\n          (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar6);\n        }\n      }\n      else {\n        (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar6);\n      }\n      goto LAB_00023394;\n    }" { (if_statement "if ((iVar2 == 0) || ((*(uint *)(param_1 + 0x128) & 8) != 0)) {\n        if ((*(uint *)(param_1 + 0x124) & 0x2000) != 0) {\n          (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar6);\n        }\n      }\n      else {\n        (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar6);\n      }" if (parenthesized_expression "((iVar2 == 0) || ((*(uint *)(param_1 + 0x128) & 8) != 0))" ( (binary_expression "(iVar2 == 0) || ((*(uint *)(param_1 + 0x128) & 8) != 0)" (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) || (parenthesized_expression "((*(uint *)(param_1 + 0x128) & 8) != 0)" ( (binary_expression "(*(uint *)(param_1 + 0x128) & 8) != 0" (parenthesized_expression "(*(uint *)(param_1 + 0x128) & 8)" ( (binary_expression "*(uint *)(param_1 + 0x128) & 8" (pointer_expression "*(uint *)(param_1 + 0x128)" * (cast_expression "(uint *)(param_1 + 0x128)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x128)" ( (binary_expression "param_1 + 0x128" identifier + number_literal) )))) & number_literal) )) != number_literal) ))) )) (compound_statement "{\n        if ((*(uint *)(param_1 + 0x124) & 0x2000) != 0) {\n          (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar6);\n        }\n      }" { (if_statement "if ((*(uint *)(param_1 + 0x124) & 0x2000) != 0) {\n          (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar6);\n        }" if (parenthesized_expression "((*(uint *)(param_1 + 0x124) & 0x2000) != 0)" ( (binary_expression "(*(uint *)(param_1 + 0x124) & 0x2000) != 0" (parenthesized_expression "(*(uint *)(param_1 + 0x124) & 0x2000)" ( (binary_expression "*(uint *)(param_1 + 0x124) & 0x2000" (pointer_expression "*(uint *)(param_1 + 0x124)" * (cast_expression "(uint *)(param_1 + 0x124)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x124)" ( (binary_expression "param_1 + 0x124" identifier + number_literal) )))) & number_literal) )) != number_literal) )) (compound_statement "{\n          (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar6);\n        }" { (expression_statement "(*(code *)PTR_png_benign_error_000533b8)(param_1,puVar6);" (call_expression "(*(code *)PTR_png_benign_error_000533b8)(param_1,puVar6)" (parenthesized_expression "(*(code *)PTR_png_benign_error_000533b8)" ( (pointer_expression "*(code *)PTR_png_benign_error_000533b8" * (cast_expression "(code *)PTR_png_benign_error_000533b8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_1,puVar6)" ( identifier , identifier ))) ;) })) }) (else_clause "else {\n        (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar6);\n      }" else (compound_statement "{\n        (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar6);\n      }" { (expression_statement "(*(code *)PTR_png_benign_error_000533b8)(param_1,puVar6);" (call_expression "(*(code *)PTR_png_benign_error_000533b8)(param_1,puVar6)" (parenthesized_expression "(*(code *)PTR_png_benign_error_000533b8)" ( (pointer_expression "*(code *)PTR_png_benign_error_000533b8" * (cast_expression "(code *)PTR_png_benign_error_000533b8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_1,puVar6)" ( identifier , identifier ))) ;) }))) (goto_statement "goto LAB_00023394;" goto statement_identifier ;) })) (expression_statement "FUN_0002f630(param_1,param_2,iVar2,iVar3);" (call_expression "FUN_0002f630(param_1,param_2,iVar2,iVar3)" identifier (argument_list "(param_1,param_2,iVar2,iVar3)" ( identifier , identifier , identifier , identifier ))) ;) (if_statement "if (puVar5 != (undefined1 *)0x504c5445) goto LAB_000233a8;" if (parenthesized_expression "(puVar5 != (undefined1 *)0x504c5445)" ( (binary_expression "puVar5 != (undefined1 *)0x504c5445" identifier != (cast_expression "(undefined1 *)0x504c5445" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000233a8;" goto statement_identifier ;)) (expression_statement "uVar4 = *(uint *)(param_1 + 0x124);" (assignment_expression "uVar4 = *(uint *)(param_1 + 0x124)" identifier = (pointer_expression "*(uint *)(param_1 + 0x124)" * (cast_expression "(uint *)(param_1 + 0x124)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x124)" ( (binary_expression "param_1 + 0x124" identifier + number_literal) ))))) ;) (expression_statement "*(uint *)(param_1 + 0x124) = uVar4 | 2;" (assignment_expression "*(uint *)(param_1 + 0x124) = uVar4 | 2" (pointer_expression "*(uint *)(param_1 + 0x124)" * (cast_expression "(uint *)(param_1 + 0x124)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x124)" ( (binary_expression "param_1 + 0x124" identifier + number_literal) )))) = (binary_expression "uVar4 | 2" identifier | number_literal)) ;) (if_statement "if ((uVar4 & 0x10) != 0) {\n      return;\n    }" if (parenthesized_expression "((uVar4 & 0x10) != 0)" ( (binary_expression "(uVar4 & 0x10) != 0" (parenthesized_expression "(uVar4 & 0x10)" ( (binary_expression "uVar4 & 0x10" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n      return;\n    }" { (return_statement "return;" return ;) })) }) while (parenthesized_expression "( true )" ( true )) ;) })))
(translation_unit (function_definition TYPE (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE IDENT) , (parameter_declaration TYPE IDENT) ))) (compound_statement { (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (return_statement return ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , LIT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != (char_literal ' escape_sequence ')) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != (char_literal ' escape_sequence ')) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) }))) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (cast_expression ( (type_descriptor TYPE) ) IDENT)) < (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT , (binary_expression IDENT + LIT) ))) ;) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (do_statement do (compound_statement { (while_statement while (parenthesized_expression ( BOOL )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) || (parenthesized_expression ( (parenthesized_expression ( (comma_expression (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) | LIT)) , (comma_expression (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) , (binary_expression (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) , (binary_expression IDENT != (pointer_expression & IDENT))) ))))) )) ))) )) (break_statement break ;)) (labeled_statement statement_identifier : (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , IDENT , IDENT ))) ;)) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) != LIT) )) (compound_statement { (return_statement return ;) }))) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT ))) ;)) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == LIT) )) || (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) & LIT) )) != LIT) ))) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) & LIT) )) != LIT) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT , IDENT ))) ;) })) }) (else_clause else (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT , IDENT ))) ;) }))) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) || (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) , (binary_expression IDENT == (pointer_expression & IDENT))) ))) )) || (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) , (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT))) ))) )) || (parenthesized_expression ( (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) , (binary_expression (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) || (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) , (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT))) )))) )) ))) )) || (parenthesized_expression ( (parenthesized_expression ( (binary_expression (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) , (binary_expression (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) || (parenthesized_expression ( (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) , (binary_expression (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) || (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) , (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT))) )))) )) )))) )) || (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) , (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT))) ))) )) ))) )) || (parenthesized_expression ( (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) , (binary_expression (binary_expression IDENT == (pointer_expression & IDENT)) || (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) , (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT))) )))) )) || (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) , (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT))) ))) )) || (parenthesized_expression ( (parenthesized_expression ( (binary_expression (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) , (binary_expression (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) || (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) , (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT))) )))) )) || (parenthesized_expression ( (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) , (binary_expression (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) || (parenthesized_expression ( (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) , (binary_expression (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) || (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) , (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT))) )))) )) )))) )) ))) )) ))) )) || (parenthesized_expression ( (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) , (binary_expression (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) || (parenthesized_expression ( (comma_expression (assignment_expression IDENT = LIT) , (comma_expression (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) , (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)))) )))) )) ))) )) ))) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT , IDENT ))) ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;)) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == LIT) )) || (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) & LIT) )) != LIT) ))) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) & LIT) )) != LIT) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT , IDENT ))) ;) })) }) (else_clause else (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT , IDENT ))) ;) }))) (goto_statement goto statement_identifier ;) })) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT , IDENT ))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression IDENT | LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) != LIT) )) (compound_statement { (return_statement return ;) })) }) while (parenthesized_expression ( BOOL )) ;) })))
(function_definition "void png_read_end(int param_1,int param_2)\n\n{\n  ushort uVar1;\n  int iVar2;\n  int iVar3;\n  uint uVar4;\n  undefined1 *puVar5;\n  undefined *puVar6;\n  undefined *puVar7;\n  code *pcVar8;\n  \n  if (param_1 == 0) {\n    return;\n  }\n  iVar2 = FUN_00015610(param_1,0x49444154);\n  if (iVar2 == 0) {\n    FUN_000309b0(param_1);\n    if (*(char *)(param_1 + 0x1ff) != '\x03') goto LAB_0002327c;\n    uVar1 = *(ushort *)(param_1 + 0x1f0);\n  }\n  else {\n    if (*(char *)(param_1 + 0x1ff) != '\x03') goto LAB_0002327c;\n    uVar1 = *(ushort *)(param_1 + 0x1f0);\n  }\n  if ((int)(uint)uVar1 < *(int *)(param_1 + 500)) {\n    (*(code *)PTR_png_benign_error_000533b8)(param_1,PTR_s_nt_0005301c + -0x1f0);\n  }\nLAB_0002327c:\n  puVar7 = PTR_s_nt_0005301c + -0x1ac;\n  puVar6 = PTR_s_nt_0005301c + -0x1c4;\n  do {\n    while( true ) {\n      iVar2 = FUN_0002fa20(param_1);\n      puVar5 = *(undefined1 **)(param_1 + 0x1cc);\n      if ((puVar5 == (undefined1 *)0x49444154) ||\n         ((*(uint *)(param_1 + 0x124) = *(uint *)(param_1 + 0x124) | 0x2000,\n          pcVar8 = (code *)PTR_FUN_000530b8, puVar5 != (undefined1 *)0x49454e44 &&\n          (pcVar8 = (code *)PTR_FUN_000530ac, puVar5 != &DAT_49484452)))) break;\nLAB_00023564:\n      (*pcVar8)(param_1,param_2,iVar2);\n      uVar4 = *(uint *)(param_1 + 0x124);\nLAB_000233ac:\n      if ((uVar4 & 0x10) != 0) {\n        return;\n      }\n    }\n    if (param_2 == 0) {\nLAB_0002340c:\n      FUN_0002b068(param_1,iVar2);\n      uVar4 = *(uint *)(param_1 + 0x124);\n      goto LAB_000233ac;\n    }\n    iVar3 = FUN_00015610(param_1,puVar5);\n    if (iVar3 == 0) {\n      if (puVar5 == (undefined1 *)0x49444154) {\n        if ((iVar2 == 0) || ((*(uint *)(param_1 + 0x128) & 8) != 0)) {\n          if ((*(uint *)(param_1 + 0x124) & 0x2000) != 0) {\n            (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar7);\n          }\n        }\n        else {\n          (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar7);\n        }\n        goto LAB_0002340c;\n      }\n      pcVar8 = (code *)PTR_FUN_000530dc;\n      if ((((((puVar5 == (undefined1 *)0x504c5445) ||\n             (pcVar8 = (code *)PTR_FUN_000530fc, puVar5 == &DAT_624b4744)) ||\n            (pcVar8 = (code *)PTR_FUN_000530e8, puVar5 == (undefined1 *)0x6348524d)) ||\n           ((pcVar8 = (code *)PTR_FUN_00053180, puVar5 == (undefined1 *)0x65584966 ||\n            (pcVar8 = (code *)PTR_FUN_000530e0, puVar5 == (undefined1 *)0x67414d41)))) ||\n          (((pcVar8 = (code *)PTR_FUN_00053100, puVar5 == (undefined1 *)0x68495354 ||\n            ((pcVar8 = (code *)PTR_FUN_00053108, puVar5 == (undefined1 *)0x6f464673 ||\n             (pcVar8 = (code *)PTR_FUN_0005310c, puVar5 == (undefined1 *)0x7043414c)))) ||\n           (pcVar8 = (code *)PTR_FUN_00053118, puVar5 == (undefined1 *)0x7343414c)))) ||\n         (((((pcVar8 = (code *)PTR_FUN_00053104, puVar5 == &DAT_70485973 ||\n             (pcVar8 = (code *)PTR_FUN_000530e4, puVar5 == (undefined1 *)0x73424954)) ||\n            (pcVar8 = (code *)PTR_FUN_000530ec, puVar5 == (undefined1 *)0x73524742)) ||\n           (((pcVar8 = (code *)PTR_FUN_000530f0, puVar5 == (undefined1 *)0x69434350 ||\n             (pcVar8 = (code *)PTR_FUN_000530f4, puVar5 == (undefined1 *)0x73504c54)) ||\n            ((pcVar8 = (code *)PTR_FUN_00053110, puVar5 == (undefined1 *)0x74455874 ||\n             ((pcVar8 = (code *)PTR_FUN_00053114, puVar5 == (undefined1 *)0x74494d45 ||\n              (pcVar8 = (code *)PTR_FUN_000530f8, puVar5 == (undefined1 *)0x74524e53)))))))) ||\n          ((pcVar8 = (code *)PTR_FUN_0005311c, puVar5 == (undefined1 *)0x7a545874 ||\n           (iVar3 = 0, pcVar8 = (code *)PTR_FUN_00053124, puVar5 == (undefined1 *)0x69545874))))))\n      goto LAB_00023564;\nLAB_00023394:\n      FUN_0002f630(param_1,param_2,iVar2,iVar3);\nLAB_000233a8:\n      uVar4 = *(uint *)(param_1 + 0x124);\n      goto LAB_000233ac;\n    }\n    if (puVar5 == (undefined1 *)0x49444154) {\n      if ((iVar2 == 0) || ((*(uint *)(param_1 + 0x128) & 8) != 0)) {\n        if ((*(uint *)(param_1 + 0x124) & 0x2000) != 0) {\n          (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar6);\n        }\n      }\n      else {\n        (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar6);\n      }\n      goto LAB_00023394;\n    }\n    FUN_0002f630(param_1,param_2,iVar2,iVar3);\n    if (puVar5 != (undefined1 *)0x504c5445) goto LAB_000233a8;\n    uVar4 = *(uint *)(param_1 + 0x124);\n    *(uint *)(param_1 + 0x124) = uVar4 | 2;\n    if ((uVar4 & 0x10) != 0) {\n      return;\n    }\n  } while( true );\n}" (primitive_type "void") (function_declarator "png_read_end(int param_1,int param_2)" (identifier "png_read_end") (parameter_list "(int param_1,int param_2)" (( "(") (parameter_declaration "int param_1" (primitive_type "int") (identifier "param_1")) (, ",") (parameter_declaration "int param_2" (primitive_type "int") (identifier "param_2")) () ")"))) (compound_statement "{\n  ushort uVar1;\n  int iVar2;\n  int iVar3;\n  uint uVar4;\n  undefined1 *puVar5;\n  undefined *puVar6;\n  undefined *puVar7;\n  code *pcVar8;\n  \n  if (param_1 == 0) {\n    return;\n  }\n  iVar2 = FUN_00015610(param_1,0x49444154);\n  if (iVar2 == 0) {\n    FUN_000309b0(param_1);\n    if (*(char *)(param_1 + 0x1ff) != '\x03') goto LAB_0002327c;\n    uVar1 = *(ushort *)(param_1 + 0x1f0);\n  }\n  else {\n    if (*(char *)(param_1 + 0x1ff) != '\x03') goto LAB_0002327c;\n    uVar1 = *(ushort *)(param_1 + 0x1f0);\n  }\n  if ((int)(uint)uVar1 < *(int *)(param_1 + 500)) {\n    (*(code *)PTR_png_benign_error_000533b8)(param_1,PTR_s_nt_0005301c + -0x1f0);\n  }\nLAB_0002327c:\n  puVar7 = PTR_s_nt_0005301c + -0x1ac;\n  puVar6 = PTR_s_nt_0005301c + -0x1c4;\n  do {\n    while( true ) {\n      iVar2 = FUN_0002fa20(param_1);\n      puVar5 = *(undefined1 **)(param_1 + 0x1cc);\n      if ((puVar5 == (undefined1 *)0x49444154) ||\n         ((*(uint *)(param_1 + 0x124) = *(uint *)(param_1 + 0x124) | 0x2000,\n          pcVar8 = (code *)PTR_FUN_000530b8, puVar5 != (undefined1 *)0x49454e44 &&\n          (pcVar8 = (code *)PTR_FUN_000530ac, puVar5 != &DAT_49484452)))) break;\nLAB_00023564:\n      (*pcVar8)(param_1,param_2,iVar2);\n      uVar4 = *(uint *)(param_1 + 0x124);\nLAB_000233ac:\n      if ((uVar4 & 0x10) != 0) {\n        return;\n      }\n    }\n    if (param_2 == 0) {\nLAB_0002340c:\n      FUN_0002b068(param_1,iVar2);\n      uVar4 = *(uint *)(param_1 + 0x124);\n      goto LAB_000233ac;\n    }\n    iVar3 = FUN_00015610(param_1,puVar5);\n    if (iVar3 == 0) {\n      if (puVar5 == (undefined1 *)0x49444154) {\n        if ((iVar2 == 0) || ((*(uint *)(param_1 + 0x128) & 8) != 0)) {\n          if ((*(uint *)(param_1 + 0x124) & 0x2000) != 0) {\n            (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar7);\n          }\n        }\n        else {\n          (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar7);\n        }\n        goto LAB_0002340c;\n      }\n      pcVar8 = (code *)PTR_FUN_000530dc;\n      if ((((((puVar5 == (undefined1 *)0x504c5445) ||\n             (pcVar8 = (code *)PTR_FUN_000530fc, puVar5 == &DAT_624b4744)) ||\n            (pcVar8 = (code *)PTR_FUN_000530e8, puVar5 == (undefined1 *)0x6348524d)) ||\n           ((pcVar8 = (code *)PTR_FUN_00053180, puVar5 == (undefined1 *)0x65584966 ||\n            (pcVar8 = (code *)PTR_FUN_000530e0, puVar5 == (undefined1 *)0x67414d41)))) ||\n          (((pcVar8 = (code *)PTR_FUN_00053100, puVar5 == (undefined1 *)0x68495354 ||\n            ((pcVar8 = (code *)PTR_FUN_00053108, puVar5 == (undefined1 *)0x6f464673 ||\n             (pcVar8 = (code *)PTR_FUN_0005310c, puVar5 == (undefined1 *)0x7043414c)))) ||\n           (pcVar8 = (code *)PTR_FUN_00053118, puVar5 == (undefined1 *)0x7343414c)))) ||\n         (((((pcVar8 = (code *)PTR_FUN_00053104, puVar5 == &DAT_70485973 ||\n             (pcVar8 = (code *)PTR_FUN_000530e4, puVar5 == (undefined1 *)0x73424954)) ||\n            (pcVar8 = (code *)PTR_FUN_000530ec, puVar5 == (undefined1 *)0x73524742)) ||\n           (((pcVar8 = (code *)PTR_FUN_000530f0, puVar5 == (undefined1 *)0x69434350 ||\n             (pcVar8 = (code *)PTR_FUN_000530f4, puVar5 == (undefined1 *)0x73504c54)) ||\n            ((pcVar8 = (code *)PTR_FUN_00053110, puVar5 == (undefined1 *)0x74455874 ||\n             ((pcVar8 = (code *)PTR_FUN_00053114, puVar5 == (undefined1 *)0x74494d45 ||\n              (pcVar8 = (code *)PTR_FUN_000530f8, puVar5 == (undefined1 *)0x74524e53)))))))) ||\n          ((pcVar8 = (code *)PTR_FUN_0005311c, puVar5 == (undefined1 *)0x7a545874 ||\n           (iVar3 = 0, pcVar8 = (code *)PTR_FUN_00053124, puVar5 == (undefined1 *)0x69545874))))))\n      goto LAB_00023564;\nLAB_00023394:\n      FUN_0002f630(param_1,param_2,iVar2,iVar3);\nLAB_000233a8:\n      uVar4 = *(uint *)(param_1 + 0x124);\n      goto LAB_000233ac;\n    }\n    if (puVar5 == (undefined1 *)0x49444154) {\n      if ((iVar2 == 0) || ((*(uint *)(param_1 + 0x128) & 8) != 0)) {\n        if ((*(uint *)(param_1 + 0x124) & 0x2000) != 0) {\n          (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar6);\n        }\n      }\n      else {\n        (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar6);\n      }\n      goto LAB_00023394;\n    }\n    FUN_0002f630(param_1,param_2,iVar2,iVar3);\n    if (puVar5 != (undefined1 *)0x504c5445) goto LAB_000233a8;\n    uVar4 = *(uint *)(param_1 + 0x124);\n    *(uint *)(param_1 + 0x124) = uVar4 | 2;\n    if ((uVar4 & 0x10) != 0) {\n      return;\n    }\n  } while( true );\n}" ({ "{") (declaration "ushort uVar1;" (type_identifier "ushort") (identifier "uVar1") (; ";")) (declaration "int iVar2;" (primitive_type "int") (identifier "iVar2") (; ";")) (declaration "int iVar3;" (primitive_type "int") (identifier "iVar3") (; ";")) (declaration "uint uVar4;" (type_identifier "uint") (identifier "uVar4") (; ";")) (declaration "undefined1 *puVar5;" (type_identifier "undefined1") (pointer_declarator "*puVar5" (* "*") (identifier "puVar5")) (; ";")) (declaration "undefined *puVar6;" (type_identifier "undefined") (pointer_declarator "*puVar6" (* "*") (identifier "puVar6")) (; ";")) (declaration "undefined *puVar7;" (type_identifier "undefined") (pointer_declarator "*puVar7" (* "*") (identifier "puVar7")) (; ";")) (declaration "code *pcVar8;" (type_identifier "code") (pointer_declarator "*pcVar8" (* "*") (identifier "pcVar8")) (; ";")) (if_statement "if (param_1 == 0) {\n    return;\n  }" (if "if") (parenthesized_expression "(param_1 == 0)" (( "(") (binary_expression "param_1 == 0" (identifier "param_1") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    return;\n  }" ({ "{") (return_statement "return;" (return "return") (; ";")) (} "}"))) (expression_statement "iVar2 = FUN_00015610(param_1,0x49444154);" (assignment_expression "iVar2 = FUN_00015610(param_1,0x49444154)" (identifier "iVar2") (= "=") (call_expression "FUN_00015610(param_1,0x49444154)" (identifier "FUN_00015610") (argument_list "(param_1,0x49444154)" (( "(") (identifier "param_1") (, ",") (number_literal "0x49444154") () ")")))) (; ";")) (if_statement "if (iVar2 == 0) {\n    FUN_000309b0(param_1);\n    if (*(char *)(param_1 + 0x1ff) != '\x03') goto LAB_0002327c;\n    uVar1 = *(ushort *)(param_1 + 0x1f0);\n  }\n  else {\n    if (*(char *)(param_1 + 0x1ff) != '\x03') goto LAB_0002327c;\n    uVar1 = *(ushort *)(param_1 + 0x1f0);\n  }" (if "if") (parenthesized_expression "(iVar2 == 0)" (( "(") (binary_expression "iVar2 == 0" (identifier "iVar2") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    FUN_000309b0(param_1);\n    if (*(char *)(param_1 + 0x1ff) != '\x03') goto LAB_0002327c;\n    uVar1 = *(ushort *)(param_1 + 0x1f0);\n  }" ({ "{") (expression_statement "FUN_000309b0(param_1);" (call_expression "FUN_000309b0(param_1)" (identifier "FUN_000309b0") (argument_list "(param_1)" (( "(") (identifier "param_1") () ")"))) (; ";")) (if_statement "if (*(char *)(param_1 + 0x1ff) != '\x03') goto LAB_0002327c;" (if "if") (parenthesized_expression "(*(char *)(param_1 + 0x1ff) != '\x03')" (( "(") (binary_expression "*(char *)(param_1 + 0x1ff) != '\x03'" (pointer_expression "*(char *)(param_1 + 0x1ff)" (* "*") (cast_expression "(char *)(param_1 + 0x1ff)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x1ff)" (( "(") (binary_expression "param_1 + 0x1ff" (identifier "param_1") (+ "+") (number_literal "0x1ff")) () ")")))) (!= "!=") (char_literal "'\x03'" (' "'") (escape_sequence "\x03") (' "'"))) () ")")) (goto_statement "goto LAB_0002327c;" (goto "goto") (statement_identifier "LAB_0002327c") (; ";"))) (expression_statement "uVar1 = *(ushort *)(param_1 + 0x1f0);" (assignment_expression "uVar1 = *(ushort *)(param_1 + 0x1f0)" (identifier "uVar1") (= "=") (pointer_expression "*(ushort *)(param_1 + 0x1f0)" (* "*") (cast_expression "(ushort *)(param_1 + 0x1f0)" (( "(") (type_descriptor "ushort *" (type_identifier "ushort") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x1f0)" (( "(") (binary_expression "param_1 + 0x1f0" (identifier "param_1") (+ "+") (number_literal "0x1f0")) () ")"))))) (; ";")) (} "}")) (else_clause "else {\n    if (*(char *)(param_1 + 0x1ff) != '\x03') goto LAB_0002327c;\n    uVar1 = *(ushort *)(param_1 + 0x1f0);\n  }" (else "else") (compound_statement "{\n    if (*(char *)(param_1 + 0x1ff) != '\x03') goto LAB_0002327c;\n    uVar1 = *(ushort *)(param_1 + 0x1f0);\n  }" ({ "{") (if_statement "if (*(char *)(param_1 + 0x1ff) != '\x03') goto LAB_0002327c;" (if "if") (parenthesized_expression "(*(char *)(param_1 + 0x1ff) != '\x03')" (( "(") (binary_expression "*(char *)(param_1 + 0x1ff) != '\x03'" (pointer_expression "*(char *)(param_1 + 0x1ff)" (* "*") (cast_expression "(char *)(param_1 + 0x1ff)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x1ff)" (( "(") (binary_expression "param_1 + 0x1ff" (identifier "param_1") (+ "+") (number_literal "0x1ff")) () ")")))) (!= "!=") (char_literal "'\x03'" (' "'") (escape_sequence "\x03") (' "'"))) () ")")) (goto_statement "goto LAB_0002327c;" (goto "goto") (statement_identifier "LAB_0002327c") (; ";"))) (expression_statement "uVar1 = *(ushort *)(param_1 + 0x1f0);" (assignment_expression "uVar1 = *(ushort *)(param_1 + 0x1f0)" (identifier "uVar1") (= "=") (pointer_expression "*(ushort *)(param_1 + 0x1f0)" (* "*") (cast_expression "(ushort *)(param_1 + 0x1f0)" (( "(") (type_descriptor "ushort *" (type_identifier "ushort") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x1f0)" (( "(") (binary_expression "param_1 + 0x1f0" (identifier "param_1") (+ "+") (number_literal "0x1f0")) () ")"))))) (; ";")) (} "}")))) (if_statement "if ((int)(uint)uVar1 < *(int *)(param_1 + 500)) {\n    (*(code *)PTR_png_benign_error_000533b8)(param_1,PTR_s_nt_0005301c + -0x1f0);\n  }" (if "if") (parenthesized_expression "((int)(uint)uVar1 < *(int *)(param_1 + 500))" (( "(") (binary_expression "(int)(uint)uVar1 < *(int *)(param_1 + 500)" (cast_expression "(int)(uint)uVar1" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (cast_expression "(uint)uVar1" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "uVar1"))) (< "<") (pointer_expression "*(int *)(param_1 + 500)" (* "*") (cast_expression "(int *)(param_1 + 500)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 500)" (( "(") (binary_expression "param_1 + 500" (identifier "param_1") (+ "+") (number_literal "500")) () ")"))))) () ")")) (compound_statement "{\n    (*(code *)PTR_png_benign_error_000533b8)(param_1,PTR_s_nt_0005301c + -0x1f0);\n  }" ({ "{") (expression_statement "(*(code *)PTR_png_benign_error_000533b8)(param_1,PTR_s_nt_0005301c + -0x1f0);" (call_expression "(*(code *)PTR_png_benign_error_000533b8)(param_1,PTR_s_nt_0005301c + -0x1f0)" (parenthesized_expression "(*(code *)PTR_png_benign_error_000533b8)" (( "(") (pointer_expression "*(code *)PTR_png_benign_error_000533b8" (* "*") (cast_expression "(code *)PTR_png_benign_error_000533b8" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_png_benign_error_000533b8"))) () ")")) (argument_list "(param_1,PTR_s_nt_0005301c + -0x1f0)" (( "(") (identifier "param_1") (, ",") (binary_expression "PTR_s_nt_0005301c + -0x1f0" (identifier "PTR_s_nt_0005301c") (+ "+") (number_literal "-0x1f0")) () ")"))) (; ";")) (} "}"))) (labeled_statement "LAB_0002327c:\n  puVar7 = PTR_s_nt_0005301c + -0x1ac;" (statement_identifier "LAB_0002327c") (: ":") (expression_statement "puVar7 = PTR_s_nt_0005301c + -0x1ac;" (assignment_expression "puVar7 = PTR_s_nt_0005301c + -0x1ac" (identifier "puVar7") (= "=") (binary_expression "PTR_s_nt_0005301c + -0x1ac" (identifier "PTR_s_nt_0005301c") (+ "+") (number_literal "-0x1ac"))) (; ";"))) (expression_statement "puVar6 = PTR_s_nt_0005301c + -0x1c4;" (assignment_expression "puVar6 = PTR_s_nt_0005301c + -0x1c4" (identifier "puVar6") (= "=") (binary_expression "PTR_s_nt_0005301c + -0x1c4" (identifier "PTR_s_nt_0005301c") (+ "+") (number_literal "-0x1c4"))) (; ";")) (do_statement "do {\n    while( true ) {\n      iVar2 = FUN_0002fa20(param_1);\n      puVar5 = *(undefined1 **)(param_1 + 0x1cc);\n      if ((puVar5 == (undefined1 *)0x49444154) ||\n         ((*(uint *)(param_1 + 0x124) = *(uint *)(param_1 + 0x124) | 0x2000,\n          pcVar8 = (code *)PTR_FUN_000530b8, puVar5 != (undefined1 *)0x49454e44 &&\n          (pcVar8 = (code *)PTR_FUN_000530ac, puVar5 != &DAT_49484452)))) break;\nLAB_00023564:\n      (*pcVar8)(param_1,param_2,iVar2);\n      uVar4 = *(uint *)(param_1 + 0x124);\nLAB_000233ac:\n      if ((uVar4 & 0x10) != 0) {\n        return;\n      }\n    }\n    if (param_2 == 0) {\nLAB_0002340c:\n      FUN_0002b068(param_1,iVar2);\n      uVar4 = *(uint *)(param_1 + 0x124);\n      goto LAB_000233ac;\n    }\n    iVar3 = FUN_00015610(param_1,puVar5);\n    if (iVar3 == 0) {\n      if (puVar5 == (undefined1 *)0x49444154) {\n        if ((iVar2 == 0) || ((*(uint *)(param_1 + 0x128) & 8) != 0)) {\n          if ((*(uint *)(param_1 + 0x124) & 0x2000) != 0) {\n            (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar7);\n          }\n        }\n        else {\n          (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar7);\n        }\n        goto LAB_0002340c;\n      }\n      pcVar8 = (code *)PTR_FUN_000530dc;\n      if ((((((puVar5 == (undefined1 *)0x504c5445) ||\n             (pcVar8 = (code *)PTR_FUN_000530fc, puVar5 == &DAT_624b4744)) ||\n            (pcVar8 = (code *)PTR_FUN_000530e8, puVar5 == (undefined1 *)0x6348524d)) ||\n           ((pcVar8 = (code *)PTR_FUN_00053180, puVar5 == (undefined1 *)0x65584966 ||\n            (pcVar8 = (code *)PTR_FUN_000530e0, puVar5 == (undefined1 *)0x67414d41)))) ||\n          (((pcVar8 = (code *)PTR_FUN_00053100, puVar5 == (undefined1 *)0x68495354 ||\n            ((pcVar8 = (code *)PTR_FUN_00053108, puVar5 == (undefined1 *)0x6f464673 ||\n             (pcVar8 = (code *)PTR_FUN_0005310c, puVar5 == (undefined1 *)0x7043414c)))) ||\n           (pcVar8 = (code *)PTR_FUN_00053118, puVar5 == (undefined1 *)0x7343414c)))) ||\n         (((((pcVar8 = (code *)PTR_FUN_00053104, puVar5 == &DAT_70485973 ||\n             (pcVar8 = (code *)PTR_FUN_000530e4, puVar5 == (undefined1 *)0x73424954)) ||\n            (pcVar8 = (code *)PTR_FUN_000530ec, puVar5 == (undefined1 *)0x73524742)) ||\n           (((pcVar8 = (code *)PTR_FUN_000530f0, puVar5 == (undefined1 *)0x69434350 ||\n             (pcVar8 = (code *)PTR_FUN_000530f4, puVar5 == (undefined1 *)0x73504c54)) ||\n            ((pcVar8 = (code *)PTR_FUN_00053110, puVar5 == (undefined1 *)0x74455874 ||\n             ((pcVar8 = (code *)PTR_FUN_00053114, puVar5 == (undefined1 *)0x74494d45 ||\n              (pcVar8 = (code *)PTR_FUN_000530f8, puVar5 == (undefined1 *)0x74524e53)))))))) ||\n          ((pcVar8 = (code *)PTR_FUN_0005311c, puVar5 == (undefined1 *)0x7a545874 ||\n           (iVar3 = 0, pcVar8 = (code *)PTR_FUN_00053124, puVar5 == (undefined1 *)0x69545874))))))\n      goto LAB_00023564;\nLAB_00023394:\n      FUN_0002f630(param_1,param_2,iVar2,iVar3);\nLAB_000233a8:\n      uVar4 = *(uint *)(param_1 + 0x124);\n      goto LAB_000233ac;\n    }\n    if (puVar5 == (undefined1 *)0x49444154) {\n      if ((iVar2 == 0) || ((*(uint *)(param_1 + 0x128) & 8) != 0)) {\n        if ((*(uint *)(param_1 + 0x124) & 0x2000) != 0) {\n          (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar6);\n        }\n      }\n      else {\n        (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar6);\n      }\n      goto LAB_00023394;\n    }\n    FUN_0002f630(param_1,param_2,iVar2,iVar3);\n    if (puVar5 != (undefined1 *)0x504c5445) goto LAB_000233a8;\n    uVar4 = *(uint *)(param_1 + 0x124);\n    *(uint *)(param_1 + 0x124) = uVar4 | 2;\n    if ((uVar4 & 0x10) != 0) {\n      return;\n    }\n  } while( true );" (do "do") (compound_statement "{\n    while( true ) {\n      iVar2 = FUN_0002fa20(param_1);\n      puVar5 = *(undefined1 **)(param_1 + 0x1cc);\n      if ((puVar5 == (undefined1 *)0x49444154) ||\n         ((*(uint *)(param_1 + 0x124) = *(uint *)(param_1 + 0x124) | 0x2000,\n          pcVar8 = (code *)PTR_FUN_000530b8, puVar5 != (undefined1 *)0x49454e44 &&\n          (pcVar8 = (code *)PTR_FUN_000530ac, puVar5 != &DAT_49484452)))) break;\nLAB_00023564:\n      (*pcVar8)(param_1,param_2,iVar2);\n      uVar4 = *(uint *)(param_1 + 0x124);\nLAB_000233ac:\n      if ((uVar4 & 0x10) != 0) {\n        return;\n      }\n    }\n    if (param_2 == 0) {\nLAB_0002340c:\n      FUN_0002b068(param_1,iVar2);\n      uVar4 = *(uint *)(param_1 + 0x124);\n      goto LAB_000233ac;\n    }\n    iVar3 = FUN_00015610(param_1,puVar5);\n    if (iVar3 == 0) {\n      if (puVar5 == (undefined1 *)0x49444154) {\n        if ((iVar2 == 0) || ((*(uint *)(param_1 + 0x128) & 8) != 0)) {\n          if ((*(uint *)(param_1 + 0x124) & 0x2000) != 0) {\n            (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar7);\n          }\n        }\n        else {\n          (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar7);\n        }\n        goto LAB_0002340c;\n      }\n      pcVar8 = (code *)PTR_FUN_000530dc;\n      if ((((((puVar5 == (undefined1 *)0x504c5445) ||\n             (pcVar8 = (code *)PTR_FUN_000530fc, puVar5 == &DAT_624b4744)) ||\n            (pcVar8 = (code *)PTR_FUN_000530e8, puVar5 == (undefined1 *)0x6348524d)) ||\n           ((pcVar8 = (code *)PTR_FUN_00053180, puVar5 == (undefined1 *)0x65584966 ||\n            (pcVar8 = (code *)PTR_FUN_000530e0, puVar5 == (undefined1 *)0x67414d41)))) ||\n          (((pcVar8 = (code *)PTR_FUN_00053100, puVar5 == (undefined1 *)0x68495354 ||\n            ((pcVar8 = (code *)PTR_FUN_00053108, puVar5 == (undefined1 *)0x6f464673 ||\n             (pcVar8 = (code *)PTR_FUN_0005310c, puVar5 == (undefined1 *)0x7043414c)))) ||\n           (pcVar8 = (code *)PTR_FUN_00053118, puVar5 == (undefined1 *)0x7343414c)))) ||\n         (((((pcVar8 = (code *)PTR_FUN_00053104, puVar5 == &DAT_70485973 ||\n             (pcVar8 = (code *)PTR_FUN_000530e4, puVar5 == (undefined1 *)0x73424954)) ||\n            (pcVar8 = (code *)PTR_FUN_000530ec, puVar5 == (undefined1 *)0x73524742)) ||\n           (((pcVar8 = (code *)PTR_FUN_000530f0, puVar5 == (undefined1 *)0x69434350 ||\n             (pcVar8 = (code *)PTR_FUN_000530f4, puVar5 == (undefined1 *)0x73504c54)) ||\n            ((pcVar8 = (code *)PTR_FUN_00053110, puVar5 == (undefined1 *)0x74455874 ||\n             ((pcVar8 = (code *)PTR_FUN_00053114, puVar5 == (undefined1 *)0x74494d45 ||\n              (pcVar8 = (code *)PTR_FUN_000530f8, puVar5 == (undefined1 *)0x74524e53)))))))) ||\n          ((pcVar8 = (code *)PTR_FUN_0005311c, puVar5 == (undefined1 *)0x7a545874 ||\n           (iVar3 = 0, pcVar8 = (code *)PTR_FUN_00053124, puVar5 == (undefined1 *)0x69545874))))))\n      goto LAB_00023564;\nLAB_00023394:\n      FUN_0002f630(param_1,param_2,iVar2,iVar3);\nLAB_000233a8:\n      uVar4 = *(uint *)(param_1 + 0x124);\n      goto LAB_000233ac;\n    }\n    if (puVar5 == (undefined1 *)0x49444154) {\n      if ((iVar2 == 0) || ((*(uint *)(param_1 + 0x128) & 8) != 0)) {\n        if ((*(uint *)(param_1 + 0x124) & 0x2000) != 0) {\n          (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar6);\n        }\n      }\n      else {\n        (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar6);\n      }\n      goto LAB_00023394;\n    }\n    FUN_0002f630(param_1,param_2,iVar2,iVar3);\n    if (puVar5 != (undefined1 *)0x504c5445) goto LAB_000233a8;\n    uVar4 = *(uint *)(param_1 + 0x124);\n    *(uint *)(param_1 + 0x124) = uVar4 | 2;\n    if ((uVar4 & 0x10) != 0) {\n      return;\n    }\n  }" ({ "{") (while_statement "while( true ) {\n      iVar2 = FUN_0002fa20(param_1);\n      puVar5 = *(undefined1 **)(param_1 + 0x1cc);\n      if ((puVar5 == (undefined1 *)0x49444154) ||\n         ((*(uint *)(param_1 + 0x124) = *(uint *)(param_1 + 0x124) | 0x2000,\n          pcVar8 = (code *)PTR_FUN_000530b8, puVar5 != (undefined1 *)0x49454e44 &&\n          (pcVar8 = (code *)PTR_FUN_000530ac, puVar5 != &DAT_49484452)))) break;\nLAB_00023564:\n      (*pcVar8)(param_1,param_2,iVar2);\n      uVar4 = *(uint *)(param_1 + 0x124);\nLAB_000233ac:\n      if ((uVar4 & 0x10) != 0) {\n        return;\n      }\n    }" (while "while") (parenthesized_expression "( true )" (( "(") (true "true") () ")")) (compound_statement "{\n      iVar2 = FUN_0002fa20(param_1);\n      puVar5 = *(undefined1 **)(param_1 + 0x1cc);\n      if ((puVar5 == (undefined1 *)0x49444154) ||\n         ((*(uint *)(param_1 + 0x124) = *(uint *)(param_1 + 0x124) | 0x2000,\n          pcVar8 = (code *)PTR_FUN_000530b8, puVar5 != (undefined1 *)0x49454e44 &&\n          (pcVar8 = (code *)PTR_FUN_000530ac, puVar5 != &DAT_49484452)))) break;\nLAB_00023564:\n      (*pcVar8)(param_1,param_2,iVar2);\n      uVar4 = *(uint *)(param_1 + 0x124);\nLAB_000233ac:\n      if ((uVar4 & 0x10) != 0) {\n        return;\n      }\n    }" ({ "{") (expression_statement "iVar2 = FUN_0002fa20(param_1);" (assignment_expression "iVar2 = FUN_0002fa20(param_1)" (identifier "iVar2") (= "=") (call_expression "FUN_0002fa20(param_1)" (identifier "FUN_0002fa20") (argument_list "(param_1)" (( "(") (identifier "param_1") () ")")))) (; ";")) (expression_statement "puVar5 = *(undefined1 **)(param_1 + 0x1cc);" (assignment_expression "puVar5 = *(undefined1 **)(param_1 + 0x1cc)" (identifier "puVar5") (= "=") (pointer_expression "*(undefined1 **)(param_1 + 0x1cc)" (* "*") (cast_expression "(undefined1 **)(param_1 + 0x1cc)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(param_1 + 0x1cc)" (( "(") (binary_expression "param_1 + 0x1cc" (identifier "param_1") (+ "+") (number_literal "0x1cc")) () ")"))))) (; ";")) (if_statement "if ((puVar5 == (undefined1 *)0x49444154) ||\n         ((*(uint *)(param_1 + 0x124) = *(uint *)(param_1 + 0x124) | 0x2000,\n          pcVar8 = (code *)PTR_FUN_000530b8, puVar5 != (undefined1 *)0x49454e44 &&\n          (pcVar8 = (code *)PTR_FUN_000530ac, puVar5 != &DAT_49484452)))) break;" (if "if") (parenthesized_expression "((puVar5 == (undefined1 *)0x49444154) ||\n         ((*(uint *)(param_1 + 0x124) = *(uint *)(param_1 + 0x124) | 0x2000,\n          pcVar8 = (code *)PTR_FUN_000530b8, puVar5 != (undefined1 *)0x49454e44 &&\n          (pcVar8 = (code *)PTR_FUN_000530ac, puVar5 != &DAT_49484452))))" (( "(") (binary_expression "(puVar5 == (undefined1 *)0x49444154) ||\n         ((*(uint *)(param_1 + 0x124) = *(uint *)(param_1 + 0x124) | 0x2000,\n          pcVar8 = (code *)PTR_FUN_000530b8, puVar5 != (undefined1 *)0x49454e44 &&\n          (pcVar8 = (code *)PTR_FUN_000530ac, puVar5 != &DAT_49484452)))" (parenthesized_expression "(puVar5 == (undefined1 *)0x49444154)" (( "(") (binary_expression "puVar5 == (undefined1 *)0x49444154" (identifier "puVar5") (== "==") (cast_expression "(undefined1 *)0x49444154" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x49444154"))) () ")")) (|| "||") (parenthesized_expression "((*(uint *)(param_1 + 0x124) = *(uint *)(param_1 + 0x124) | 0x2000,\n          pcVar8 = (code *)PTR_FUN_000530b8, puVar5 != (undefined1 *)0x49454e44 &&\n          (pcVar8 = (code *)PTR_FUN_000530ac, puVar5 != &DAT_49484452)))" (( "(") (parenthesized_expression "(*(uint *)(param_1 + 0x124) = *(uint *)(param_1 + 0x124) | 0x2000,\n          pcVar8 = (code *)PTR_FUN_000530b8, puVar5 != (undefined1 *)0x49454e44 &&\n          (pcVar8 = (code *)PTR_FUN_000530ac, puVar5 != &DAT_49484452))" (( "(") (comma_expression "*(uint *)(param_1 + 0x124) = *(uint *)(param_1 + 0x124) | 0x2000,\n          pcVar8 = (code *)PTR_FUN_000530b8, puVar5 != (undefined1 *)0x49454e44 &&\n          (pcVar8 = (code *)PTR_FUN_000530ac, puVar5 != &DAT_49484452)" (assignment_expression "*(uint *)(param_1 + 0x124) = *(uint *)(param_1 + 0x124) | 0x2000" (pointer_expression "*(uint *)(param_1 + 0x124)" (* "*") (cast_expression "(uint *)(param_1 + 0x124)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x124)" (( "(") (binary_expression "param_1 + 0x124" (identifier "param_1") (+ "+") (number_literal "0x124")) () ")")))) (= "=") (binary_expression "*(uint *)(param_1 + 0x124) | 0x2000" (pointer_expression "*(uint *)(param_1 + 0x124)" (* "*") (cast_expression "(uint *)(param_1 + 0x124)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x124)" (( "(") (binary_expression "param_1 + 0x124" (identifier "param_1") (+ "+") (number_literal "0x124")) () ")")))) (| "|") (number_literal "0x2000"))) (, ",") (comma_expression "pcVar8 = (code *)PTR_FUN_000530b8, puVar5 != (undefined1 *)0x49454e44 &&\n          (pcVar8 = (code *)PTR_FUN_000530ac, puVar5 != &DAT_49484452)" (assignment_expression "pcVar8 = (code *)PTR_FUN_000530b8" (identifier "pcVar8") (= "=") (cast_expression "(code *)PTR_FUN_000530b8" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_FUN_000530b8"))) (, ",") (binary_expression "puVar5 != (undefined1 *)0x49454e44 &&\n          (pcVar8 = (code *)PTR_FUN_000530ac, puVar5 != &DAT_49484452)" (binary_expression "puVar5 != (undefined1 *)0x49454e44" (identifier "puVar5") (!= "!=") (cast_expression "(undefined1 *)0x49454e44" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x49454e44"))) (&& "&&") (parenthesized_expression "(pcVar8 = (code *)PTR_FUN_000530ac, puVar5 != &DAT_49484452)" (( "(") (comma_expression "pcVar8 = (code *)PTR_FUN_000530ac, puVar5 != &DAT_49484452" (assignment_expression "pcVar8 = (code *)PTR_FUN_000530ac" (identifier "pcVar8") (= "=") (cast_expression "(code *)PTR_FUN_000530ac" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_FUN_000530ac"))) (, ",") (binary_expression "puVar5 != &DAT_49484452" (identifier "puVar5") (!= "!=") (pointer_expression "&DAT_49484452" (& "&") (identifier "DAT_49484452")))) () ")"))))) () ")")) () ")"))) () ")")) (break_statement "break;" (break "break") (; ";"))) (labeled_statement "LAB_00023564:\n      (*pcVar8)(param_1,param_2,iVar2);" (statement_identifier "LAB_00023564") (: ":") (expression_statement "(*pcVar8)(param_1,param_2,iVar2);" (call_expression "(*pcVar8)(param_1,param_2,iVar2)" (parenthesized_expression "(*pcVar8)" (( "(") (pointer_expression "*pcVar8" (* "*") (identifier "pcVar8")) () ")")) (argument_list "(param_1,param_2,iVar2)" (( "(") (identifier "param_1") (, ",") (identifier "param_2") (, ",") (identifier "iVar2") () ")"))) (; ";"))) (expression_statement "uVar4 = *(uint *)(param_1 + 0x124);" (assignment_expression "uVar4 = *(uint *)(param_1 + 0x124)" (identifier "uVar4") (= "=") (pointer_expression "*(uint *)(param_1 + 0x124)" (* "*") (cast_expression "(uint *)(param_1 + 0x124)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x124)" (( "(") (binary_expression "param_1 + 0x124" (identifier "param_1") (+ "+") (number_literal "0x124")) () ")"))))) (; ";")) (labeled_statement "LAB_000233ac:\n      if ((uVar4 & 0x10) != 0) {\n        return;\n      }" (statement_identifier "LAB_000233ac") (: ":") (if_statement "if ((uVar4 & 0x10) != 0) {\n        return;\n      }" (if "if") (parenthesized_expression "((uVar4 & 0x10) != 0)" (( "(") (binary_expression "(uVar4 & 0x10) != 0" (parenthesized_expression "(uVar4 & 0x10)" (( "(") (binary_expression "uVar4 & 0x10" (identifier "uVar4") (& "&") (number_literal "0x10")) () ")")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n        return;\n      }" ({ "{") (return_statement "return;" (return "return") (; ";")) (} "}")))) (} "}"))) (if_statement "if (param_2 == 0) {\nLAB_0002340c:\n      FUN_0002b068(param_1,iVar2);\n      uVar4 = *(uint *)(param_1 + 0x124);\n      goto LAB_000233ac;\n    }" (if "if") (parenthesized_expression "(param_2 == 0)" (( "(") (binary_expression "param_2 == 0" (identifier "param_2") (== "==") (number_literal "0")) () ")")) (compound_statement "{\nLAB_0002340c:\n      FUN_0002b068(param_1,iVar2);\n      uVar4 = *(uint *)(param_1 + 0x124);\n      goto LAB_000233ac;\n    }" ({ "{") (labeled_statement "LAB_0002340c:\n      FUN_0002b068(param_1,iVar2);" (statement_identifier "LAB_0002340c") (: ":") (expression_statement "FUN_0002b068(param_1,iVar2);" (call_expression "FUN_0002b068(param_1,iVar2)" (identifier "FUN_0002b068") (argument_list "(param_1,iVar2)" (( "(") (identifier "param_1") (, ",") (identifier "iVar2") () ")"))) (; ";"))) (expression_statement "uVar4 = *(uint *)(param_1 + 0x124);" (assignment_expression "uVar4 = *(uint *)(param_1 + 0x124)" (identifier "uVar4") (= "=") (pointer_expression "*(uint *)(param_1 + 0x124)" (* "*") (cast_expression "(uint *)(param_1 + 0x124)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x124)" (( "(") (binary_expression "param_1 + 0x124" (identifier "param_1") (+ "+") (number_literal "0x124")) () ")"))))) (; ";")) (goto_statement "goto LAB_000233ac;" (goto "goto") (statement_identifier "LAB_000233ac") (; ";")) (} "}"))) (expression_statement "iVar3 = FUN_00015610(param_1,puVar5);" (assignment_expression "iVar3 = FUN_00015610(param_1,puVar5)" (identifier "iVar3") (= "=") (call_expression "FUN_00015610(param_1,puVar5)" (identifier "FUN_00015610") (argument_list "(param_1,puVar5)" (( "(") (identifier "param_1") (, ",") (identifier "puVar5") () ")")))) (; ";")) (if_statement "if (iVar3 == 0) {\n      if (puVar5 == (undefined1 *)0x49444154) {\n        if ((iVar2 == 0) || ((*(uint *)(param_1 + 0x128) & 8) != 0)) {\n          if ((*(uint *)(param_1 + 0x124) & 0x2000) != 0) {\n            (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar7);\n          }\n        }\n        else {\n          (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar7);\n        }\n        goto LAB_0002340c;\n      }\n      pcVar8 = (code *)PTR_FUN_000530dc;\n      if ((((((puVar5 == (undefined1 *)0x504c5445) ||\n             (pcVar8 = (code *)PTR_FUN_000530fc, puVar5 == &DAT_624b4744)) ||\n            (pcVar8 = (code *)PTR_FUN_000530e8, puVar5 == (undefined1 *)0x6348524d)) ||\n           ((pcVar8 = (code *)PTR_FUN_00053180, puVar5 == (undefined1 *)0x65584966 ||\n            (pcVar8 = (code *)PTR_FUN_000530e0, puVar5 == (undefined1 *)0x67414d41)))) ||\n          (((pcVar8 = (code *)PTR_FUN_00053100, puVar5 == (undefined1 *)0x68495354 ||\n            ((pcVar8 = (code *)PTR_FUN_00053108, puVar5 == (undefined1 *)0x6f464673 ||\n             (pcVar8 = (code *)PTR_FUN_0005310c, puVar5 == (undefined1 *)0x7043414c)))) ||\n           (pcVar8 = (code *)PTR_FUN_00053118, puVar5 == (undefined1 *)0x7343414c)))) ||\n         (((((pcVar8 = (code *)PTR_FUN_00053104, puVar5 == &DAT_70485973 ||\n             (pcVar8 = (code *)PTR_FUN_000530e4, puVar5 == (undefined1 *)0x73424954)) ||\n            (pcVar8 = (code *)PTR_FUN_000530ec, puVar5 == (undefined1 *)0x73524742)) ||\n           (((pcVar8 = (code *)PTR_FUN_000530f0, puVar5 == (undefined1 *)0x69434350 ||\n             (pcVar8 = (code *)PTR_FUN_000530f4, puVar5 == (undefined1 *)0x73504c54)) ||\n            ((pcVar8 = (code *)PTR_FUN_00053110, puVar5 == (undefined1 *)0x74455874 ||\n             ((pcVar8 = (code *)PTR_FUN_00053114, puVar5 == (undefined1 *)0x74494d45 ||\n              (pcVar8 = (code *)PTR_FUN_000530f8, puVar5 == (undefined1 *)0x74524e53)))))))) ||\n          ((pcVar8 = (code *)PTR_FUN_0005311c, puVar5 == (undefined1 *)0x7a545874 ||\n           (iVar3 = 0, pcVar8 = (code *)PTR_FUN_00053124, puVar5 == (undefined1 *)0x69545874))))))\n      goto LAB_00023564;\nLAB_00023394:\n      FUN_0002f630(param_1,param_2,iVar2,iVar3);\nLAB_000233a8:\n      uVar4 = *(uint *)(param_1 + 0x124);\n      goto LAB_000233ac;\n    }" (if "if") (parenthesized_expression "(iVar3 == 0)" (( "(") (binary_expression "iVar3 == 0" (identifier "iVar3") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n      if (puVar5 == (undefined1 *)0x49444154) {\n        if ((iVar2 == 0) || ((*(uint *)(param_1 + 0x128) & 8) != 0)) {\n          if ((*(uint *)(param_1 + 0x124) & 0x2000) != 0) {\n            (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar7);\n          }\n        }\n        else {\n          (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar7);\n        }\n        goto LAB_0002340c;\n      }\n      pcVar8 = (code *)PTR_FUN_000530dc;\n      if ((((((puVar5 == (undefined1 *)0x504c5445) ||\n             (pcVar8 = (code *)PTR_FUN_000530fc, puVar5 == &DAT_624b4744)) ||\n            (pcVar8 = (code *)PTR_FUN_000530e8, puVar5 == (undefined1 *)0x6348524d)) ||\n           ((pcVar8 = (code *)PTR_FUN_00053180, puVar5 == (undefined1 *)0x65584966 ||\n            (pcVar8 = (code *)PTR_FUN_000530e0, puVar5 == (undefined1 *)0x67414d41)))) ||\n          (((pcVar8 = (code *)PTR_FUN_00053100, puVar5 == (undefined1 *)0x68495354 ||\n            ((pcVar8 = (code *)PTR_FUN_00053108, puVar5 == (undefined1 *)0x6f464673 ||\n             (pcVar8 = (code *)PTR_FUN_0005310c, puVar5 == (undefined1 *)0x7043414c)))) ||\n           (pcVar8 = (code *)PTR_FUN_00053118, puVar5 == (undefined1 *)0x7343414c)))) ||\n         (((((pcVar8 = (code *)PTR_FUN_00053104, puVar5 == &DAT_70485973 ||\n             (pcVar8 = (code *)PTR_FUN_000530e4, puVar5 == (undefined1 *)0x73424954)) ||\n            (pcVar8 = (code *)PTR_FUN_000530ec, puVar5 == (undefined1 *)0x73524742)) ||\n           (((pcVar8 = (code *)PTR_FUN_000530f0, puVar5 == (undefined1 *)0x69434350 ||\n             (pcVar8 = (code *)PTR_FUN_000530f4, puVar5 == (undefined1 *)0x73504c54)) ||\n            ((pcVar8 = (code *)PTR_FUN_00053110, puVar5 == (undefined1 *)0x74455874 ||\n             ((pcVar8 = (code *)PTR_FUN_00053114, puVar5 == (undefined1 *)0x74494d45 ||\n              (pcVar8 = (code *)PTR_FUN_000530f8, puVar5 == (undefined1 *)0x74524e53)))))))) ||\n          ((pcVar8 = (code *)PTR_FUN_0005311c, puVar5 == (undefined1 *)0x7a545874 ||\n           (iVar3 = 0, pcVar8 = (code *)PTR_FUN_00053124, puVar5 == (undefined1 *)0x69545874))))))\n      goto LAB_00023564;\nLAB_00023394:\n      FUN_0002f630(param_1,param_2,iVar2,iVar3);\nLAB_000233a8:\n      uVar4 = *(uint *)(param_1 + 0x124);\n      goto LAB_000233ac;\n    }" ({ "{") (if_statement "if (puVar5 == (undefined1 *)0x49444154) {\n        if ((iVar2 == 0) || ((*(uint *)(param_1 + 0x128) & 8) != 0)) {\n          if ((*(uint *)(param_1 + 0x124) & 0x2000) != 0) {\n            (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar7);\n          }\n        }\n        else {\n          (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar7);\n        }\n        goto LAB_0002340c;\n      }" (if "if") (parenthesized_expression "(puVar5 == (undefined1 *)0x49444154)" (( "(") (binary_expression "puVar5 == (undefined1 *)0x49444154" (identifier "puVar5") (== "==") (cast_expression "(undefined1 *)0x49444154" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x49444154"))) () ")")) (compound_statement "{\n        if ((iVar2 == 0) || ((*(uint *)(param_1 + 0x128) & 8) != 0)) {\n          if ((*(uint *)(param_1 + 0x124) & 0x2000) != 0) {\n            (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar7);\n          }\n        }\n        else {\n          (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar7);\n        }\n        goto LAB_0002340c;\n      }" ({ "{") (if_statement "if ((iVar2 == 0) || ((*(uint *)(param_1 + 0x128) & 8) != 0)) {\n          if ((*(uint *)(param_1 + 0x124) & 0x2000) != 0) {\n            (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar7);\n          }\n        }\n        else {\n          (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar7);\n        }" (if "if") (parenthesized_expression "((iVar2 == 0) || ((*(uint *)(param_1 + 0x128) & 8) != 0))" (( "(") (binary_expression "(iVar2 == 0) || ((*(uint *)(param_1 + 0x128) & 8) != 0)" (parenthesized_expression "(iVar2 == 0)" (( "(") (binary_expression "iVar2 == 0" (identifier "iVar2") (== "==") (number_literal "0")) () ")")) (|| "||") (parenthesized_expression "((*(uint *)(param_1 + 0x128) & 8) != 0)" (( "(") (binary_expression "(*(uint *)(param_1 + 0x128) & 8) != 0" (parenthesized_expression "(*(uint *)(param_1 + 0x128) & 8)" (( "(") (binary_expression "*(uint *)(param_1 + 0x128) & 8" (pointer_expression "*(uint *)(param_1 + 0x128)" (* "*") (cast_expression "(uint *)(param_1 + 0x128)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x128)" (( "(") (binary_expression "param_1 + 0x128" (identifier "param_1") (+ "+") (number_literal "0x128")) () ")")))) (& "&") (number_literal "8")) () ")")) (!= "!=") (number_literal "0")) () ")"))) () ")")) (compound_statement "{\n          if ((*(uint *)(param_1 + 0x124) & 0x2000) != 0) {\n            (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar7);\n          }\n        }" ({ "{") (if_statement "if ((*(uint *)(param_1 + 0x124) & 0x2000) != 0) {\n            (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar7);\n          }" (if "if") (parenthesized_expression "((*(uint *)(param_1 + 0x124) & 0x2000) != 0)" (( "(") (binary_expression "(*(uint *)(param_1 + 0x124) & 0x2000) != 0" (parenthesized_expression "(*(uint *)(param_1 + 0x124) & 0x2000)" (( "(") (binary_expression "*(uint *)(param_1 + 0x124) & 0x2000" (pointer_expression "*(uint *)(param_1 + 0x124)" (* "*") (cast_expression "(uint *)(param_1 + 0x124)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x124)" (( "(") (binary_expression "param_1 + 0x124" (identifier "param_1") (+ "+") (number_literal "0x124")) () ")")))) (& "&") (number_literal "0x2000")) () ")")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n            (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar7);\n          }" ({ "{") (expression_statement "(*(code *)PTR_png_benign_error_000533b8)(param_1,puVar7);" (call_expression "(*(code *)PTR_png_benign_error_000533b8)(param_1,puVar7)" (parenthesized_expression "(*(code *)PTR_png_benign_error_000533b8)" (( "(") (pointer_expression "*(code *)PTR_png_benign_error_000533b8" (* "*") (cast_expression "(code *)PTR_png_benign_error_000533b8" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_png_benign_error_000533b8"))) () ")")) (argument_list "(param_1,puVar7)" (( "(") (identifier "param_1") (, ",") (identifier "puVar7") () ")"))) (; ";")) (} "}"))) (} "}")) (else_clause "else {\n          (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar7);\n        }" (else "else") (compound_statement "{\n          (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar7);\n        }" ({ "{") (expression_statement "(*(code *)PTR_png_benign_error_000533b8)(param_1,puVar7);" (call_expression "(*(code *)PTR_png_benign_error_000533b8)(param_1,puVar7)" (parenthesized_expression "(*(code *)PTR_png_benign_error_000533b8)" (( "(") (pointer_expression "*(code *)PTR_png_benign_error_000533b8" (* "*") (cast_expression "(code *)PTR_png_benign_error_000533b8" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_png_benign_error_000533b8"))) () ")")) (argument_list "(param_1,puVar7)" (( "(") (identifier "param_1") (, ",") (identifier "puVar7") () ")"))) (; ";")) (} "}")))) (goto_statement "goto LAB_0002340c;" (goto "goto") (statement_identifier "LAB_0002340c") (; ";")) (} "}"))) (expression_statement "pcVar8 = (code *)PTR_FUN_000530dc;" (assignment_expression "pcVar8 = (code *)PTR_FUN_000530dc" (identifier "pcVar8") (= "=") (cast_expression "(code *)PTR_FUN_000530dc" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_FUN_000530dc"))) (; ";")) (if_statement "if ((((((puVar5 == (undefined1 *)0x504c5445) ||\n             (pcVar8 = (code *)PTR_FUN_000530fc, puVar5 == &DAT_624b4744)) ||\n            (pcVar8 = (code *)PTR_FUN_000530e8, puVar5 == (undefined1 *)0x6348524d)) ||\n           ((pcVar8 = (code *)PTR_FUN_00053180, puVar5 == (undefined1 *)0x65584966 ||\n            (pcVar8 = (code *)PTR_FUN_000530e0, puVar5 == (undefined1 *)0x67414d41)))) ||\n          (((pcVar8 = (code *)PTR_FUN_00053100, puVar5 == (undefined1 *)0x68495354 ||\n            ((pcVar8 = (code *)PTR_FUN_00053108, puVar5 == (undefined1 *)0x6f464673 ||\n             (pcVar8 = (code *)PTR_FUN_0005310c, puVar5 == (undefined1 *)0x7043414c)))) ||\n           (pcVar8 = (code *)PTR_FUN_00053118, puVar5 == (undefined1 *)0x7343414c)))) ||\n         (((((pcVar8 = (code *)PTR_FUN_00053104, puVar5 == &DAT_70485973 ||\n             (pcVar8 = (code *)PTR_FUN_000530e4, puVar5 == (undefined1 *)0x73424954)) ||\n            (pcVar8 = (code *)PTR_FUN_000530ec, puVar5 == (undefined1 *)0x73524742)) ||\n           (((pcVar8 = (code *)PTR_FUN_000530f0, puVar5 == (undefined1 *)0x69434350 ||\n             (pcVar8 = (code *)PTR_FUN_000530f4, puVar5 == (undefined1 *)0x73504c54)) ||\n            ((pcVar8 = (code *)PTR_FUN_00053110, puVar5 == (undefined1 *)0x74455874 ||\n             ((pcVar8 = (code *)PTR_FUN_00053114, puVar5 == (undefined1 *)0x74494d45 ||\n              (pcVar8 = (code *)PTR_FUN_000530f8, puVar5 == (undefined1 *)0x74524e53)))))))) ||\n          ((pcVar8 = (code *)PTR_FUN_0005311c, puVar5 == (undefined1 *)0x7a545874 ||\n           (iVar3 = 0, pcVar8 = (code *)PTR_FUN_00053124, puVar5 == (undefined1 *)0x69545874))))))\n      goto LAB_00023564;" (if "if") (parenthesized_expression "((((((puVar5 == (undefined1 *)0x504c5445) ||\n             (pcVar8 = (code *)PTR_FUN_000530fc, puVar5 == &DAT_624b4744)) ||\n            (pcVar8 = (code *)PTR_FUN_000530e8, puVar5 == (undefined1 *)0x6348524d)) ||\n           ((pcVar8 = (code *)PTR_FUN_00053180, puVar5 == (undefined1 *)0x65584966 ||\n            (pcVar8 = (code *)PTR_FUN_000530e0, puVar5 == (undefined1 *)0x67414d41)))) ||\n          (((pcVar8 = (code *)PTR_FUN_00053100, puVar5 == (undefined1 *)0x68495354 ||\n            ((pcVar8 = (code *)PTR_FUN_00053108, puVar5 == (undefined1 *)0x6f464673 ||\n             (pcVar8 = (code *)PTR_FUN_0005310c, puVar5 == (undefined1 *)0x7043414c)))) ||\n           (pcVar8 = (code *)PTR_FUN_00053118, puVar5 == (undefined1 *)0x7343414c)))) ||\n         (((((pcVar8 = (code *)PTR_FUN_00053104, puVar5 == &DAT_70485973 ||\n             (pcVar8 = (code *)PTR_FUN_000530e4, puVar5 == (undefined1 *)0x73424954)) ||\n            (pcVar8 = (code *)PTR_FUN_000530ec, puVar5 == (undefined1 *)0x73524742)) ||\n           (((pcVar8 = (code *)PTR_FUN_000530f0, puVar5 == (undefined1 *)0x69434350 ||\n             (pcVar8 = (code *)PTR_FUN_000530f4, puVar5 == (undefined1 *)0x73504c54)) ||\n            ((pcVar8 = (code *)PTR_FUN_00053110, puVar5 == (undefined1 *)0x74455874 ||\n             ((pcVar8 = (code *)PTR_FUN_00053114, puVar5 == (undefined1 *)0x74494d45 ||\n              (pcVar8 = (code *)PTR_FUN_000530f8, puVar5 == (undefined1 *)0x74524e53)))))))) ||\n          ((pcVar8 = (code *)PTR_FUN_0005311c, puVar5 == (undefined1 *)0x7a545874 ||\n           (iVar3 = 0, pcVar8 = (code *)PTR_FUN_00053124, puVar5 == (undefined1 *)0x69545874))))))" (( "(") (binary_expression "(((((puVar5 == (undefined1 *)0x504c5445) ||\n             (pcVar8 = (code *)PTR_FUN_000530fc, puVar5 == &DAT_624b4744)) ||\n            (pcVar8 = (code *)PTR_FUN_000530e8, puVar5 == (undefined1 *)0x6348524d)) ||\n           ((pcVar8 = (code *)PTR_FUN_00053180, puVar5 == (undefined1 *)0x65584966 ||\n            (pcVar8 = (code *)PTR_FUN_000530e0, puVar5 == (undefined1 *)0x67414d41)))) ||\n          (((pcVar8 = (code *)PTR_FUN_00053100, puVar5 == (undefined1 *)0x68495354 ||\n            ((pcVar8 = (code *)PTR_FUN_00053108, puVar5 == (undefined1 *)0x6f464673 ||\n             (pcVar8 = (code *)PTR_FUN_0005310c, puVar5 == (undefined1 *)0x7043414c)))) ||\n           (pcVar8 = (code *)PTR_FUN_00053118, puVar5 == (undefined1 *)0x7343414c)))) ||\n         (((((pcVar8 = (code *)PTR_FUN_00053104, puVar5 == &DAT_70485973 ||\n             (pcVar8 = (code *)PTR_FUN_000530e4, puVar5 == (undefined1 *)0x73424954)) ||\n            (pcVar8 = (code *)PTR_FUN_000530ec, puVar5 == (undefined1 *)0x73524742)) ||\n           (((pcVar8 = (code *)PTR_FUN_000530f0, puVar5 == (undefined1 *)0x69434350 ||\n             (pcVar8 = (code *)PTR_FUN_000530f4, puVar5 == (undefined1 *)0x73504c54)) ||\n            ((pcVar8 = (code *)PTR_FUN_00053110, puVar5 == (undefined1 *)0x74455874 ||\n             ((pcVar8 = (code *)PTR_FUN_00053114, puVar5 == (undefined1 *)0x74494d45 ||\n              (pcVar8 = (code *)PTR_FUN_000530f8, puVar5 == (undefined1 *)0x74524e53)))))))) ||\n          ((pcVar8 = (code *)PTR_FUN_0005311c, puVar5 == (undefined1 *)0x7a545874 ||\n           (iVar3 = 0, pcVar8 = (code *)PTR_FUN_00053124, puVar5 == (undefined1 *)0x69545874)))))" (parenthesized_expression "(((((puVar5 == (undefined1 *)0x504c5445) ||\n             (pcVar8 = (code *)PTR_FUN_000530fc, puVar5 == &DAT_624b4744)) ||\n            (pcVar8 = (code *)PTR_FUN_000530e8, puVar5 == (undefined1 *)0x6348524d)) ||\n           ((pcVar8 = (code *)PTR_FUN_00053180, puVar5 == (undefined1 *)0x65584966 ||\n            (pcVar8 = (code *)PTR_FUN_000530e0, puVar5 == (undefined1 *)0x67414d41)))) ||\n          (((pcVar8 = (code *)PTR_FUN_00053100, puVar5 == (undefined1 *)0x68495354 ||\n            ((pcVar8 = (code *)PTR_FUN_00053108, puVar5 == (undefined1 *)0x6f464673 ||\n             (pcVar8 = (code *)PTR_FUN_0005310c, puVar5 == (undefined1 *)0x7043414c)))) ||\n           (pcVar8 = (code *)PTR_FUN_00053118, puVar5 == (undefined1 *)0x7343414c))))" (( "(") (binary_expression "((((puVar5 == (undefined1 *)0x504c5445) ||\n             (pcVar8 = (code *)PTR_FUN_000530fc, puVar5 == &DAT_624b4744)) ||\n            (pcVar8 = (code *)PTR_FUN_000530e8, puVar5 == (undefined1 *)0x6348524d)) ||\n           ((pcVar8 = (code *)PTR_FUN_00053180, puVar5 == (undefined1 *)0x65584966 ||\n            (pcVar8 = (code *)PTR_FUN_000530e0, puVar5 == (undefined1 *)0x67414d41)))) ||\n          (((pcVar8 = (code *)PTR_FUN_00053100, puVar5 == (undefined1 *)0x68495354 ||\n            ((pcVar8 = (code *)PTR_FUN_00053108, puVar5 == (undefined1 *)0x6f464673 ||\n             (pcVar8 = (code *)PTR_FUN_0005310c, puVar5 == (undefined1 *)0x7043414c)))) ||\n           (pcVar8 = (code *)PTR_FUN_00053118, puVar5 == (undefined1 *)0x7343414c)))" (parenthesized_expression "((((puVar5 == (undefined1 *)0x504c5445) ||\n             (pcVar8 = (code *)PTR_FUN_000530fc, puVar5 == &DAT_624b4744)) ||\n            (pcVar8 = (code *)PTR_FUN_000530e8, puVar5 == (undefined1 *)0x6348524d)) ||\n           ((pcVar8 = (code *)PTR_FUN_00053180, puVar5 == (undefined1 *)0x65584966 ||\n            (pcVar8 = (code *)PTR_FUN_000530e0, puVar5 == (undefined1 *)0x67414d41))))" (( "(") (binary_expression "(((puVar5 == (undefined1 *)0x504c5445) ||\n             (pcVar8 = (code *)PTR_FUN_000530fc, puVar5 == &DAT_624b4744)) ||\n            (pcVar8 = (code *)PTR_FUN_000530e8, puVar5 == (undefined1 *)0x6348524d)) ||\n           ((pcVar8 = (code *)PTR_FUN_00053180, puVar5 == (undefined1 *)0x65584966 ||\n            (pcVar8 = (code *)PTR_FUN_000530e0, puVar5 == (undefined1 *)0x67414d41)))" (parenthesized_expression "(((puVar5 == (undefined1 *)0x504c5445) ||\n             (pcVar8 = (code *)PTR_FUN_000530fc, puVar5 == &DAT_624b4744)) ||\n            (pcVar8 = (code *)PTR_FUN_000530e8, puVar5 == (undefined1 *)0x6348524d))" (( "(") (binary_expression "((puVar5 == (undefined1 *)0x504c5445) ||\n             (pcVar8 = (code *)PTR_FUN_000530fc, puVar5 == &DAT_624b4744)) ||\n            (pcVar8 = (code *)PTR_FUN_000530e8, puVar5 == (undefined1 *)0x6348524d)" (parenthesized_expression "((puVar5 == (undefined1 *)0x504c5445) ||\n             (pcVar8 = (code *)PTR_FUN_000530fc, puVar5 == &DAT_624b4744))" (( "(") (binary_expression "(puVar5 == (undefined1 *)0x504c5445) ||\n             (pcVar8 = (code *)PTR_FUN_000530fc, puVar5 == &DAT_624b4744)" (parenthesized_expression "(puVar5 == (undefined1 *)0x504c5445)" (( "(") (binary_expression "puVar5 == (undefined1 *)0x504c5445" (identifier "puVar5") (== "==") (cast_expression "(undefined1 *)0x504c5445" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x504c5445"))) () ")")) (|| "||") (parenthesized_expression "(pcVar8 = (code *)PTR_FUN_000530fc, puVar5 == &DAT_624b4744)" (( "(") (comma_expression "pcVar8 = (code *)PTR_FUN_000530fc, puVar5 == &DAT_624b4744" (assignment_expression "pcVar8 = (code *)PTR_FUN_000530fc" (identifier "pcVar8") (= "=") (cast_expression "(code *)PTR_FUN_000530fc" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_FUN_000530fc"))) (, ",") (binary_expression "puVar5 == &DAT_624b4744" (identifier "puVar5") (== "==") (pointer_expression "&DAT_624b4744" (& "&") (identifier "DAT_624b4744")))) () ")"))) () ")")) (|| "||") (parenthesized_expression "(pcVar8 = (code *)PTR_FUN_000530e8, puVar5 == (undefined1 *)0x6348524d)" (( "(") (comma_expression "pcVar8 = (code *)PTR_FUN_000530e8, puVar5 == (undefined1 *)0x6348524d" (assignment_expression "pcVar8 = (code *)PTR_FUN_000530e8" (identifier "pcVar8") (= "=") (cast_expression "(code *)PTR_FUN_000530e8" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_FUN_000530e8"))) (, ",") (binary_expression "puVar5 == (undefined1 *)0x6348524d" (identifier "puVar5") (== "==") (cast_expression "(undefined1 *)0x6348524d" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x6348524d")))) () ")"))) () ")")) (|| "||") (parenthesized_expression "((pcVar8 = (code *)PTR_FUN_00053180, puVar5 == (undefined1 *)0x65584966 ||\n            (pcVar8 = (code *)PTR_FUN_000530e0, puVar5 == (undefined1 *)0x67414d41)))" (( "(") (parenthesized_expression "(pcVar8 = (code *)PTR_FUN_00053180, puVar5 == (undefined1 *)0x65584966 ||\n            (pcVar8 = (code *)PTR_FUN_000530e0, puVar5 == (undefined1 *)0x67414d41))" (( "(") (comma_expression "pcVar8 = (code *)PTR_FUN_00053180, puVar5 == (undefined1 *)0x65584966 ||\n            (pcVar8 = (code *)PTR_FUN_000530e0, puVar5 == (undefined1 *)0x67414d41)" (assignment_expression "pcVar8 = (code *)PTR_FUN_00053180" (identifier "pcVar8") (= "=") (cast_expression "(code *)PTR_FUN_00053180" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_FUN_00053180"))) (, ",") (binary_expression "puVar5 == (undefined1 *)0x65584966 ||\n            (pcVar8 = (code *)PTR_FUN_000530e0, puVar5 == (undefined1 *)0x67414d41)" (binary_expression "puVar5 == (undefined1 *)0x65584966" (identifier "puVar5") (== "==") (cast_expression "(undefined1 *)0x65584966" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x65584966"))) (|| "||") (parenthesized_expression "(pcVar8 = (code *)PTR_FUN_000530e0, puVar5 == (undefined1 *)0x67414d41)" (( "(") (comma_expression "pcVar8 = (code *)PTR_FUN_000530e0, puVar5 == (undefined1 *)0x67414d41" (assignment_expression "pcVar8 = (code *)PTR_FUN_000530e0" (identifier "pcVar8") (= "=") (cast_expression "(code *)PTR_FUN_000530e0" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_FUN_000530e0"))) (, ",") (binary_expression "puVar5 == (undefined1 *)0x67414d41" (identifier "puVar5") (== "==") (cast_expression "(undefined1 *)0x67414d41" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x67414d41")))) () ")")))) () ")")) () ")"))) () ")")) (|| "||") (parenthesized_expression "(((pcVar8 = (code *)PTR_FUN_00053100, puVar5 == (undefined1 *)0x68495354 ||\n            ((pcVar8 = (code *)PTR_FUN_00053108, puVar5 == (undefined1 *)0x6f464673 ||\n             (pcVar8 = (code *)PTR_FUN_0005310c, puVar5 == (undefined1 *)0x7043414c)))) ||\n           (pcVar8 = (code *)PTR_FUN_00053118, puVar5 == (undefined1 *)0x7343414c)))" (( "(") (parenthesized_expression "((pcVar8 = (code *)PTR_FUN_00053100, puVar5 == (undefined1 *)0x68495354 ||\n            ((pcVar8 = (code *)PTR_FUN_00053108, puVar5 == (undefined1 *)0x6f464673 ||\n             (pcVar8 = (code *)PTR_FUN_0005310c, puVar5 == (undefined1 *)0x7043414c)))) ||\n           (pcVar8 = (code *)PTR_FUN_00053118, puVar5 == (undefined1 *)0x7343414c))" (( "(") (binary_expression "(pcVar8 = (code *)PTR_FUN_00053100, puVar5 == (undefined1 *)0x68495354 ||\n            ((pcVar8 = (code *)PTR_FUN_00053108, puVar5 == (undefined1 *)0x6f464673 ||\n             (pcVar8 = (code *)PTR_FUN_0005310c, puVar5 == (undefined1 *)0x7043414c)))) ||\n           (pcVar8 = (code *)PTR_FUN_00053118, puVar5 == (undefined1 *)0x7343414c)" (parenthesized_expression "(pcVar8 = (code *)PTR_FUN_00053100, puVar5 == (undefined1 *)0x68495354 ||\n            ((pcVar8 = (code *)PTR_FUN_00053108, puVar5 == (undefined1 *)0x6f464673 ||\n             (pcVar8 = (code *)PTR_FUN_0005310c, puVar5 == (undefined1 *)0x7043414c))))" (( "(") (comma_expression "pcVar8 = (code *)PTR_FUN_00053100, puVar5 == (undefined1 *)0x68495354 ||\n            ((pcVar8 = (code *)PTR_FUN_00053108, puVar5 == (undefined1 *)0x6f464673 ||\n             (pcVar8 = (code *)PTR_FUN_0005310c, puVar5 == (undefined1 *)0x7043414c)))" (assignment_expression "pcVar8 = (code *)PTR_FUN_00053100" (identifier "pcVar8") (= "=") (cast_expression "(code *)PTR_FUN_00053100" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_FUN_00053100"))) (, ",") (binary_expression "puVar5 == (undefined1 *)0x68495354 ||\n            ((pcVar8 = (code *)PTR_FUN_00053108, puVar5 == (undefined1 *)0x6f464673 ||\n             (pcVar8 = (code *)PTR_FUN_0005310c, puVar5 == (undefined1 *)0x7043414c)))" (binary_expression "puVar5 == (undefined1 *)0x68495354" (identifier "puVar5") (== "==") (cast_expression "(undefined1 *)0x68495354" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x68495354"))) (|| "||") (parenthesized_expression "((pcVar8 = (code *)PTR_FUN_00053108, puVar5 == (undefined1 *)0x6f464673 ||\n             (pcVar8 = (code *)PTR_FUN_0005310c, puVar5 == (undefined1 *)0x7043414c)))" (( "(") (parenthesized_expression "(pcVar8 = (code *)PTR_FUN_00053108, puVar5 == (undefined1 *)0x6f464673 ||\n             (pcVar8 = (code *)PTR_FUN_0005310c, puVar5 == (undefined1 *)0x7043414c))" (( "(") (comma_expression "pcVar8 = (code *)PTR_FUN_00053108, puVar5 == (undefined1 *)0x6f464673 ||\n             (pcVar8 = (code *)PTR_FUN_0005310c, puVar5 == (undefined1 *)0x7043414c)" (assignment_expression "pcVar8 = (code *)PTR_FUN_00053108" (identifier "pcVar8") (= "=") (cast_expression "(code *)PTR_FUN_00053108" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_FUN_00053108"))) (, ",") (binary_expression "puVar5 == (undefined1 *)0x6f464673 ||\n             (pcVar8 = (code *)PTR_FUN_0005310c, puVar5 == (undefined1 *)0x7043414c)" (binary_expression "puVar5 == (undefined1 *)0x6f464673" (identifier "puVar5") (== "==") (cast_expression "(undefined1 *)0x6f464673" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x6f464673"))) (|| "||") (parenthesized_expression "(pcVar8 = (code *)PTR_FUN_0005310c, puVar5 == (undefined1 *)0x7043414c)" (( "(") (comma_expression "pcVar8 = (code *)PTR_FUN_0005310c, puVar5 == (undefined1 *)0x7043414c" (assignment_expression "pcVar8 = (code *)PTR_FUN_0005310c" (identifier "pcVar8") (= "=") (cast_expression "(code *)PTR_FUN_0005310c" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_FUN_0005310c"))) (, ",") (binary_expression "puVar5 == (undefined1 *)0x7043414c" (identifier "puVar5") (== "==") (cast_expression "(undefined1 *)0x7043414c" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x7043414c")))) () ")")))) () ")")) () ")")))) () ")")) (|| "||") (parenthesized_expression "(pcVar8 = (code *)PTR_FUN_00053118, puVar5 == (undefined1 *)0x7343414c)" (( "(") (comma_expression "pcVar8 = (code *)PTR_FUN_00053118, puVar5 == (undefined1 *)0x7343414c" (assignment_expression "pcVar8 = (code *)PTR_FUN_00053118" (identifier "pcVar8") (= "=") (cast_expression "(code *)PTR_FUN_00053118" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_FUN_00053118"))) (, ",") (binary_expression "puVar5 == (undefined1 *)0x7343414c" (identifier "puVar5") (== "==") (cast_expression "(undefined1 *)0x7343414c" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x7343414c")))) () ")"))) () ")")) () ")"))) () ")")) (|| "||") (parenthesized_expression "(((((pcVar8 = (code *)PTR_FUN_00053104, puVar5 == &DAT_70485973 ||\n             (pcVar8 = (code *)PTR_FUN_000530e4, puVar5 == (undefined1 *)0x73424954)) ||\n            (pcVar8 = (code *)PTR_FUN_000530ec, puVar5 == (undefined1 *)0x73524742)) ||\n           (((pcVar8 = (code *)PTR_FUN_000530f0, puVar5 == (undefined1 *)0x69434350 ||\n             (pcVar8 = (code *)PTR_FUN_000530f4, puVar5 == (undefined1 *)0x73504c54)) ||\n            ((pcVar8 = (code *)PTR_FUN_00053110, puVar5 == (undefined1 *)0x74455874 ||\n             ((pcVar8 = (code *)PTR_FUN_00053114, puVar5 == (undefined1 *)0x74494d45 ||\n              (pcVar8 = (code *)PTR_FUN_000530f8, puVar5 == (undefined1 *)0x74524e53)))))))) ||\n          ((pcVar8 = (code *)PTR_FUN_0005311c, puVar5 == (undefined1 *)0x7a545874 ||\n           (iVar3 = 0, pcVar8 = (code *)PTR_FUN_00053124, puVar5 == (undefined1 *)0x69545874)))))" (( "(") (parenthesized_expression "((((pcVar8 = (code *)PTR_FUN_00053104, puVar5 == &DAT_70485973 ||\n             (pcVar8 = (code *)PTR_FUN_000530e4, puVar5 == (undefined1 *)0x73424954)) ||\n            (pcVar8 = (code *)PTR_FUN_000530ec, puVar5 == (undefined1 *)0x73524742)) ||\n           (((pcVar8 = (code *)PTR_FUN_000530f0, puVar5 == (undefined1 *)0x69434350 ||\n             (pcVar8 = (code *)PTR_FUN_000530f4, puVar5 == (undefined1 *)0x73504c54)) ||\n            ((pcVar8 = (code *)PTR_FUN_00053110, puVar5 == (undefined1 *)0x74455874 ||\n             ((pcVar8 = (code *)PTR_FUN_00053114, puVar5 == (undefined1 *)0x74494d45 ||\n              (pcVar8 = (code *)PTR_FUN_000530f8, puVar5 == (undefined1 *)0x74524e53)))))))) ||\n          ((pcVar8 = (code *)PTR_FUN_0005311c, puVar5 == (undefined1 *)0x7a545874 ||\n           (iVar3 = 0, pcVar8 = (code *)PTR_FUN_00053124, puVar5 == (undefined1 *)0x69545874))))" (( "(") (binary_expression "(((pcVar8 = (code *)PTR_FUN_00053104, puVar5 == &DAT_70485973 ||\n             (pcVar8 = (code *)PTR_FUN_000530e4, puVar5 == (undefined1 *)0x73424954)) ||\n            (pcVar8 = (code *)PTR_FUN_000530ec, puVar5 == (undefined1 *)0x73524742)) ||\n           (((pcVar8 = (code *)PTR_FUN_000530f0, puVar5 == (undefined1 *)0x69434350 ||\n             (pcVar8 = (code *)PTR_FUN_000530f4, puVar5 == (undefined1 *)0x73504c54)) ||\n            ((pcVar8 = (code *)PTR_FUN_00053110, puVar5 == (undefined1 *)0x74455874 ||\n             ((pcVar8 = (code *)PTR_FUN_00053114, puVar5 == (undefined1 *)0x74494d45 ||\n              (pcVar8 = (code *)PTR_FUN_000530f8, puVar5 == (undefined1 *)0x74524e53)))))))) ||\n          ((pcVar8 = (code *)PTR_FUN_0005311c, puVar5 == (undefined1 *)0x7a545874 ||\n           (iVar3 = 0, pcVar8 = (code *)PTR_FUN_00053124, puVar5 == (undefined1 *)0x69545874)))" (parenthesized_expression "(((pcVar8 = (code *)PTR_FUN_00053104, puVar5 == &DAT_70485973 ||\n             (pcVar8 = (code *)PTR_FUN_000530e4, puVar5 == (undefined1 *)0x73424954)) ||\n            (pcVar8 = (code *)PTR_FUN_000530ec, puVar5 == (undefined1 *)0x73524742)) ||\n           (((pcVar8 = (code *)PTR_FUN_000530f0, puVar5 == (undefined1 *)0x69434350 ||\n             (pcVar8 = (code *)PTR_FUN_000530f4, puVar5 == (undefined1 *)0x73504c54)) ||\n            ((pcVar8 = (code *)PTR_FUN_00053110, puVar5 == (undefined1 *)0x74455874 ||\n             ((pcVar8 = (code *)PTR_FUN_00053114, puVar5 == (undefined1 *)0x74494d45 ||\n              (pcVar8 = (code *)PTR_FUN_000530f8, puVar5 == (undefined1 *)0x74524e53))))))))" (( "(") (binary_expression "((pcVar8 = (code *)PTR_FUN_00053104, puVar5 == &DAT_70485973 ||\n             (pcVar8 = (code *)PTR_FUN_000530e4, puVar5 == (undefined1 *)0x73424954)) ||\n            (pcVar8 = (code *)PTR_FUN_000530ec, puVar5 == (undefined1 *)0x73524742)) ||\n           (((pcVar8 = (code *)PTR_FUN_000530f0, puVar5 == (undefined1 *)0x69434350 ||\n             (pcVar8 = (code *)PTR_FUN_000530f4, puVar5 == (undefined1 *)0x73504c54)) ||\n            ((pcVar8 = (code *)PTR_FUN_00053110, puVar5 == (undefined1 *)0x74455874 ||\n             ((pcVar8 = (code *)PTR_FUN_00053114, puVar5 == (undefined1 *)0x74494d45 ||\n              (pcVar8 = (code *)PTR_FUN_000530f8, puVar5 == (undefined1 *)0x74524e53)))))))" (parenthesized_expression "((pcVar8 = (code *)PTR_FUN_00053104, puVar5 == &DAT_70485973 ||\n             (pcVar8 = (code *)PTR_FUN_000530e4, puVar5 == (undefined1 *)0x73424954)) ||\n            (pcVar8 = (code *)PTR_FUN_000530ec, puVar5 == (undefined1 *)0x73524742))" (( "(") (binary_expression "(pcVar8 = (code *)PTR_FUN_00053104, puVar5 == &DAT_70485973 ||\n             (pcVar8 = (code *)PTR_FUN_000530e4, puVar5 == (undefined1 *)0x73424954)) ||\n            (pcVar8 = (code *)PTR_FUN_000530ec, puVar5 == (undefined1 *)0x73524742)" (parenthesized_expression "(pcVar8 = (code *)PTR_FUN_00053104, puVar5 == &DAT_70485973 ||\n             (pcVar8 = (code *)PTR_FUN_000530e4, puVar5 == (undefined1 *)0x73424954))" (( "(") (comma_expression "pcVar8 = (code *)PTR_FUN_00053104, puVar5 == &DAT_70485973 ||\n             (pcVar8 = (code *)PTR_FUN_000530e4, puVar5 == (undefined1 *)0x73424954)" (assignment_expression "pcVar8 = (code *)PTR_FUN_00053104" (identifier "pcVar8") (= "=") (cast_expression "(code *)PTR_FUN_00053104" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_FUN_00053104"))) (, ",") (binary_expression "puVar5 == &DAT_70485973 ||\n             (pcVar8 = (code *)PTR_FUN_000530e4, puVar5 == (undefined1 *)0x73424954)" (binary_expression "puVar5 == &DAT_70485973" (identifier "puVar5") (== "==") (pointer_expression "&DAT_70485973" (& "&") (identifier "DAT_70485973"))) (|| "||") (parenthesized_expression "(pcVar8 = (code *)PTR_FUN_000530e4, puVar5 == (undefined1 *)0x73424954)" (( "(") (comma_expression "pcVar8 = (code *)PTR_FUN_000530e4, puVar5 == (undefined1 *)0x73424954" (assignment_expression "pcVar8 = (code *)PTR_FUN_000530e4" (identifier "pcVar8") (= "=") (cast_expression "(code *)PTR_FUN_000530e4" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_FUN_000530e4"))) (, ",") (binary_expression "puVar5 == (undefined1 *)0x73424954" (identifier "puVar5") (== "==") (cast_expression "(undefined1 *)0x73424954" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x73424954")))) () ")")))) () ")")) (|| "||") (parenthesized_expression "(pcVar8 = (code *)PTR_FUN_000530ec, puVar5 == (undefined1 *)0x73524742)" (( "(") (comma_expression "pcVar8 = (code *)PTR_FUN_000530ec, puVar5 == (undefined1 *)0x73524742" (assignment_expression "pcVar8 = (code *)PTR_FUN_000530ec" (identifier "pcVar8") (= "=") (cast_expression "(code *)PTR_FUN_000530ec" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_FUN_000530ec"))) (, ",") (binary_expression "puVar5 == (undefined1 *)0x73524742" (identifier "puVar5") (== "==") (cast_expression "(undefined1 *)0x73524742" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x73524742")))) () ")"))) () ")")) (|| "||") (parenthesized_expression "(((pcVar8 = (code *)PTR_FUN_000530f0, puVar5 == (undefined1 *)0x69434350 ||\n             (pcVar8 = (code *)PTR_FUN_000530f4, puVar5 == (undefined1 *)0x73504c54)) ||\n            ((pcVar8 = (code *)PTR_FUN_00053110, puVar5 == (undefined1 *)0x74455874 ||\n             ((pcVar8 = (code *)PTR_FUN_00053114, puVar5 == (undefined1 *)0x74494d45 ||\n              (pcVar8 = (code *)PTR_FUN_000530f8, puVar5 == (undefined1 *)0x74524e53)))))))" (( "(") (parenthesized_expression "((pcVar8 = (code *)PTR_FUN_000530f0, puVar5 == (undefined1 *)0x69434350 ||\n             (pcVar8 = (code *)PTR_FUN_000530f4, puVar5 == (undefined1 *)0x73504c54)) ||\n            ((pcVar8 = (code *)PTR_FUN_00053110, puVar5 == (undefined1 *)0x74455874 ||\n             ((pcVar8 = (code *)PTR_FUN_00053114, puVar5 == (undefined1 *)0x74494d45 ||\n              (pcVar8 = (code *)PTR_FUN_000530f8, puVar5 == (undefined1 *)0x74524e53))))))" (( "(") (binary_expression "(pcVar8 = (code *)PTR_FUN_000530f0, puVar5 == (undefined1 *)0x69434350 ||\n             (pcVar8 = (code *)PTR_FUN_000530f4, puVar5 == (undefined1 *)0x73504c54)) ||\n            ((pcVar8 = (code *)PTR_FUN_00053110, puVar5 == (undefined1 *)0x74455874 ||\n             ((pcVar8 = (code *)PTR_FUN_00053114, puVar5 == (undefined1 *)0x74494d45 ||\n              (pcVar8 = (code *)PTR_FUN_000530f8, puVar5 == (undefined1 *)0x74524e53)))))" (parenthesized_expression "(pcVar8 = (code *)PTR_FUN_000530f0, puVar5 == (undefined1 *)0x69434350 ||\n             (pcVar8 = (code *)PTR_FUN_000530f4, puVar5 == (undefined1 *)0x73504c54))" (( "(") (comma_expression "pcVar8 = (code *)PTR_FUN_000530f0, puVar5 == (undefined1 *)0x69434350 ||\n             (pcVar8 = (code *)PTR_FUN_000530f4, puVar5 == (undefined1 *)0x73504c54)" (assignment_expression "pcVar8 = (code *)PTR_FUN_000530f0" (identifier "pcVar8") (= "=") (cast_expression "(code *)PTR_FUN_000530f0" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_FUN_000530f0"))) (, ",") (binary_expression "puVar5 == (undefined1 *)0x69434350 ||\n             (pcVar8 = (code *)PTR_FUN_000530f4, puVar5 == (undefined1 *)0x73504c54)" (binary_expression "puVar5 == (undefined1 *)0x69434350" (identifier "puVar5") (== "==") (cast_expression "(undefined1 *)0x69434350" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x69434350"))) (|| "||") (parenthesized_expression "(pcVar8 = (code *)PTR_FUN_000530f4, puVar5 == (undefined1 *)0x73504c54)" (( "(") (comma_expression "pcVar8 = (code *)PTR_FUN_000530f4, puVar5 == (undefined1 *)0x73504c54" (assignment_expression "pcVar8 = (code *)PTR_FUN_000530f4" (identifier "pcVar8") (= "=") (cast_expression "(code *)PTR_FUN_000530f4" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_FUN_000530f4"))) (, ",") (binary_expression "puVar5 == (undefined1 *)0x73504c54" (identifier "puVar5") (== "==") (cast_expression "(undefined1 *)0x73504c54" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x73504c54")))) () ")")))) () ")")) (|| "||") (parenthesized_expression "((pcVar8 = (code *)PTR_FUN_00053110, puVar5 == (undefined1 *)0x74455874 ||\n             ((pcVar8 = (code *)PTR_FUN_00053114, puVar5 == (undefined1 *)0x74494d45 ||\n              (pcVar8 = (code *)PTR_FUN_000530f8, puVar5 == (undefined1 *)0x74524e53)))))" (( "(") (parenthesized_expression "(pcVar8 = (code *)PTR_FUN_00053110, puVar5 == (undefined1 *)0x74455874 ||\n             ((pcVar8 = (code *)PTR_FUN_00053114, puVar5 == (undefined1 *)0x74494d45 ||\n              (pcVar8 = (code *)PTR_FUN_000530f8, puVar5 == (undefined1 *)0x74524e53))))" (( "(") (comma_expression "pcVar8 = (code *)PTR_FUN_00053110, puVar5 == (undefined1 *)0x74455874 ||\n             ((pcVar8 = (code *)PTR_FUN_00053114, puVar5 == (undefined1 *)0x74494d45 ||\n              (pcVar8 = (code *)PTR_FUN_000530f8, puVar5 == (undefined1 *)0x74524e53)))" (assignment_expression "pcVar8 = (code *)PTR_FUN_00053110" (identifier "pcVar8") (= "=") (cast_expression "(code *)PTR_FUN_00053110" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_FUN_00053110"))) (, ",") (binary_expression "puVar5 == (undefined1 *)0x74455874 ||\n             ((pcVar8 = (code *)PTR_FUN_00053114, puVar5 == (undefined1 *)0x74494d45 ||\n              (pcVar8 = (code *)PTR_FUN_000530f8, puVar5 == (undefined1 *)0x74524e53)))" (binary_expression "puVar5 == (undefined1 *)0x74455874" (identifier "puVar5") (== "==") (cast_expression "(undefined1 *)0x74455874" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x74455874"))) (|| "||") (parenthesized_expression "((pcVar8 = (code *)PTR_FUN_00053114, puVar5 == (undefined1 *)0x74494d45 ||\n              (pcVar8 = (code *)PTR_FUN_000530f8, puVar5 == (undefined1 *)0x74524e53)))" (( "(") (parenthesized_expression "(pcVar8 = (code *)PTR_FUN_00053114, puVar5 == (undefined1 *)0x74494d45 ||\n              (pcVar8 = (code *)PTR_FUN_000530f8, puVar5 == (undefined1 *)0x74524e53))" (( "(") (comma_expression "pcVar8 = (code *)PTR_FUN_00053114, puVar5 == (undefined1 *)0x74494d45 ||\n              (pcVar8 = (code *)PTR_FUN_000530f8, puVar5 == (undefined1 *)0x74524e53)" (assignment_expression "pcVar8 = (code *)PTR_FUN_00053114" (identifier "pcVar8") (= "=") (cast_expression "(code *)PTR_FUN_00053114" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_FUN_00053114"))) (, ",") (binary_expression "puVar5 == (undefined1 *)0x74494d45 ||\n              (pcVar8 = (code *)PTR_FUN_000530f8, puVar5 == (undefined1 *)0x74524e53)" (binary_expression "puVar5 == (undefined1 *)0x74494d45" (identifier "puVar5") (== "==") (cast_expression "(undefined1 *)0x74494d45" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x74494d45"))) (|| "||") (parenthesized_expression "(pcVar8 = (code *)PTR_FUN_000530f8, puVar5 == (undefined1 *)0x74524e53)" (( "(") (comma_expression "pcVar8 = (code *)PTR_FUN_000530f8, puVar5 == (undefined1 *)0x74524e53" (assignment_expression "pcVar8 = (code *)PTR_FUN_000530f8" (identifier "pcVar8") (= "=") (cast_expression "(code *)PTR_FUN_000530f8" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_FUN_000530f8"))) (, ",") (binary_expression "puVar5 == (undefined1 *)0x74524e53" (identifier "puVar5") (== "==") (cast_expression "(undefined1 *)0x74524e53" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x74524e53")))) () ")")))) () ")")) () ")")))) () ")")) () ")"))) () ")")) () ")"))) () ")")) (|| "||") (parenthesized_expression "((pcVar8 = (code *)PTR_FUN_0005311c, puVar5 == (undefined1 *)0x7a545874 ||\n           (iVar3 = 0, pcVar8 = (code *)PTR_FUN_00053124, puVar5 == (undefined1 *)0x69545874)))" (( "(") (parenthesized_expression "(pcVar8 = (code *)PTR_FUN_0005311c, puVar5 == (undefined1 *)0x7a545874 ||\n           (iVar3 = 0, pcVar8 = (code *)PTR_FUN_00053124, puVar5 == (undefined1 *)0x69545874))" (( "(") (comma_expression "pcVar8 = (code *)PTR_FUN_0005311c, puVar5 == (undefined1 *)0x7a545874 ||\n           (iVar3 = 0, pcVar8 = (code *)PTR_FUN_00053124, puVar5 == (undefined1 *)0x69545874)" (assignment_expression "pcVar8 = (code *)PTR_FUN_0005311c" (identifier "pcVar8") (= "=") (cast_expression "(code *)PTR_FUN_0005311c" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_FUN_0005311c"))) (, ",") (binary_expression "puVar5 == (undefined1 *)0x7a545874 ||\n           (iVar3 = 0, pcVar8 = (code *)PTR_FUN_00053124, puVar5 == (undefined1 *)0x69545874)" (binary_expression "puVar5 == (undefined1 *)0x7a545874" (identifier "puVar5") (== "==") (cast_expression "(undefined1 *)0x7a545874" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x7a545874"))) (|| "||") (parenthesized_expression "(iVar3 = 0, pcVar8 = (code *)PTR_FUN_00053124, puVar5 == (undefined1 *)0x69545874)" (( "(") (comma_expression "iVar3 = 0, pcVar8 = (code *)PTR_FUN_00053124, puVar5 == (undefined1 *)0x69545874" (assignment_expression "iVar3 = 0" (identifier "iVar3") (= "=") (number_literal "0")) (, ",") (comma_expression "pcVar8 = (code *)PTR_FUN_00053124, puVar5 == (undefined1 *)0x69545874" (assignment_expression "pcVar8 = (code *)PTR_FUN_00053124" (identifier "pcVar8") (= "=") (cast_expression "(code *)PTR_FUN_00053124" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_FUN_00053124"))) (, ",") (binary_expression "puVar5 == (undefined1 *)0x69545874" (identifier "puVar5") (== "==") (cast_expression "(undefined1 *)0x69545874" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x69545874"))))) () ")")))) () ")")) () ")"))) () ")")) () ")"))) () ")")) (goto_statement "goto LAB_00023564;" (goto "goto") (statement_identifier "LAB_00023564") (; ";"))) (labeled_statement "LAB_00023394:\n      FUN_0002f630(param_1,param_2,iVar2,iVar3);" (statement_identifier "LAB_00023394") (: ":") (expression_statement "FUN_0002f630(param_1,param_2,iVar2,iVar3);" (call_expression "FUN_0002f630(param_1,param_2,iVar2,iVar3)" (identifier "FUN_0002f630") (argument_list "(param_1,param_2,iVar2,iVar3)" (( "(") (identifier "param_1") (, ",") (identifier "param_2") (, ",") (identifier "iVar2") (, ",") (identifier "iVar3") () ")"))) (; ";"))) (labeled_statement "LAB_000233a8:\n      uVar4 = *(uint *)(param_1 + 0x124);" (statement_identifier "LAB_000233a8") (: ":") (expression_statement "uVar4 = *(uint *)(param_1 + 0x124);" (assignment_expression "uVar4 = *(uint *)(param_1 + 0x124)" (identifier "uVar4") (= "=") (pointer_expression "*(uint *)(param_1 + 0x124)" (* "*") (cast_expression "(uint *)(param_1 + 0x124)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x124)" (( "(") (binary_expression "param_1 + 0x124" (identifier "param_1") (+ "+") (number_literal "0x124")) () ")"))))) (; ";"))) (goto_statement "goto LAB_000233ac;" (goto "goto") (statement_identifier "LAB_000233ac") (; ";")) (} "}"))) (if_statement "if (puVar5 == (undefined1 *)0x49444154) {\n      if ((iVar2 == 0) || ((*(uint *)(param_1 + 0x128) & 8) != 0)) {\n        if ((*(uint *)(param_1 + 0x124) & 0x2000) != 0) {\n          (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar6);\n        }\n      }\n      else {\n        (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar6);\n      }\n      goto LAB_00023394;\n    }" (if "if") (parenthesized_expression "(puVar5 == (undefined1 *)0x49444154)" (( "(") (binary_expression "puVar5 == (undefined1 *)0x49444154" (identifier "puVar5") (== "==") (cast_expression "(undefined1 *)0x49444154" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x49444154"))) () ")")) (compound_statement "{\n      if ((iVar2 == 0) || ((*(uint *)(param_1 + 0x128) & 8) != 0)) {\n        if ((*(uint *)(param_1 + 0x124) & 0x2000) != 0) {\n          (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar6);\n        }\n      }\n      else {\n        (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar6);\n      }\n      goto LAB_00023394;\n    }" ({ "{") (if_statement "if ((iVar2 == 0) || ((*(uint *)(param_1 + 0x128) & 8) != 0)) {\n        if ((*(uint *)(param_1 + 0x124) & 0x2000) != 0) {\n          (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar6);\n        }\n      }\n      else {\n        (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar6);\n      }" (if "if") (parenthesized_expression "((iVar2 == 0) || ((*(uint *)(param_1 + 0x128) & 8) != 0))" (( "(") (binary_expression "(iVar2 == 0) || ((*(uint *)(param_1 + 0x128) & 8) != 0)" (parenthesized_expression "(iVar2 == 0)" (( "(") (binary_expression "iVar2 == 0" (identifier "iVar2") (== "==") (number_literal "0")) () ")")) (|| "||") (parenthesized_expression "((*(uint *)(param_1 + 0x128) & 8) != 0)" (( "(") (binary_expression "(*(uint *)(param_1 + 0x128) & 8) != 0" (parenthesized_expression "(*(uint *)(param_1 + 0x128) & 8)" (( "(") (binary_expression "*(uint *)(param_1 + 0x128) & 8" (pointer_expression "*(uint *)(param_1 + 0x128)" (* "*") (cast_expression "(uint *)(param_1 + 0x128)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x128)" (( "(") (binary_expression "param_1 + 0x128" (identifier "param_1") (+ "+") (number_literal "0x128")) () ")")))) (& "&") (number_literal "8")) () ")")) (!= "!=") (number_literal "0")) () ")"))) () ")")) (compound_statement "{\n        if ((*(uint *)(param_1 + 0x124) & 0x2000) != 0) {\n          (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar6);\n        }\n      }" ({ "{") (if_statement "if ((*(uint *)(param_1 + 0x124) & 0x2000) != 0) {\n          (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar6);\n        }" (if "if") (parenthesized_expression "((*(uint *)(param_1 + 0x124) & 0x2000) != 0)" (( "(") (binary_expression "(*(uint *)(param_1 + 0x124) & 0x2000) != 0" (parenthesized_expression "(*(uint *)(param_1 + 0x124) & 0x2000)" (( "(") (binary_expression "*(uint *)(param_1 + 0x124) & 0x2000" (pointer_expression "*(uint *)(param_1 + 0x124)" (* "*") (cast_expression "(uint *)(param_1 + 0x124)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x124)" (( "(") (binary_expression "param_1 + 0x124" (identifier "param_1") (+ "+") (number_literal "0x124")) () ")")))) (& "&") (number_literal "0x2000")) () ")")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n          (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar6);\n        }" ({ "{") (expression_statement "(*(code *)PTR_png_benign_error_000533b8)(param_1,puVar6);" (call_expression "(*(code *)PTR_png_benign_error_000533b8)(param_1,puVar6)" (parenthesized_expression "(*(code *)PTR_png_benign_error_000533b8)" (( "(") (pointer_expression "*(code *)PTR_png_benign_error_000533b8" (* "*") (cast_expression "(code *)PTR_png_benign_error_000533b8" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_png_benign_error_000533b8"))) () ")")) (argument_list "(param_1,puVar6)" (( "(") (identifier "param_1") (, ",") (identifier "puVar6") () ")"))) (; ";")) (} "}"))) (} "}")) (else_clause "else {\n        (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar6);\n      }" (else "else") (compound_statement "{\n        (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar6);\n      }" ({ "{") (expression_statement "(*(code *)PTR_png_benign_error_000533b8)(param_1,puVar6);" (call_expression "(*(code *)PTR_png_benign_error_000533b8)(param_1,puVar6)" (parenthesized_expression "(*(code *)PTR_png_benign_error_000533b8)" (( "(") (pointer_expression "*(code *)PTR_png_benign_error_000533b8" (* "*") (cast_expression "(code *)PTR_png_benign_error_000533b8" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_png_benign_error_000533b8"))) () ")")) (argument_list "(param_1,puVar6)" (( "(") (identifier "param_1") (, ",") (identifier "puVar6") () ")"))) (; ";")) (} "}")))) (goto_statement "goto LAB_00023394;" (goto "goto") (statement_identifier "LAB_00023394") (; ";")) (} "}"))) (expression_statement "FUN_0002f630(param_1,param_2,iVar2,iVar3);" (call_expression "FUN_0002f630(param_1,param_2,iVar2,iVar3)" (identifier "FUN_0002f630") (argument_list "(param_1,param_2,iVar2,iVar3)" (( "(") (identifier "param_1") (, ",") (identifier "param_2") (, ",") (identifier "iVar2") (, ",") (identifier "iVar3") () ")"))) (; ";")) (if_statement "if (puVar5 != (undefined1 *)0x504c5445) goto LAB_000233a8;" (if "if") (parenthesized_expression "(puVar5 != (undefined1 *)0x504c5445)" (( "(") (binary_expression "puVar5 != (undefined1 *)0x504c5445" (identifier "puVar5") (!= "!=") (cast_expression "(undefined1 *)0x504c5445" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x504c5445"))) () ")")) (goto_statement "goto LAB_000233a8;" (goto "goto") (statement_identifier "LAB_000233a8") (; ";"))) (expression_statement "uVar4 = *(uint *)(param_1 + 0x124);" (assignment_expression "uVar4 = *(uint *)(param_1 + 0x124)" (identifier "uVar4") (= "=") (pointer_expression "*(uint *)(param_1 + 0x124)" (* "*") (cast_expression "(uint *)(param_1 + 0x124)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x124)" (( "(") (binary_expression "param_1 + 0x124" (identifier "param_1") (+ "+") (number_literal "0x124")) () ")"))))) (; ";")) (expression_statement "*(uint *)(param_1 + 0x124) = uVar4 | 2;" (assignment_expression "*(uint *)(param_1 + 0x124) = uVar4 | 2" (pointer_expression "*(uint *)(param_1 + 0x124)" (* "*") (cast_expression "(uint *)(param_1 + 0x124)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x124)" (( "(") (binary_expression "param_1 + 0x124" (identifier "param_1") (+ "+") (number_literal "0x124")) () ")")))) (= "=") (binary_expression "uVar4 | 2" (identifier "uVar4") (| "|") (number_literal "2"))) (; ";")) (if_statement "if ((uVar4 & 0x10) != 0) {\n      return;\n    }" (if "if") (parenthesized_expression "((uVar4 & 0x10) != 0)" (( "(") (binary_expression "(uVar4 & 0x10) != 0" (parenthesized_expression "(uVar4 & 0x10)" (( "(") (binary_expression "uVar4 & 0x10" (identifier "uVar4") (& "&") (number_literal "0x10")) () ")")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      return;\n    }" ({ "{") (return_statement "return;" (return "return") (; ";")) (} "}"))) (} "}")) (while "while") (parenthesized_expression "( true )" (( "(") (true "true") () ")")) (; ";")) (} "}")))
(translation_unit (function_definition type: (primitive_type) declarator: (function_declarator declarator: (identifier) parameters: (parameter_list (parameter_declaration type: (primitive_type) declarator: (identifier)) (parameter_declaration type: (primitive_type) declarator: (identifier)))) body: (compound_statement (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (return_statement))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (char_literal (escape_sequence)))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) alternative: (else_clause (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (char_literal (escape_sequence)))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier) (binary_expression left: (identifier) right: (number_literal))))))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (do_statement body: (compound_statement (while_statement condition: (parenthesized_expression (true)) body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) right: (parenthesized_expression (parenthesized_expression (comma_expression left: (assignment_expression left: (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))))) right: (binary_expression left: (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))))) right: (number_literal))) right: (comma_expression left: (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier))) right: (binary_expression left: (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier))) right: (binary_expression left: (identifier) right: (pointer_expression argument: (identifier)))))))))))) consequence: (break_statement)) (labeled_statement label: (statement_identifier) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (identifier) (identifier) (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (number_literal))) consequence: (compound_statement (return_statement)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (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))))) right: (number_literal))) right: (number_literal))))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (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))))) right: (number_literal))) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier) (identifier))))))) alternative: (else_clause (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier) (identifier))))))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier))) right: (binary_expression left: (identifier) right: (pointer_expression argument: (identifier))))))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier))) right: (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal))))))) right: (parenthesized_expression (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier))) right: (binary_expression left: (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier))) right: (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal))))))))))) right: (parenthesized_expression (parenthesized_expression (binary_expression left: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier))) right: (binary_expression left: (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal))) right: (parenthesized_expression (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier))) right: (binary_expression left: (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier))) right: (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))))))))))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier))) right: (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))))))))) right: (parenthesized_expression (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier))) right: (binary_expression left: (binary_expression left: (identifier) right: (pointer_expression argument: (identifier))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier))) right: (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))))))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier))) right: (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal))))))) right: (parenthesized_expression (parenthesized_expression (binary_expression left: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier))) right: (binary_expression left: (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier))) right: (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))))))) right: (parenthesized_expression (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier))) right: (binary_expression left: (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal))) right: (parenthesized_expression (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier))) right: (binary_expression left: (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier))) right: (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))))))))))))))))) right: (parenthesized_expression (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier))) right: (binary_expression left: (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (number_literal)) right: (comma_expression left: (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier))) right: (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal))))))))))))))) consequence: (goto_statement label: (statement_identifier))) (labeled_statement label: (statement_identifier) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (identifier) (identifier))))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (goto_statement label: (statement_identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (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))))) right: (number_literal))) right: (number_literal))))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (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))))) right: (number_literal))) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier) (identifier))))))) alternative: (else_clause (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier) (identifier))))))) (goto_statement label: (statement_identifier)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (identifier) (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (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))))) right: (binary_expression left: (identifier) right: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (number_literal))) consequence: (compound_statement (return_statement)))) condition: (parenthesized_expression (true))))))

void MASKED(int param_1,int param_2)

{
  ushort uVar1;
  int iVar2;
  int iVar3;
  uint uVar4;
  undefined1 *puVar5;
  undefined *puVar6;
  undefined *puVar7;
  code *pcVar8;
  
  if (param_1 == 0) {
    return;
  }
  iVar2 = FUN_00015610(param_1,0x49444154);
  if (iVar2 == 0) {
    FUN_000309b0(param_1);
    if (*(char *)(param_1 + 0x1ff) != '\x03') goto LAB_0002327c;
    uVar1 = *(ushort *)(param_1 + 0x1f0);
  }
  else {
    if (*(char *)(param_1 + 0x1ff) != '\x03') goto LAB_0002327c;
    uVar1 = *(ushort *)(param_1 + 0x1f0);
  }
  if ((int)(uint)uVar1 < *(int *)(param_1 + 500)) {
    (*(code *)PTR_png_benign_error_000533b8)(param_1,PTR_s_nt_0005301c + -0x1f0);
  }
LAB_0002327c:
  puVar7 = PTR_s_nt_0005301c + -0x1ac;
  puVar6 = PTR_s_nt_0005301c + -0x1c4;
  do {
    while( true ) {
      iVar2 = FUN_0002fa20(param_1);
      puVar5 = *(undefined1 **)(param_1 + 0x1cc);
      if ((puVar5 == (undefined1 *)0x49444154) ||
         ((*(uint *)(param_1 + 0x124) = *(uint *)(param_1 + 0x124) | 0x2000,
          pcVar8 = (code *)PTR_FUN_000530b8, puVar5 != (undefined1 *)0x49454e44 &&
          (pcVar8 = (code *)PTR_FUN_000530ac, puVar5 != &DAT_49484452)))) break;
LAB_00023564:
      (*pcVar8)(param_1,param_2,iVar2);
      uVar4 = *(uint *)(param_1 + 0x124);
LAB_000233ac:
      if ((uVar4 & 0x10) != 0) {
        return;
      }
    }
    if (param_2 == 0) {
LAB_0002340c:
      FUN_0002b068(param_1,iVar2);
      uVar4 = *(uint *)(param_1 + 0x124);
      goto LAB_000233ac;
    }
    iVar3 = FUN_00015610(param_1,puVar5);
    if (iVar3 == 0) {
      if (puVar5 == (undefined1 *)0x49444154) {
        if ((iVar2 == 0) || ((*(uint *)(param_1 + 0x128) & 8) != 0)) {
          if ((*(uint *)(param_1 + 0x124) & 0x2000) != 0) {
            (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar7);
          }
        }
        else {
          (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar7);
        }
        goto LAB_0002340c;
      }
      pcVar8 = (code *)PTR_FUN_000530dc;
      if ((((((puVar5 == (undefined1 *)0x504c5445) ||
             (pcVar8 = (code *)PTR_FUN_000530fc, puVar5 == &DAT_624b4744)) ||
            (pcVar8 = (code *)PTR_FUN_000530e8, puVar5 == (undefined1 *)0x6348524d)) ||
           ((pcVar8 = (code *)PTR_FUN_00053180, puVar5 == (undefined1 *)0x65584966 ||
            (pcVar8 = (code *)PTR_FUN_000530e0, puVar5 == (undefined1 *)0x67414d41)))) ||
          (((pcVar8 = (code *)PTR_FUN_00053100, puVar5 == (undefined1 *)0x68495354 ||
            ((pcVar8 = (code *)PTR_FUN_00053108, puVar5 == (undefined1 *)0x6f464673 ||
             (pcVar8 = (code *)PTR_FUN_0005310c, puVar5 == (undefined1 *)0x7043414c)))) ||
           (pcVar8 = (code *)PTR_FUN_00053118, puVar5 == (undefined1 *)0x7343414c)))) ||
         (((((pcVar8 = (code *)PTR_FUN_00053104, puVar5 == &DAT_70485973 ||
             (pcVar8 = (code *)PTR_FUN_000530e4, puVar5 == (undefined1 *)0x73424954)) ||
            (pcVar8 = (code *)PTR_FUN_000530ec, puVar5 == (undefined1 *)0x73524742)) ||
           (((pcVar8 = (code *)PTR_FUN_000530f0, puVar5 == (undefined1 *)0x69434350 ||
             (pcVar8 = (code *)PTR_FUN_000530f4, puVar5 == (undefined1 *)0x73504c54)) ||
            ((pcVar8 = (code *)PTR_FUN_00053110, puVar5 == (undefined1 *)0x74455874 ||
             ((pcVar8 = (code *)PTR_FUN_00053114, puVar5 == (undefined1 *)0x74494d45 ||
              (pcVar8 = (code *)PTR_FUN_000530f8, puVar5 == (undefined1 *)0x74524e53)))))))) ||
          ((pcVar8 = (code *)PTR_FUN_0005311c, puVar5 == (undefined1 *)0x7a545874 ||
           (iVar3 = 0, pcVar8 = (code *)PTR_FUN_00053124, puVar5 == (undefined1 *)0x69545874))))))
      goto LAB_00023564;
LAB_00023394:
      FUN_0002f630(param_1,param_2,iVar2,iVar3);
LAB_000233a8:
      uVar4 = *(uint *)(param_1 + 0x124);
      goto LAB_000233ac;
    }
    if (puVar5 == (undefined1 *)0x49444154) {
      if ((iVar2 == 0) || ((*(uint *)(param_1 + 0x128) & 8) != 0)) {
        if ((*(uint *)(param_1 + 0x124) & 0x2000) != 0) {
          (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar6);
        }
      }
      else {
        (*(code *)PTR_png_benign_error_000533b8)(param_1,puVar6);
      }
      goto LAB_00023394;
    }
    FUN_0002f630(param_1,param_2,iVar2,iVar3);
    if (puVar5 != (undefined1 *)0x504c5445) goto LAB_000233a8;
    uVar4 = *(uint *)(param_1 + 0x124);
    *(uint *)(param_1 + 0x124) = uVar4 | 2;
    if ((uVar4 & 0x10) != 0) {
      return;
    }
  } while( true );
}

